Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scheduled weekly dependency update for week 44 #834

Merged
merged 23 commits into from
Nov 8, 2018

Conversation

pyup-bot
Copy link
Contributor

@pyup-bot pyup-bot commented Nov 5, 2018

Update pytest from 3.9.3 to 3.10.0.

Changelog

3.10.0

==========================

Features
--------

- `2619 <https://github.com/pytest-dev/pytest/issues/2619>`_: Resume capturing output after ``continue`` with ``__import__("pdb").set_trace()``.

This also adds a new ``pytest_leave_pdb`` hook, and passes in ``pdb`` to the
existing ``pytest_enter_pdb`` hook.


- `4147 <https://github.com/pytest-dev/pytest/issues/4147>`_: Add ``-sw``, ``--stepwise`` as an alternative to ``--lf -x`` for stopping at the first failure, but starting the next test invocation from that test.  See `the documentation <https://docs.pytest.org/en/latest/cache.htmlstepwise>`__ for more info.


- `4188 <https://github.com/pytest-dev/pytest/issues/4188>`_: Make ``--color`` emit colorful dots when not running in verbose mode. Earlier, it would only colorize the test-by-test output if ``--verbose`` was also passed.


- `4225 <https://github.com/pytest-dev/pytest/issues/4225>`_: Improve performance with collection reporting in non-quiet mode with terminals.

The "collecting …" message is only printed/updated every 0.5s.



Bug Fixes
---------

- `2701 <https://github.com/pytest-dev/pytest/issues/2701>`_: Fix false ``RemovedInPytest4Warning: usage of Session... is deprecated, please use pytest`` warnings.


- `4046 <https://github.com/pytest-dev/pytest/issues/4046>`_: Fix problems with running tests in package ``__init__.py`` files.


- `4260 <https://github.com/pytest-dev/pytest/issues/4260>`_: Swallow warnings during anonymous compilation of source.


- `4262 <https://github.com/pytest-dev/pytest/issues/4262>`_: Fix access denied error when deleting stale directories created by ``tmpdir`` / ``tmp_path``.


- `611 <https://github.com/pytest-dev/pytest/issues/611>`_: Naming a fixture ``request`` will now raise a warning: the ``request`` fixture is internal and
should not be overwritten as it will lead to internal errors.



Improved Documentation
----------------------

- `4255 <https://github.com/pytest-dev/pytest/issues/4255>`_: Added missing documentation about the fact that module names passed to filter warnings are not regex-escaped.



Trivial/Internal Changes
------------------------

- `4272 <https://github.com/pytest-dev/pytest/issues/4272>`_: Display cachedir also in non-verbose mode if non-default.


- `4277 <https://github.com/pytest-dev/pytest/issues/4277>`_: pdb: improve message about output capturing with ``set_trace``.

Do not display "IO-capturing turned off/on" when ``-s`` is used to avoid
confusion.


- `4279 <https://github.com/pytest-dev/pytest/issues/4279>`_: Improve message and stack level of warnings issued by ``monkeypatch.setenv`` when the value of the environment variable is not a ``str``.
Links

Update virtualenv from 16.0.0 to 16.1.0.

Changelog

16.1.0

-------------------
* Fixed documentation to use pypi.org and correct curl options; :issue:`1042`
* bug fix: ensure prefix is absolute when creating a new virtual environment :issue:`1208`
* upgrade setuptools from ``39.1.0`` to ``40.5.0``
* upgrade wheel from ``0.31.1`` to ``0.32.2``
* upgrade pip from ``10.0.1`` to ``18.1``
* ``activate.csh`` does not use basename and handles newlines :issue:`1200`
* fix failure to copy on platforms that use lib64 :issue:`1189`
* enable tab-completion in the interactive interpreter by default, thanks to a new ``sys.__interactivehook__`` on Python 3 :issue:`967`
* suppress warning of usage of the deprecated ``imp`` module :issue:`1238`
Links

Update pyparsing from 2.2.2 to 2.3.0.

Changelog

2.3.0

-----------------------------
- NEW SUPPORT FOR UNICODE CHARACTER RANGES
This release introduces the pyparsing_unicode namespace class, defining
a series of language character sets to simplify the definition of alphas,
nums, alphanums, and printables in the following language sets:
. Arabic
. Chinese
. Cyrillic
. Devanagari
. Greek
. Hebrew
. Japanese (including Kanji, Katakana, and Hirigana subsets)
. Korean
. Latin1 (includes 7 and 8-bit Latin characters)
. Thai
. CJK (combination of Chinese, Japanese, and Korean sets)

For example, your code can define words using:

 korean_word = Word(pyparsing_unicode.Korean.alphas)

See their use in the updated examples greetingInGreek.py and
greetingInKorean.py.

This namespace class also offers access to these sets using their
unicode identifiers.

- POSSIBLE API CHANGE: Fixed bug where a parse action that explicitly 
returned the input ParseResults could add another nesting level in
the results if the current expression had a results name.

     vals = pp.OneOrMore(pp.pyparsing_common.integer)("int_values")
     
     def add_total(tokens):
         tokens['total'] = sum(tokens)
         return tokens   this line can be removed

     vals.addParseAction(add_total)
     print(vals.parseString("244 23 13 2343").dump())

Before the fix, this code would print (note the extra nesting level):

 [244, 23, 13, 2343]
 - int_values: [244, 23, 13, 2343]
   - int_values: [244, 23, 13, 2343]
   - total: 2623
 - total: 2623

With the fix, this code now prints:

 [244, 23, 13, 2343]
 - int_values: [244, 23, 13, 2343]
 - total: 2623

This fix will change the structure of ParseResults returned if a 
program defines a parse action that returns the tokens that were 
sent in. This is not necessary, and statements like "return tokens" 
in the example above can be safely deleted prior to upgrading to 
this release, in order to avoid the bug and get the new behavior.

Reported by seron in Issue 22, nice catch!

- POSSIBLE API CHANGE: Fixed a related bug where a results name 
erroneously created a second level of hierarchy in the returned 
ParseResults. The intent for accumulating results names into ParseResults
is that, in the absence of Group'ing, all names get merged into a
common namespace. This allows us to write:

    key_value_expr = (Word(alphas)("key") + '=' + Word(nums)("value"))
    result = key_value_expr.parseString("a = 100") 
 
and have result structured as {"key": "a", "value": "100"} 
instead of [{"key": "a"}, {"value": "100"}].

However, if a named expression is used in a higher-level non-Group 
expression that *also* has a name, a false sub-level would be created 
in the namespace:

     num = pp.Word(pp.nums)
     num_pair = ("[" + (num("A") + num("B"))("values") + "]")
     U = num_pair.parseString("[ 10 20 ]")
     print(U.dump())

Since there is no grouping, "A", "B", and "values" should all appear
at the same level in the results, as:

     ['[', '10', '20', ']']
     - A: '10'
     - B: '20'
     - values: ['10', '20']

Instead, an extra level of "A" and "B" show up under "values":

     ['[', '10', '20', ']']
     - A: '10'
     - B: '20'
     - values: ['10', '20']
       - A: '10'
       - B: '20'

This bug has been fixed. Now, if this hierarchy is desired, then a
Group should be added:

     num_pair = ("[" + pp.Group(num("A") + num("B"))("values") + "]")

Giving:

     ['[', ['10', '20'], ']']
     - values: ['10', '20']
       - A: '10'
       - B: '20'

But in no case should "A" and "B" appear in multiple levels. This bug-fix
fixes that.

If you have current code which relies on this behavior, then add or remove
Groups as necessary to get your intended results structure.

Reported by Athanasios Anastasiou.

- IndexError's raised in parse actions will get explicitly reraised 
as ParseExceptions that wrap the original IndexError. Since 
IndexError sometimes occurs as part of pyparsing's normal parsing 
logic, IndexErrors that are raised during a parse action may have
gotten silently reinterpreted as parsing errors. To retain the 
information from the IndexError, these exceptions will now be 
raised as ParseExceptions that reference the original IndexError. 
This wrapping will only be visible when run under Python3, since it
emulates "raise ... from ..." syntax. 

Addresses Issue 4, reported by guswns0528.

- Added Char class to simplify defining expressions of a single
character. (Char("abc") is equivalent to Word("abc", exact=1))

- Added class PrecededBy to perform lookbehind tests. PrecededBy is 
used in the same way as FollowedBy, passing in an expression that
must occur just prior to the current parse location.

For fixed-length expressions like a Literal, Keyword, Char, or a 
Word with an `exact` or `maxLen` length given, `PrecededBy(expr)` 
is sufficient. For varying length expressions like a Word with no 
given maximum length, `PrecededBy` must be constructed with an 
integer `retreat` argument, as in 
`PrecededBy(Word(alphas, nums), retreat=10)`, to specify the maximum 
number of characters pyparsing must look backward to make a match. 
pyparsing will check all the values from 1 up to retreat characters 
back from the current parse location.

When stepping backwards through the input string, PrecededBy does 
*not* skip over whitespace.

PrecededBy can be created with a results name so that, even though
it always returns an empty parse result, the result *can* include
named results.

Idea first suggested in Issue 30 by Freakwill.

- Updated FollowedBy to accept expressions that contain named results,
so that results names defined in the lookahead expression will be 
returned, even though FollowedBy always returns an empty list.
Inspired by the same feature implemented in PrecededBy.
Links

Update filelock from 3.0.9 to 3.0.10.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update paste from 3.0.1 to 3.0.4.

Changelog

3.0.3

-----

* Ensure pytest requirements set properly.

3.0.2

-----

* Encoding fixes in ``paste.fixture``.
Links

Update pytest-xdist from 1.23.2 to 1.24.0.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update urllib3 from 1.24 to 1.24.1.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update hypothesis from 3.81.0 to 3.82.1.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update setuptools from 40.4.3 to 40.5.0.

Changelog

40.5.0

-------

* 1335: In ``pkg_resources.normalize_path``, fix issue on Cygwin when cwd contains symlinks.
* 1502: Deprecated support for downloads from Subversion in package_index/easy_install.
* 1517: Dropped use of six.u in favor of `u""` literals.
* 1520: Added support for ``data_files`` in ``setup.cfg``.
* 1525: Fixed rendering of the deprecation warning in easy_install doc.
Links

Update SQLAlchemy from 1.2.12 to 1.2.13.

Changelog

1.2.13

:released: October 31, 2018

 .. change::
    :tags: bug, postgresql
    :tickets: 4337

    Added support for the :class:`.aggregate_order_by` function to receive
    multiple ORDER BY elements, previously only a single element was accepted.


 .. change::
    :tags: bug, mysql
    :tickets: 4348

    Added word ``function`` to the list of reserved words for MySQL, which is
    now a keyword in MySQL 8.0

 .. change::
     :tags: feature, sql
     :versions: 1.3.0b1

     Refactored :class:`.SQLCompiler` to expose a
     :meth:`.SQLCompiler.group_by_clause` method similar to the
     :meth:`.SQLCompiler.order_by_clause` and :meth:`.SQLCompiler.limit_clause`
     methods, which can be overridden by dialects to customize how GROUP BY
     renders.  Pull request courtesy Samuel Chou.

 .. change::
    :tags: bug, misc

    Fixed issue where part of the utility language helper internals was passing
    the wrong kind of argument to the Python ``__import__`` builtin as the list
    of modules to be imported.  The issue produced no symptoms within the core
    library but could cause issues with external applications that redefine the
    ``__import__`` builtin or otherwise instrument it. Pull request courtesy Joe
    Urciuoli.

 .. change::
    :tags: bug, orm
    :tickets: 4349

    Fixed bug where "dynamic" loader needs to explicitly set the "secondary"
    table in the FROM clause of the query, to suit the case where the secondary
    is a join object that is otherwise not pulled into the query from its
    columns alone.


 .. change::
    :tags: bug, orm, declarative
    :tickets: 4350

    Fixed regression caused by :ticket:`4326` in version 1.2.12 where using
    :class:`.declared_attr` with a mixin in conjunction with
    :func:`.orm.synonym` would fail to map the synonym properly to an inherited
    subclass.

 .. change::
    :tags: bug, misc, py3k
    :tickets: 4339

    Fixed additional warnings generated by Python 3.7 due to changes in the
    organization of the Python ``collections`` and ``collections.abc`` packages.
    Previous ``collections`` warnings were fixed in version 1.2.11. Pull request
    courtesy xtreak.

 .. change::
    :tags: bug, ext

    Added missing ``.index()`` method to list-based association collections
    in the association proxy extension.

 .. change::
    :tags: bug, mysql
    :tickets: 4344

    Added a workaround for a MySQL bug 88718 introduced in the 8.0 series,
    where the reflection of a foreign key constraint is not reporting the
    correct case sensitivity for the referred column, leading to errors during
    use of the reflected constraint such as when using the automap extension.
    The workaround emits an additional query to the information_schema tables in
    order to retrieve the correct case sensitive name.

 .. change::
    :tags: bug, sql
    :tickets: 4341

    Fixed bug where the :paramref:`.Enum.create_constraint` flag on  the
    :class:`.Enum` datatype would not be propagated to copies of the type, which
    affects use cases such as declarative mixins and abstract bases.

 .. change::
    :tags: bug, orm, declarative
    :tickets: 4352

    The column conflict resolution technique discussed at
    :ref:`declarative_column_conflicts` is now functional for a :class:`.Column`
    that is also a primary key column.  Previously, a check for primary key
    columns declared on a single-inheritance subclass would occur before the
    column copy were allowed to pass.


.. changelog::
Links

Update connexion from 1.5.3 to 2.0.0.

The bot wasn't able to find a changelog for this release. Got an idea?

Links

Update python-dateutil from 2.7.3 to 2.7.5.

Changelog

2.7.4

==========================

Data updates
------------

- Updated tzdata version to 2018f.
Links

@nthomas-mozilla
Copy link
Contributor

@allan-silva Looks like we have some bustage from connexion v2.0 switching from swagger-spec-validator to openapi-spec-validator. I see spec-synthase uses the former, so we might be running into some compat issues. What do you think the best way forward here is ?

@allan-silva
Copy link
Contributor

allan-silva commented Nov 6, 2018

@nthomas-mozilla , I think we should stay in 1.x for now. I'll try look (in next weekend) if it is possible change spec-synthase to support both validators . Spec-synthase performs validations only in the CLI tool or from a explicity call to validate() func.

Probably will be necessary review the Balrog api specs, once it is not strict compliant with Swagger 2.0.

@nthomas-mozilla nthomas-mozilla merged commit cee9133 into master Nov 8, 2018
@nthomas-mozilla nthomas-mozilla deleted the pyup-scheduled-update-2018-11-05 branch November 8, 2018 23:31
@nthomas-mozilla
Copy link
Contributor

Thanks Allan. We have bug 1387064 on file already to modify the api specs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants