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

Update pydash to 8.0.2 #336

Closed
wants to merge 1 commit into from
Closed

Conversation

pyup-bot
Copy link
Collaborator

This PR updates pydash from 4.5.0 to 8.0.2.

Changelog

8.0.2

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

- Fix typing issue in ``map_`` for compatability with ``chain``. Thanks DeviousStoat_!

8.0.1

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

- Fix issue where too many arguments were passed to stdlib's ``operator.attrgetter``, ``operator.itemgetter``, and ``operator.methodcaller`` when instances of those classes were used as callbacks to functions like ``map_``, ``filter_``, etc. due to a bug introduced in Python 3.12.3 and 3.11.9 that reported an incorrect signature for those ``operator`` class instances.

8.0.0

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

- Add functions (Thanks DeviousStoat_!):

- ``apply`` (previously named ``thru``)
- ``apply_catch``
- ``apply_if``
- ``apply_if_not_none``
- ``eq_cmp``
- ``gt_cmp``
- ``gte_cmp``
- ``in_range_cmp``
- ``is_equal_cmp``
- ``is_equal_with_cmp``
- ``is_instance_of_cmp``
- ``is_match_cmp``
- ``is_match_with_cmp``
- ``is_monotone_cmp``
- ``lt_cmp``
- ``lte_cmp``

- Rename function ``thru`` to ``apply``. Thanks DeviousStoat_! (**breaking change**)
- Changed ``zip_``, ``unzip``, ``zip_with``, ``unzip_with`` and ``to_pairs`` to accept iterables of tuples instead of lists and return lists of tuples instead of lists of lists. Thanks DeviousStoat_! (**breaking change**)
- Fixed bug in ``divide``, ``multiply``, and ``subtract`` that returned the wrong result when ``0`` was used as one of the operation values. Thanks DeviousStoat_!

7.0.7

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

- Fix bug in function wrappers that incorrectly computed the number of arguments the wrapped function could handle. Thanks DeviousStoat_!
- Fix bug in ``set_`` where the incorrect object type, list instead of dict, was initialized on class attributes. Thanks DeviousStoat_!
- Drop support for Python 3.7.

7.0.6

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

- Fix typing for chaining interface for methods that use varargs. Thanks DeviousStoat_!

7.0.5

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

- Fix typing for ``find_index`` and ``find_last_index`` by allowing ``predicate`` argument to be callback shorthand values. Thanks DeviousStoat_!

7.0.4

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

- Exclude incompatible ``typing-extensions`` version ``4.6.0`` from install requirements. Incompatibility was fixed in ``4.6.1``.

7.0.3

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

- Fix typing for ``difference_by``, ``intersection_by``, ``union_by``, ``uniq_by``, and ``xor_by`` by allowing ``iteratee`` argument to be `Any`.  Thanks DeviousStoat_!

7.0.2

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

- Fix issue where using ``pyright`` as a type checker with ``reportPrivateUsage=true`` would report errors that objects are not exported from ``pydash``. Thanks DeviousStoat_!

7.0.1

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

- Fix missing install dependency, ``typing-extensions``, for package.

7.0.0

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

- Add type annotations to package. Raise an issue for any typing issues at https://github.com/dgilland/pydash/issues. Thanks DeviousStoat_! (**breaking change**)
- Change behavior of ``to_dict`` to not using ``dict()`` internally. Previous behavior would be for something like ``to_dict([["k", "v"], ["x", "y"]])`` to return ``{"k": "v", "x": "y"}`` (equivalent to calling ``dict(...)``) but ``to_dict([["k"], ["v"], ["x"], ["y"]])`` would return ``{0: ["x"], 1: ["v"], 2: ["x"], 3: ["y"]}``. The new behavior is to always return iterables as dictionaries with their indexes as keys like ``{0: ["k", "v"], 1: ["x", "y"]}``. This is consistent with how iterable objects are iterated over and means that ``to_dict`` will have more reliable output. (**breaking change**)
- Change behavior of ``slugify`` to remove single-quotes from output. Instead of ``slugify("the cat's meow") == "the-cat's-meow"``, the new behavior is to return ``"the-cats-meow"``. (**breaking change**)
- Add support for negative indexes in ``get`` path keys. Thanks bl4ckst0ne_!

6.0.2

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

- Only prevent access to object paths containing ``__globals__`` or ``__builtins__`` instead of all dunder-methods for non-dict/list objects.

6.0.1

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

- Fix exception raised due to mishandling of non-string keys in functions like ``get()`` for non-dict/list objects that used integer index references like ``"[0]"``.

6.0.0

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

- Prevent access to object paths containing dunder-methods in functions like ``get()`` for non-dict/list objects. Attempting to access dunder-methods using get-path keys will raise a ``KeyError`` (e.g. ``get(SomeClass(), '__init__'`` will raise). Access to dict keys are unaffected (e.g. ``get({"__init__": True}, "__init__")`` will return ``True``). (**breaking change**)
- Add support for Python 3.11.
- Drop support for Python 3.6 (**breaking change**)

5.1.2

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

- Remove unnecessary type check and conversion for ``exceptions`` argument in ``pydash.retry``.

5.1.1

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

- Add support for Python 3.10.
- Fix timing assertion issue in test for ``pydash.delay`` where it could fail on certain environments.

5.1.0

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

- Support matches-style callbacks on non-dictionary objects that are compatible with ``pydash.get`` in functions like ``pydash.find``.

5.0.2

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

- Fix compatibility issue between ``pydash.py_`` / ``pydash._`` and ``typing.Protocol`` + ``typing.runtime_checkable`` that caused an exception to be raised for ``isinstance(py_, SomeRuntimeCheckableProtocol)``.

5.0.1

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

- Fix bug in ``merge_with`` that prevented custom iteratee from being used when recursively merging. Thanks weineel_!

5.0.0

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

- Drop support for Python 2.7. (**breaking change**)
- Improve Unicode word splitting in string functions to be inline with Lodash. Thanks mervynlee94_! (**breaking change**)

- ``camel_case``
- ``human_case``
- ``kebab_case``
- ``lower_case``
- ``pascal_case``
- ``separator_case``
- ``slugify``
- ``snake_case``
- ``start_case``
- ``upper_case``

- Optimize regular expression constants used in ``pydash.strings`` by pre-compiling them to regular expression pattern objects.

4.9.3

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

- Fix regression introduced in ``v4.8.0`` that caused ``merge`` and ``merge_with`` to raise an exception when passing ``None`` as the first argument.

4.9.2

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

- Fix regression introduced in ``v4.9.1`` that broke ``pydash.get`` for dictionaries and dot-delimited keys that reference integer dict-keys.

4.9.1

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

- Fix bug in ``get/has`` that caused ``defaultdict`` objects to get populated on key access.

4.9.0

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

- Add ``default_to_any``. Thanks gonzalonaveira_!
- Fix mishandling of key names containing ``\.`` in ``set_``, ``set_with``, and ``update_with`` where the ``.`` was not treated as a literal value within the key name. Thanks zhaowb_!

4.8.0

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

- Support attribute based setters like ``argparse.Namespace`` in ``set_``, ``set_with``, ``update``, and ``update_with``.
- Fix exception in ``order_by`` when ``None`` used as a sort key. Thanks elijose55_!
- Fix behavior of ``pick_by`` to return the passed in argument when only one argument given. Previously, an empty dictionary was returned. Thanks elijose55_!
- Officially support Python 3.8.

4.7.6

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

Bug Fixes
+++++++++

- Fix handling of ``Sequence``, ``Mapping``, and ``namedtuple`` types in ``get`` so that their attributes aren't accessed during look-up. Thanks jwilson8767_!

4.7.5

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

Bug Fixes
+++++++++

- Fix handling of string and byte values in ``clone_with`` and ``clone_deep_with`` when a customizer is used.
- Fix handling of non-indexable iterables in ``find`` and ``find_last``.

4.7.4

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

Bug Fixes
+++++++++

- Raise an explicit exception in ``set_``, ``set_with``, ``update``, and ``update_with`` when an object cannot be updated due to that object or one of its nested objects not being subscriptable.

4.7.3

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

Bug Fixes
+++++++++

- Fix bug in ``spread`` where arguments were not being passed to wrapped function properly.

4.7.1

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

New Features
++++++++++++

- Modify ``to_dict`` to first try to convert using ``dict()`` before falling back to using ``pydash.helpers.iterator()``.

4.7.0

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

Misc
++++

- Internal code optimizations.

4.6.1

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

Misc
++++

- Support Python 3.7.

4.6.0

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

Misc
++++

- Improve performance of the following functions for large datasets:

- ``duplicates``
- ``sorted_uniq``
- ``sorted_uniq_by``
- ``union``
- ``union_by``
- ``union_with``
- ``uniq``
- ``uniq_by``
- ``uniq_with``
- ``xor``
- ``xor_by``
- ``xor_with``
Links

@pyup-bot pyup-bot mentioned this pull request Jul 21, 2024
@pyup-bot
Copy link
Collaborator Author

Closing this in favor of #337

@pyup-bot pyup-bot closed this Jul 22, 2024
@mkhorton mkhorton deleted the pyup-update-pydash-4.5.0-to-8.0.2 branch July 22, 2024 13:40
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