diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-05 07:36:58 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-05 07:36:58 +0000 |
| commit | 7961218236f4fc5a112317c94622902f0d6678e0 (patch) | |
| tree | fcaeb5e5b65f476e8683d9840c6fc6172f5684d0 /python-baluhn.spec | |
| parent | 8059a9e91778a386bee0ae7ab319bb9760d5bc0d (diff) | |
automatic import of python-baluhnopeneuler20.03
Diffstat (limited to 'python-baluhn.spec')
| -rw-r--r-- | python-baluhn.spec | 336 |
1 files changed, 336 insertions, 0 deletions
diff --git a/python-baluhn.spec b/python-baluhn.spec new file mode 100644 index 0000000..578509d --- /dev/null +++ b/python-baluhn.spec @@ -0,0 +1,336 @@ +%global _empty_manifest_terminate_build 0 +Name: python-baluhn +Version: 0.1.2 +Release: 1 +Summary: A base-agnostic implementation of the Luhn Algorithm for Python. Useful for generating and verifying check digits. +License: Public Domain +URL: http://github.com/benhodgson/baluhn +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/d8/04/1f702c771d387b66f8232afb223db4796372a2e68095078ca76c41d1f151/baluhn-0.1.2.tar.gz +BuildArch: noarch + + +%description +# Baluhn: Base-agnostic Luhn + +Baluhn provides a base-independent implementation of the [Luhn +algorithm](http://en.wikipedia.org/wiki/Luhn_algorithm) for Python. It is +useful for generating and verifying check digits in arbitrary bases. + +From Wikipedia: + +> The Luhn algorithm or Luhn formula, also known as the "modulus 10" or "mod +> 10" algorithm, is a simple checksum formula used to validate a variety of +> identification numbers, such as credit card numbers, IMEI numbers, +> National Provider Identifier numbers in US and Canadian Social Insurance +> Numbers. + +## Installation + +Use `pip install baluhn` or `python setup.py install`. + +## Usage + +The `baluhn` module provides two functions: `verify` and `generate`. + +`generate` calculates the Luhn check character for the given input string in +the given base. This character should be appended to the input string to +produce a valid Luhn string. `verify` tests whether or not a string is a valid +Luhn string in the given base. By default, Baluhn operates in base 10: + +```python +>>> from baluhn import generate, verify +>>> verify('5105105105105100') # MasterCard test number +True +>>> value = '510510510510510' # note the missing check digit +>>> generate(value) +'0' +>>> verify(value + '0') +True +>>> verify(value + '7') +False +``` + +When operating in a base other than decimal, encoder and decoder callables +should be supplied. The encoder should take a single argument, an integer, and +return the character corresponding to that integer in the operating base. +Conversely, the decoder should take a string containing a single character and +return its integer value in the operating base. Note that the mapping between +values and characters defined by the encoder and decoder should be one-to-one. + +For example, when working in hexadecimal: + +```python +>>> hex_alphabet = '0123456789abcdef' +>>> hex_encoder = lambda i: hex_alphabet[i] +>>> hex_decoder = lambda s: hex_alphabet.index(s) +>>> value = 'a8b56f' +>>> generate(value, base=16, encoder=hex_encoder, decoder=hex_decoder) +'b' +>>> verify('a8b56fb', base=16, decoder=hex_decoder) +True +>>> verify('a8b56fc', base=16, decoder=hex_decoder) +False +``` + +## Author + +Baluhn is written by [Ben Hodgson](http://benhodgson.com/) and maintained by [Four Digits](https://fourdigits.nl/). + +## (Un)license + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute +this software, either in source code form or as a compiled binary, for any +purpose, commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to <http://unlicense.org/> + +%package -n python3-baluhn +Summary: A base-agnostic implementation of the Luhn Algorithm for Python. Useful for generating and verifying check digits. +Provides: python-baluhn +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-baluhn +# Baluhn: Base-agnostic Luhn + +Baluhn provides a base-independent implementation of the [Luhn +algorithm](http://en.wikipedia.org/wiki/Luhn_algorithm) for Python. It is +useful for generating and verifying check digits in arbitrary bases. + +From Wikipedia: + +> The Luhn algorithm or Luhn formula, also known as the "modulus 10" or "mod +> 10" algorithm, is a simple checksum formula used to validate a variety of +> identification numbers, such as credit card numbers, IMEI numbers, +> National Provider Identifier numbers in US and Canadian Social Insurance +> Numbers. + +## Installation + +Use `pip install baluhn` or `python setup.py install`. + +## Usage + +The `baluhn` module provides two functions: `verify` and `generate`. + +`generate` calculates the Luhn check character for the given input string in +the given base. This character should be appended to the input string to +produce a valid Luhn string. `verify` tests whether or not a string is a valid +Luhn string in the given base. By default, Baluhn operates in base 10: + +```python +>>> from baluhn import generate, verify +>>> verify('5105105105105100') # MasterCard test number +True +>>> value = '510510510510510' # note the missing check digit +>>> generate(value) +'0' +>>> verify(value + '0') +True +>>> verify(value + '7') +False +``` + +When operating in a base other than decimal, encoder and decoder callables +should be supplied. The encoder should take a single argument, an integer, and +return the character corresponding to that integer in the operating base. +Conversely, the decoder should take a string containing a single character and +return its integer value in the operating base. Note that the mapping between +values and characters defined by the encoder and decoder should be one-to-one. + +For example, when working in hexadecimal: + +```python +>>> hex_alphabet = '0123456789abcdef' +>>> hex_encoder = lambda i: hex_alphabet[i] +>>> hex_decoder = lambda s: hex_alphabet.index(s) +>>> value = 'a8b56f' +>>> generate(value, base=16, encoder=hex_encoder, decoder=hex_decoder) +'b' +>>> verify('a8b56fb', base=16, decoder=hex_decoder) +True +>>> verify('a8b56fc', base=16, decoder=hex_decoder) +False +``` + +## Author + +Baluhn is written by [Ben Hodgson](http://benhodgson.com/) and maintained by [Four Digits](https://fourdigits.nl/). + +## (Un)license + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute +this software, either in source code form or as a compiled binary, for any +purpose, commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to <http://unlicense.org/> + +%package help +Summary: Development documents and examples for baluhn +Provides: python3-baluhn-doc +%description help +# Baluhn: Base-agnostic Luhn + +Baluhn provides a base-independent implementation of the [Luhn +algorithm](http://en.wikipedia.org/wiki/Luhn_algorithm) for Python. It is +useful for generating and verifying check digits in arbitrary bases. + +From Wikipedia: + +> The Luhn algorithm or Luhn formula, also known as the "modulus 10" or "mod +> 10" algorithm, is a simple checksum formula used to validate a variety of +> identification numbers, such as credit card numbers, IMEI numbers, +> National Provider Identifier numbers in US and Canadian Social Insurance +> Numbers. + +## Installation + +Use `pip install baluhn` or `python setup.py install`. + +## Usage + +The `baluhn` module provides two functions: `verify` and `generate`. + +`generate` calculates the Luhn check character for the given input string in +the given base. This character should be appended to the input string to +produce a valid Luhn string. `verify` tests whether or not a string is a valid +Luhn string in the given base. By default, Baluhn operates in base 10: + +```python +>>> from baluhn import generate, verify +>>> verify('5105105105105100') # MasterCard test number +True +>>> value = '510510510510510' # note the missing check digit +>>> generate(value) +'0' +>>> verify(value + '0') +True +>>> verify(value + '7') +False +``` + +When operating in a base other than decimal, encoder and decoder callables +should be supplied. The encoder should take a single argument, an integer, and +return the character corresponding to that integer in the operating base. +Conversely, the decoder should take a string containing a single character and +return its integer value in the operating base. Note that the mapping between +values and characters defined by the encoder and decoder should be one-to-one. + +For example, when working in hexadecimal: + +```python +>>> hex_alphabet = '0123456789abcdef' +>>> hex_encoder = lambda i: hex_alphabet[i] +>>> hex_decoder = lambda s: hex_alphabet.index(s) +>>> value = 'a8b56f' +>>> generate(value, base=16, encoder=hex_encoder, decoder=hex_decoder) +'b' +>>> verify('a8b56fb', base=16, decoder=hex_decoder) +True +>>> verify('a8b56fc', base=16, decoder=hex_decoder) +False +``` + +## Author + +Baluhn is written by [Ben Hodgson](http://benhodgson.com/) and maintained by [Four Digits](https://fourdigits.nl/). + +## (Un)license + +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute +this software, either in source code form or as a compiled binary, for any +purpose, commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors of this +software dedicate any and all copyright interest in the software to the public +domain. We make this dedication for the benefit of the public at large and to +the detriment of our heirs and successors. We intend this dedication to be an +overt act of relinquishment in perpetuity of all present and future rights to +this software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN +ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to <http://unlicense.org/> + +%prep +%autosetup -n baluhn-0.1.2 + +%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-baluhn -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.1.2-1 +- Package Spec generated |
