15
0
forked from pool/python-aenum
Files
python-aenum/python-aenum.spec
Steve Kowalik a2f731a896 - Update to 3.0.0:
* The more esoteric method of creating Enums have been modified or removed
  * Member creation has been redone to match Python 3.10's methods.
  * enum_property() has been renamed to property() (old name still available,
    but deprecated).
  * bin() replacement shows negative integers in twos-complement
  * call __init_subclass__ after members have been added, and in Pythons < 3.6
  * call __set_name__ in Pythons < 3.6
  * do not convert/disallow private names
  * add iteration/len support to NamedConstant
  * add support to Constant to retrieve members by value
  * add pickle/deepcopy support to Constant
  * add support for Constant to use other Constant values
  * AutoNumber and auto() now work together 
- Update URL now that bitbucket is dead.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aenum?expand=0&rev=12
2021-04-13 04:59:00 +00:00

81 lines
2.6 KiB
RPMSpec

#
# spec file for package python-aenum
#
# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-aenum
Version: 3.0.0
Release: 0
Summary: Advanced Enumerations, NamedTuples, and NamedConstants
License: BSD-3-Clause
URL: https://github.com/ethanfurman/aenum
Source: https://files.pythonhosted.org/packages/source/a/aenum/aenum-%{version}.tar.gz
BuildRequires: %{python_module setuptools}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildArch: noarch
%python_subpackages
%description
Advanced Enumerations (compatible with Python's stdlib Enum),
NamedTuples, and NamedConstants
AEnum includes a Python stdlib Enum-compatible data type, as well as
a metaclass-based NamedTuple implementation and a NamedConstant
class.
An Enum is a set of symbolic names (members) bound to unique,
constant values. Within an enumeration, the members can be compared
by identity, and the enumeration itself can be iterated over. If
using Python 3 there is built-in support for unique values, multiple
values, auto-numbering, and suspension of aliasing (members with the
same value are not identical), plus the ability to have values
automatically bound to attributes.
A NamedTuple is a class-based, fixed-length tuple with a name for
each possible position accessible using attribute-access notation as
well as the standard index notation.
A NamedConstant is a class whose members cannot be rebound; it lacks
all other Enum capabilities, however; consequently, it can have
duplicate values.
%prep
%setup -q -n aenum-%{version}
%build
%python_build
%install
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
export PYTHONDONTWRITEBYTECODE=1
export LANG=en_US.UTF-8
%{python_expand export PYTHONPATH=%{buildroot}%{$python_sitelib}
$python -B aenum/test.py
}
%files %{python_files}
%doc README aenum/CHANGES aenum/doc/*
%license aenum/LICENSE
%{python_sitelib}/*
%changelog