summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-04-11 02:15:15 +0000
committerCoprDistGit <infra@openeuler.org>2023-04-11 02:15:15 +0000
commit618c0c3ccb167cba14fd0538ab93eed549a58ff8 (patch)
tree46d15780bc337c8a34532d3dd548eb9127ae9282
parent4a6ff3916b60a03ba5e025b85aa6ba9c9e110095 (diff)
automatic import of python-awkward1
-rw-r--r--.gitignore1
-rw-r--r--python-awkward1.spec436
-rw-r--r--sources1
3 files changed, 438 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..8e71999 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/awkward1-1.0.0.tar.gz
diff --git a/python-awkward1.spec b/python-awkward1.spec
new file mode 100644
index 0000000..820193d
--- /dev/null
+++ b/python-awkward1.spec
@@ -0,0 +1,436 @@
+%global _empty_manifest_terminate_build 0
+Name: python-awkward1
+Version: 1.0.0
+Release: 1
+Summary: Manipulate JSON-like data with NumPy-like idioms.
+License: BSD 3-clause
+URL: https://github.com/scikit-hep/awkward-1.0
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/05/e1/de4607482cd18eb43bfb4c7381571ad0928f7ebf0ed5815f93b21cc5e46a/awkward1-1.0.0.tar.gz
+BuildArch: noarch
+
+Requires: python3-awkward
+
+%description
+<a href="https://github.com/scikit-hep/awkward-1.0#readme"><img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/logo/logo-300px.png"></a>
+
+Awkward Array is a library for **nested, variable-sized data**, including arbitrary-length lists, records, mixed types, and missing data, using **NumPy-like idioms**.
+
+Arrays are **dynamically typed**, but operations on them are **compiled and fast**. Their behavior coincides with NumPy when array dimensions are regular and generalizes when they're not.
+
+# Motivating example
+
+Given an array of objects with `x`, `y` fields and variable-length nested lists like
+
+```python
+array = ak.Array([
+ [{"x": 1.1, "y": [1]}, {"x": 2.2, "y": [1, 2]}, {"x": 3.3, "y": [1, 2, 3]}],
+ [],
+ [{"x": 4.4, "y": {1, 2, 3, 4]}, {"x": 5.5, "y": [1, 2, 3, 4, 5]}]
+])
+```
+
+the following slices out the `y` values, drops the first element from each inner list, and runs NumPy's `np.square` function on everything that is left:
+
+```python
+output = np.square(array["y", ..., 1:])
+```
+
+The result is
+
+```python
+[
+ [[], [4], [4, 9]],
+ [],
+ [[4, 9, 16], [4, 9, 16, 25]]
+]
+```
+
+The equivalent using only Python is
+
+```python
+output = []
+for sublist in array:
+ tmp1 = []
+ for record in sublist:
+ tmp2 = []
+ for number in record["y"][1:]:
+ tmp2.append(np.square(number))
+ tmp1.append(tmp2)
+ output.append(tmp1)
+```
+
+Not only is the expression using Awkward Arrays more concise, using idioms familiar from NumPy, but it's much faster and uses less memory.
+
+For a similar problem 10 million times larger than the one above (on a single-threaded 2.2 GHz processor),
+
+ * the Awkward Array one-liner takes **4.6 seconds** to run and uses **2.1 GB** of memory,
+ * the equivalent using Python lists and dicts takes **138 seconds** to run and uses **22 GB** of memory.
+
+Speed and memory factors in the double digits are common because we're replacing Python's dynamically typed, pointer-chasing virtual machine with type-specialized, precompiled routines on contiguous data. (In other words, for the same reasons as NumPy.) Even higher speedups are possible when Awkward Array is paired with [Numba](https://numba.pydata.org/).
+
+Our [presentation at SciPy 2020](https://youtu.be/WlnUF3LRBj4) provides a good introduction, showing how to use these arrays in a real analysis.
+
+# Installation
+
+Awkward Array can be installed [from PyPI](https://pypi.org/project/awkward) using pip:
+
+```bash
+pip install awkward
+```
+
+You will likely get a precompiled binary (wheel), depending on your operating system and Python version. If not, pip attempts to compile from source (which requires a C++ compiler, make, and CMake).
+
+Awkward Array is also available using [conda](https://anaconda.org/conda-forge/awkward), which always installs a binary:
+```bash
+conda install -c conda-forge awkward
+```
+
+If you have already added `conda-forge` as a channel, the `-c conda-forge` is unnecessary. Adding the channel is recommended because it ensures that all of your packages use compatible versions:
+
+```bash
+conda config --add channels conda-forge
+conda update --all
+```
+
+## Getting help
+
+<table>
+ <tr>
+ <td width="66%" valign="top">
+ <a href="https://awkward-array.org">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-tutorials.png" width="570">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.org">
+ How-to tutorials
+ </a>
+ </b></p>
+ </td>
+ <td width="33%" valign="top">
+ <a href="https://awkward-array.readthedocs.io/en/latest/index.html">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-sphinx.png" width="268">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.readthedocs.io/en/latest/index.html">
+ Python API reference
+ </a>
+ </b></p>
+ <a href="https://awkward-array.readthedocs.io/en/latest/_static/index.html">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-doxygen.png" width="268">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.readthedocs.io/en/latest/_static/index.html">
+ C++ API reference
+ </a>
+ </b></p>
+ </td>
+ </tr>
+</table>
+
+ * Report bugs, request features, and ask for additional documentation on [GitHub Issues](https://github.com/scikit-hep/awkward-1.0/issues).
+ * If you have a "How do I...?" question, ask about it on [StackOverflow with the [awkward-array] tag](https://stackoverflow.com/questions/tagged/awkward-array). Be sure to include tags for any other libraries that you use, such as Pandas or PyTorch.
+ * To ask questions in real time, try the Gitter [Scikit-HEP/awkward-array](https://gitter.im/Scikit-HEP/awkward-array) chat room.
+
+
+
+
+%package -n python3-awkward1
+Summary: Manipulate JSON-like data with NumPy-like idioms.
+Provides: python-awkward1
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-awkward1
+<a href="https://github.com/scikit-hep/awkward-1.0#readme"><img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/logo/logo-300px.png"></a>
+
+Awkward Array is a library for **nested, variable-sized data**, including arbitrary-length lists, records, mixed types, and missing data, using **NumPy-like idioms**.
+
+Arrays are **dynamically typed**, but operations on them are **compiled and fast**. Their behavior coincides with NumPy when array dimensions are regular and generalizes when they're not.
+
+# Motivating example
+
+Given an array of objects with `x`, `y` fields and variable-length nested lists like
+
+```python
+array = ak.Array([
+ [{"x": 1.1, "y": [1]}, {"x": 2.2, "y": [1, 2]}, {"x": 3.3, "y": [1, 2, 3]}],
+ [],
+ [{"x": 4.4, "y": {1, 2, 3, 4]}, {"x": 5.5, "y": [1, 2, 3, 4, 5]}]
+])
+```
+
+the following slices out the `y` values, drops the first element from each inner list, and runs NumPy's `np.square` function on everything that is left:
+
+```python
+output = np.square(array["y", ..., 1:])
+```
+
+The result is
+
+```python
+[
+ [[], [4], [4, 9]],
+ [],
+ [[4, 9, 16], [4, 9, 16, 25]]
+]
+```
+
+The equivalent using only Python is
+
+```python
+output = []
+for sublist in array:
+ tmp1 = []
+ for record in sublist:
+ tmp2 = []
+ for number in record["y"][1:]:
+ tmp2.append(np.square(number))
+ tmp1.append(tmp2)
+ output.append(tmp1)
+```
+
+Not only is the expression using Awkward Arrays more concise, using idioms familiar from NumPy, but it's much faster and uses less memory.
+
+For a similar problem 10 million times larger than the one above (on a single-threaded 2.2 GHz processor),
+
+ * the Awkward Array one-liner takes **4.6 seconds** to run and uses **2.1 GB** of memory,
+ * the equivalent using Python lists and dicts takes **138 seconds** to run and uses **22 GB** of memory.
+
+Speed and memory factors in the double digits are common because we're replacing Python's dynamically typed, pointer-chasing virtual machine with type-specialized, precompiled routines on contiguous data. (In other words, for the same reasons as NumPy.) Even higher speedups are possible when Awkward Array is paired with [Numba](https://numba.pydata.org/).
+
+Our [presentation at SciPy 2020](https://youtu.be/WlnUF3LRBj4) provides a good introduction, showing how to use these arrays in a real analysis.
+
+# Installation
+
+Awkward Array can be installed [from PyPI](https://pypi.org/project/awkward) using pip:
+
+```bash
+pip install awkward
+```
+
+You will likely get a precompiled binary (wheel), depending on your operating system and Python version. If not, pip attempts to compile from source (which requires a C++ compiler, make, and CMake).
+
+Awkward Array is also available using [conda](https://anaconda.org/conda-forge/awkward), which always installs a binary:
+```bash
+conda install -c conda-forge awkward
+```
+
+If you have already added `conda-forge` as a channel, the `-c conda-forge` is unnecessary. Adding the channel is recommended because it ensures that all of your packages use compatible versions:
+
+```bash
+conda config --add channels conda-forge
+conda update --all
+```
+
+## Getting help
+
+<table>
+ <tr>
+ <td width="66%" valign="top">
+ <a href="https://awkward-array.org">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-tutorials.png" width="570">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.org">
+ How-to tutorials
+ </a>
+ </b></p>
+ </td>
+ <td width="33%" valign="top">
+ <a href="https://awkward-array.readthedocs.io/en/latest/index.html">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-sphinx.png" width="268">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.readthedocs.io/en/latest/index.html">
+ Python API reference
+ </a>
+ </b></p>
+ <a href="https://awkward-array.readthedocs.io/en/latest/_static/index.html">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-doxygen.png" width="268">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.readthedocs.io/en/latest/_static/index.html">
+ C++ API reference
+ </a>
+ </b></p>
+ </td>
+ </tr>
+</table>
+
+ * Report bugs, request features, and ask for additional documentation on [GitHub Issues](https://github.com/scikit-hep/awkward-1.0/issues).
+ * If you have a "How do I...?" question, ask about it on [StackOverflow with the [awkward-array] tag](https://stackoverflow.com/questions/tagged/awkward-array). Be sure to include tags for any other libraries that you use, such as Pandas or PyTorch.
+ * To ask questions in real time, try the Gitter [Scikit-HEP/awkward-array](https://gitter.im/Scikit-HEP/awkward-array) chat room.
+
+
+
+
+%package help
+Summary: Development documents and examples for awkward1
+Provides: python3-awkward1-doc
+%description help
+<a href="https://github.com/scikit-hep/awkward-1.0#readme"><img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/logo/logo-300px.png"></a>
+
+Awkward Array is a library for **nested, variable-sized data**, including arbitrary-length lists, records, mixed types, and missing data, using **NumPy-like idioms**.
+
+Arrays are **dynamically typed**, but operations on them are **compiled and fast**. Their behavior coincides with NumPy when array dimensions are regular and generalizes when they're not.
+
+# Motivating example
+
+Given an array of objects with `x`, `y` fields and variable-length nested lists like
+
+```python
+array = ak.Array([
+ [{"x": 1.1, "y": [1]}, {"x": 2.2, "y": [1, 2]}, {"x": 3.3, "y": [1, 2, 3]}],
+ [],
+ [{"x": 4.4, "y": {1, 2, 3, 4]}, {"x": 5.5, "y": [1, 2, 3, 4, 5]}]
+])
+```
+
+the following slices out the `y` values, drops the first element from each inner list, and runs NumPy's `np.square` function on everything that is left:
+
+```python
+output = np.square(array["y", ..., 1:])
+```
+
+The result is
+
+```python
+[
+ [[], [4], [4, 9]],
+ [],
+ [[4, 9, 16], [4, 9, 16, 25]]
+]
+```
+
+The equivalent using only Python is
+
+```python
+output = []
+for sublist in array:
+ tmp1 = []
+ for record in sublist:
+ tmp2 = []
+ for number in record["y"][1:]:
+ tmp2.append(np.square(number))
+ tmp1.append(tmp2)
+ output.append(tmp1)
+```
+
+Not only is the expression using Awkward Arrays more concise, using idioms familiar from NumPy, but it's much faster and uses less memory.
+
+For a similar problem 10 million times larger than the one above (on a single-threaded 2.2 GHz processor),
+
+ * the Awkward Array one-liner takes **4.6 seconds** to run and uses **2.1 GB** of memory,
+ * the equivalent using Python lists and dicts takes **138 seconds** to run and uses **22 GB** of memory.
+
+Speed and memory factors in the double digits are common because we're replacing Python's dynamically typed, pointer-chasing virtual machine with type-specialized, precompiled routines on contiguous data. (In other words, for the same reasons as NumPy.) Even higher speedups are possible when Awkward Array is paired with [Numba](https://numba.pydata.org/).
+
+Our [presentation at SciPy 2020](https://youtu.be/WlnUF3LRBj4) provides a good introduction, showing how to use these arrays in a real analysis.
+
+# Installation
+
+Awkward Array can be installed [from PyPI](https://pypi.org/project/awkward) using pip:
+
+```bash
+pip install awkward
+```
+
+You will likely get a precompiled binary (wheel), depending on your operating system and Python version. If not, pip attempts to compile from source (which requires a C++ compiler, make, and CMake).
+
+Awkward Array is also available using [conda](https://anaconda.org/conda-forge/awkward), which always installs a binary:
+```bash
+conda install -c conda-forge awkward
+```
+
+If you have already added `conda-forge` as a channel, the `-c conda-forge` is unnecessary. Adding the channel is recommended because it ensures that all of your packages use compatible versions:
+
+```bash
+conda config --add channels conda-forge
+conda update --all
+```
+
+## Getting help
+
+<table>
+ <tr>
+ <td width="66%" valign="top">
+ <a href="https://awkward-array.org">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-tutorials.png" width="570">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.org">
+ How-to tutorials
+ </a>
+ </b></p>
+ </td>
+ <td width="33%" valign="top">
+ <a href="https://awkward-array.readthedocs.io/en/latest/index.html">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-sphinx.png" width="268">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.readthedocs.io/en/latest/index.html">
+ Python API reference
+ </a>
+ </b></p>
+ <a href="https://awkward-array.readthedocs.io/en/latest/_static/index.html">
+ <img src="https://github.com/scikit-hep/awkward-1.0/raw/main/docs-img/panel-doxygen.png" width="268">
+ </a>
+ <p align="center"><b>
+ <a href="https://awkward-array.readthedocs.io/en/latest/_static/index.html">
+ C++ API reference
+ </a>
+ </b></p>
+ </td>
+ </tr>
+</table>
+
+ * Report bugs, request features, and ask for additional documentation on [GitHub Issues](https://github.com/scikit-hep/awkward-1.0/issues).
+ * If you have a "How do I...?" question, ask about it on [StackOverflow with the [awkward-array] tag](https://stackoverflow.com/questions/tagged/awkward-array). Be sure to include tags for any other libraries that you use, such as Pandas or PyTorch.
+ * To ask questions in real time, try the Gitter [Scikit-HEP/awkward-array](https://gitter.im/Scikit-HEP/awkward-array) chat room.
+
+
+
+
+%prep
+%autosetup -n awkward1-1.0.0
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-awkward1 -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Tue Apr 11 2023 Python_Bot <Python_Bot@openeuler.org> - 1.0.0-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..a2f84f6
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+f44c6acb4c165d5f468a4322882f2acc awkward1-1.0.0.tar.gz