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 42 #540

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

pyup-bot
Copy link
Collaborator

Update sphinx from 7.3.7 to 8.1.3.

Changelog

8.1.3

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

Bugs fixed
----------

* 13013: Restore support for :func:`!cut_lines` with no object type.
Patch by Adam Turner.

8.1.2

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

Bugs fixed
----------

* 13012: Expose :exc:`sphinx.errors.ExtensionError` in ``sphinx.util``
for backwards compatibility.
This will be removed in Sphinx 9, as exposing the exception
in ``sphinx.util`` was never intentional.
:exc:`!ExtensionError` has been part of ``sphinx.errors`` since Sphinx 0.9.
Patch by Adam Turner.

8.1.1

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

Bugs fixed
----------

* 13006: Use the preferred https://www.cve.org/ URL for
the :rst:role:`:cve: <cve>` role.
Patch by Hugo van Kemenade.
* 13007: LaTeX: Improve resiliency when the required
``fontawesome`` or ``fontawesome5`` packages are not installed.
Patch by Jean-François B.

8.1.0

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

Dependencies
------------

* 12756: Add lower-bounds to the ``sphinxcontrib-*`` dependencies.
Patch by Adam Turner.
* 12833: Update the LaTeX ``parskip`` package from 2001 to 2018.
Patch by Jean-François B.

Incompatible changes
--------------------

* 12763: Remove unused internal class ``sphinx.util.Tee``.
Patch by Adam Turner.
* 12822: LaTeX: for Unicode engines, the :ref:`fvset` default is changed to
``'\\fvset{fontsize=auto}'`` from ``'\\fvset{fontsize=\\small}'``.
Code-blocks are unchanged as FreeMono is now loaded with ``Scale=0.9``.
An adjustment to existing projects is needed only if they used a custom
:ref:`fontpkg` configuration and did not set :ref:`fvset`.
Patch by Jean-François B.
* 12875: Disable smartquotes for languages: ``zh_CN`` and ``zh_TW`` by default.
Patch by A. Rafey Khan.

Deprecated
----------

* 12762: Deprecate ``sphinx.util.import_object``.
Use :py:func:`importlib.import_module` instead.
Patch by Adam Turner.
* 12766: Deprecate ``sphinx.util.FilenameUniqDict``
and ``sphinx.util.DownloadFiles``.
Patch by Adam Turner.

Features added
--------------

* 11328: Mention evaluation of templated content during production of static
output files.
Patch by James Addison.
* 12704: LaTeX: make :dudir:`contents <table-of-contents>`, :dudir:`topic`,
and :dudir:`sidebar` directives separately customizable for PDF output.
Patch by Jean-François B. and Bénédikt Tran.
* 12474: Support type-dependent search result highlighting via CSS.
Patch by Tim Hoffmann.
* 12652: LaTeX: Add :confval:`math_numsep` support to latex builder.
Patch by Thomas Fanning and Jean-François B.
* 12743: No longer exit on the first warning when
:option:`--fail-on-warning <sphinx-build --fail-on-warning>` is used.
Instead, exit with a non-zero status if any warnings were generated
during the build.
Patch by Adam Turner.
* 12743: Add :option:`sphinx-build --exception-on-warning`,
to raise an exception when warnings are emitted during the build.
Patch by Adam Turner and Jeremy Maitin-Shepard.
* 12907: Add :confval:`html_last_updated_use_utc` to allow using
universal time (GMT/UTC) instead of local time for the date-time
supplied to :confval:`html_last_updated_fmt`.
Patch by Adam Turner.
* 12910: Copyright entries now support the ``'%Y'`` placeholder
to substitute the current year.
This is helpful for reducing the reliance on Python modules
such as :py:mod:`time` or :py:mod:`datetime` in :file:`conf.py`.
See :ref:`the docs <config-copyright>` for further detail.
Patch by Adam Turner.
* 11781: Add roles for referencing CVEs (:rst:role:`:cve: <cve>`)
and CWEs (:rst:role:`:cwe: <cwe>`).
Patch by Hugo van Kemenade.
* 11809: Improve the formatting for RFC section anchors.
Patch by Jakub Stasiak and Adam Turner.
* 12852: Support a :attr:`.Builder.supported_linkcode` attribute
for builders to enable use of :mod:`sphinx.ext.linkcode`-generated
references.
Patch by James Knight.
* 12949: Print configuration options that differ from the pickled environment.
This can be helpful in diagnosing the cause of a full rebuild.
Patch by Adam Turner.

Bugs fixed
----------

* 12514: intersphinx: fix the meaning of a negative value for
:confval:`intersphinx_cache_limit`.
Patch by Shengyu Zhang.
* 12722: LaTeX: avoid TeX reporting ``Overfull \hbox`` from too long
strings in a codeline when the problem has actually been solved thanks
to :ref:`latexsphinxsetupforcewraps`.
Patch by Jean-François B.
* 12730: The ``UnreferencedFootnotesDetector`` transform has been improved
to more consistently detect unreferenced footnotes.
Note, the priority of the transform has been changed from 200 to 622,
so that it now runs after the docutils ``Footnotes`` resolution transform.
Patch by Chris Sewell.
* 12778: LaTeX: let :ref:`'sphinxsetup' <latexsphinxsetup>`
``div.topic_box-shadow`` key if used with only one dimension set both
x-offset and y-offset as per documentation.
Patch by Jean-François B.
* 12587: Do not warn when potential ambiguity detected during Intersphinx
resolution occurs due to duplicate targets that differ case-insensitively.
Patch by James Addison.
* 12639: Fix singular and plural search results text.
Patch by Hugo van Kemenade.
* 12645: Correctly support custom gettext output templates.
Patch by Jeremy Bowman.
* 12717: LaTeX: let :option:`-q <sphinx-build -q>` (quiet) option for
:program:`sphinx-build -M latexpdf` or :program:`make latexpdf` (``O=-q``)
get passed to :program:`latexmk`.  Let :option:`-Q <sphinx-build -Q>`
(silent) apply as well to the PDF build phase.
Patch by Jean-François B.
* 12744: LaTeX: Classes injected by a custom interpreted text role now give
rise to nested ``\DUrole``'s, rather than a single one with comma separated
classes.
Patch by Jean-François B.
* 12831: LaTeX: avoid large voids sometimes occurring at page bottoms.
Patch by Jean-François B.
* 11970, 12551: singlehtml builder: make target URIs to be same-document
references in the sense of :rfc:`RFC 3986, §4.4 <3986section-4.4>`,
e.g., ``index.htmlfoo`` becomes ``foo``.
(note: continuation of a partial fix added in Sphinx 7.3.0)
Patch by James Addison (with reference to prior work by Eric Norige).
* 12735: Fix :pep:`695` generic classes LaTeX output formatting.
Patch by Jean-François B. and Bénédikt Tran.
* 12782: intersphinx: fix double forward slashes when generating the inventory
file URL (user-defined base URL of an intersphinx project are left untouched
even if they end with double forward slashes).
Patch by Bénédikt Tran.
* 12796: Enable parallel reading if requested,
even if there are fewer than 6 documents.
Patch by Matthias Geier.
* 12844: Restore support for ``:noindex:`` for the :rst:dir:`js:module`
and :rst:dir:`py:module` directives.
Patch by Stephen Finucane.
* 12916: Restore support for custom templates named with the legacy ``_t``
suffix during ``apidoc`` RST rendering (regression in 7.4.0).
Patch by James Addison.
* 12451: Only substitute copyright notice years with values from
``SOURCE_DATE_EPOCH`` for entries that match the current system clock year,
and disallow substitution of future years.
Patch by James Addison and Adam Turner.
* 12905: intersphinx: fix flipped use of :confval:`intersphinx_cache_limit`,
which always kept the cache for positive values, and always refreshed it for
negative ones.
Patch by Nico Madysa.
* 12888: Add a warning when document is included in multiple toctrees
and ensure deterministic resolution of global toctree in parallel builds
by choosing the lexicographically greatest parent document.
Patch by A. Rafey Khan
* 12995: Significantly improve performance when building the search index
for Chinese languages.
Patch by Adam Turner.
* 12767: :py:meth:`.Builder.write` is typed as ``final``, meaning that the
:event:`write-started` event may be relied upon by extensions.
A new :py:meth:`.Builder.write_documents` method has been added to
control how documents are written.
This is intended for builders that do not output a file for each document.
Patch by Adam Turner.


Testing
-------

* 12141: Migrate from the deprecated ``karma`` JavaScript test framework to
the actively-maintained ``jasmine`` framework.  Test coverage is unaffected.
Patch by James Addison.
Links

Update furo from 2024.5.6 to 2024.8.6.

Changelog

2024.08.06

- ✨ Add support for Sphinx 8
- ✨ Add smoother transitions between breakpoints
- Increase specificity of table-wrapper selector
- Avoid page breaks inside paragraphs

2024.07.18

- Improve how icons are handled and aligned.
- Improve scroll event handler.
- Hide the copybutton by default.
- Fix `source_view_link` configuration handling.
- Fix close tag on pencil icon.
Links

Update sphinx-autobuild from 2024.4.16 to 2024.10.3.

Changelog

2024.10.03

-----------------------

* Improve error handling for failures in pre-build commands.

2024.10.02

-----------------------

* Show the changed paths that triggered the rebuild.

2024.09.19

-----------------------

* Fix path filtering on Windows by normalising path separators.
* Filter various directories by default (``.git``, ``venv``, etc).
* Serve the correct directory when using make mode (``-M``).

2024.09.18

-----------------------

* Run Sphinx through the Python entry point rather than the binary on PATH.

2024.09.17

-----------------------

* Relax checks for paths that aren't required to exist.

2024.09.03

-----------------------

* Fix support for Python 3.9.
* Fix running ``sphinx-autobuild`` via entry point scripts.
* Run ``sphinx-build`` in a subprocess to mitigate autdoc issues.
* Support the ``-M`` 'make mode' option for ``sphinx-build``.
Links

Update setuptools from 70.0.0 to 75.2.0.

Changelog

75.2.0

=======

Features
--------

- Made errors when parsing ``Distribution`` data more explicit about the expected type (``tuple[str, ...] | list[str]``) -- by :user:`Avasam` (4578)


Bugfixes
--------

- Fix a `TypeError` when a ``Distribution``'s old included attribute was a `tuple` -- by :user:`Avasam` (4578)
- Add workaround for ``bdist_wheel --dist-info-dir`` errors
when customisation does not inherit from setuptools. (4684)

75.1.1

=======

Bugfixes
--------

- Re-use pre-existing ``.dist-info`` dir when creating wheels via the build backend APIs (PEP 517) and the ``metadata_directory`` argument is passed -- by :user:`pelson`. (1825)
- Changed ``egg_info`` command to avoid adding an empty ``.egg-info`` directory
while iterating over entry-points.
This avoids triggering integration problems with ``importlib.metadata``/``importlib_metadata``
(reference: pypa/pyproject-hooks206). (4680)

75.1.0

=======

Features
--------

- Deprecated ``bdist_wheel.universal`` configuration. (4617)


Bugfixes
--------

- Removed reference to upload_docs module in entry points. (4650)

75.0.0

=======

Features
--------

- Declare also the dependencies used by distutils (adds jaraco.collections).


Deprecations and Removals
-------------------------

- Removed upload_docs command. (2971)
- Merge with pypa/distutils7283751. Removed the register and upload commands and the config module that backs them (pypa/distutils294). Removed the borland compiler. Replaced vendored dependencies with natural dependencies. Cygwin C compiler now gets compilers from sysconfig (pypa/distutils296). (4649)

74.1.3

=======

Bugfixes
--------

- Fix cross-platform compilation using ``distutils._msvccompiler.MSVCCompiler`` -- by :user:`saschanaz` and :user:`Avasam` (4648)

74.1.2

=======

Bugfixes
--------

- Fixed TypeError in sdist filelist processing by adding support for pathlib Paths for the build_base. (4615)
- Removed degraded and deprecated ``test_integration`` (easy_install) from the test suite. (4632)

74.1.1

=======

Bugfixes
--------

- Fixed TypeError in ``msvc.EnvironmentInfo.return_env`` when no runtime redistributables are installed. (1902)

74.1.0

=======

Features
--------

- Added support for defining ``ext-modules`` via ``pyproject.toml``
(**EXPERIMENTAL**, may change in future releases). (4568)


Bugfixes
--------

- Merge with pypa/distutils3dcdf8567, removing the duplicate vendored copy of packaging. (4622)
- Restored ``setuptools.msvc.Environmentinfo`` as it is used externally. (4625)

74.0.0

=======

Features
--------

- Changed the type of error raised by ``setuptools.command.easy_install.CommandSpec.from_param`` on unsupported argument from `AttributeError` to `TypeError` -- by :user:`Avasam` (4548)
- Added detection of ARM64 variant of MSVC -- by :user:`saschanaz` (4553)
- Made ``setuptools.package_index.Credential`` a `typing.NamedTuple` -- by :user:`Avasam` (4585)
- Reraise error from ``setuptools.command.easy_install.auto_chmod`` instead of nonsensical ``TypeError: 'Exception' object is not subscriptable`` -- by :user:`Avasam` (4593)
- Fully typed all collection attributes in ``pkg_resources`` -- by :user:`Avasam` (4598)
- Automatically exclude ``.tox|.nox|.venv`` directories from ``sdist``. (4603)


Deprecations and Removals
-------------------------

- Removed the monkeypatching of distutils._msvccompiler. Now all compiler logic is consolidated in distutils. (4600)
- Synced with pypa/distutils58fe058e4, including consolidating Visual Studio 2017 support (4600, pypa/distutils289), removal of deprecated legacy MSVC compiler modules (pypa/distutils287), suppressing of errors when the home directory is missing (pypa/distutils278), removal of wininst binaries (pypa/distutils282). (4606)


Misc
----

- 4592

73.0.1

=======

Bugfixes
--------

- Remove `abc.ABCMeta` metaclass from abstract classes. `pypa/setuptools4503 <https://github.com/pypa/setuptools/pull/4503>`_ had an unintended consequence of causing potential ``TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases`` -- by :user:`Avasam` (#4579)

73.0.0

=======

Features
--------

- Mark abstract base classes and methods with `abc.ABC` and `abc.abstractmethod` -- by :user:`Avasam` (4503)
- Changed the order of type checks in ``setuptools.command.easy_install.CommandSpec.from_param`` to support any `collections.abc.Iterable` of `str` param -- by :user:`Avasam` (4505)


Bugfixes
--------

- Prevent an error in ``bdist_wheel`` if ``compression`` is set to a `str` (even if valid) after finalizing options but before running the command. -- by :user:`Avasam` (4383)
- Raises an exception when ``py_limited_api`` is used in a build with
``Py_GIL_DISABLED``. This is currently not supported (python/cpython111506). (4420)
- Synced with pypa/distutils30b7331 including fix for modified check on empty sources (pypa/distutils284).


Deprecations and Removals
-------------------------

- ``setuptools`` is replacing the usages of :pypi:`ordered_set` with simple
instances of ``dict[Hashable, None]``. This is done to remove the extra
dependency and it is possible because since Python 3.7, ``dict`` maintain
insertion order. (4574)


Misc
----

- 4534, 4546, 4554, 4559, 4565

72.2.0

=======

Features
--------

- Merged with pypa/distutilsb7ee725f3 including: Support for Pathlike objects in data files and extensions (pypa/distutils272, pypa/distutils237), native support for C++ compilers (pypa/distuils228) and removed unused get_msvcr() (pypa/distutils274). (4538)

72.1.0

=======

Features
--------

- Restore the tests command and deprecate access to the module. (4519) (4520)

72.0.0

=======

Deprecations and Removals
-------------------------

- The test command has been removed. Users relying on 'setup.py test' will need to migrate to another test runner or pin setuptools before this version. (931)

71.1.0

=======

Features
--------

- Added return types to typed public functions -- by :user:`Avasam`

Marked `pkg_resources` as ``py.typed`` -- by :user:`Avasam` (4409)


Misc
----

- 4492

71.0.4

=======

Bugfixes
--------

- Removed lingering unused code around Distribution._patched_dist. (4489)

71.0.3

=======

Bugfixes
--------

- Reset the backports module when enabling vendored packages. (4476)

71.0.2

=======

Bugfixes
--------

- Include all vendored files in the sdist. (4480)

71.0.1

=======

Bugfixes
--------

- Restored package data that went missing in 71.0. This change also incidentally causes tests to be installed once again. (4475)

71.0.0

=======

Deprecations and Removals
-------------------------

- Now setuptools declares its own dependencies in the ``core`` extra. Dependencies are still vendored for bootstrapping purposes, but setuptools will prefer installed dependencies if present. The ``core`` extra is used for informational purposes and should *not* be declared in package metadata (e.g. ``build-requires``). Downstream packagers can de-vendor by simply removing the ``setuptools/_vendor`` directory. Since Setuptools now prefers installed dependencies, those installing to an environment with old, incompatible dependencies will not work. In that case, either uninstall the incompatible dependencies or upgrade them to satisfy those declared in ``core``. (2825)

70.3.0

=======

Features
--------

- Support for loading distutils from the standard library is now deprecated, including use of SETUPTOOLS_USE_DISTUTILS=stdlib and importing distutils before importing setuptools. (4137)


Bugfixes
--------

- Bugfix for building Cython extension on Windows (pypa/distutils268).

70.2.0

=======

Features
--------

- Updated distutils including significant changes to support Cygwin and mingw compilers. (4444)


Bugfixes
--------

- Fix distribution name normalisation (:pep:`625`) for valid versions that are
not canonical (e.g. ``1.0-2``). (4434)

70.1.1

=======

Misc
----

- 4429

70.1.0

=======

Features
--------

- Adopted the ``bdist_wheel`` command from the ``wheel`` project -- by :user:`agronholm` (1386)
- Improve error message when ``pkg_resources.ZipProvider`` tries to extract resources with a missing Egg -- by :user:`Avasam`

Added variables and parameter type annotations to ``pkg_resources`` to be nearly on par with typeshed.\* -- by :user:`Avasam`
\* Excluding ``TypeVar`` and ``overload``. Return types are currently inferred. (4246)
- Migrated Setuptools' own config to pyproject.toml (4310)


Bugfixes
--------

- Prevent a ``TypeError: 'NoneType' object is not callable`` when ``shutil_rmtree`` is called without an ``onexc`` parameter on Python<=3.11 -- by :user:`Avasam` (4382)
- Replace use of mktemp with can_symlink from the stdlib test suite. (4403)
- Improvement for ``attr:`` directives in configuration to handle
more edge cases related to complex ``package_dir``. (4405)
- Fix accidental implicit string concatenation. (4411)


Misc
----

- 4365, 4422
Links

Update pytest from 8.2.1 to 8.3.3.

Changelog

8.3.3

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

Bug fixes
---------

- `12446 <https://github.com/pytest-dev/pytest/issues/12446>`_: Avoid calling ``property`` (and other instance descriptors) during fixture discovery -- by :user:`asottile`


- `12659 <https://github.com/pytest-dev/pytest/issues/12659>`_: Fixed the issue of not displaying assertion failure differences when using the parameter ``--import-mode=importlib`` in pytest>=8.1.


- `12667 <https://github.com/pytest-dev/pytest/issues/12667>`_: Fixed a regression where type change in `ExceptionInfo.errisinstance` caused `mypy` to fail.


- `12744 <https://github.com/pytest-dev/pytest/issues/12744>`_: Fixed typing compatibility with Python 3.9 or less -- replaced `typing.Self` with `typing_extensions.Self` -- by :user:`Avasam`


- `12745 <https://github.com/pytest-dev/pytest/issues/12745>`_: Fixed an issue with backslashes being incorrectly converted in nodeid paths on Windows, ensuring consistent path handling across environments.


- `6682 <https://github.com/pytest-dev/pytest/issues/6682>`_: Fixed bug where the verbosity levels where not being respected when printing the "msg" part of failed assertion (as in ``assert condition, msg``).


- `9422 <https://github.com/pytest-dev/pytest/issues/9422>`_: Fix bug where disabling the terminal plugin via ``-p no:terminal`` would cause crashes related to missing the ``verbose`` option.

-- by :user:`GTowers1`



Improved documentation
----------------------

- `12663 <https://github.com/pytest-dev/pytest/issues/12663>`_: Clarify that the `pytest_deselected` hook should be called from `pytest_collection_modifyitems` hook implementations when items are deselected.


- `12678 <https://github.com/pytest-dev/pytest/issues/12678>`_: Remove erroneous quotes from `tmp_path_retention_policy` example in docs.



Miscellaneous internal changes
------------------------------

- `12769 <https://github.com/pytest-dev/pytest/issues/12769>`_: Fix typos discovered by codespell and add codespell to pre-commit hooks.

8.3.2

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

Bug fixes
---------

- `12652 <https://github.com/pytest-dev/pytest/issues/12652>`_: Resolve regression `conda` environments where no longer being automatically detected.

-- by :user:`RonnyPfannschmidt`

8.3.1

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

The 8.3.0 release failed to include the change notes and docs for the release. This patch release remedies this. There are no other changes.

8.3.0

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

New features
------------

- `12231 <https://github.com/pytest-dev/pytest/issues/12231>`_: Added `--xfail-tb` flag, which turns on traceback output for XFAIL results.

* If the `--xfail-tb` flag is not given, tracebacks for XFAIL results are NOT shown.
* The style of traceback for XFAIL is set with `--tb`, and can be `auto|long|short|line|native|no`.
* Note: Even if you have `--xfail-tb` set, you won't see them if `--tb=no`.

Some history:

With pytest 8.0, `-rx` or `-ra` would not only turn on summary reports for xfail, but also report the tracebacks for xfail results. This caused issues with some projects that utilize xfail, but don't want to see all of the xfail tracebacks.

This change detaches xfail tracebacks from `-rx`, and now we turn on xfail tracebacks with `--xfail-tb`. With this, the default `-rx`/ `-ra` behavior is identical to pre-8.0 with respect to xfail tracebacks. While this is a behavior change, it brings default behavior back to pre-8.0.0 behavior, which ultimately was considered the better course of action.

-- by :user:`okken`


- `12281 <https://github.com/pytest-dev/pytest/issues/12281>`_: Added support for keyword matching in marker expressions.

Now tests can be selected by marker keyword arguments.
Supported values are :class:`int`, (unescaped) :class:`str`, :class:`bool` & :data:`None`.

See :ref:`marker examples <marker_keyword_expression_example>` for more information.

-- by :user:`lovetheguitar`


- `12567 <https://github.com/pytest-dev/pytest/issues/12567>`_: Added ``--no-fold-skipped`` command line option.

If this option is set, then skipped tests in short summary are no longer grouped
by reason but all tests are printed individually with their nodeid in the same
way as other statuses.

-- by :user:`pbrezina`



Improvements in existing functionality
--------------------------------------

- `12469 <https://github.com/pytest-dev/pytest/issues/12469>`_: The console output now uses the "third-party plugins" terminology,
replacing the previously established but confusing and outdated
reference to :std:doc:`setuptools <setuptools:index>`
-- by :user:`webknjaz`.


- `12544 <https://github.com/pytest-dev/pytest/issues/12544>`_, `#12545 <https://github.com/pytest-dev/pytest/issues/12545>`_: Python virtual environment detection was improved by
checking for a :file:`pyvenv.cfg` file, ensuring reliable detection on
various platforms -- by :user:`zachsnickers`.


- `2871 <https://github.com/pytest-dev/pytest/issues/2871>`_: Do not truncate arguments to functions in output when running with `-vvv`.


- `389 <https://github.com/pytest-dev/pytest/issues/389>`_: The readability of assertion introspection of bound methods has been enhanced
-- by :user:`farbodahm`, :user:`webknjaz`, :user:`obestwalter`, :user:`flub`
and :user:`glyphack`.

Earlier, it was like:

.. code-block:: console

   =================================== FAILURES ===================================
   _____________________________________ test _____________________________________

       def test():
   >       assert Help().fun() == 2
   E       assert 1 == 2
   E        +  where 1 = <bound method Help.fun of <example.Help instance at 0x256a830>>()
   E        +    where <bound method Help.fun of <example.Help instance at 0x256a830>> = <example.Help instance at 0x256a830>.fun
   E        +      where <example.Help instance at 0x256a830> = Help()

   example.py:7: AssertionError
   =========================== 1 failed in 0.03 seconds ===========================


And now it's like:

.. code-block:: console

   =================================== FAILURES ===================================
   _____________________________________ test _____________________________________

       def test():
   >       assert Help().fun() == 2
   E       assert 1 == 2
   E        +  where 1 = fun()
   E        +    where fun = <test_local.Help object at 0x1074be230>.fun
   E        +      where <test_local.Help object at 0x1074be230> = Help()

   test_local.py:13: AssertionError
   =========================== 1 failed in 0.03 seconds ===========================


- `7662 <https://github.com/pytest-dev/pytest/issues/7662>`_: Added timezone information to the testsuite timestamp in the JUnit XML report.



Bug fixes
---------

- `11706 <https://github.com/pytest-dev/pytest/issues/11706>`_: Fixed reporting of teardown errors in higher-scoped fixtures when using `--maxfail` or `--stepwise`.

Originally added in pytest 8.0.0, but reverted in 8.0.2 due to a regression in pytest-xdist.
This regression was fixed in pytest-xdist 3.6.1.


- `11797 <https://github.com/pytest-dev/pytest/issues/11797>`_: :func:`pytest.approx` now correctly handles :class:`Sequence <collections.abc.Sequence>`-like objects.


- `12204 <https://github.com/pytest-dev/pytest/issues/12204>`_, `#12264 <https://github.com/pytest-dev/pytest/issues/12264>`_: Fixed a regression in pytest 8.0 where tracebacks get longer and longer when multiple
tests fail due to a shared higher-scope fixture which raised -- by :user:`bluetech`.

Also fixed a similar regression in pytest 5.4 for collectors which raise during setup.

The fix necessitated internal changes which may affect some plugins:

* ``FixtureDef.cached_result[2]`` is now a tuple ``(exc, tb)``
 instead of ``exc``.
* ``SetupState.stack`` failures are now a tuple ``(exc, tb)``
 instead of ``exc``.


- `12275 <https://github.com/pytest-dev/pytest/issues/12275>`_: Fixed collection error upon encountering an :mod:`abstract <abc>` class, including abstract `unittest.TestCase` subclasses.


- `12328 <https://github.com/pytest-dev/pytest/issues/12328>`_: Fixed a regression in pytest 8.0.0 where package-scoped parameterized items were not correctly reordered to minimize setups/teardowns in some cases.


- `12424 <https://github.com/pytest-dev/pytest/issues/12424>`_: Fixed crash with `assert testcase is not None` assertion failure when re-running unittest tests using plugins like pytest-rerunfailures. Regressed in 8.2.2.


- `12472 <https://github.com/pytest-dev/pytest/issues/12472>`_: Fixed a crash when returning category ``"error"`` or ``"failed"`` with a custom test status from :hook:`pytest_report_teststatus` hook -- :user:`pbrezina`.


- `12505 <https://github.com/pytest-dev/pytest/issues/12505>`_: Improved handling of invalid regex patterns in :func:`pytest.raises(match=r'...') <pytest.raises>` by providing a clear error message.


- `12580 <https://github.com/pytest-dev/pytest/issues/12580>`_: Fixed a crash when using the cache class on Windows and the cache directory was created concurrently.


- `6962 <https://github.com/pytest-dev/pytest/issues/6962>`_: Parametrization parameters are now compared using `==` instead of `is` (`is` is still used as a fallback if the parameter does not support `==`).
This fixes use of parameters such as lists, which have a different `id` but compare equal, causing fixtures to be re-computed instead of being cached.


- `7166 <https://github.com/pytest-dev/pytest/issues/7166>`_: Fixed progress percentages (the ``[ 87%]`` at the edge of the screen) sometimes not aligning correctly when running with pytest-xdist ``-n``.



Improved documentation
----------------------

- `12153 <https://github.com/pytest-dev/pytest/issues/12153>`_: Documented using :envvar:`PYTEST_VERSION` to detect if code is running from within a pytest run.


- `12469 <https://github.com/pytest-dev/pytest/issues/12469>`_: The external plugin mentions in the documentation now avoid mentioning
:std:doc:`setuptools entry-points <setuptools:index>` as the concept is
much more generic nowadays. Instead, the terminology of "external",
"installed", or "third-party" plugins (or packages) replaces that.

-- by :user:`webknjaz`


- `12577 <https://github.com/pytest-dev/pytest/issues/12577>`_: `CI` and `BUILD_NUMBER` environment variables role is described in
the reference doc. They now also appear when doing `pytest -h`
-- by :user:`MarcBresson`.



Contributor-facing changes
--------------------------

- `12467 <https://github.com/pytest-dev/pytest/issues/12467>`_: Migrated all internal type-annotations to the python3.10+ style by using the `annotations` future import.

-- by :user:`RonnyPfannschmidt`


- `11771 <https://github.com/pytest-dev/pytest/issues/11771>`_, `#12557 <https://github.com/pytest-dev/pytest/issues/12557>`_: The PyPy runtime version has been updated to 3.9 from 3.8 that introduced
a flaky bug at the garbage collector which was not expected to fix there
as the 3.8 is EoL.

-- by :user:`x612skm`


- `12493 <https://github.com/pytest-dev/pytest/issues/12493>`_: The change log draft preview integration has been refactored to use a
third party extension ``sphinxcontib-towncrier``. The previous in-repo
script was putting the change log preview file at
:file:`doc/en/_changelog_towncrier_draft.rst`. Said file is no longer
ignored in Git and might show up among untracked files in the
development environments of the contributors. To address that, the
contributors can run the following command that will clean it up:

.. code-block:: console

  $ git clean -x -i -- doc/en/_changelog_towncrier_draft.rst

-- by :user:`webknjaz`


- `12498 <https://github.com/pytest-dev/pytest/issues/12498>`_: All the undocumented ``tox`` environments now have descriptions.
They can be listed in one's development environment by invoking
``tox -av`` in a terminal.

-- by :user:`webknjaz`


- `12501 <https://github.com/pytest-dev/pytest/issues/12501>`_: The changelog configuration has been updated to introduce more accurate
audience-tailored categories. Previously, there was a ``trivial``
change log fragment type with an unclear and broad meaning. It was
removed and we now have ``contrib``, ``misc`` and ``packaging`` in
place of it.

The new change note types target the readers who are downstream
packagers and project contributors. Additionally, the miscellaneous
section is kept for unspecified updates that do not fit anywhere else.

-- by :user:`webknjaz`


- `12502 <https://github.com/pytest-dev/pytest/issues/12502>`_: The UX of the GitHub automation making pull requests to update the
plugin list has been updated. Previously, the maintainers had to close
the automatically created pull requests and re-open them to trigger the
CI runs. From now on, they only need to click the `Ready for review`
button instead.

-- by :user:`webknjaz`


- `12522 <https://github.com/pytest-dev/pytest/issues/12522>`_: The ``:pull:`` RST role has been replaced with a shorter
``:pr:`` due to starting to use the implementation from
the third-party :pypi:`sphinx-issues` Sphinx extension
-- by :user:`webknjaz`.


- `12531 <https://github.com/pytest-dev/pytest/issues/12531>`_: The coverage reporting configuration has been updated to exclude
pytest's own tests marked as expected to fail from the coverage
report. This has an effect of reducing the influence of flaky
tests on the resulting number.

-- by :user:`webknjaz`


- `12533 <https://github.com/pytest-dev/pytest/issues/12533>`_: The ``extlinks`` Sphinx extension is no longer enabled. The ``:bpo:``
role it used to declare has been removed with that. BPO itself has
migrated to GitHub some years ago and it is possible to link the
respective issues by using their GitHub issue numbers and the
``:issue:`` role that the ``sphinx-issues`` extension implements.

-- by :user:`webknjaz`


- `12562 <https://github.com/pytest-dev/pytest/issues/12562>`_: Possible typos in using the ``:user:`` RST role is now being linted
through the pre-commit tool integration -- by :user:`webknjaz`.

8.2.2

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

Bug Fixes
---------

- `12355 <https://github.com/pytest-dev/pytest/issues/12355>`_: Fix possible catastrophic performance slowdown on a certain parametrization pattern involving many higher-scoped parameters.


- `12367 <https://github.com/pytest-dev/pytest/issues/12367>`_: Fix a regression in pytest 8.2.0 where unittest class instances (a fresh one is created for each test) were not released promptly on test teardown but only on session teardown.


- `12381 <https://github.com/pytest-dev/pytest/issues/12381>`_: Fix possible "Directory not empty" crashes arising from concurrent cache dir (``.pytest_cache``) creation. Regressed in pytest 8.2.0.



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

- `12290 <https://github.com/pytest-dev/pytest/issues/12290>`_: Updated Sphinx theme to use Furo instead of Flask, enabling Dark mode theme.


- `12356 <https://github.com/pytest-dev/pytest/issues/12356>`_: Added a subsection to the documentation for debugging flaky tests to mention
lack of thread safety in pytest as a possible source of flakiness.


- `12363 <https://github.com/pytest-dev/pytest/issues/12363>`_: The documentation webpages now links to a canonical version to reduce outdated documentation in search engine results.
Links

Update pytest-env from 1.1.3 to 1.1.5.

Changelog

1.1.5

<!-- Release notes generated using configuration in .github/release.yml at main -->

What's Changed
* Improve the CI by gaborbernat in https://github.com/pytest-dev/pytest-env/pull/101


**Full Changelog**: https://github.com/pytest-dev/pytest-env/compare/1.1.4...1.1.5

1.1.4

<!-- Release notes generated using configuration in .github/release.yml at main -->



**Full Changelog**: https://github.com/pytest-dev/pytest-env/compare/1.1.3...1.1.4
Links

Update fiftyone from 0.23.8 to 1.0.1.

Changelog

1.0.1

Please see the official [Voxel51 Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-1-0-1) for details!

1.0.0

Please see the official Voxel51 [Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-1-0-0)

0.25.2

Please see the official Voxel51 [Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-0-25-2)

0.25.1

Please see the official Voxel51 [Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-0-25-1)

0.25.0

Please see the official Voxel51 [Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-0-25-0)

0.24.1

Please see the official [Voxel51 Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-0-24-1) for details.

0.24.0

Please see the official [Voxel51 Release Notes](https://docs.voxel51.com/release-notes.html#fiftyone-0-24-0) for details.
Links

Update datasets from 2.19.1 to 3.0.1.

Changelog

3.0.0

Added

-   `DownloadManager` is now pickable (can be used inside Beam pipelines).
-   `tfds.features.Audio`:
 -   Support float as returned value.
 -   Expose sample_rate through `info.features['audio'].sample_rate`.
 -   Support for encoding audio features from file objects.
-   More datasets.

Changed

-   New `image_classification` section. Some datasets have been move there from
 `images`.
-   `DownloadConfig` does not append the dataset name anymore (manual data
 should be in `<manual_dir>/` instead of `<manual_dir>/<dataset_name>/`).
-   Tests now check that all `dl_manager.download` urls has registered
 checksums. To opt-out, add `SKIP_CHECKSUMS = True` to your
 `DatasetBuilderTestCase`.
-   `tfds.load` now always returns `tf.compat.v2.Dataset`. If you're using still
 using `tf.compat.v1`:
 -   Use `tf.compat.v1.data.make_one_shot_iterator(ds)` rather than
     `ds.make_one_shot_iterator()`.
 -   Use `isinstance(ds, tf.compat.v2.Dataset)` instead of `isinstance(ds,
     tf.data.Dataset)`.

Deprecated

-   The `tfds.features.text` encoding API is deprecated. Please use
 [tensorflow_text](https://www.tensorflow.org/tutorials/tensorflow_text/intro)
 instead.
-   `num_shards` argument of `tfds.core.SplitGenerator` is currently ignored and
 will be removed in the next version.

Removed

-   Legacy mode `tfds.experiment.S3` has been removed
-   `in_memory` argument has been removed from `as_dataset`/`tfds.load` (small
 datasets are now auto-cached).
-   `tfds.Split.ALL`.

Fixed

-   Various bugs, better error messages, documentation improvements.
Links

Update ultralytics from 8.2.48 to 8.3.18.

Changelog

8.3.18

🌟 Summary
This release, version 8.3.18, brings improvements to make navigating documentation easier and enhances user control over logging features.

📊 Key Changes
- Enhanced the conversion of URLs in documentation to clickable links, removing reliance on the BeautifulSoup library.
- Simplified the YOLO HUB login command by removing the now redundant "hub" keyword.
- Changed default settings to disable Weights & Biases logging integration, enhancing user privacy.
- Corrected previous updates that inadvertently broke documentation links by reversing specific changes.

🎯 Purpose & Impact
- **Improved Usability:** Making URLs clickable in documentation enhances navigation, making it easier for users to explore related content.
- **Streamlined Workflow:** Simplifying the login process helps users quickly access the Ultralytics HUB with a straightforward command.
- **Increased Privacy Control:** Disabling automatic logging to Weights & Biases by default respects user preferences regarding third-party data sharing.
- **Documentation Integrity:** Reverting previous changes ensures that all documentation links remain functional, providing consistent access to resources. 

These updates are focused on enhancing user experience and improving code efficiency in documentation handling.

What's Changed
* Update YOLO login by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/17022
* `ultralytics 8.3.18` fix `is_jupyter()` to `globals()` by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/17023
* Revert "Fixed build docs regex security" by UltralyticsAssistant in https://github.com/ultralytics/ultralytics/pull/17027
* Ultralytics Refactor https://ultralytics.com/actions by UltralyticsAssistant in https://github.com/ultralytics/ultralytics/pull/17031


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.17...v8.3.18

8.3.17

🌟 Summary
The latest release, v8.3.17, enhances command-line argument handling and boosts backward compatibility for older YOLO model versions.

📊 Key Changes
- **Command Line Update**: Improved how command-line arguments are processed, especially when using spaces and special characters like brackets.
- **Backward Compatibility**: Reintroduced support for legacy models (v3, v5, v8, v9) to ensure they work smoothly with current updates.

🎯 Purpose & Impact
- **Better CLI Experience**: The command-line interface now handles complex argument patterns more effectively, making it easier for users and scripts to interact without errors. This is particularly useful for advanced users who configure models via scripts. 🛠️
- **Legacy Model Support**: Users of older YOLO models can now integrate them with new updates without needing to upgrade models immediately, facilitating a more seamless transition. This helps maintain consistency in performance and saves time on reconfiguration. 📈

By refining command-line interactions and supporting older models, this update aims to improve user convenience and software flexibility.

What's Changed
* Backward compatibility support for legacy models by Laughing-q in https://github.com/ultralytics/ultralytics/pull/17010
* `ultralytics 8.3.17` accept spaces in CLI args by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16641


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.16...v8.3.17

8.3.16

🌟 Summary
The `ultralytics v8.3.16` update is a minor release focused on improvements to documentation readability, support for the latest PyTorch version, and minor bug fixes.

📊 Key Changes
- **PyTorch 2.5.0 Support**: Updates facilitate compatibility with the latest PyTorch version, ensuring users can leverage its enhancements and features.
- **Documentation Enhancements**: README and other documents were updated to improve layout, navigation, link accuracy, and partner information, enhancing clarity and accessibility.
- **Parking Management UI**: The Tkinter user interface for the parking management solution was refined to improve usability and code maintainability.
- **Docker Image Publishing**: Adjustments made to improve Docker image handling for applications using Tkinter.
- **Regex Security Update**: Improved regex patterns in documentation to enhance link formatting security.

🎯 Purpose & Impact
- **Broad Compatibility**: Supporting PyTorch 2.5.0 allows users to benefit from performance improvements and new capabilities in their workflows.
- **Enhanced User Experience**: Documentation improvements make it easier for users to understand and navigate resources, which can aid in learning and implementing the Ultralytics solutions.
- **Improved UI & Functionality**: The parking management solution's UI improvements will make it more intuitive for users to set up and manage parking zones.
- **Security and Optimization**: Code refactoring, Docker handling improvements, and enhanced regex contribute to better security, efficiency, and maintainability. 

These changes collectively aim to enhance user experience, keep the project updated with industry standards, and ensure robust, secure deployments.

What's Changed
* Update `parking-management` solution by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16990
* Update Integrations table by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16994
* Docker tkinter fix by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16995
* Update README links by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16996
* Fixed build docs regex security by ambitious-octopus in https://github.com/ultralytics/ultralytics/pull/17012
* `ultralytics 8.3.16` PyTorch 2.5.0 support by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16998


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.15...v8.3.16

8.3.15

🌟 Summary
The `v8.3.15` release of Ultralytics introduces enhanced support for selecting TPU devices, improved code readability, and refines several workflows and documentation aspects.

📊 Key Changes
- **TPU Device Selection**: Added functionality to choose specific TPU devices when multiple are available, essential for managing resources across multiple containers.
- **Code Refactoring**: Improved code clarity and maintainability in `autobackend.py`.
- **Version Management**: Simplified PyPI version checking logic for more efficient publishing workflows.
- **Documentation Updates**: 
- Expanded CI tables to include more repositories and added clarity to link formatting.
- Corrected documentation URLs and clarified usage instructions for TPU models.

🎯 Purpose & Impact
- **Enhanced Flexibility**: Users can now run applications on specific TPUs, preventing conflicts and optimizing resource allocation — especially useful for complex, multi-container setups. ⚙️
- **Code Maintenance**: The refactoring improves readability and ease of future maintenance, which is beneficial for all developers engaging with the project. 🛠️
- **Streamlined Release Process**: By minimizing the complexity of the version management script, the stability and efficiency of release cycles are improved, reducing the potential for human error. 🚀
- **Improved User Guidance**: More intuitive and accurate documentation means users will experience fewer issues and a better understanding of product capabilities. 📚

This release makes using multiple TPU resources smoother and improves the overall quality and maintainability of the project infrastructure.

What's Changed
* Update publish.yml by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16967
* Expand Docs CI table with `mkdocs`, `thop`, `actions`, `handbook` by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16970
* Fix broken Tencent AI link by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16971
* Remove `onnxslim==0.1.34` pin by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16974
* Update `utralytics/solutions` docstrings to match new YOLO11 by jk4e in https://github.com/ultralytics/ultralytics/pull/16975
* Fix display of links in yolov5 docs by jk4e in https://github.com/ultralytics/ultralytics/pull/16973
* Fix Triton inference without explicit metadata by zeograd in https://github.com/ultralytics/ultralytics/pull/16938
* `ultralytics 8.3.15` new TPU device-selection ability by lalayants in https://github.com/ultralytics/ultralytics/pull/16576

New Contributors
* lalayants made their first contribution in https://github.com/ultralytics/ultralytics/pull/16576
* zeograd made their first contribution in https://github.com/ultralytics/ultralytics/pull/16938

**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.14...v8.3.15

8.3.14

🌟 Summary
The release of `v8.3.14` brings significant improvements to dynamic inference handling in the TensorRT engine and several documentation updates.

📊 Key Changes
- **TensorRT Inference Update**: Improved condition handling for image shape management in TensorRT's autobackend module.
- **Documentation Corrections**: Fixed links, naming errors, and clarified documentation for various user guides and integration instructions.
- **Code Refactor**: Optimized the codebase for better performance and readability.

🎯 Purpose & Impact
- **Enhanced Performance**: The TensorRT update optimizes image shape checking, which boosts performance and reduces errors during dynamic input handling.
- **Improved User Guidance**: Documentation enhancements provide clearer and more accurate guidance, helping both new and experienced users to navigate and utilize Ultralytics features effectively.
- **Streamlined Codebase**: Refactoring leads to quicker code execution and simplifies maintenance, benefiting developers working with the project.

These updates collectively aim to enhance the efficiency and user experience of the Ultralytics platform. 🌟🚀

What's Changed
* Fix link in docs guide page by jk4e in https://github.com/ultralytics/ultralytics/pull/16932
* Fix naming of dataset for OBB in Google Colab Tutorial by jk4e in https://github.com/ultralytics/ultralytics/pull/16937
* Ultralytics Code Refactor https://ultralytics.com/actions by UltralyticsAssistant in https://github.com/ultralytics/ultralytics/pull/16940
* Comet ML Docs - Fix link, naming and formatting by jk4e in https://github.com/ultralytics/ultralytics/pull/16941
*  Improve Home "Where to Start" Layout in Docs by jk4e in https://github.com/ultralytics/ultralytics/pull/16846
* Recommend newer Python version in conda docs by Y-T-G in https://github.com/ultralytics/ultralytics/pull/16946
* Update publish.yml by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16948
* Fix Home "Where to Start" grid card link alignment in docs by jk4e in https://github.com/ultralytics/ultralytics/pull/16945
* Optimize Example YOLO post-processing speed by franklinOliveira in https://github.com/ultralytics/ultralytics/pull/16821
* Update CLA.md by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16913
* Fix `self.type` variable name in Analytics solution by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16965
* `ultralytics 8.3.14` update TensorRT `dynamic` inference by Laughing-q in https://github.com/ultralytics/ultralytics/pull/16953

New Contributors
* franklinOliveira made their first contribution in https://github.com/ultralytics/ultralytics/pull/16821

**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.13...v8.3.14

8.3.13

🌟 Summary
The 'v8.3.13' release primarily focuses on refactoring the Segment Anything Model (SAM) to enhance prompt handling and documentation clarity.

📊 Key Changes
- 📘 Documentation improvements with updated examples for the `model` method.
- 🔄 Code refactoring introduces a new function `_prepare_prompts` to manage prompt preparations in SAM.
- 📦 Enhanced prompt handling for bounding boxes, points, labels, and masks.
- 🗑️ Cleaned up duplicated logging in YOLO training for simpler outputs.
- 💤 Added a 60-second delay to improve deployment stability in GitHub Actions.
- 📊 Fixed subplot indexing for clearer result plots in classification, segmentation, and pose.
- 🍇 Updated Raspberry Pi guide for YOLO11.
- 📈 With every precision metric, ensure it's returned for consistency with or without plotting.

🎯 Purpose & Impact
- 📝 **Documentation Clarity**: Clearer examples help users better understand model functionalities.
- 🔧 **Efficiency & Maintainability**: By moving prompt processing to a new function, the code is now easier to maintain and modify in the future.
- 🚀 **User Experience**: Improved multiple points and labels handling in SAM provides a better user experience for image segmentation tasks.
- 📉 **Logging**: Cleaner training logs mean users can more easily follow the training progress without unnecessary clutter.
- 🛠️ **Stability & Reliability**: Delaying deployment steps helps ensure smoother execution in CI/CD workflows, thus increasing user trust in automated deployments.
- 📊 **Visual Clarity**: Fixes to plotting result in more intuitive and easily interpretable visual outputs, aiding better analysis and decision-making.
- 🥝 **Guides Update**: Raspberry Pi users can leverage the latest YOLO11 advances with tailored guidance, benefiting from performance improvements.

What's Changed
* Clean up duplicated classify logging by Laughing-q in https://github.com/ultralytics/ultralytics/pull/16901
* Sleep 60s before triggering deploy actions by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16881
* Fix results.csv plotting by Laughing-q in https://github.com/ultralytics/ultralytics/pull/16898
* Update Raspberry Pi Guide with YOLO11 by lakshanthad in https://github.com/ultralytics/ultralytics/pull/16899
* Always return Precision metric regardless of `plot` arg by Y-T-G in https://github.com/ultralytics/ultralytics/pull/16900
* Update Dockerfile-runner v2.320.0 by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16912
* Use EdgeTPU export `--delegate_search_step 30` by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16910
* Update `distance-calculation` solution by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16907
* Add  `YOLO11 🚀 NEW` link in docs homepage by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16875
* `ultralytics 8.3.13` SAM prompt-inference refactor by Laughing-q in https://github.com/ultralytics/ultralytics/pull/16894


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.12...v8.3.13

8.3.12

🌟 Summary
The `v8.3.12` release of Ultralytics emphasizes the introduction of multi-point prompt support for the SAM and SAM2 models, allowing more flexible user interactions with segmentation tasks.

📊 Key Changes
- Introduced the ability to use multiple points and labels as prompts for a single object in SAM models. Points can now be structured in `[num_objects, num_points, 2]` for positions and `[num_objects, num_points]` for labels.
- Enhanced the analytics documentation and utilitarian functions for clearer data visualization and analysis.
- Deprecated the Ultralytics Explorer in favor of the Ultralytics HUB platform, consolidating tools for data exploration in a more unified and user-friendly environment.
- Optimized EdgeTPU exports to speed up compilation and improve configuration settings.

🎯 Purpose & Impact
- **Flexibility and Precision**: The support for multi-point prompts allows more detailed and complex object segmentation, providing better control and specificity for users dealing with intricate images.
- **Improved Usability**: The analytics update enhances user experience by simplifying the setup process, thereby benefiting both novices and experienced developers in understanding and utilizing data analytics functions.
- **Streamlined Experience**: Transition to Ultralytics HUB unifies resources, offering enhanced features and a simplified workflow for data exploration without the need for extensive coding, making it more accessible to a broader audience.
- **Efficiency Boost**: The EdgeTPU enhancements save time in model deployments, offering deeper debugging insights and faster operation, crucial for high-paced development environments.

What's Changed
* Update `analytics` solution by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16823
* Remove `explorer` Integration by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16842
* Reduce EdgeTPU to 3 compiler steps by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16880
* `ultralytics 8.3.12` SAM and SAM2 multi-point prompts by Y-T-G in https://github.com/ultralytics/ultralytics/pull/16643


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.11...v8.3.12

8.3.11

🌟 Summary
The release of Ultralytics YOLO `v8.3.11` focuses on a model naming overhaul and version synchronization for enhanced clarity.

📊 Key Changes
- 📦 Version bump from 8.3.10 to 8.3.11.
- 🔄 Model file names updated from `yolov8n` to `yolo11n` across varying export formats.
- ⚙️ Suppression of `onnx2tf` INT8-FP16 activation errors, ensuring smoother conversion processes.

🎯 Purpose & Impact
- **Naming Consistency:** By aligning model names across exports, users gain a more cohesive understanding of the model variation and version they are using. 
- **User Convenience:** The streamlined naming aids in identifying and using model exports effectively, leading to a smoother workflow for developers.
- **Error Reduction:** Addressing specific activation errors enhances the reliability and usability of the exports, particularly when using different formats for deployment.

What's Changed
* Add HUB-SDK badges to CI Docs by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16855
* Trigger GitHub Action on successful Docker Deploy by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16858
* Only trigger additional Actions on new Ultralytics releases by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16859
* Fix CI docker.yaml by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16869
* Update YOLOv8n to YOLO11n in args by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16873
* Add camera device to inference sources by Y-T-G in https://github.com/ultralytics/ultralytics/pull/16866
* `ultralytics 8.3.11` suppress `onnx2tf` INT8-FP16 act error by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16874


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.10...v8.3.11

8.3.10

🌟 Summary
The v8.3.10 release introduces support for HEIC images in predictions, which are commonly used by Apple devices. 📷

📊 Key Changes
- **HEIC Image Support:** Code enhancements allow for HEIC image loading and processing in predictions.
- **Documentation Update:** Added notes specifying that HEIC support is for inference only.
- **Version Update:** Bumped version from 8.3.9 to 8.3.10 to incorporate these modifications.

🎯 Purpose & Impact
- **Enhanced Compatibility:** Users can now use HEIC images for inference, expanding the range of compatible image formats.
- **Improved Clarity:** Documentation improvements help users understand the capabilities and limitations of HEIC support, ensuring a better user experience.

Additional updates in this release included documentation enhancements, improved image filename handling, and updates to ensure consistency in dataset names and integrative documentation. Each of these efforts contributes to smoother operation and better user clarity.

What's Changed
* Sort alphabetical integrations in docs by jk4e in https://github.com/ultralytics/ultralytics/pull/16819
* Fix empty paths while saving images with PIL bytes input by SheffeyG in https://github.com/ultralytics/ultralytics/pull/16809
* Fix typos in Tasks in docs so description matches example code by jk4e in https://github.com/ultralytics/ultralytics/pull/16825
* Fixed YOLO heads docstrings by ambitious-octopus in https://github.com/ultralytics/ultralytics/pull/16822
* Adding missing MNIST160 reference in Docs by jk4e in https://github.com/ultralytics/ultralytics/pull/16836
* `ultralytics 8.3.10` Apple iPhone HEIC support by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16853


**Full Changelog**: https://github.com/ultralytics/ultralytics/compare/v8.3.9...v8.3.10

8.3.9

🌟 Summary
The latest release of Ultralytics, version 8.3.9, introduces detailed improvements to training log outputs and CSV handling, enhancing tracking and reporting capabilities for model training sessions.

📊 Key Changes
- **Version Update**: Incremented from 8.3.8 to 8.3.9.
- **Improved Training Logs**: Enhanced logging to record epochs and training durations more effectively.
- **CSV Enhancements**: Training time is now included in CSV metric outputs, enabling easier analysis.
- **batch Size Adjustment**: Dynamic adjustment of batch sizes for GPUs with over 16GB of memory.
- **Branding Updates**: Renamed default project and task identifiers from "YOLOv8" to "Ultralytics".
- **Editable Installations**: Removed editable (`-e`) pip install mode from continuous integration workflows.

🎯 Purpose & Impact
- 🕒 **Enhanced Time Tracking**: By logging training time in detail, users can better manage and evaluate the efficiency of their model training processes.
- 📈 **Better Metric Tracking**: Including training time in the CSV output simplifies performance tracking and comparative analysis across different runs.
- ⚡ **Optimized GPU Use**: Allowing larger batch sizes on high-memory GPUs enhances computational resource utilization, resulting in faster training and inference.
- 🎨 **Consistent Branding**: Unified project naming promotes a more cohesive brand identity across logging and monitoring platforms.
- 🧩 **Improved Code Maintenance**: Simplifying installations and configurations results in fewer potential errors during setup and better reliability of the development and deployment workflows.

What's Changed
* Rename loggers from YOLOv8 to Ultralytics by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16784
* AutoBatch larger batches on larger GPUs by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16785
* fix autobackend.py by lmk123568 in https://github.com/ultralytics/ultralytics/pull/16801
* Update `speed-estimation` solution by RizwanMunawar in https://github.com/ultralytics/ultralytics/pull/16798
* Remove -e tag from CI by glenn-jocher in https://github.com/ultralytics/ultralytics/pull/16797
* Fix wrong parameter count while profiling by Y-T-G in https://github.com/ultralytics/ultralytics/pull/16790
* `ultralytics 8.3.9` add traini

Copy link

dagshub bot commented Oct 21, 2024

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.

1 participant