Since setuptools v54.1.0[1], the parmeters with dash have been
deprecated in favor of the new parameters with underscore.
This change updates the parameters accordingly to avoid the warnings
like the example below.
UserWarning: Usage of dash-separated 'description-file' will not be
supported in future versions. Please use the underscore name
'description_file' instead
[1] https://github.com/pypa/setuptools/commit/a2e9ae4cb
Change-Id: I6b50af9c7825b48e37c395466ce479e38937e094
The abstract base classes previously defined in 'collections' were moved
to 'collections.abc' in 3.3. The aliases will be removed in 3.10.
Preempt this change now with a simple find-replace:
$ ag -l 'collections.($TYPES)' | \
xargs sed -i 's/\(collections\)\.\($TYPES\)/\1.abc.\2/g'
Where $TYPES is the list of moved ABCs from [1].
[1] https://docs.python.org/3/library/collections.abc.html
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Change-Id: Ib07d778a01275d7c985e059156e95abc112e81c8
Ensure we run with the versions of Python we expect to. Some other
cruft is removed.
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Change-Id: I450c062eed1185e7e4c49a156307abb4320f6cb6
assertItemsEqual was removed from Python's unittest.TestCase in
Python 3.3 [1][2]. We have been able to use them since then, because
testtools required unittest2, which still included it. With testtools
removing Python 2.7 support [3][4], we will lose support for
assertItemsEqual, so we should switch to use assertCountEqual.
[1] - https://bugs.python.org/issue17866
[2] - https://hg.python.org/cpython/rev/d9921cb6e3cd
[3] - testing-cabal/testtools#286
[4] - testing-cabal/testtools#277
Change-Id: I1591e8603262d377d8e0801af152928787374e79
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: I7f8c249b574213a9189e13f679179bbaaa382e28
flake8 new release 3.8.0 added new checks and gate pep8
job start failing. hacking 3.0.1 fix the pinning of flake8 to
avoid bringing in a new version with new checks.
Though it is fixed in latest hacking but 2.0 and 3.0 has cap for
flake8 as <4.0.0 which mean flake8 new version 3.9.0 can also
break the pep8 job if new check are added.
To avoid similar gate break in future, we need to bump the hacking min
version.
- http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014828.html
Change-Id: Icf9fa58f9c9ae9e1bbe436638fe915974543dddb
Make a few cleanups:
- Remove python 2.7 stanza from setup.py
- Add requires on python >= 3.6 to setup.cfg so that pypi and pip
know about the requirement
- Remove obsolete sections from setup.cfg:
* Wheel is not needed for python 3 only repo
* Some other sections are obsolete
- Update classifiers
- Update requirements, no need for python_version anymore
Change-Id: I4b236a3b85f37358ff44a8063dfec1e4d10c036a
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: Idffc923ac339978714001be22e3c9ef285e907f5
This repo had a docs building job setup in project-config repo and was
at one time publishing to readthedocs. The publishing needs a manual
change and the repo was never adapted.
Import just the docs building jobs using the build-openstack-docs-pti
template.
If the repo wants to use publish later to readthedocs, the template
can be changed to docs-on-readthedocs as explained in
http://lists.openstack.org/pipermail/openstack-dev/2018-August/132836.html
Change-Id: Idd3725fdc41728d105c1f4d526668673f28b915c
The commands used by constraints need at least tox 2.0. Update to
reflect reality, which should help with local running of constraints
targets.
Change-Id: I054b821ada343fcecb037fb11fbe49245bb46d01
This is a mechanically generated patch to complete step 1 of moving
the zuul job settings out of project-config and into each project
repository.
Because there will be a separate patch on each branch, the branch
specifiers for branch-specific jobs have been removed.
Because this patch is generated by a script, there may be some
cosmetic changes to the layout of the YAML file(s) as the contents are
normalized.
See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html
Change-Id: Id7530b461276962933f86b6c2f719ae12ec4e3d6
Story: #2002586
Task: #24313
We want to default to running all tox environments under python 3, so
set the basepython value in each environment.
We do not want to specify a minor version number, because we do not
want to have to update the file every time we upgrade python.
We do not want to set the override once in testenv, because that
breaks the more specific versions used in default environments like
py35 and py36.
Change-Id: I21480026e566b3a312d34f7e446c6ef29593feff
The behaviour of the groupBy() function was fixed in 1.1.2 by
3fb9178401 to pass only the list of values
to be aggregated to the aggregator function, instead of passing both the
key and the list of values (and expecting both the key and the
aggregated value to be returned). This fix was incompatible with
existing expressions that used the aggregator argument to groupBy().
In the event of an error, fall back trying the previous syntax and see
if something plausible gets returned. If not, re-raise the original error.
This should mean that pre-existing expressions will continue to work,
while most outright bogus expressions should fail in a manner consistent
with the correct definition of the function.
Change-Id: Ic6c54be4ed99003fe56cf1a5329f3f1d84fd43c8
Closes-Bug: #1750032
The change e693e6ecef added slots to the
concrete classes in yaqltypes, however the abstract parent classes
HiddenParameterType and LazyParameterType were omitted, with the result
that their derived types would still contain an __dict__ attribute.
Change-Id: I8e7335ced58b06cfd0de81ceb721dc2f8396f85f
Release notes are version independent, so remove version/release
values. We've found that projects now require the service package
to be installed in order to build release notes, and this is entirely
due to the current convention of pulling in the version information.
Release notes should not need installation in order to build, so this
unnecessary version setting needs to be removed.
This is needed for new release notes publishing, see
I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting
at
http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html
.
Change-Id: I97d760edf8c78843eef45d2207bc0295e6fdae23
The 2.0.0 is breaking in that it removes the use of warnerrors in
build_sphinux.
YAQL isn't using that feature, so it shoudln't break.
The cap on pbr is preventing other OpenStack projects that would like to
use pbr 2.0.0 (and sphinx 1.5.1) from doing so as it breaks
co-installability with yaql
Also hacking <0.11 had a similar issue so use a newer version of that also
Change-Id: I23e1d7aa715003250131bf5c88a438f278e4d4da
Related-Bug: 1668848
* now it is possible to pass one or more YAQL expressions in command line.
This also disables interactive mode
* input file name can be specified as "-" to read from stdin
* added option to treat input as a string rather than JSON
* added option to treat input as an array (strings or JSONs)
* added option to output result in Python format rather than JSON
* removed redundant code that left from yaql v0.2
* print error messages to stderr rather than stdout
Change-Id: Ieb1037bc2ba59c2d2360edc4ac9b414e62a0cc79
'yaql.convertInputData' and 'yaql.convertOutputData' engine
options were added. By setting them to false one can suppress
input or output data conversion. For the input data this will prevent
yaql from converting mutable data structures (lists, dicts, sets) to
their immutable versions, which will break some of the constructs that
require hashable structures (for example set of lists, or list as a
dictionary key), for the output it will not expand produced iterators
and not convert tuples to lists. However this can greatly improve
performance in some cases
Change-Id: I240ce6646fe7dbc9522624739600b6c364bb9618