Nocaselist

Latest version: v2.0.0

Safety actively analyzes 622344 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

2.0.1.dev1

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

Released: not yet

**Incompatible changes:**

**Deprecations:**

**Bug fixes:**

**Enhancements:**

**Cleanup:**

**Known issues:**

* See `list of open issues`_.

.. _`list of open issues`: https://github.com/pywbem/nocaselist/issues

2.0.0

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

Released: 2023-06-01

**Incompatible changes:**

* Removed support for Python 2.7, 3.4, 3.5. The minimum required Python version
is now 3.6. This was needed in order to add Python type hints.

**Bug fixes:**

* Fixed coveralls issues with KeyError and HTTP 422 Unprocessable Entity.

* Added support for passing slices to '__setitem__()' and '__delitem__()'.
Expanded the testcases accordingly.

* Fixed incorrect error handling when passing objects of unsupported types to
the right hand operand of the rich comparison methods of NocaseList. This
previously caused AttributeError "'list' object has no attribute 'lower'"
and TypeError "'int' object is not iterable" to be raised which was confusing.
This is now handled by returning 'NotImplemented' from these methods as
recommended by Python, causing TypeError with a proper message to be raised
by Python.

**Enhancements:**

* Resurrected support for byte strings as list values in the default
implementation of the casefold method. The list can now contains unicode
strings and byte strings.

* Added type hints and type checking with MyPy (issue 96).

1.1.0

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

Released: 2023-01-21

**Incompatible changes:**

* The default casefolding method on Python 3 was changed from `str.lower()`
to `str.casefold()`. This changes the matching of the case-insensitive values.
This shold normally be an improvement, but in case you find that you are
negatively affected by this change, you can go back to the `str.lower()`
method by overriding the `NocaseDict.__casefold__()` method with a method
that calls `str.lower()`. (issue 95)

**Enhancements:**

* Added support for Python 3.11.

* Changed the default casefolding method on Python 3 to be `str.casefold()` in
order to improve Unicode support. On Python 2, it remains `str.lower()`.
Added support for user-defined casefolding. (issue 95)

* Added support for storing `None` as a value in a NocaseList. Previously, that
was rejected with `AttributeError` since the casefold method was attempted to
be called on the `None` value. (part of issue 95)

1.0.6

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

Released: 2022-08-04

**Bug fixes:**

* Various fixes in dependencies and test environment.

1.0.5

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

Released: 2022-03-27

**Bug fixes:**

* Mitigated the coveralls HTTP status 422 by pinning coveralls-python to
<3.0.0 (issue 55).

* Fixed a dependency error that caused importlib-metadata to be installed on
Python 3.8, while it is included in the Python base.

* Fixed new issues raised by Pylint 2.10.

* Disabled new Pylint issue 'consider-using-f-string', since f-strings were
introduced only in Python 3.6.

* Fixed install error of wrapt 1.13.0 on Python 2.7 on Windows due to lack of
MS Visual C++ 9.0 on GitHub Actions, by pinning it to <1.13.

* Fixed TypeError when running Sphinx due to using docutils 0.18 on Python 2.7.

* Fixed error when installing virtualenv in install test on Python 2.7.

* Fixed that the added setup.py commands (test, leaktest, installtest) were not
displayed. They are now displayed at verbosity level 1 (using '-v').

**Enhancements:**

* Enhanced test matrix on GitHub Actions to always include Python 2.7 and
Python 3.4 on Ubuntu and Windows, and Python 2.7 and Python 3.5 on macOS.

* Support for Python 3.10: Added Python 3.10 in GitHub Actions tests, and in
package metadata.

**Cleanup:**

* Removed old tools that were needed on Travis and Appveyor but no longer on
GitHub Actions: remove_duplicate_setuptools.py, retry.bat

1.0.4

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

Released: 2021-01-01

**Enhancements:**

* Migrated from Travis and Appveyor to GitHub Actions. This required changes
in several areas including dependent packages used for testing and coverage.
This did not cause any changes on dependent packages used for the installation
of the package.

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.