Sync from SUSE:SLFO:Main python-pydash revision 4f962a59397af90f1c17bc16c4f36bfd

This commit is contained in:
2025-05-28 11:21:41 +02:00
commit eb1fdc1c9c
4 changed files with 268 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

BIN
pydash-8.0.5.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

165
python-pydash.changes Normal file
View File

@@ -0,0 +1,165 @@
-------------------------------------------------------------------
Wed Feb 5 13:06:20 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 8.0.5
* Fix bug that could result in passing too many arguments to
callback functions when the callback contained a var-keyword
or keyword-only arguments.
- from version 8.0.4
* Fix bug in ``zip_object`` and ``zip_object_deep`` where an
empty list for keys/values would cause an exception instead
of returning an empty dict.
-------------------------------------------------------------------
Sun Aug 18 17:19:27 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 8.0.3:
* Specify explicit type parameters for all type annotations.
Thanks DeviousStoat!
* Fix typing issue in map_ for compatability with chain. Thanks
DeviousStoat!
* 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.
-------------------------------------------------------------------
Thu May 2 08:56:18 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 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.
-------------------------------------------------------------------
Wed Apr 3 01:30:20 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 8.0.0:
* Add functions:
+ 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.
* 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.
* Fixed bug in divide, multiply, and subtract that returned the wrong
result when 0 was used as one of the operation values.
* Fix bug in function wrappers that incorrectly computed the number of
arguments the wrapped function could handle.
* Fix bug in set_ where the incorrect object type, list instead of dict,
was initialized on class attributes.
* Drop support for Python 3.7.
* Fix typing for chaining interface for methods that use varargs.
* Fix typing for find_index and find_last_index by allowing predicate
argument to be callback shorthand values.
* Fix typing for difference_by, intersection_by, union_by, uniq_by,
and xor_by by allowing iteratee argument to be `Any`.
* Fix missing install dependency, typing-extensions, for package.
* Add type annotations to package.
* Change behavior of to_dict to not using dict() internally.
* Change behavior of slugify to remove single-quotes from output.
* Add support for negative indexes in get path keys.
- Switch to autosetup macro.
- No more greedy globs in %files.
-------------------------------------------------------------------
Tue Mar 5 09:17:48 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Switch package to modern Python Stack on SLE-15
+ Add %{?sle15_python_module_pythons}
+ Drop %{?!python_module:%define python_module() python-%{**} python3-%{**}}
-------------------------------------------------------------------
Mon Oct 16 10:07:57 UTC 2023 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to version 6.0.2
* Only prevent access to object paths containing ``__globals__`` or
``__builtins__`` instead of all dunder-methods for non-dict/list
objects.
- from version 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]"``.
- from version 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**)
- from version 5.1.2
* Remove unnecessary type check and conversion for ``exceptions``
argument in ``pydash.retry``.
- from version 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.
- Switch build system from setuptools to pyproject.toml
- Update BuildRequires from pyproject.toml
-------------------------------------------------------------------
Thu Apr 7 10:59:23 UTC 2022 - pgajdos@suse.com
- version update to 5.1.0
v5.1.0 (2021-10-02)
-------------------
- Support matches-style callbacks on non-dictionary objects that are compatible with ``pydash.get`` in functions like ``pydash.find``.
v5.0.2 (2021-07-15)
-------------------
- Fix compatibility issue between ``pydash.py_`` / ``pydash._`` and ``typing.Protocol`` + ``typing.runtime_checkable``
that caused an exception to be raised for ``isinstance(py_, SomeRuntimeCheckableProtocol)``.
v5.0.1 (2021-06-27)
-------------------
- Fix bug in ``merge_with`` that prevented custom iteratee from being used when recursively merging. Thanks weineel_!
v5.0.0 (2021-03-29)
-------------------
- 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.
v4.9.3 (2021-03-03)
-------------------
- Fix regression introduced in ``v4.8.0`` that caused ``merge`` and ``merge_with`` to raise an exception when passing ``None``
as the first argument.
v4.9.2 (2020-12-24)
-------------------
- Fix regression introduced in ``v4.9.1`` that broke ``pydash.get`` for dictionaries and dot-delimited keys that reference
integer dict-keys.
v4.9.1 (2020-12-14)
-------------------
- Fix bug in ``get/has`` that caused ``defaultdict`` objects to get populated on key access.
v4.9.0 (2020-10-27)
-------------------
- 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_!
- python-mock is not required for build
-------------------------------------------------------------------
Fri Jul 24 10:59:08 UTC 2020 - John Vandenberg <jayvdb@gmail.com>
- Activate test suite
- Update to v4.8.0
-------------------------------------------------------------------
Thu Jan 9 11:06:30 AM UTC 2020 - John Vandenberg <jayvdb@gmail.com>
- Initial spec for v4.7.6

77
python-pydash.spec Normal file
View File

@@ -0,0 +1,77 @@
#
# spec file for package python-pydash
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?sle15_python_module_pythons}
Name: python-pydash
Version: 8.0.5
Release: 0
Summary: The kitchen sink of Python functional utility libraries
License: MIT
URL: https://github.com/dgilland/pydash
Source: https://files.pythonhosted.org/packages/source/p/pydash/pydash-%{version}.tar.gz
BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module invoke}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pytest-cov}
BuildRequires: %{python_module pytest-mypy-testing}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module typing_extensions >= 3.10}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-typing_extensions >= 3.10
BuildArch: noarch
%python_subpackages
%description
The kitchen sink of Python utility libraries for doing "stuff" in a functional way.
Based on the Lo-Dash Javascript library.
%prep
%autosetup -p1 -n pydash-%{version}
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
# Avoid weird type reveal issue with pytest-mypy-testing
donttest="test_mypy_tap or test_mypy_assign or test_mypy_assign_with or "
donttest+="test_mypy_callables or test_mypy_clone_with or "
donttest+="test_mypy_clone_deep or test_mypy_clone_deep_with or "
donttest+="test_mypy_defaults or test_mypy_defaults_deep or "
donttest+="test_mypy_for_in or test_mypy_invert_by or "
donttest+="test_mypy_map_keys or test_mypy_map_values or "
donttest+="test_mypy_merge or test_mypy_omit or test_mypy_omit_by or "
donttest+="test_mypy_pick or test_mypy_pick_by or "
donttest+="test_mypy_rename_keys or test_mypy_set_with or "
donttest+="test_mypy_to_dict or test_mypy_transform or "
donttest+="test_mypy_update or test_mypy_update_with or "
donttest+="test_mypy_apply_if or test_mypy_apply_catch"
%pytest -k "not ($donttest)"
%files %{python_files}
%doc AUTHORS.rst CHANGELOG.rst README.rst
%license LICENSE.rst
%{python_sitelib}/pydash
%{python_sitelib}/pydash-%{version}.dist-info
%changelog