* update MANIFEST file
- 3.1.10
* improve tests
- 3.1.9
* fail gracefully for badly written EnumType
- 3.1.8
* recalculate bits used after all flags created (sometimes needed when a
custom `__new__` is in place.
- 3.1.7
* update flag creation to (possibly) add bitwise operator methods to newly
created flags
* update extend_enum() to work with 3.11 flags
- 3.1.6
* Update `dir()` on mixed enums to include mixed data type methods and
attributes.
* Rename `enum_property` to `property` to match stdlib. Recommended usage is
`aenum.property` (prefix with module name).
* Remove quadritic creation behavior.
BREAKING CHANGE BUG FIX that won't affect most people
Enums with a custom `__new__` that:
- use the enum machinery to generate the values; AND
- have keyword arguments set to a default (like `None`)
will fail to generate a missing value. To fix: remove the default value and
instead specify it on the member creation line.
BREAKING CHANGE
In Python 3.11 the `str()` of mixed enums will now match its `format()` which
will be the normal `str()` of the data type -- so for an IntEnum you'll see
`5` instead of `Perm.R|X`. This affects IntEnum, StrEnum, and IntFlag.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aenum?expand=0&rev=17
* 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
- version update to 2.2.1
2.2.1
=====
. allow Enums to be called without a value
. allow Enum name use while constructing Enum (Python 3.4+ only)
2.2.0
=====
BREAKING CHANGE
---------------
. In Python 3+ classes defined inside an Enum no longer become members by
default; in Python 2 they still become members, but see below.
For cross-compatibility and full control two decorators are provided:
- @member --> forces item to become a member
- @nonmember --> excludes item from becoming a member
dark = 3
2.1.4
=====
EnumMeta:
- change __member_new__ to __new_member__ (as the stdlib enum does)
- assign member name to enum() instances (an Enum helper for defining members)
- handle empty iterables when using functional API
- make auto() work with previous enum members
- keep searching mixins until base class is found
Enum:
- fix bug in Flag checks (ensure it is a Flag before checking the name)
- add multiple mixin support
- do not allow blank names (functional API)
- raise TypeError if _missing_* returns wrong type
- fix __format__ to honor custom __str__
extend_enum:
OBS-URL: https://build.opensuse.org/request/show/719628
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aenum?expand=0&rev=8