Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-awkward for openSUSE:Factory 
checked in at 2023-01-28 18:44:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-awkward (Old)
 and      /work/SRC/openSUSE:Factory/.python-awkward.new.32243 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-awkward"

Sat Jan 28 18:44:19 2023 rev:13 rq:1061725 version:2.0.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-awkward/python-awkward.changes    
2022-11-12 17:41:01.054113846 +0100
+++ /work/SRC/openSUSE:Factory/.python-awkward.new.32243/python-awkward.changes 
2023-01-28 19:00:24.291749337 +0100
@@ -1,0 +2,173 @@
+Fri Jan 27 21:34:45 UTC 2023 - Ben Greiner <c...@bnavigator.de>
+
+- Update to 2.0.6
+  * feat: expose typetracer in public backend API by @agoose77 in #2066
+  * feat: add byteorder argument to to_buffers by @agoose77 in #2095
+  * feat: add exception for missing field by @agoose77 in #2120
+- Release 2.0.3 and 2.0.4
+ * The flatten_records argument of all reducers (ak.all, ak.any,
+   ..., ak.var) has effectively been removed: setting it now raises
+   an error (PR #2020). This argument applies a reducer to all
+   contents of a record, merging fields, and it had to be removed
+   to properly implement axis=None. The old default,
+   flatten_records=False, is now the only behavior, and to get the
+   equivalent of flatten_records=True, you can use ak.ravel:
+        ak.sum(array, flatten_records=True)
+   becomes
+       ak.sum(ak.ravel(array))
+  * Removing the feature is still the right thing to do, but the
+    function argument needs to go through a deprecation cycle,
+    since libraries like dask-awkward pass arguments through to
+    Awkward. Removing flatten_records as an argument introduces an
+    error, even if the surviving case of flatten_records=False is
+    desired.
+- Release 2.0.2
+  * feat: add ak.drop_none() by @ioanaif in #1904
+- Release 2.0.1
+  * feat: add ak.without_field by @agoose77 in #1963
+- Release 2.0.0
+  * The Awkward Array version 2 project started in June of 2021 and
+    has been developed alongside version 1 updates. For most of
+    that time, it was available as a submodule, awkward._v2, so
+    that it could be tested with the same tests as version 1 and
+    could be experimented upon by early adopters.
+  * Despite the long list of PRs, the high-level interface changes
+    from version 1 to version 2 were kept at a minimum. For the
+    most part, the Awkward 1.x API is fine, but the internal
+    implementation needed an overhaul to prevent technical debt.
+  ## Summary of changes
+  * Nearly all of the code is written in Python now. Exceptions are
+    the "kernel" functions, GrowableBuffer, LayoutBuilder,
+    ArrayBuilder, AwkwardForth, and dynamically generated C++ code
+    for RDataFrame.
+  * Maintains performance because any algorithms that scale with
+    the size of an array are implemented in compiled "kernel"
+    functions.
+  * Split into two packages: awkward-cpp for the C++ part
+    (infrequently updated, binary distribution for most platforms
+    and Python versions) and awkward, the Python part (frequently
+    updated).
+  * Virtual arrays and Partitions (collectively, "lazy arrays")
+    have been removed in favor of dask-awkward.
+  * Awkward Arrays can be converted to and from RDataFrame,
+    generating C++ for ROOT to JIT-compile so that iteration over
+    Awkward Array input is fast (adapted from the Numba
+    implementation).
+  * Auto-differentiation of functions on Awkward Arrays using JAX.
+    (But not JAX JIT-compilation.)
+  * Suite of header-only C++ that does not depend on Awkward
+    Arrays, but can be used to produce them and quickly get them
+    from C++ to Python. The header-only suite includes
+    GrowableBuffer and LayoutBuilder.
+  * New documentation website (https://awkward-array.org/), based
+    on JupyterBooks, the NumPy/SciPy/Pandas style and organization,
+    as well as a notebook that can be executed in your web browser.
+  * More expressive error-messages, highlighting the ak.* function
+    that was in progress when the error occurred, with its
+    arguments. (That is, highlighting ak.* functions as the
+    granularity of feedback to users of Awkward Array, rather than
+    making you search through the stack trace to the hand-off from
+    your code to ours.)
+  * Brackets are always balanced in the console representation of
+    an array:
+
+        >>> ak.Array([
+        ...     [{"x": 1.1, "y": [1]}, {"x": 2.2, "y": [1, 2]}],
+        ...     [],
+        ...     [{"x": 3.3, "y": [1, 2, 3]}],
+        ... ])
+        <Array [[{x: 1.1, y: [1]}, {...}], ...] type='3 * var * {x: float64, 
y: var...'>
+    
+    as opposed to
+    
+        <Array [[{x: 1.1, y: [1]}, ... y: [1, 2, 3]}]] type='3 * var * {"x": 
float64, "y...'>
+    
+    in version 1. Also, show methods for values
+    
+        [[{x: 1.1, y: [1]}, {x: 2.2, y: [1, 2]}],
+         [],
+         [{x: 3.3, y: [1, 2, 3]}]]
+    
+    and types
+    
+        3 * var * {
+            x: float64,
+            y: var * int64
+        }
+    
+    This extended show output is the default representation in Jupyter.
+  * Round-trip fidelity in ak.to_arrow/ak.from_arrow: no Awkward
+    Array metadata is lost. Same for ak.to_parquet/ak.from_parquet,
+    to the extent that pyarrow can read and write Parquet.
+  * Parquet column selection using wildcards.
+  * Data exported with version 1 ak.to_buffers can be imported by
+    version 2 ak.from_buffers, with custom buffer_keys.
+  * The majority of version 1 tests have been ported to version 2,
+    to ensure that the interface and functionality doesn't change,
+    except where intended (e.g. organizing naming conventions).
+  * Consistent handling of date-time and time-delta types (matches
+    NumPy's system).
+  * Improved ak.to_json/ak.from_json arguments (for converting
+    non-JSON types NaN, infinity, complex numbers) and using a
+    known JSONSchema to accelerate ak.from_json. Removed
+    ambiguities about newline-delimited JSON (requires explicit
+    argument).
+  * The world's fastest Avro file reader in Python,
+    ak.from_avro_file (uses AwkwardForth).
+  * "nan" versions of NumPy functions, such as np.nansum,
+    np.nanmean, np.nanstd.
+  * Renamed ak.to_pandas → ak.to_dataframe, to clarify distinction
+    from awkward-pandas.
+  * Organized Type and Form objects better, more consistent.
+  * Clear specification of NumPy dtypes that can be used in Awkward
+    Arrays (bool, numbers, including complex, and
+    date-time/time-delta).
+  * Organized naming conventions throughout the codebase, such as
+    keys versus fields versus recordlookup.
+  * Carefully examined the public API (all modules, functions,
+    classes, and methods that don't start with an underscore) to be
+    sure that we can support it going forward. Any removal or
+    change of an interface will require a minor version number
+    increase and a deprecation cycle, on the order of months. (New
+    features and bug-fixes can be immediate, on patch releases.)
+  * Flags and "configuration" function arguments are now
+    keyword-only (order independent).
+  * Started adding Python type hints (nowhere near complete, but
+    started).
+  * Removed the Identities from array nodes. They were never fully
+    implemented—a placeholder for a feature that won't be developed
+    within Awkward Array (SQL-style JOINs).
+  * TypeTracerArray does a "dry run" of a calculation to predict
+    its type at the end. Used to build a computation graph for
+    dask-awkward.
+  * Equivalent but ungainly type combinations, such as "option-type
+    of option-type of X" or "union-type containing union-types,"
+    have been outlawed with tools to squash them into a canonical
+    layout. Operations on the data now have fewer possibilities to
+    worry about.
+  * Simplified the semantics of nbytes.
+  * Clarified ak.ravel and ak.flatten's treatments of missing data.
+  * Added missing ArrayBuilder methods in Numba.
+  * Set up framework for performing ak.* operations in CUDA, using
+    CuPy JIT-compilation to get the right interface, with error
+    message passing through asynchronous GPU computations. The CUDA
+    implementation is not complete, but the groundwork has been
+    laid.
+  * Parquet reading/writing uses fsspec for remote connections and
+    handles the dataset protocol correctly.
+  * Public interface to our power-tools: ak.transform unifies our
+    internal recursively_apply and broadcast_and_apply.
+  * All ak.* functions were rewritten; some were redesigned in a
+    simpler way using the above-mentioned power tools. There are
+    likely fewer undiscovered bugs in these functions now.
+  * Use of records in numerical functions is more restricted, to
+    prevent misapplication of ufuncs like + and reducers like
+    np.sum on meaningful records such as Vectors.
+  * All docstrings updated for version 2, including the code
+    examples.
+- Drop awkward-cmake-build-with-RelWithDebInfo.patch: No longer
+  compiling here
+- Remove the devel package: The header-only files are now provided
+  by awkward-devel built from python-awkward-cpp
+
+-------------------------------------------------------------------

Old:
----
  awkward-1.10.2.tar.gz
  awkward-cmake-build-with-RelWithDebInfo.patch

New:
----
  awkward-2.0.6.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-awkward.spec ++++++
--- /var/tmp/diff_new_pack.1uzeiO/_old  2023-01-28 19:00:24.719751761 +0100
+++ /var/tmp/diff_new_pack.1uzeiO/_new  2023-01-28 19:00:24.723751784 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-awkward
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,39 +16,46 @@
 #
 
 
-%global modname awkward
-%global skip_python2 1
+%define awkward_cpp_version 7
 Name:           python-awkward
-Version:        1.10.2
+Version:        2.0.6
 Release:        0
 Summary:        Manipulate arrays of complex data structures as easily as Numpy
 License:        BSD-3-Clause
 URL:            https://awkward-array.org/
-Source:         
https://files.pythonhosted.org/packages/source/a/awkward/awkward-%{version}.tar.gz
-# PATCH-FETAURE-OPENSUSE awkward-cmake-build-with-RelWithDebInfo.patch 
badshah...@gmail.com -- Set CMAKE_BUILD_TYPE to RelWithDebInfo by default 
instead of Release
-Patch0:         awkward-cmake-build-with-RelWithDebInfo.patch
-BuildRequires:  %{python_module devel}
-BuildRequires:  %{python_module setuptools}
-BuildRequires:  cmake
+# SourceRepository: https://github.com/scikit-hep/awkward
+Source0:        
https://files.pythonhosted.org/packages/source/a/awkward/awkward-%{version}.tar.gz
+BuildRequires:  %{python_module base >= 3.7}
+BuildRequires:  %{python_module hatch-fancy-pypi-readme}
+BuildRequires:  %{python_module hatchling >= 1.10.0}
+BuildRequires:  %{python_module pip}
 BuildRequires:  fdupes
-BuildRequires:  gcc-c++
 BuildRequires:  python-rpm-macros
-Requires:       python-numpy >= 1.13.1
+Requires:       python-awkward-cpp = %{awkward_cpp_version}
+Requires:       python-numpy >= 1.14.5
 Requires:       python-packaging
+Requires:       (python-importlib-resources if python-base < 3.9)
+Requires:       (python-typing-extensions >= 4.1.0 if python-base < 3.11)
 Recommends:     python-cupy
 Recommends:     python-numba
 Recommends:     python-pandas
 # SECTION test requirements
 BuildRequires:  %{python_module PyYAML}
-BuildRequires:  %{python_module importlib-resources}
-BuildRequires:  %{python_module numpy >= 1.13.1}
+BuildRequires:  %{python_module awkward-cpp = %{awkward_cpp_version}}
+BuildRequires:  %{python_module importlib-resources if %python-base < 3.9}
+BuildRequires:  %{python_module numba >= 0.50 if %python-base < 3.11}
+BuildRequires:  %{python_module numexpr}
+BuildRequires:  %{python_module numpy >= 1.14.5}
 BuildRequires:  %{python_module packaging}
 BuildRequires:  %{python_module pandas}
+BuildRequires:  %{python_module pytest-xdist}
 BuildRequires:  %{python_module pytest}
-%if 0%{?suse_version} >= 1550
-BuildRequires:  %{python_module numba >= 0.50}
-%endif
+BuildRequires:  %{python_module typing-extensions >= 4.1.0 if %python-base < 
3.11}
+# Don't add uproot here: build cycle dependency
 # /SECTION
+BuildArch:      noarch
+# Test suite fails on numerous tests when trying to convert 64-bit types
+ExcludeArch:    %{ix86} %{arm32}
 %python_subpackages
 
 %description
@@ -60,57 +67,27 @@
 Their behavior coincides with NumPy when array dimensions are regular and
 generalizes when they're not.
 
-%package -n awkward-devel
-Summary:        Header files for using awkaward in C/C++ code
-Requires:       python3-awkward = %{version}
-
-%description -n awkward-devel
-Awkward Array is a library for nested, variable-sized data, including
-arbitrary-length lists, records, mixed types, and missing data, using
-NumPy-like idioms.
-
-This package provides the header files needed to compile C/C++ codes with
-awkward.
-
 %prep
-%autosetup -p1 -n awkward-%{version}
+%setup -q -n awkward-%{version}
 
 %build
-%python_build
+%pyproject_wheel
 
 %install
-%python_install
-
-# Remove static libs
-%python_expand find %{buildroot}%{$python_sitearch}/%{modname}/ -name "*.a" 
-delete -print
-
-%{python_expand # Create a symlink to shared library in _libdir for the C/C++ 
devel pkg
-if [ "$python_" = "python3_" -o "%{$python_provides}" = "python3" ]; then
-ln -s %{$python_sitearch}/libawkward.so %{buildroot}%{_libdir}/
-ln -s %{$python_sitearch}/libawkward-cpu-kernels.so %{buildroot}%{_libdir}/
-fi
+%pyproject_install
+%{python_expand # remove devel files
+rm -r %{buildroot}%{$python_sitelib}/awkward/_connect/header-only
+rm -r %{buildroot}%{$python_sitelib}/awkward/_connect/rdataframe/include
+%fdupes %{buildroot}%{$python_sitelib}
 }
-# setuptools no longer installs headers, copy them ourselves
-# The "build" directory is the result from the primary interpreter
-mkdir -p %{buildroot}%{_includedir}/awkward
-cp -a build/lib.linux-*/awkward/include %{buildroot}%{_includedir}/awkward
-
-%python_expand %fdupes %{buildroot}%{$python_sitearch}
 
 %check
-# test-cuda: we don't have python-cupy yet
-%pytest_arch --ignore tests-cuda/
+%pytest -n auto --ignore tests-cuda/
 
 %files %{python_files}
 %doc README.md
 %license LICENSE
-%{python_sitearch}/*.so
-%{python_sitearch}/%{modname}/
-%{python_sitearch}/%{modname}-%{version}*-info/
-
-%files -n awkward-devel
-%license LICENSE
-%{_includedir}/awkward/
-%{_libdir}/*.so
+%{python_sitelib}/awkward/
+%{python_sitelib}/awkward-%{version}.dist-info/
 
 %changelog

++++++ awkward-1.10.2.tar.gz -> awkward-2.0.6.tar.gz ++++++
++++ 576138 lines of diff (skipped)

Reply via email to