hasgeek / hasjob

Hasjob, the Hasgeek job board
https://hasjob.co
GNU Affero General Public License v3.0
235 stars 80 forks source link

Scheduled monthly dependency update for February #647

Closed pyup-bot closed 2 years ago

pyup-bot commented 2 years ago

Update coverage from 5.5 to 6.3.

Changelog ### 6.3 ``` ------------------------ - Feature: Added the ``lcov`` command to generate reports in LCOV format. Thanks, `Bradley Burns <pull 1289_>`_. Closes issues `587 <issue 587_>`_ and `626 <issue 626_>`_. - Feature: the coverage data file can now be specified on the command line with the ``--data-file`` option in any command that reads or writes data. This is in addition to the existing ``COVERAGE_FILE`` environment variable. Closes `issue 624`_. Thanks, `Nikita Bloshchanevich <pull 1304_>`_. - Feature: coverage measurement data will now be written when a SIGTERM signal is received by the process. This includes :meth:`Process.terminate <python:multiprocessing.Process.terminate>`, and other ways to terminate a process. Currently this is only on Linux and Mac; Windows is not supported. Fixes `issue 1307`_. - Dropped support for Python 3.6, which reached end-of-life on 2021-12-23. - Updated Python 3.11 support to 3.11.0a4, fixing `issue 1294`_. - Fix: the coverage data file is now created in a more robust way, to avoid problems when multiple processes are trying to write data at once. Fixes issues `1303 <issue 1303_>`_ and `883 <issue 883_>`_. - Fix: a .gitignore file will only be written into the HTML report output directory if the directory is empty. This should prevent certain unfortunate accidents of writing the file where it is not wanted. - Releases now have MacOS arm64 wheels for Apple Silicon, fixing `issue 1288`_. .. _issue 587: https://github.com/nedbat/coveragepy/issues/587 .. _issue 624: https://github.com/nedbat/coveragepy/issues/624 .. _issue 626: https://github.com/nedbat/coveragepy/issues/626 .. _issue 883: https://github.com/nedbat/coveragepy/issues/883 .. _issue 1288: https://github.com/nedbat/coveragepy/issues/1288 .. _issue 1294: https://github.com/nedbat/coveragepy/issues/1294 .. _issue 1303: https://github.com/nedbat/coveragepy/issues/1303 .. _issue 1307: https://github.com/nedbat/coveragepy/issues/1307 .. _pull 1289: https://github.com/nedbat/coveragepy/pull/1289 .. _pull 1304: https://github.com/nedbat/coveragepy/pull/1304 .. _changes_62: ``` ### 6.2 ``` ------------------------ - Feature: Now the ``--concurrency`` setting can now have a list of values, so that threads and another lightweight threading package can be measured together, such as ``--concurrency=gevent,thread``. Closes `issue 1012`_ and `issue 1082`_. - Fix: A module specified as the ``source`` setting is imported during startup, before the user program imports it. This could cause problems if the rest of the program isn't ready yet. For example, `issue 1203`_ describes a Django setting that is accessed before settings have been configured. Now the early import is wrapped in a try/except so errors then don't stop execution. - Fix: A colon in a decorator expression would cause an exclusion to end too early, preventing the exclusion of the decorated function. This is now fixed. - Fix: The HTML report now will not overwrite a .gitignore file that already exists in the HTML output directory (follow-on for `issue 1244`_). - API: The exceptions raised by Coverage.py have been specialized, to provide finer-grained catching of exceptions by third-party code. - API: Using ``suffix=False`` when constructing a Coverage object with multiprocessing wouldn't suppress the data file suffix (`issue 989`_). This is now fixed. - Debug: The ``coverage debug data`` command will now sniff out combinable data files, and report on all of them. - Debug: The ``coverage debug`` command used to accept a number of topics at a time, and show all of them, though this was never documented. This no longer works, to allow for command-line options in the future. .. _issue 989: https://github.com/nedbat/coveragepy/issues/989 .. _issue 1012: https://github.com/nedbat/coveragepy/issues/1012 .. _issue 1082: https://github.com/nedbat/coveragepy/issues/1082 .. _issue 1203: https://github.com/nedbat/coveragepy/issues/1203 .. _changes_612: ``` ### 6.1.2 ``` -------------------------- - Python 3.11 is supported (tested with 3.11.0a2). One still-open issue has to do with `exits through with-statements <issue 1270_>`_. - Fix: When remapping file paths through the ``[paths]`` setting while combining, the ``[run] relative_files`` setting was ignored, resulting in absolute paths for remapped file names (`issue 1147`_). This is now fixed. - Fix: Complex conditionals over excluded lines could have incorrectly reported a missing branch (`issue 1271`_). This is now fixed. - Fix: More exceptions are now handled when trying to parse source files for reporting. Problems that used to terminate coverage.py can now be handled with ``[report] ignore_errors``. This helps with plugins failing to read files (`django_coverage_plugin issue 78`_). - Fix: Removed another vestige of jQuery from the source tarball (`issue 840`_). - Fix: Added a default value for a new-to-6.x argument of an internal class. This unsupported class is being used by coveralls (`issue 1273`_). Although I'd rather not "fix" unsupported interfaces, it's actually nicer with a default value. .. _django_coverage_plugin issue 78: https://github.com/nedbat/django_coverage_plugin/issues/78 .. _issue 1147: https://github.com/nedbat/coveragepy/issues/1147 .. _issue 1270: https://github.com/nedbat/coveragepy/issues/1270 .. _issue 1271: https://github.com/nedbat/coveragepy/issues/1271 .. _issue 1273: https://github.com/nedbat/coveragepy/issues/1273 .. _changes_611: ``` ### 6.1.1 ``` -------------------------- - Fix: The sticky header on the HTML report didn't work unless you had branch coverage enabled. This is now fixed: the sticky header works for everyone. (Do people still use coverage without branch measurement!? j/k) - Fix: When using explicitly declared namespace packages, the "already imported a file that will be measured" warning would be issued (`issue 888`_). This is now fixed. .. _issue 888: https://github.com/nedbat/coveragepy/issues/888 .. _changes_61: ``` ### 6.1 ``` ------------------------ - Deprecated: The ``annotate`` command and the ``Coverage.annotate`` function will be removed in a future version, unless people let me know that they are using it. Instead, the ``html`` command gives better-looking (and more accurate) output, and the ``report -m`` command will tell you line numbers of missing lines. Please get in touch if you have a reason to use ``annotate`` over those better options: nednedbatchelder.com. - Feature: Coverage now sets an environment variable, ``COVERAGE_RUN`` when running your code with the ``coverage run`` command. The value is not important, and may change in the future. Closes `issue 553`_. - Feature: The HTML report pages for Python source files now have a sticky header so the file name and controls are always visible. - Feature: The ``xml`` and ``json`` commands now describe what they wrote where. - Feature: The ``html``, ``combine``, ``xml``, and ``json`` commands all accept a ``-q/--quiet`` option to suppress the messages they write to stdout about what they are doing (`issue 1254`_). - Feature: The ``html`` command writes a ``.gitignore`` file into the HTML output directory, to prevent the report from being committed to git. If you want to commit it, you will need to delete that file. Closes `issue 1244`_. - Feature: Added support for PyPy 3.8. - Fix: More generated code is now excluded from measurement. Code such as `attrs`_ boilerplate, or doctest code, was being measured though the synthetic line numbers meant they were never reported. Once Cython was involved though, the generated .so files were parsed as Python, raising syntax errors, as reported in `issue 1160`_. This is now fixed. - Fix: When sorting human-readable names, numeric components are sorted correctly: file10.py will appear after file9.py. This applies to file names, module names, environment variables, and test contexts. - Performance: Branch coverage measurement is faster, though you might only notice on code that is executed many times, such as long-running loops. - Build: jQuery is no longer used or vendored (`issue 840`_ and `issue 1118`_). Huge thanks to Nils Kattenbeck (septatrix) for the conversion to vanilla JavaScript in `pull request 1248`_. .. _issue 553: https://github.com/nedbat/coveragepy/issues/553 .. _issue 840: https://github.com/nedbat/coveragepy/issues/840 .. _issue 1118: https://github.com/nedbat/coveragepy/issues/1118 .. _issue 1160: https://github.com/nedbat/coveragepy/issues/1160 .. _issue 1244: https://github.com/nedbat/coveragepy/issues/1244 .. _pull request 1248: https://github.com/nedbat/coveragepy/pull/1248 .. _issue 1254: https://github.com/nedbat/coveragepy/issues/1254 .. _attrs: https://www.attrs.org/ .. _changes_602: ``` ### 6.0.2 ``` -------------------------- - Namespace packages being measured weren't properly handled by the new code that ignores third-party packages. If the namespace package was installed, it was ignored as a third-party package. That problem (`issue 1231`_) is now fixed. - Packages named as "source packages" (with ``source``, or ``source_pkgs``, or pytest-cov's ``--cov``) might have been only partially measured. Their top-level statements could be marked as unexecuted, because they were imported by coverage.py before measurement began (`issue 1232`_). This is now fixed, but the package will be imported twice, once by coverage.py, then again by your test suite. This could cause problems if importing the package has side effects. - The :meth:`.CoverageData.contexts_by_lineno` method was documented to return a dict, but was returning a defaultdict. Now it returns a plain dict. It also no longer returns negative numbered keys. .. _issue 1231: https://github.com/nedbat/coveragepy/issues/1231 .. _issue 1232: https://github.com/nedbat/coveragepy/issues/1232 .. _changes_601: ``` ### 6.0.1 ``` -------------------------- - In 6.0, the coverage.py exceptions moved from coverage.misc to coverage.exceptions. These exceptions are not part of the public supported API, CoverageException is. But a number of other third-party packages were importing the exceptions from coverage.misc, so they are now available from there again (`issue 1226`_). - Changed an internal detail of how tomli is imported, so that tomli can use coverage.py for their own test suite (`issue 1228`_). - Defend against an obscure possibility under code obfuscation, where a function can have an argument called "self", but no local named "self" (`pull request 1210`_). Thanks, Ben Carlsson. .. _pull request 1210: https://github.com/nedbat/coveragepy/pull/1210 .. _issue 1226: https://github.com/nedbat/coveragepy/issues/1226 .. _issue 1228: https://github.com/nedbat/coveragepy/issues/1228 .. _changes_60: ``` ### 6.0 ``` ------------------------ - The ``coverage html`` command now prints a message indicating where the HTML report was written. Fixes `issue 1195`_. - The ``coverage combine`` command now prints messages indicating each data file being combined. Fixes `issue 1105`_. - The HTML report now includes a sentence about skipped files due to ``skip_covered`` or ``skip_empty`` settings. Fixes `issue 1163`_. - Unrecognized options in the configuration file are no longer errors. They are now warnings, to ease the use of coverage across versions. Fixes `issue 1035`_. - Fix handling of exceptions through context managers in Python 3.10. A missing exception is no longer considered a missing branch from the with statement. Fixes `issue 1205`_. - Fix another rarer instance of "Error binding parameter 0 - probably unsupported type." (`issue 1010`_). - Creating a directory for the coverage data file now is safer against conflicts when two coverage runs happen simultaneously (`pull 1220`_). Thanks, Clément Pit-Claudel. .. _issue 1035: https://github.com/nedbat/coveragepy/issues/1035 .. _issue 1105: https://github.com/nedbat/coveragepy/issues/1105 .. _issue 1163: https://github.com/nedbat/coveragepy/issues/1163 .. _issue 1195: https://github.com/nedbat/coveragepy/issues/1195 .. _issue 1205: https://github.com/nedbat/coveragepy/issues/1205 .. _pull 1220: https://github.com/nedbat/coveragepy/pull/1220 .. _changes_60b1: ``` ### 6.0b1 ``` -------------------------- - Dropped support for Python 2.7, PyPy 2, and Python 3.5. - Added support for the Python 3.10 ``match/case`` syntax. - Data collection is now thread-safe. There may have been rare instances of exceptions raised in multi-threaded programs. - Plugins (like the `Django coverage plugin`_) were generating "Already imported a file that will be measured" warnings about Django itself. These have been fixed, closing `issue 1150`_. - Warnings generated by coverage.py are now real Python warnings. - Using ``--fail-under=100`` with coverage near 100% could result in the self-contradictory message :code:`total of 100 is less than fail-under=100`. This bug (`issue 1168`_) is now fixed. - The ``COVERAGE_DEBUG_FILE`` environment variable now accepts ``stdout`` and ``stderr`` to write to those destinations. - TOML parsing now uses the `tomli`_ library. - Some minor changes to usually invisible details of the HTML report: - Use a modern hash algorithm when fingerprinting, for high-security environments (`issue 1189`_). When generating the HTML report, we save the hash of the data, to avoid regenerating an unchanged HTML page. We used to use MD5 to generate the hash, and now use SHA-3-256. This was never a security concern, but security scanners would notice the MD5 algorithm and raise a false alarm. - Change how report file names are generated, to avoid leading underscores (`issue 1167`_), to avoid rare file name collisions (`issue 584`_), and to avoid file names becoming too long (`issue 580`_). .. _Django coverage plugin: https://pypi.org/project/django-coverage-plugin/ .. _issue 580: https://github.com/nedbat/coveragepy/issues/580 .. _issue 584: https://github.com/nedbat/coveragepy/issues/584 .. _issue 1150: https://github.com/nedbat/coveragepy/issues/1150 .. _issue 1167: https://github.com/nedbat/coveragepy/issues/1167 .. _issue 1168: https://github.com/nedbat/coveragepy/issues/1168 .. _issue 1189: https://github.com/nedbat/coveragepy/issues/1189 .. _tomli: https://pypi.org/project/tomli/ .. _changes_56b1: ``` ### 5.6b1 ``` -------------------------- Note: 5.6 final was never released. These changes are part of 6.0. - Third-party packages are now ignored in coverage reporting. This solves a few problems: - Coverage will no longer report about other people's code (`issue 876`_). This is true even when using ``--source=.`` with a venv in the current directory. - Coverage will no longer generate "Already imported a file that will be measured" warnings about coverage itself (`issue 905`_). - The HTML report uses j/k to move up and down among the highlighted chunks of code. They used to highlight the current chunk, but 5.0 broke that behavior. Now the highlighting is working again. - The JSON report now includes ``percent_covered_display``, a string with the total percentage, rounded to the same number of decimal places as the other reports' totals. .. _issue 876: https://github.com/nedbat/coveragepy/issues/876 .. _issue 905: https://github.com/nedbat/coveragepy/issues/905 .. _changes_55: ```
Links - PyPI: https://pypi.org/project/coverage - Changelog: https://pyup.io/changelogs/coverage/ - Repo: https://github.com/nedbat/coveragepy

Update dnspython from 2.1.0 to 2.2.0.

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

Links - PyPI: https://pypi.org/project/dnspython

Update Flask from 2.0.1 to 2.0.2.

Changelog ### 2.0.2 ``` ------------- Released 2021-10-04 - Fix type annotation for ``teardown_*`` methods. :issue:`4093` - Fix type annotation for ``before_request`` and ``before_app_request`` decorators. :issue:`4104` - Fixed the issue where typing requires template global decorators to accept functions with no arguments. :issue:`4098` - Support View and MethodView instances with async handlers. :issue:`4112` - Enhance typing of ``app.errorhandler`` decorator. :issue:`4095` - Fix registering a blueprint twice with differing names. :issue:`4124` - Fix the type of ``static_folder`` to accept ``pathlib.Path``. :issue:`4150` - ``jsonify`` handles ``decimal.Decimal`` by encoding to ``str``. :issue:`4157` - Correctly handle raising deferred errors in CLI lazy loading. :issue:`4096` - The CLI loader handles ``**kwargs`` in a ``create_app`` function. :issue:`4170` - Fix the order of ``before_request`` and other callbacks that trigger before the view returns. They are called from the app down to the closest nested blueprint. :issue:`4229` ```
Links - PyPI: https://pypi.org/project/flask - Changelog: https://pyup.io/changelogs/flask/ - Homepage: https://palletsprojects.com/p/flask

Update Flask-WTF from 0.15.1 to 1.0.0.

Changelog ### 1.0.0 ``` -------------- Released 2021-11-07 - Deprecated items removal :pr:`484` - Support for alternatives captcha services :pr:`425` :pr:`342` :pr:`387` :issue:`384` ```
Links - PyPI: https://pypi.org/project/flask-wtf - Changelog: https://pyup.io/changelogs/flask-wtf/ - Repo: https://github.com/wtforms/flask-wtf/ - Docs: https://pythonhosted.org/Flask-WTF/

Update geoip2 from 4.4.0 to 4.5.0.

Changelog ### 4.5.0 ``` ++++++++++++++++++ * Support for mobile country code (MCC) and mobile network codes (MNC) was added for the GeoIP2 ISP and Enterprise databases as well as the GeoIP2 City and Insights web services. ``mobile_country_code`` and ``mobile_network_code`` attributes were added to ``geoip2.model.ISP`` for the GeoIP2 ISP database and ``geoip2.record.Traits`` for the Enterprise database and the GeoIP2 City and Insights web services. We expect this data to be available by late January, 2022. ```
Links - PyPI: https://pypi.org/project/geoip2 - Changelog: https://pyup.io/changelogs/geoip2/ - Homepage: http://www.maxmind.com/ - Docs: https://pythonhosted.org/geoip2/

Update jsmin from 3.0.0 to 3.0.1.

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

Links - PyPI: https://pypi.org/project/jsmin - Changelog: https://pyup.io/changelogs/jsmin/ - Repo: https://github.com/tikitu/jsmin/

Update Markdown from 3.3.4 to 3.3.6.

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

Links - PyPI: https://pypi.org/project/markdown - Repo: https://Python-Markdown.github.io/

Update Pillow from 8.3.2 to 9.0.0.

Changelog ### 9.0.0 ``` ------------------ - Restrict builtins for ImageMath.eval(). CVE-2022-22817 5923 [radarhere] - Ensure JpegImagePlugin stops at the end of a truncated file 5921 [radarhere] - Fixed ImagePath.Path array handling. CVE-2022-22815, CVE-2022-22816 5920 [radarhere] - Remove consecutive duplicate tiles that only differ by their offset 5919 [radarhere] - Improved I;16 operations on big endian 5901 [radarhere] - Limit quantized palette to number of colors 5879 [radarhere] - Fixed palette index for zeroed color in FASTOCTREE quantize 5869 [radarhere] - When saving RGBA to GIF, make use of first transparent palette entry 5859 [radarhere] - Pass SAMPLEFORMAT to libtiff 5848 [radarhere] - Added rounding when converting P and PA 5824 [radarhere] - Improved putdata() documentation and data handling 5910 [radarhere] - Exclude carriage return in PDF regex to help prevent ReDoS 5912 [hugovk] - Fixed freeing pointer in ImageDraw.Outline.transform 5909 [radarhere] - Added ImageShow support for xdg-open 5897 [m-shinder, radarhere] - Support 16-bit grayscale ImageQt conversion 5856 [cmbruns, radarhere] - Convert subsequent GIF frames to RGB or RGBA 5857 [radarhere] - Do not prematurely return in ImageFile when saving to stdout 5665 [infmagic2047, radarhere] - Added support for top right and bottom right TGA orientations 5829 [radarhere] - Corrected ICNS file length in header 5845 [radarhere] - Block tile TIFF tags when saving 5839 [radarhere] - Added line width argument to polygon 5694 [radarhere] - Do not redeclare class each time when converting to NumPy 5844 [radarhere] - Only prevent repeated polygon pixels when drawing with transparency 5835 [radarhere] - Add support for pickling TrueType fonts 5826 [hugovk, radarhere] - Only prefer command line tools SDK on macOS over default MacOSX SDK 5828 [radarhere] - Drop support for soon-EOL Python 3.6 5768 [hugovk, nulano, radarhere] - Fix compilation on 64-bit Termux 5793 [landfillbaby] - Use title for display in ImageShow 5788 [radarhere] - Remove support for FreeType 2.7 and older 5777 [hugovk, radarhere] - Fix for PyQt6 5775 [hugovk, radarhere] - Removed deprecated PILLOW_VERSION, Image.show command parameter, Image._showxv and ImageFile.raise_ioerror 5776 [radarhere] ``` ### 8.4.0 ``` ------------------ - Prefer global transparency in GIF when replacing with background color 5756 [radarhere] - Added "exif" keyword argument to TIFF saving 5575 [radarhere] - Copy Python palette to new image in quantize() 5696 [radarhere] - Read ICO AND mask from end 5667 [radarhere] - Actually check the framesize in FliDecode.c 5659 [wiredfool] - Determine JPEG2000 mode purely from ihdr header box 5654 [radarhere] - Fixed using info dictionary when writing multiple APNG frames 5611 [radarhere] - Allow saving 1 and L mode TIFF with PhotometricInterpretation 0 5655 [radarhere] - For GIF save_all with palette, do not include palette with each frame 5603 [radarhere] - Keep transparency when converting from P to LA or PA 5606 [radarhere] - Copy palette to new image in transform() 5647 [radarhere] - Added "transparency" argument to EpsImagePlugin load() 5620 [radarhere] - Corrected pathlib.Path detection when saving 5633 [radarhere] - Added WalImageFile class 5618 [radarhere] - Consider I;16 pixel size when drawing text 5598 [radarhere] - If default conversion from P is RGB with transparency, convert to RGBA 5594 [radarhere] - Speed up rotating square images by 90 or 270 degrees 5646 [radarhere] - Add support for reading DPI information from JPEG2000 images [rogermb, radarhere] - Catch TypeError from corrupted DPI value in EXIF 5639 [homm, radarhere] - Do not close file pointer when saving SGI images 5645 [farizrahman4u, radarhere] - Deprecate ImagePalette size parameter 5641 [radarhere, hugovk] - Prefer command line tools SDK on macOS 5624 [radarhere] - Added tags when saving YCbCr TIFF 5597 [radarhere] - PSD layer count may be negative 5613 [radarhere] - Fixed ImageOps expand with tuple border on P image 5615 [radarhere] - Fixed error saving APNG with duplicate frames and different duration times 5609 [thak1411, radarhere] ```
Links - PyPI: https://pypi.org/project/pillow - Changelog: https://pyup.io/changelogs/pillow/ - Homepage: https://python-pillow.org

Update progressbar2 from 3.53.3 to 4.0.0.

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

Links - PyPI: https://pypi.org/project/progressbar2 - Repo: https://github.com/WoLpH/python-progressbar

Update psycopg2 from 2.9.1 to 2.9.3.

Changelog ### 2.9.3 ``` ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Alpine (musl) wheels now available (:ticket:`1148`). ``` ### 2.9.2 ``` ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - Raise `ValueError` for dates >= Y10k (:ticket:`1307`). - `~psycopg2.errorcodes` map and `~psycopg2.errors` classes updated to PostgreSQL 14. - Add preliminary support for Python 3.11 (:tickets:`1376, 1386`). - Wheel package compiled against OpenSSL 1.1.1l and PostgreSQL 14.1 (:ticket:`1388`). ```
Links - PyPI: https://pypi.org/project/psycopg2 - Changelog: https://pyup.io/changelogs/psycopg2/ - Homepage: https://psycopg.org/

Update pytz from 2021.1 to 2021.3.

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

Links - PyPI: https://pypi.org/project/pytz - Homepage: http://pythonhosted.org/pytz - Docs: https://pythonhosted.org/pytz/

Update SQLAlchemy from 1.4.25 to 1.4.31.

Changelog ### 1.4.27 ``` :include_notes_from: unreleased_14 .. changelog:: ``` ### 1.4.26 ``` :released: October 19, 2021 .. change:: :tags: orm :tickets: 6284 Passing a :class:`.Query` object to :meth:`_orm.Session.execute` is not the intended use of this object, and will now raise a deprecation warning. .. change:: :tags: bug, postgresql :tickets: 5387 Added a "disconnect" condition for the "SSL SYSCALL error: Bad address" error message as reported by psycopg2. Pull request courtesy Zeke Brechtel. .. change:: :tags: bug, orm Improved the exception message generated when configuring a mapping with joined table inheritance where the two tables either have no foreign key relationships set up, or where they have multiple foreign key relationships set up. The message is now ORM specific and includes context that the :paramref:`_orm.Mapper.inherit_condition` parameter may be needed particularly for the ambiguous foreign keys case. .. change:: :tags: bug, sql :tickets: 6520 Fixed issue where SQL queries using the :meth:`_functions.FunctionElement.within_group` construct could not be pickled, typically when using the ``sqlalchemy.ext.serializer`` extension but also for general generic pickling. .. change:: :tags: bug, orm :tickets: 7189 Fixed issue with :func:`_orm.with_loader_criteria` feature where ON criteria would not be added to a JOIN for a query of the form ``select(A).join(B)``, stating a target while making use of an implicit ON clause. .. change:: :tags: bug, orm :tickets: 7205 Fixed bug where the ORM "plugin", necessary for features such as :func:`_orm.with_loader_criteria` to work correctly, would not be applied to a :func:`_sql.select` which queried from an ORM column expression if it made use of the :meth:`_sql.ColumnElement.label` modifier. .. change:: :tags: bug, mypy :tickets: 6435 Fixed issue in mypy plugin to improve upon some issues detecting ``Enum()`` SQL types containing custom Python enumeration classes. Pull request courtesy Hiroshi Ogawa. .. change:: :tags: bug, mysql :tickets: 7144 Fixed issue in MySQL :func:`_mysql.match` construct where passing a clause expression such as :func:`_sql.bindparam` or other SQL expression for the "against" parameter would fail. Pull request courtesy Anton Kovalevich. .. change:: :tags: bug, mssql :tickets: 7160 Fixed issue with :meth:`.Inspector.get_foreign_keys` where foreign keys were omitted if they were established against a unique index instead of a unique constraint. .. change:: :tags: usecase, mssql Added reflection support for SQL Server foreign key options, including "ON UPDATE" and "ON DELETE" values of "CASCADE" and "SET NULL". .. change:: :tags: bug, sql :tickets: 4123 Repaired issue in new :paramref:`_sql.HasCTE.cte.nesting` parameter introduced with :ticket:`4123` where a recursive :class:`_sql.CTE` using :paramref:`_sql.HasCTE.cte.recursive` in typical conjunction with UNION would not compile correctly. Additionally makes some adjustments so that the :class:`_sql.CTE` construct creates a correct cache key. Pull request courtesy Eric Masseran. .. change:: :tags: bug, engine :tickets: 7130 Fixed issue where the deprecation warning for the :class:`.URL` constructor which indicates that the :meth:`.URL.create` method should be used would not emit if a full positional argument list of seven arguments were passed; additionally, validation of URL arguments will now occur if the constructor is called in this way, which was being skipped previously. .. change:: :tags: bug, orm :tickets: 7103 Add missing methods added in :ticket:`6991` to :class:`_scoping.scoped_session` and :func:`_asyncio.async_scoped_session`. .. change:: :tags: bug, examples :tickets: 7169 Repaired the examples in examples/versioned_rows to use SQLAlchemy 1.4 APIs correctly; these examples had been missed when API changes like removing "passive" from :meth:`_orm.Session.is_modified` were made as well as the :meth:`_ormevents.SessionEvents.do_orm_execute()` event hook were added. .. change:: :tags: bug, orm :tickets: 6974, 6972 An extra layer of warning messages has been added to the functionality of :meth:`_orm.Query.join` and the ORM version of :meth:`_sql.Select.join`, where a few places where "automatic aliasing" continues to occur will now be called out as a pattern to avoid, mostly specific to the area of joined table inheritance where classes that share common base tables are being joined together without using explicit aliases. One case emits a legacy warning for a pattern that's not recommended, the other case is fully deprecated. The automatic aliasing within ORM join() which occurs for overlapping mapped tables does not work consistently with all APIs such as :func:`_orm.contains_eager()`, and rather than continue to try to make these use cases work everywhere, replacing with a more user-explicit pattern is clearer, less prone to bugs and simplifies SQLAlchemy's internals further. The warnings include links to the errors.rst page where each pattern is demonstrated along with the recommended pattern to fix. .. seealso:: :ref:`error_xaj1` :ref:`error_xaj2` .. change:: :tags: bug, sql :tickets: 7061 Account for the :paramref:`_sql.table.schema` parameter passed to the :func:`_sql.table` construct, such that it is taken into account when accessing the :attr:`_sql.TableClause.fullname` attribute. .. change:: :tags: bug, sql :tickets: 7140 Fixed an inconsistency in the :meth:`_sql.ColumnOperators.any_` / :meth:`_sql.ColumnOperators.all_` functions / methods where the special behavior these functions have of "flipping" the expression such that the "ANY" / "ALL" expression is always on the right side would not function if the comparison were against the None value, that is, "column.any_() == None" should produce the same SQL expression as "null() == column.any_()". Added more docs to clarify this as well, plus mentions that any_() / all_() generally supersede the ARRAY version "any()" / "all()". .. change:: :tags: engine, bug, postgresql :tickets: 3247 The :meth:`_reflection.Inspector.reflect_table` method now supports reflecting tables that do not have user defined columns. This allows :meth:`_schema.MetaData.reflect` to properly complete reflection on databases that contain such tables. Currently, only PostgreSQL is known to support such a construct among the common database backends. .. change:: :tags: sql, bug, regression :tickets: 7177 Fixed issue where "expanding IN" would fail to function correctly with datatypes that use the :meth:`_types.TypeEngine.bind_expression` method, where the method would need to be applied to each element of the IN expression rather than the overall IN expression itself. .. change:: :tags: postgresql, bug, regression :tickets: 7177 Fixed issue where IN expressions against a series of array elements, as can be done with PostgreSQL, would fail to function correctly due to multiple issues within the "expanding IN" feature of SQLAlchemy Core that was standardized in version 1.4. The psycopg2 dialect now makes use of the :meth:`_types.TypeEngine.bind_expression` method with :class:`_types.ARRAY` to portably apply the correct casts to elements. The asyncpg dialect was not affected by this issue as it applies bind-level casts at the driver level rather than at the compiler level. .. change:: :tags: bug, mysql :tickets: 7204 Fixed installation issue where the ``sqlalchemy.dialects.mysql`` module would not be importable if "greenlet" were not installed. .. change:: :tags: bug, mssql :tickets: 7168 Fixed issue with :meth:`.Inspector.has_table` where it would return False if a local temp table with the same name from a different session happened to be returned first when querying tempdb. This is a continuation of :ticket:`6910` which accounted for the temp table existing only in the alternate session and not the current one. .. change:: :tags: bug, orm :tickets: 7128 Fixed bug where iterating a :class:`.Result` from a :class:`_orm.Session` after that :class:`_orm.Session` were closed would partially attach objects to that session in an essentially invalid state. It now raises an exception with a link to new documentation if an **un-buffered** result is iterated from a :class:`_orm.Session` that was closed or otherwise had the :meth:`_orm.Session.expunge_all` method called after that :class:`.Result` was generated. The ``prebuffer_rows`` execution option, as is used automatically by the asyncio extension for client-side result sets, may be used to produce a :class:`.Result` where the ORM objects are prebuffered, and in this case iterating the result will produce a series of detached objects. .. seealso:: :ref:`error_lkrp` .. change:: :tags: bug, mssql, regression :tickets: 7129 Fixed bug in SQL Server :class:`_mssql.DATETIMEOFFSET` datatype where the ODBC implementation would not generate the correct DDL, for cases where the type were converted using the ``dialect.type_descriptor()`` method, the usage of which is illustrated in some documented examples for :class:`.TypeDecorator`, though not necessary for most datatypes. Regression was introduced by :ticket:`6366`. As part of this change, the full list of SQL Server date types have been amended to return a "dialect impl" that generates the same DDL name as the supertype. .. change:: :tags: bug, sql :tickets: 7153 Adjusted the "column disambiguation" logic that's new in 1.4, where the same expression repeated gets an "extra anonymous" label, so that the logic more aggressively deduplicates those labels when the repeated element is the same Python expression object each time, as occurs in cases like when using "singleton" values like :func:`_sql.null`. This is based on the observation that at least some databases (e.g. MySQL, but not SQLite) will raise an error if the same label is repeated inside of a subquery. .. change:: :tags: bug, orm :tickets: 7154 Related to :ticket:`7153`, fixed an issue where result column lookups would fail for "adapted" SELECT statements that selected for "constant" value expressions most typically the NULL expression, as would occur in such places as joined eager loading in conjunction with limit/offset. This was overall a regression due to issue :ticket:`6259` which removed all "adaption" for constants like NULL, "true", and "false" when rewriting expressions in a SQL statement, but this broke the case where the same adaption logic were used to resolve the constant to a labeled expression for the purposes of result set targeting. .. change:: :tags: bug, orm, regression :tickets: 7134 Fixed regression where ORM loaded objects could not be pickled in cases where loader options making use of ``"*"`` were used in certain combinations, such as combining the :func:`_orm.joinedload` loader strategy with ``raiseload('*')`` of sub-elements. .. change:: :tags: bug, engine :tickets: 7077 Implemented proper ``__reduce__()`` methods for all SQLAlchemy exception objects to ensure they all support clean round trips when pickling, as exception objects are often serialized for the purposes of various debugging tools. .. change:: :tags: bug, orm, regression :tickets: 7209 Fixed regression where the use of a :class:`_hybrid.hybrid_property` attribute or a mapped :func:`_orm.composite` attribute as a key passed to the :meth:`_dml.Update.values` method for an ORM-enabled :class:`_dml.Update` statement, as well as when using it via the legacy :meth:`_orm.Query.update` method, would be processed for incoming ORM/hybrid/composite values within the compilation stage of the UPDATE statement, which meant that in those cases where caching occurred, subsequent invocations of the same statement would no longer receive the correct values. This would include not only hybrids that use the :meth:`_hybrid.hybrid_property.update_expression` method, but any use of a plain hybrid attribute as well. For composites, the issue instead caused a non-repeatable cache key to be generated, which would break caching and could fill up the statement cache with repeated statements. The :class:`_dml.Update` construct now handles the processing of key/value pairs passed to :meth:`_dml.Update.values` and :meth:`_dml.Update.ordered_values` up front when the construct is first generated, before the cache key has been generated so that the key/value pairs are processed each time, and so that the cache key is generated against the individual column/value pairs that will ultimately be used in the statement. .. changelog:: ```
Links - PyPI: https://pypi.org/project/sqlalchemy - Changelog: https://pyup.io/changelogs/sqlalchemy/ - Homepage: https://www.sqlalchemy.org

Update SQLAlchemy-Utils from 0.37.8 to 0.38.2.

Changelog ### 0.38.2 ``` ^^^^^^^^^^^^^^^^^^^ - Added inherit_cache=False in order to avoid SQLAlchemy warnings in `cast_locale_expr` (571) ``` ### 0.38.1 ``` ^^^^^^^^^^^^^^^^^^^ - Added cache_ok=True for various different types ``` ### 0.38.0 ``` ^^^^^^^^^^^^^^^^^^^ - Removed CompositeArray. Instead of CompositeArray one should use ARRAY(dimensions=1) - Made ChoicesType only convert lists to tuples internally. ``` ### 0.37.9 ``` ^^^^^^^^^^^^^^^^^^^ - Fixed base padding class abstract methods (547, pull request courtesy of dpgaspar) - Optimized cast_locale function (552, pull request courtesy of tvuotila) - Allow for arbitrary Table keyword arguments in create_table_from_selectable (551, pull request courtesy of quoimec) ```
Links - PyPI: https://pypi.org/project/sqlalchemy-utils - Changelog: https://pyup.io/changelogs/sqlalchemy-utils/ - Repo: https://github.com/kvesteri/sqlalchemy-utils

Update tweepy from 4.0.0 to 4.5.0.

Changelog ### 4.5.0 ``` ------------- New Features / Improvements - Revamp authentication interface - Add support for OAuth 2.0 Authorization Code Flow with PKCE - Add `OAuth2UserHandler` ([2b83507](https://github.com/tweepy/tweepy/commit/2b835073cb193ca6f2849c8cb6ef4322e5b16f24), [16763e2](https://github.com/tweepy/tweepy/commit/16763e2ff6913653077512f069864ad720d44ad7)) - Add `user_auth` parameters to `Client` methods ([8f38429](https://github.com/tweepy/tweepy/commit/8f384294405c6d14507441a5d1a7040d927b3fc2), [e88b074](https://github.com/tweepy/tweepy/commit/e88b07465fbcf6013be89cf938eae718391cc1df), [0d6b68a](https://github.com/tweepy/tweepy/commit/0d6b68aeb3ed36e8d0e3d400b99351ed628ba1e0)) - Rename `OAuthHandler` to `OAuth1UserHandler` ([fb6eb7d](https://github.com/tweepy/tweepy/commit/fb6eb7d53d78bcaca997586f95270a43753a9ae6)) - `OAuthHandler` is kept as a deprecated alias ([cba7317](https://github.com/tweepy/tweepy/commit/cba7317a4aa298a65eda7825589eb40a01a370f6)) - Rename `AppAuthHandler` to `Oauth2AppHandler` ([529d793](https://github.com/tweepy/tweepy/commit/529d7936201f05f4167225be3bbcaf38eafadb8c)) - `AppAuthHandler` is kept as a deprecated alias ([d4ceb1a](https://github.com/tweepy/tweepy/commit/d4ceb1aedba5380d95c8efee7d21f5e478715fe6)) - Rename `OAuth2Bearer` to `OAuth2BearerHandler` ([0781fde](https://github.com/tweepy/tweepy/commit/0781fde83c31cef45e0d7d8b2155a2624fb93b77)) - Allow passing access token and secret directly to `OAuth1UserHandler.__init__` ([99f3583](https://github.com/tweepy/tweepy/commit/99f3583d99ac9a0003273318e7628235bba707f0)) - Note, this changes the `callback` parameter to be the fifth argument, positionally - Allow `OAuth2BearerHandler` to be used as `auth` parameter for `API` ([5a2a3fc](https://github.com/tweepy/tweepy/commit/5a2a3fc6020b6fe91141a753a2e293976addf48e)) - Remove `AuthHandler` ([d600c4c](https://github.com/tweepy/tweepy/commit/d600c4cf6ad2755aa0a959ee57c12d86cddce973)) - Remove `OAuth1UserHandler.get_xauth_access_token` ([8e2de9f](https://github.com/tweepy/tweepy/commit/8e2de9f590031bf6d6ade8946e7371366c4caa58)) - Update and improve authentication documentation ([f9a722b](https://github.com/tweepy/tweepy/commit/f9a722bae8cce368b9f8fd447c418e1034c32178)) - Other improvements and optimizations - Add `Client.get_me` ([c49cbdf](https://github.com/tweepy/tweepy/commit/c49cbdfcbda48295591d731446cd03b2eb2332ae), [62b5b58](https://github.com/tweepy/tweepy/commit/62b5b586e75a850427eabdf31448d73a9e564f66), [f6895d3](https://github.com/tweepy/tweepy/commit/f6895d36eee68adc41d0951ce6b3ee1d7b179995), [bb87b26](https://github.com/tweepy/tweepy/commit/bb87b269efa2e0ba019a0e67fa1a7489838b9684)) - Add support for `Media.url` ([1722](https://github.com/tweepy/tweepy/issues/1722)) - Use requests exception to handle `JSONDecodeError` ([b492b0a](https://github.com/tweepy/tweepy/commit/b492b0a9fd4a0fedbc03cc2cc1927c45e866cb4e)) - Update requests dependency requirement to >= 2.27.0 ([ed66e8e](https://github.com/tweepy/tweepy/commit/ed66e8e98ea489eabe0e6ef607bb0c8c715b19d6)) Bug Fixes - Fix `Response.includes["polls"]` not being `Poll` objects ([1733](https://github.com/tweepy/tweepy/pull/1733)) - Fix `Paginator` handling of `Client.get_all_tweets_count` ([1761](https://github.com/tweepy/tweepy/pull/1761)) Misc - Improve and optimize `Model.__getstate__` ([1707](https://github.com/tweepy/tweepy/issues/1707)) - Add API v2 examples to documentation ([bbdbb7b](https://github.com/tweepy/tweepy/commit/bbdbb7bbd7f3eb0d3c46d970aa14098d37857053)) - Update and improve various documentation ``` ### 4.4.0 ``` ------------- New Features / Improvements - Add support for List lookup with Twitter API v2 ([0aa2366](https://github.com/tweepy/tweepy/commit/0aa2366a875464756507abf42709a3db676f4cee)) - Add `Client.get_space_buyers` ([8bf58ca](https://github.com/tweepy/tweepy/commit/8bf58ca5754f72292d1d86367a02778af7a44f20)) - Add `Space.ended_at` and `Space.topic_ids` ([c89a233](https://github.com/tweepy/tweepy/commit/c89a233a96142ce01ecd5e1372c3fdce45c6601f)) Bug Fixes - Remove erroneous `Space.__str__` ([ebb4bfd](https://github.com/tweepy/tweepy/commit/ebb4bfdd4033e9a8ee257ab244381e1a8fdb2984)) ``` ### 4.3.0 ``` ------------- New Features / Improvements - Add support for managing Tweets with Twitter API v2 ([7884e3a](https://github.com/tweepy/tweepy/commit/7884e3a7253d9a821ff46160ec0d3811f299327f)) Misc - Document `HTTPException` attributes ([c62c31a](https://github.com/tweepy/tweepy/commit/c62c31a0f3574e04b6e2f5996b90b5c1b5917485)) - Add table to documentation mapping `Client` methods to Twitter API v2 endpoints ([0572b03](https://github.com/tweepy/tweepy/commit/0572b03b7fe1a2384951ebc2c0002f9d8bd6b68a)) - Add and improve examples - Revamp examples page in documentation - Update and improve various documentation and tests ``` ### 4.2.0 ``` ------------- New Features / Improvements - Add support for managing lists with Twitter API v2 ([b1342bf](https://github.com/tweepy/tweepy/commit/b1342bfc998bee334437f2b7a8d2aef4df7c3838)) - Rename `Client.follow` and `Client.unfollow` to `Client.follow_user` and `Client.unfollow_user`, respectively ([8f8de15](https://github.com/tweepy/tweepy/commit/8f8de15e13f11d042a521d2adae24d0c09fa2098)) - `Client.follow` and `Client.unfollow` are kept as deprecated aliases - Add FAQ section in documentation - Update and improve various documentation and tests Twitter API Changes - Change `state` to optional parameter for `Client.search_spaces` ([e61d5d6](https://github.com/tweepy/tweepy/commit/e61d5d6f017db7f28871331b515fcfd87666f352)) Bug Fixes - Fix parsing of datetime strings for API v2 models with Python 3.6 ([5bf2446](https://github.com/tweepy/tweepy/commit/5bf24464b00257a9fa5f66047a2f7815c1e4f8fb)) - Fix models missing an `API` instance attribute when using `Cursor` with pagination by ID ([451e921](https://github.com/tweepy/tweepy/commit/451e921210677ee0a618849f189bdfeea497a00c)) ``` ### 4.1.0 ``` ------------- New Features / Improvements - Add support for Python 3.10 ([229b738](https://github.com/tweepy/tweepy/commit/229b73858c93bd5997385445f522816c374d41ea)) - Update minimum dev requirement version for tox to 3.14.0 - Add support for Spaces ([5c68892](https://github.com/tweepy/tweepy/commit/5c688922cf0f8e89d401ea5108b06aaa8c12d71b)) - Add `Space` model - Add `Client.search_spaces`, `Client.get_spaces`, and `Client.get_space` - Add support for batch compliance ([6ca75e1](https://github.com/tweepy/tweepy/commit/6ca75e1b69a1085ac43215b30fc8269b91faa790)) - Add `Client.get_compliance_jobs`, `Client.get_compliance_job`, and `Client.create_compliance_job` - Add `Client.get_muted` ([00cdab8](https://github.com/tweepy/tweepy/commit/00cdab8a86b98c6b02636fd511700fc73653e006)) - Minor documentation corrections ``` ### 4.0.1 ``` ------------- Bug Fixes - Fix handling of strings passed as fields parameters for `Client` methods ([d61a5d9](https://github.com/tweepy/tweepy/commit/d61a5d9f52a9d9ee3f40d23515d6ffd1f2a02e14)) - Include unexpected parameters passed to `Client` methods in Twitter API request ([618d1c2](https://github.com/tweepy/tweepy/commit/618d1c25c7743443686f27006f558f4d78972da3)) - This future-proofs for new endpoint parameters - Stop checking parameter names when converting parameters passed to `Client` methods from datetimes to strings ([1320a37](https://github.com/tweepy/tweepy/commit/1320a3709b1683cb32b69abdaa9e7e120b6ed59c)) - This future-proofs for new endpoint parameters besides `start_time` and `end_time` that accept datetimes - Handle simplejson being installed when handling `JSONDecodeError` in `HTTPException` ([586c162](https://github.com/tweepy/tweepy/commit/586c1621f71c9569c17b6bdbee99a7c238bb301d)) Misc - Update documentation requirements ([3fa38b6](https://github.com/tweepy/tweepy/commit/3fa38b6b949fb85c434f4aec9c54327d80027c12), [388e2f6](https://github.com/tweepy/tweepy/commit/388e2f6c5167cd9fd6669d05d2e15ea00cdea805), [4315ab0](https://github.com/tweepy/tweepy/commit/4315ab07c382c92e177cde7232085dfd4828b50e)) - Remove nose usage from tests ([b4c06a4](https://github.com/tweepy/tweepy/commit/b4c06a4bb7800026809cfabf69565845dbc00923)) - Remove mock and nose from tests extra and requirements ([0f071fd](https://github.com/tweepy/tweepy/commit/0f071fd2dbbbb5eb7efccc16a8121eb22ebabf12), [b4c06a4](https://github.com/tweepy/tweepy/commit/b4c06a4bb7800026809cfabf69565845dbc00923)) - Update and improve various documentation and tests ```
Links - PyPI: https://pypi.org/project/tweepy - Changelog: https://pyup.io/changelogs/tweepy/ - Homepage: https://www.tweepy.org/ - Docs: https://pythonhosted.org/tweepy/

Update coveralls from 3.2.0 to 3.3.1.

Changelog ### 3.3.1 ``` Bug Fixes * correctly support parallel execution on CircleCI (336) ([2610885a](2610885a)) Internal * exclude a few incompatible `coverage` versions (337) `coverage` versions v6.0.0 through v6.1.1 exhibited some incompatibilies with `coveralls`; we've updated our version compatibility ranges to exclude those versions. <a name="3.3.0"></a> ``` ### 3.3.0 ``` Features * **cli:** add --srcdir option (306) ([4120c540](4120c540)) * **deps:** add support for coverage v6.x (330) ([372443dc](372443dc), closes [326](326)) Note this implicitly improves support for Python 3.10, as coverage v6.x includes some fixes for v3.10 of Python. Bug Fixes * **env:** fixup handling of default env service values (314) ([1a0fd9b3](1a0fd9b3), closes [303](303)) This solves some edge cases around duplicated / unmerged coverage results in parallel runs. <a name="3.2.0"></a> ```
Links - PyPI: https://pypi.org/project/coveralls - Changelog: https://pyup.io/changelogs/coveralls/ - Repo: http://github.com/TheKevJames/coveralls-python

Update pytest-cov from 2.12.1 to 3.0.0.

Changelog ### 3.0.0 ``` ------------------- **Note that this release drops support for Python 2.7 and Python 3.5.** * Added support for Python 3.10 and updated various test dependencies. Contributed by Hugo van Kemenade in `500 <https://github.com/pytest-dev/pytest-cov/pull/500>`_. * Switched from Travis CI to GitHub Actions. Contributed by Hugo van Kemenade in `494 <https://github.com/pytest-dev/pytest-cov/pull/494>`_ and `495 <https://github.com/pytest-dev/pytest-cov/pull/495>`_. * Add a ``--cov-reset`` CLI option. Contributed by Danilo Šegan in `459 <https://github.com/pytest-dev/pytest-cov/pull/459>`_. * Improved validation of ``--cov-fail-under`` CLI option. Contributed by ... Ronny Pfannschmidt's desire for skark in `480 <https://github.com/pytest-dev/pytest-cov/pull/480>`_. * Dropped Python 2.7 support. Contributed by Thomas Grainger in `488 <https://github.com/pytest-dev/pytest-cov/pull/488>`_. * Updated trove classifiers. Contributed by Michał Bielawski in `481 <https://github.com/pytest-dev/pytest-cov/pull/481>`_. ``` ### 2.13.0 ``` ------------------- * Changed the `toml` requirement to be always be directly required (instead of being required through a coverage extra). This fixes issues with pip-compile (`pip-tools1300 <https://github.com/jazzband/pip-tools/issues/1300>`_). Contributed by Sorin Sbarnea in `472 <https://github.com/pytest-dev/pytest-cov/pull/472>`_. * Documented ``show_contexts``. Contributed by Brian Rutledge in `473 <https://github.com/pytest-dev/pytest-cov/pull/473>`_. ```
Links - PyPI: https://pypi.org/project/pytest-cov - Changelog: https://pyup.io/changelogs/pytest-cov/ - Repo: https://github.com/pytest-dev/pytest-cov
pyup-bot commented 2 years ago

Closing this in favor of #650