File python-atom.changes of Package python-atom

-------------------------------------------------------------------
Tue Oct 29 05:21:28 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>

- Update to 0.11.0:
  * Fix ruff config by @MatthieuDartiailh in #209
  * Add FixedTuple member enforcing a given number of items by
    @MatthieuDartiailh in #211
  * Fix memory leak in pickle creation by @MatthieuDartiailh in #213
  * 3.13 support by @MatthieuDartiailh in #214

-------------------------------------------------------------------
Thu Aug 22 10:26:48 UTC 2024 - Frantisek Simorda <frantisek.simorda@suse.com>

- Update to 0.10.5:
  * fix ruff config 
  * Merge pull request #209 from nucleic/ruff-fixes
  * ci: do not build oldest python on macos 
  * Fix memory leak in pickle creation (#213)  

-------------------------------------------------------------------
Tue Jan 30 12:02:18 UTC 2024 - Dirk Müller <dmueller@suse.com>

- update to 0.10.4:
  * allow unions in TypeVar bound PR #207

-------------------------------------------------------------------
Thu Oct  5 09:46:45 UTC 2023 - Dirk Müller <dmueller@suse.com>

- update to 0.10.3:
  * fix a an issue when using add_member to override an existing
    membe
  * fix a memory leak caused by Dict, Defaultdict and Set members
  * add support for Python 3.12 PR #200

-------------------------------------------------------------------
Thu Jun  1 07:56:44 UTC 2023 - Dirk Müller <dmueller@suse.com>

- add sle15_python_module_pythons as it requires python >= 3.8

-------------------------------------------------------------------
Tue May  9 19:28:45 UTC 2023 - Dirk Müller <dmueller@suse.com>

- update to 0.10.0:
  * AtomMeta: create the class only once all members have been
    customized
    This allows to use ``__init_subclass__`` since previously the
    ``__atom_members__`` was not set when ``__init_subclass__``
    was called
  * illustrate the use of ``__init_subclass__`` to customize
    pickling
  * refactor the metaclass to make it easier to reason about
  * add a ``DefaultDict`` member which enforce the value to be a
    dictionary and use a factory for missing keys. The factory
    is set at the member level and a normal dict can be provided
    as value. When possible the factory is deduced from the member
    used for validation.
  * infer the use of ``DefaultDict`` from a
    ``collections.defaultdict`` annotation

-------------------------------------------------------------------
Sun Apr 16 16:47:35 UTC 2023 - Dirk Müller <dmueller@suse.com>

- update to 0.9.1:
  * fix generation of Value member from union containing
    object/Any PR #198
  * fix setdefault method of atomdict to return the actually
    stored item PR #197

-------------------------------------------------------------------
Wed Mar  1 13:53:30 UTC 2023 - Dirk Müller <dmueller@suse.com>

- update to 0.9.0:
  * fix the generation of Subclass from type annotations PR #193
  * move getstate and setstate implementation to C and allow to
    customize the condition under which a member value is
    pickled. PR #182
  * Customization is used to only pickle member value whose
    state can be restored (for example Constant is not
    pickled). Whether a member is pickled can be customized
    using a method prefixed with ``_getstate_`` on an Atom
    subclass.
  * use the Typed member when a type annotation resolve to a
    single type whose metaclass does not implement a custom
    ``__instancecheck__`` PR #185
  * generate Tuple member for tuple[] annotations.
    The content of the tuple is typed check only if it is a
    1-tuple or variable-length tuple. PR #184
  * fix the resolution order of members in the presence of
    multiple inheritance with a common base class PR
  * Due to the above changes, adding a member after the class
    definition requires more work than before. As a
    consequence a new helper function ``add_member`` has
    been added.

-------------------------------------------------------------------
Thu Dec 15 23:21:26 UTC 2022 - Ben Greiner <code@bnavigator.de>

- Update to 0.8.2
  * fix handling of Union in annotation based class definition PR
    #177
- Release 0.8.1
  * add support for Python 3.11 PR #166
- Release 0.8.0
  * This release introduced a new way to declare atom object based
    on type annotations.
  * emit warnings when a magic method points to an undefined member
    PR #139 #149
  * use isort, black and flake8 to ensure a consistent coding style
    PR #141
  * base the version number on the most recent git tag using
    setuptools-scm PR #141
  * make the setup compatible with PEP 517 and PEP 621 compliant PR
    #141 #162 Pip should be used for development install in place
    of directly calling setup.py
  + fix handling of _SpecialGenericAlias (typing.Sequence, ...)
    when used inside an Instance member PR #151
  * add a ChangeDict TypedDict to help annotate observers PR #133
  * add several keyword argument to the AtomMeta metaclass PR #133
    - enable_weakrefs: allow to have weak references to an Atom
      object without having to add the slot by hand. False by
      default.
    - use_annotations: generate members from type annotations.
      Str-like annotations are not supported but allowed when an
      actual member is provided as default value. True by default.
    - type_containers: in conjunction with use_annotations
      determine to what depth to type the content of a container.
      The default is 1 meaning that list[int] will use List(Int())
      but list[list[int]] will use List(List()).
  * allow specifying which change events are emitted when adding
    static observers PR #155

-------------------------------------------------------------------
Mon Dec  6 15:03:50 UTC 2021 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>

- Update to 0.7.0:
  * allow to use any subscribed type in Typed and Instance. Optional and Union are
    analyzed to extract the tuple of types to validate. The presence of NoneType in
    the tuple will make the member optional. For container types (list, dict, set, etc)
    the content types is not used beyond static type validation. PR #136 #140
    Note however that this usage of Optional and Union breaks static analyzer currently,
    while things deriving from an actual type will work as expected (List[int], list[int],
    Iterable[int])
  * make the factory argument of Typed, Instance and their forwarded version
    keyword only. PR #123
  * add a keyword-only argument to Typed, Instance and their forwarded
    version: ``optional``. When set to False, this will cause those members to
    reject None as a valid value. The default value, None, will resolve to True
    if there is no provided way to build a default value. PR #123 # 131
    This is backward incompatible since previously None was always a valid value.
  * the Instance and Typed variants of the Validate enum have been renamed to
    OptionalInstance, OptionalTyped and new Instance and Typed variant describing
    the validation behavior for the member with optional=False have been added. PR #123
  * consistently use Instance to wrap types passed to containers. PR #123
    For containers, Instance members used for validation are created with
    optional=False by default. This is backward incompatible since None was always
    a valid value previously.
  * add strict argument to FloatRange. PR #124
  * allow to specify the type of ReadOnly and Constant. PR #128
    The validation is done using the Instance validator. The change for ReadOnly
    is backward incompatible since the type or tuple of type is the first argument
    in place of the default value. Specifying the default value by keyword is both
    forward and backward compatible.
  * use python stdlib IntEnum instead of the custom one in atom  PR #122
  * remove the custom atom.IntEnum  PR #122
  * add and distribute type hints PR #122 #132
    This allows static type checkers to resolve the values behind a member.
  * drop official support for Python 3.6 and add support for Python 3.10
- Stop building on Python 3.6 which is no longer supported

-------------------------------------------------------------------
Tue Jan  5 04:57:37 UTC 2021 - Steve Kowalik <steven.kowalik@suse.com>

- Update to 0.6.0:
  * Add support for Python 3.9 and remove deprecated members.

-------------------------------------------------------------------
Thu Aug 27 05:05:29 UTC 2020 - Steve Kowalik <steven.kowalik@suse.com>

- Update to 0.5.2:
  * make comparison used in C safe (fix bug introduced in 0.5.0) PR #107
  * fix bug in using atomlist from C PR #102
  * clarify Unicode deprecation warning PR #102

-------------------------------------------------------------------
Thu May  7 02:46:58 UTC 2020 - Steve Kowalik <steven.kowalik@suse.com>

- Update to 0.5.0:
  * drop Python 2 support PR #83
  * use cppy to write the c++ extension PR #83
  * add c++ implememtation of AtomDict PR #93
  * add a Set member PR #93

-------------------------------------------------------------------
Wed Mar  6 12:58:53 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>

- Update to 0.4.3:
  * Remove dependency on future which was slowing down import time
- Switch to github tarball for tests and license

-------------------------------------------------------------------
Tue May 15 15:31:15 UTC 2018 - toddrme2178@gmail.com

- Initial version
openSUSE Build Service is sponsored by