summaryrefslogtreecommitdiff
path: root/python-biodome.spec
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 07:50:51 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 07:50:51 +0000
commitf44fc968e0ede3989870bd33864f9a62e193be1d (patch)
treeaa20578167d921c694ed8b5144591833ecdcdabf /python-biodome.spec
parent2669cd5fb60a1dc5f2f6126898cabeb8380dd37e (diff)
automatic import of python-biodome
Diffstat (limited to 'python-biodome.spec')
-rw-r--r--python-biodome.spec177
1 files changed, 177 insertions, 0 deletions
diff --git a/python-biodome.spec b/python-biodome.spec
new file mode 100644
index 0000000..bc222c7
--- /dev/null
+++ b/python-biodome.spec
@@ -0,0 +1,177 @@
+%global _empty_manifest_terminate_build 0
+Name: python-biodome
+Version: 2022.9.1
+Release: 1
+Summary: biodome
+License: None
+URL: https://github.com/cjrh/biodome
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/34/57/04095a851879aadf857c9f52d737863521220eab8b43ac15bee5ce100ebd/biodome-2022.9.1.tar.gz
+BuildArch: noarch
+
+
+%description
+*Controlled environments*
+Reading environment variables with ``os.environ`` is pretty easy, but after
+a while one gets pretty tired of having to cast variables to the right types
+and handling fallback to defaults.
+This library provides a clean way read environment variables and fall back
+to defaults in a sane way.
+**How you were doing it:**
+ import os
+ try:
+ TIMEOUT = int(os.environ.get('TIMEOUT', 10))
+ except ValueError:
+ TIMEOUT = 10
+Wordy, boilerplate, DRY violation, etc.
+**How you will be doing it:**
+ import biodome
+ TIMEOUT = biodome.environ.get('TIMEOUT', 10)
+That's right, it becomes a single line. But there's a magic trick here: how
+does ``biodome`` know that ``TIMEOUT`` should be set to an ``int``? It knows
+because it looks at the type of the default arguments. This works for a bunch
+of different things:
+ # Lists
+ os.environ['IGNORE_KEYS'] = '[1, 2, 3]'
+ biodome.environ.get('TIMEOUT', []) == [1, 2, 3]
+ # Dicts
+ os.environ['SETTINGS'] = '{"a": 1, "b": 2}'
+ biodome.environ.get('SETTINGS', {}) == dict(a=1, b=2)
+If you look carefully at the above, you can see that we *set* the data via
+the stdlib ``os.environ`` dictionary; that's right, ``biodome.environ`` is a
+**drop-in replacement** for ``os.environ``. You don't even have to switch out
+your entire codebase, you can do it piece by piece.
+And while we're on the subject of *setting* env vars, with ``biodome`` you
+don't have to cast them first, it does string casting internally automatically,
+unlike ``os.environ``:
+ # Dicts
+ biodome.environ['SETTINGS'] = dict(b=2, a=1) # No cast required
+ biodome.environ.get('SETTINGS', {}) == dict(a=1, b=2)
+
+%package -n python3-biodome
+Summary: biodome
+Provides: python-biodome
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-biodome
+*Controlled environments*
+Reading environment variables with ``os.environ`` is pretty easy, but after
+a while one gets pretty tired of having to cast variables to the right types
+and handling fallback to defaults.
+This library provides a clean way read environment variables and fall back
+to defaults in a sane way.
+**How you were doing it:**
+ import os
+ try:
+ TIMEOUT = int(os.environ.get('TIMEOUT', 10))
+ except ValueError:
+ TIMEOUT = 10
+Wordy, boilerplate, DRY violation, etc.
+**How you will be doing it:**
+ import biodome
+ TIMEOUT = biodome.environ.get('TIMEOUT', 10)
+That's right, it becomes a single line. But there's a magic trick here: how
+does ``biodome`` know that ``TIMEOUT`` should be set to an ``int``? It knows
+because it looks at the type of the default arguments. This works for a bunch
+of different things:
+ # Lists
+ os.environ['IGNORE_KEYS'] = '[1, 2, 3]'
+ biodome.environ.get('TIMEOUT', []) == [1, 2, 3]
+ # Dicts
+ os.environ['SETTINGS'] = '{"a": 1, "b": 2}'
+ biodome.environ.get('SETTINGS', {}) == dict(a=1, b=2)
+If you look carefully at the above, you can see that we *set* the data via
+the stdlib ``os.environ`` dictionary; that's right, ``biodome.environ`` is a
+**drop-in replacement** for ``os.environ``. You don't even have to switch out
+your entire codebase, you can do it piece by piece.
+And while we're on the subject of *setting* env vars, with ``biodome`` you
+don't have to cast them first, it does string casting internally automatically,
+unlike ``os.environ``:
+ # Dicts
+ biodome.environ['SETTINGS'] = dict(b=2, a=1) # No cast required
+ biodome.environ.get('SETTINGS', {}) == dict(a=1, b=2)
+
+%package help
+Summary: Development documents and examples for biodome
+Provides: python3-biodome-doc
+%description help
+*Controlled environments*
+Reading environment variables with ``os.environ`` is pretty easy, but after
+a while one gets pretty tired of having to cast variables to the right types
+and handling fallback to defaults.
+This library provides a clean way read environment variables and fall back
+to defaults in a sane way.
+**How you were doing it:**
+ import os
+ try:
+ TIMEOUT = int(os.environ.get('TIMEOUT', 10))
+ except ValueError:
+ TIMEOUT = 10
+Wordy, boilerplate, DRY violation, etc.
+**How you will be doing it:**
+ import biodome
+ TIMEOUT = biodome.environ.get('TIMEOUT', 10)
+That's right, it becomes a single line. But there's a magic trick here: how
+does ``biodome`` know that ``TIMEOUT`` should be set to an ``int``? It knows
+because it looks at the type of the default arguments. This works for a bunch
+of different things:
+ # Lists
+ os.environ['IGNORE_KEYS'] = '[1, 2, 3]'
+ biodome.environ.get('TIMEOUT', []) == [1, 2, 3]
+ # Dicts
+ os.environ['SETTINGS'] = '{"a": 1, "b": 2}'
+ biodome.environ.get('SETTINGS', {}) == dict(a=1, b=2)
+If you look carefully at the above, you can see that we *set* the data via
+the stdlib ``os.environ`` dictionary; that's right, ``biodome.environ`` is a
+**drop-in replacement** for ``os.environ``. You don't even have to switch out
+your entire codebase, you can do it piece by piece.
+And while we're on the subject of *setting* env vars, with ``biodome`` you
+don't have to cast them first, it does string casting internally automatically,
+unlike ``os.environ``:
+ # Dicts
+ biodome.environ['SETTINGS'] = dict(b=2, a=1) # No cast required
+ biodome.environ.get('SETTINGS', {}) == dict(a=1, b=2)
+
+%prep
+%autosetup -n biodome-2022.9.1
+
+%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-biodome -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 2022.9.1-1
+- Package Spec generated