* Wed Oct 27 2021 Steve Kowalik <steven.kowalik@suse.com>
- Update to 6.3.1:
* Make PrefixMap._map available again, for compatibility with Mayavi. (#1578)
* Support for Python 3.10 has been added.
* The observe mini-language now supports use of "*" for listening to all
traits on a HasTraits object. Currently this support is limited to
cases where the "*" appears in a terminal position. For example,
observe("foo:*") is supported, but observe("*:foo") is not. (#1496, #1525)
* The Any trait type now supports a factory argument (with accompanying
args and kw arguments). This can be used to specify a per-instance
default, for example with Any(factory=dict). (#1557, #1558)
* When a method is decorated with an observe decorator, the method
signature is now checked, and a warning issued if it doesn't match the
expected signature. (#1529)
* The Date, Datetime and Time trait types have a new argument allow_none.
(#1432)
* The Date trait type has a new argument allow_datetime .(#1429)
* The ObserverGraph instances that result from compiling ObserverExpression
objects and observe mini-language strings are now cached.
* The equality definition on ObserverExpression has been simplified. (#1517)
* A failure to parse an observe mini-language string now raises ValueError
rather than LarkError. (#1507)
* Invalid assignments to PrefixList and PrefixMap traits produced an
unnecessarily nested exception. This has been fixed. (#1564)
* An observe-decorated listener method whose name has the special form
"_traitname_changed" will no longer be triggered both as as result of the
observe decorator and the special naming: it will only be triggered via
the observe decorator. (#1560)
* The delegate parameter was mistyped in the typing stubs for the Delegate
trait type. This has been fixed. (#1556)
* The Function and Method trait types will no longer fail when arguments are
passed. Note that these trait types are already deprecated, and should not
be used in new code. (#1543)
* A use of the (deprecated) distutils library has been replaced with
sysconfig. (#1452)
* Dynamic default handing has been fixed in the _instance_handler_factory
used by the TraitsUI TableEditor. (#1446, #1450)
* A bad observe-decorated listener signature in a test has been fixed. (#1530)
- Remove nose from BuildRequires, the nose portion of the testsuite is
firmly deprecated.
* Tue Feb 23 2021 Ben Greiner <code@bnavigator.de>
- unskip python36. NumPy is actually optional.
* Sun Feb 21 2021 andy great <andythe_great@pm.me>
- Skip python 3.6.
- Change source URL to Github.
- Update to version 6.2.0.
* The Traits examples are now distributed as part of the Traits
egg, and are contributed to the etsdemo application.
* Performance of the observe framework has been significantly
improved.
* It's no longer necessary to specify a trait comparison mode of
ComparisonMode.identity when using observe to observe items
in a List, Dict or Set.
* When importing from Traits, you should always import from one
of the api modules (for example, traits.api,
traits.adaptation.api, etc.) This recommendation has now been
made explicit in the documentation. If you find something you
need that's not available from one of the api modules, please
let the Traits developers know.
* Mon Jul 13 2020 Marketa Calabkova <mcalabkova@suse.com>
- Update to 6.1.0
* A new :mod:`observation <traits.observation>` framework for observing traited
attributes and other observable objects has been introduced. This is intended
to provide a full replacement for the existing :func:`on_trait_change`
mechanism, and aims to fix a number of fundamental flaws and limitations of
that mechanism. See the :ref:`observe-notification` section of
the user manual for an introduction to this framework.
* New :class:`~traits.trait_list_object.TraitList`,
:class:`~traits.trait_dict_object.TraitDict` and
:class:`~traits.trait_set_object.TraitSet` classes have been added,
subclassing Python's built-in :class:`python:list`, :class:`python:dict` and
:class:`python:set` (respectively). Instances of these classes are observable
objects in their own right, and it's possible to attach observers to them
directly. These classes were primarily introduced to support the new
observation framework, and are not expected to be used directly. The API for
these objects and their notification system is provisional, and may change in
a future Traits release.
* A new :class:`.Union` trait type has been added. This is intended as a
simpler replacement for the existing :class:`.Either` trait type, which
will eventually be deprecated.
* New :class:`.PrefixList`, :class:`.PrefixMap` and :class:`.Map` trait types
have been added. These replace the existing :class:`.TraitPrefixList`,
:class:`.TraitPrefixMap` and :class:`.TraitMap` subclasses of
:class:`.TraitHandler`, which are deprecated.
* Typing stubs for the Traits library have been added in a
``traits-stubs`` package, which will be released separately to PyPI. This
should help support Traits-using projects that want to make use of type
annotations and type checkers like `mypy <http://mypy-lang.org/>`_.
* Python 2.7 is no longer supported; Traits 6.0 requires Python 3.5 or later.
* Trait types related to Python 2 (for example ``Unicode`` and ``Long``) have
been deprecated in favour of their Python 3 equivalents (for example ``Str``
and ``Int``).
* Many little-used historical features of Traits have been deprecated, and
are scheduled for removal in Traits 7.0.
* Some historical features of Traits that had no evidence of external usage
were removed in Traits 6.0.
* Introspection of ``CTrait`` and ``HasTraits`` objects is greatly improved.
All of the internal state that was previously hidden within the C extension
is now accessible from Python.
* The Traits codebase has undergone some significant reorganizations,
reformattings and style cleanups to make it easier to work with, and
to improve the separation between Traits and TraitsUI.
* This release was focused mainly on cleanup and bugfixing. Nevertheless,
it contains a sprinkling of new features. There's a new ``Datetime``
trait type. The ``Enum`` trait type now supports Python enumerations.
The ``File`` trait type supports path-like objects.
* And many more... see upstream changelog
- Convert to multibuild to break build cycle with pyface
- Add patch fix-test.patch to make the tests pass
Version: 5.2.0-bp152.1.9
* Thu Jan 30 2020 Todd R <toddrme2178@gmail.com>
- Update to 5.2.0:
+ Enhancements
* Support installation from source archives.
+ Fixes
* Ensure ``TraitListEvent.index`` is always an integer.
* Update the deprecated ``collections.MutableMapping`` import.
* Fix inadvertent modification of the ``Category`` base class.
* Rework version handling in ``setup.py``.
* Don't autogenerate documentation for ``ViewElement``.
* Ensure that all tests are ``unittest`` compatible.
+ Changes
* Replace occurences of deprecated ``AdaptsTo`` with ``Supports``.
* Remove ``Class`` trait.
* Deprecate ``Category`` trait.
* Fix typos in docstrings.
* Use decorator form of ``classmethod``.
* Remove redefinition of ``NullHandler``.
* Add an import check helper.
* Clean up Cython tests.
* Clean up test output.
+ Miscellaneous
* Update EDM version on CI to version 2.0.0.
* Don't finish fast on CI.
* Use ``unittest`` to run tests in CI.
* Low-level fixes and style cleanup in ``etstool.py``.
* Add ``--editable`` option for ``install``, ``update`` CI commands.
* Make git commit hash available to archives.
* Fix use of non-edm envs as bootstrap envs on Windows.
* Remove edm installed package before installing from source.
* Add help text to click options.
* Various cleanups, fixes and enhancements in ``etstool.py``.
* Mon Jul 22 2019 Tomá? Chvátal <tchvatal@suse.com>
- Update to 5.1.2:
* Traits documenter no longer generates bad reST for traits whose definition spans multiple source lines. (#494)
Version: 5.1.1-bp151.1.2
* Tue Apr 23 2019 pgajdos@suse.com
- version update to 5.1.1
* Revert a change (#449) which accidentally broke external uses of
``_py2to3.str_find`` and ``_py2to3.str_rfind``. (#472)
* Wed Apr 17 2019 pgajdos@suse.com
- version update to 5.1.0
* Make UUID trait initializable. (#459)
* Change default ``FileEditor`` behavior for a ``File`` trait based on
whether ``exists=True`` is specified for that trait. (#451, #467)
* The changes made in #373 to make dynamically-added traits pickleable have
been reverted. (#462)
* ``traits.api.python_version`` has been removed. Internals have been
refactored to use ``six.PY2`` in preference to ``sys.version_info``.
(#449)
* Don't depend on the 3rd party ``mock`` library on Python 3; use
``unittest.mock`` instead. (#446)
- Drop no longer needed avoid_sys_modules_hackery.patch
* Thu Feb 21 2019 Todd R <toddrme2178@gmail.com>
- Add avoid_sys_modules_hackery.patch
Fixes building with latest numpy
see: gh#enthought/traits#441
* Wed Feb 06 2019 Todd R <toddrme2178@gmail.com>
- Update to 5.0.0
+ highlights of this release are
* Removal of 2to3 fixers and the use of six to provide Python 2/3 compatibility
* Removal of deprecated `traits.protocols` submodule and related utils.
* New `HasRequiredTraits` class
* Better IPython tab completion for `HasTraits` subclasses
* Wed May 09 2018 toddrme2178@gmail.com
- Use license tag
* Wed Aug 23 2017 toddrme2178@gmail.com
- Implement single-spec version
- Update to version 4.6.0
Highlights of this release include:
* support for Python 3.4 and 3.5.
* new Bytes and ValidatedTuple traits.
* a new ArrayOrNone trait which correctly handles None comparisons with Numpy
arrays.
* clean-up of the ETSConfig code for TraitsUI toolkit selection.
* better compatibility with NumPy scalar types.
* many other bugfixes and improvements.
* Mon Oct 13 2014 toddrme2178@gmail.com
- Updated to version 4.5.0
+ Traits is now compatible with Python 3!
The library now supports Python 3.2 and 3.3 .
+ The release also includes increased code coverage and automatic
coverage report through coveralls.io .
+ Enhancements
* Test files cleanups (#108, #111, #121)
* Add automatic coverage reports (#110, #122)
* Removed obsolete code (#109, #112, #113)
* Increased test coverage (#114, #118)
* Python 3 support (#115). Thanks Yves Delley.
* Allow setting and resetting the global adaptation manager (#145)
* Various documentation improvements (#132, #133, #148, #154).
+ Changes
* The Int trait type now accepts Python ints *and* Python longs, as well as
instances of any Python type that implements the `__index__` method.
Previously, long instances were not accepted. (#104, #123).
+ Fixes
* Fix crash when trying to validate a property that has been deleted. (#138)
* Fix clearing exception when raising a TraitError (#119)
* Fix automatic adaptation when assigning to List trait (#147)
* Fix some ctraits refcounting and exception clearing bugs (#48). Thanks Yves
Delley.
- Updated to version 4.4.0
+ The major new feature in this release is a new adaptation mechanism in the
``traits.adaptation`` package. The new mechanism is intended to replace the
older traits.protocols package. Code written against ``traits.protocols`` will
continue to work, although the ``traits.protocols`` API has been deprecated,
and a warning will be logged on first use of ``traits.protocols``. See the
'Advanced Topics' section of the user manual for more details.
+ The release also includes improved support for using Cython with `HasTraits`
classes, some new helper utilities for writing unit tests for Traits events,
and a variety of bug fixes, stability enhancements, and internal code
improvements.
+ New features
* The adaptation mechanism in Traits, formerly based on the 'traits.protocols'
package, has been replaced with the more robust 'traits.adaptation'
package. (#51)
* Added utility function for importing symbols (name, classes, functions)
by name: 'traits.util.api.import_symbol'. (#51)
* Users can set a global tracer, which receives all traits change events:
`traits.trait_notifiers.set_change_event_tracers`. (#79)
+ Enhancements
* Update benchmark script. (#54)
* traits.util.deprecated: use module logger instead of root logger. (#59)
* Provide an informative message in AdaptationError. (#62)
* Allow HasTraits classes to be cythonized. (#73)
* Improve tests for cythonization support. (#75)
* Extending various trait testing helpers (#53)
+ Refactoring
* The Traits notification code has been reworked to remove code duplication,
and test coverage of that code has been significantly improved. (#79)
+ Fixes
* Fix race condition when removing a traits listener. (#57)
* Fix ugly interaction between DelegatesTo change handlers, dynamic change
handlers and two levels of dynamic intialization. (#63)
* Use a NullHandler for all 'traits' loggers. (#64)
* Fix race condition in TraitChangeNotifyWrapper.listener_deleted (#66)
* Fix leaking notifiers. (#68)
* Fix failing special instance trait events. (#78)
* Fix hiding KeyError exception inside trait default initialize method.
(#81)
* Fix Adapter object initialization. (#93)
* Fix cyclic garbage arising from use of the WeakRef trait type. (#95)
* `TraitSetObject.copy` now returns a plain rather than an
uninitialized `TraitSetObject` instance. (#97)
* Fix cyclic garbage arising from dynamic trait change handlers. (#101)
- Updated source to pypi url.
* Thu Oct 24 2013 speilicke@suse.com
- Require python-setuptools instead of distribute (upstreams merged)
* Sat Apr 20 2013 toddrme2178@gmail.com
- Added a note about being part of the Enthought Tool Suite (ETS).
* Thu Apr 18 2013 toddrme2178@gmail.com
- Update to 4.3.0
* no changelog
* Tue Jun 26 2012 toddrme2178@gmail.com
- Fix building on SLE 11
* Tue May 22 2012 toddrme2178@gmail.com
- changed name to python-traits to match upstream naming
- updated to version 4.2.0
- updated to version 4.1.0
* Sat Jun 25 2011 ocefpaf@yahoo.com.br
- updated to version 4.0.0
- The 'enthought' namespace has been removed For example:
from enthought.traits.api import HasTraits
is now simply:
from traits.api import HasTraits
* Tue May 31 2011 saschpe@suse.de
- Spec file cleanup:
* Removed unused script code
* README.txt and LICENSE.txt belong into the base package
* Proper SUSE version checks for fdupes, fixes SLE build
* Added license header
* Sun Mar 20 2011 ocefpaf@yahoo.com.br
- first import from Fedora src rpm