Most of the drivers require extra requirements. This adds these to
the extras field in setup.cfg so that users can more easily install
extra requirements.
Also removes the lower-constraints.txt file because we already removed
tests of l-c by [1].
Note that the lower versions of SQLAlchemy and oslo.messaging are
picked up from requirements in the other repos, and further lower
versions might be allowed.
[1] bcca5bd4a8
Change-Id: If4492943199c75c294e4eb5a3600cf5d2bdad0b8
This patch fixes the index and module index for the osprofiler documentation
home page.
It also updates the documents tox environments to use a docs requirements.txt
Change-Id: I880f1c28232a299f50ea9ccc2178f1444efb9a41
Introduced changes:
- pre-commit config and rules
- Add pre-commit to pep8 gate, Flake8 is covered in the pre-commit hooks.
- Applying fixes for pre-commit compliance in all code.
Also commit hash will be used instead of version tags in pre-commit to
prevend arbitrary code from running in developer's machines.
pre-commit will be used to:
- trailing whitespace;
- Replaces or checks mixed line ending (mixed-line-ending);
- Forbid files which have a UTF-8 byte-order marker (check-byte-order-marker);
- Checks that non-binary executables have a proper
shebang (check-executables-have-shebangs);
- Check for files that contain merge conflict strings (check-merge-conflict);
- Check for debugger imports and py37+ breakpoint()
calls in python source (debug-statements);
- Attempts to load all yaml files to verify syntax (check-yaml);
- Run flake8 checks (flake8) (local)
For further details about tests please refer to:
https://github.com/pre-commit/pre-commit-hooks
Change-Id: If4bd505d6bf73d06ce2f6080cedb3b5576c881d9
Signed-off-by: Moisés Guimarães de Medeiros <moguimar@redhat.com>
This patch bumps bandit allowed version to >=1.6.0,<1.7.0 in order to
avoid the errors detailed here https://github.com/PyCQA/bandit/pull/393
Change-Id: I883e2aae7918086be73579627e91325f9fe33b77
Signed-off-by: Moisés Guimarães de Medeiros <moguimar@redhat.com>
With an updated flake8, we get some new warnings. Update hacking
directly to version 3.1.0 and fix the problems found.
Note that before this change, flake8 used the default "ignore" list,
this now adds a new ignore list.
Change-Id: Iccbf4f30eb4e542d3824b7782f43eacda29c5a90
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Disable openstackdocs_auto_name to use 'project' variable as name.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: Ia700e656b4c2616ccbff32707eb4297a1dafbe3b
Now that we no longer support py27, we can use the standard library
unittest.mock module instead of the third party mock lib.
Change-Id: I76e01d55ff4d9095a6dbf520752042824225de73
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
The repo is Python 3 now, so update hacking to version 3.0 which
supports Python 3.
Fix problems found.
Update local hacking checks for new flake8.
Change-Id: I8ba89483c8e6b76011833cfc5080eab3fd269c8b
OpenStack Python requirements check fails on Python elasticsearch with error:
> Requirement for package elasticsearch excludes a version
> not excluded in the global list.
Change-Id: Iadb5a14d495dbf242970b8b1f4705cd33545a7eb
Closes-Bug: #1826782
According to Openstack summit session [1],
stestr is maintained project to which all Openstack projects should migrate.
Let's switch to stestr as other projects have already moved to it.
[1] https://etherpad.openstack.org/p/YVR-python-pti
Change-Id: I75bea8174b9473b0648e1fc524dd8ea25dfb666d
Main changes:
- Add minimum version for requirements [1]
- Fix dulwich issue that broke py35 gate [2]
Trivial changes:
- Re-format multi-line deps in tox.ini
- Verify and change constraints of pymongo, prettytable
to match global requirements
---
requirements without minimum version definitaions may cause CI failure
Merge https://review.openstack.org/#/c/574367/ made requirements job
check for minimum version definitions, requirements without minimum version
may cause CI failure.
This patch sync the requirements with lower-constraints
---
Start using upper-constraints in tox venvs
Without this we are exposed to any breakages in dependencies, which
is currently blocking the repo because of a broken dulwich release.
Note that this required the removal of the explicit .[oslo_config]
requirement. I'm not sure why that was there since it will be
pulled in by oslo.concurrency anyway and it broke the venv creation
when constraints were added. Since I'm not sure why it was split
out as a separate thing I'm leaving the setup.cfg target but
removing it from tox.ini.
We also need to pin dulwich in lower-constraints, even though it's a
transitive dependency. Otherwise the lower-constraints job installs
the broken latest version.
Transitive dependency that we need to pin due to
https://bugs.launchpad.net/tripleo/+bug/1778004
---
[1] https://review.openstack.org/#/c/575691
[2] https://review.openstack.org/#/c/577462
Co-Authored-By: Kevin_Zheng <zhengzhenyu@huawei.com>
Co-Authored-By: Ben Nemec <bnemec@redhat.com>
Change-Id: Ibfe5f460139849ba39b369321360f6f5a0e9e2a0
Closes-Bug: #1777083
Closes-Bug: #1778004
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.
Add openstack-tox-lower-constraints job to the zuul configuration.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: I4ec215baac733ef07a619c03c28406c994d493f5
Our current Ceilometer driver relies on old version of ceilometer client,
which is in deprecated state and not compatible with the latest Telemetry
projects (Panko, Gnocchi). The functionality of the driver is not tested
automatically and most probably broken. So it's time to let it go and
clean the code.
This patch leaves "messaging" driver as default for notification and
makes "connection-string" a required parameter in CLI. In the future
we may consider to change default notification driver, though it
requires proper release note handling in all affected projects.
Change-Id: Id8442c4ff13c5cc33fd909b4757757cc5f396f50
python-subunit is not used directly anywhere
and it is dependency of both testrepository
and os-testr
(probably was used by some tox wrapper script before)
Change-Id: I3c0ec9bda6cc07af0e6977608f80cff57c49ba95
Since pbr already landed and the old version of hacking seems not
work very well with pbr>=2, we should update it to match global
requirement.
Partial-Bug: #1668848
Change-Id: I3a2c696417c46581de7acb0b1ac967ac5be150d0
The release management team have indicated this is their preferred way
to collect release notes in future.
Closes-Bug: #1634356
Change-Id: I40ebe47509ba5cabd57ed8c4987ae6ec1e2b5d5f
Bandit is a tool designed to find common security issues in Python code.
and pep8 is the usual linter target. So enable it in pep8 target.
Change-Id: Ie5e4350cde906c206fd5041e88983678eb37999e
This is required by python-docs job + it's good to have documentation
on read the docs.
As we don't won't to duplicate work, index.rst is just symlink to README.rst
Change-Id: I1b42fc7c135367ca77949998c5e0db5fc5dd7434