From ba61c75caf4577428f01710312212729c4ac91c4 Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Mon, 15 May 2023 04:00:41 +0000 Subject: automatic import of python-jpath --- .gitignore | 1 + python-jpath.spec | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ sources | 1 + 3 files changed, 206 insertions(+) create mode 100644 python-jpath.spec create mode 100644 sources diff --git a/.gitignore b/.gitignore index e69de29..ec94974 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/jpath-1.6.tar.gz diff --git a/python-jpath.spec b/python-jpath.spec new file mode 100644 index 0000000..6f7512a --- /dev/null +++ b/python-jpath.spec @@ -0,0 +1,204 @@ +%global _empty_manifest_terminate_build 0 +Name: python-jpath +Version: 1.6 +Release: 1 +Summary: Access nested dicts and lists using JSON-like path notation. +License: MIT License +URL: https://pypi.org/project/jpath/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/1c/d3/d931faffbf46803ca2d5bc7e29eae6c1482522e51b3b9dfb706c58d69398/jpath-1.6.tar.gz +BuildArch: noarch + + +%description + +Access nested dicts and lists using JSON-like path notation. + +Note that this code is written for python 3. + +The notation is as follows: + + You can just write the names of components in your path like you + would in javascript: + + foo.bar.baz + + To access arrays or names with spaces in them, use the '[]' notation. + You can use negative indices with arrays to count from the end. + + ["foo"]["bar"]["baz"] + array[-1].attr + [3] + + You can use the wildcard character '*' to iterate over all elements: + + foo.*.baz + ["foo"][*]["baz"] + + This may return more or less than a single element. Use get to get the + first one, and get_all to get a list of all possibilities. + If you want to skip any number of elements in path, use two dots '..': + + foo..baz + + You can slice the arrays just like in python: + + array[1:-1:2] + + Finally, you can filter the elements: + + foo(bar.baz=true) + foo.bar(baz>0).baz + foo(bar="yawn").bar + + At the moment only =, >, <, >=, <= and != operators are available, + and you can only use them with strings, integers and boolean values. + +This code was written in STX Next. + + +%package -n python3-jpath +Summary: Access nested dicts and lists using JSON-like path notation. +Provides: python-jpath +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-jpath + +Access nested dicts and lists using JSON-like path notation. + +Note that this code is written for python 3. + +The notation is as follows: + + You can just write the names of components in your path like you + would in javascript: + + foo.bar.baz + + To access arrays or names with spaces in them, use the '[]' notation. + You can use negative indices with arrays to count from the end. + + ["foo"]["bar"]["baz"] + array[-1].attr + [3] + + You can use the wildcard character '*' to iterate over all elements: + + foo.*.baz + ["foo"][*]["baz"] + + This may return more or less than a single element. Use get to get the + first one, and get_all to get a list of all possibilities. + If you want to skip any number of elements in path, use two dots '..': + + foo..baz + + You can slice the arrays just like in python: + + array[1:-1:2] + + Finally, you can filter the elements: + + foo(bar.baz=true) + foo.bar(baz>0).baz + foo(bar="yawn").bar + + At the moment only =, >, <, >=, <= and != operators are available, + and you can only use them with strings, integers and boolean values. + +This code was written in STX Next. + + +%package help +Summary: Development documents and examples for jpath +Provides: python3-jpath-doc +%description help + +Access nested dicts and lists using JSON-like path notation. + +Note that this code is written for python 3. + +The notation is as follows: + + You can just write the names of components in your path like you + would in javascript: + + foo.bar.baz + + To access arrays or names with spaces in them, use the '[]' notation. + You can use negative indices with arrays to count from the end. + + ["foo"]["bar"]["baz"] + array[-1].attr + [3] + + You can use the wildcard character '*' to iterate over all elements: + + foo.*.baz + ["foo"][*]["baz"] + + This may return more or less than a single element. Use get to get the + first one, and get_all to get a list of all possibilities. + If you want to skip any number of elements in path, use two dots '..': + + foo..baz + + You can slice the arrays just like in python: + + array[1:-1:2] + + Finally, you can filter the elements: + + foo(bar.baz=true) + foo.bar(baz>0).baz + foo(bar="yawn").bar + + At the moment only =, >, <, >=, <= and != operators are available, + and you can only use them with strings, integers and boolean values. + +This code was written in STX Next. + + +%prep +%autosetup -n jpath-1.6 + +%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-jpath -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot - 1.6-1 +- Package Spec generated diff --git a/sources b/sources new file mode 100644 index 0000000..80ea886 --- /dev/null +++ b/sources @@ -0,0 +1 @@ +0cd9a8e1991cf72d736e122a101eb7da jpath-1.6.tar.gz -- cgit v1.2.3