traits
traits copied to clipboard
Observable typed attributes for Python classes
After #1348, `traits.examples.introduction` is now a package that can be imported: ``` from traits.examples.introduction import * ``` This makes the `introduction` a package and makes it look like part of...
It would be useful to test occasionally with a version of the `observe` parser generated by the latest version of Lark, so that we get alerted to any regressions that...
Given the following code: ``` from traits.api import HasTraits, List, Instance, Int class Child(HasTraits): value = Int class Parent(HasTraits): children = List(Instance(Child)) p = Parent() def printer(object, name, old, new):...
For `traits.observation.observe.observe`, the `handler` argument signature can be relaxed so long as `dispatcher` can collaborate with it: https://github.com/enthought/traits/blob/72b1fe35ff1618fd01554102243266bd35b2ca95/traits/observation/observe.py#L29-L49 Proposed new documentation: ``` handler : callable(*args, **kwargs) User-defined callable to invoke...
From https://github.com/enthought/traits/issues/1239#issuecomment-657655412: > xgetattr should really get tests, a decent docstring, and arguably fixes, too: the current version does different things for intermediate lookups than for the final lookup, for...
The `Enum` docstring would benefit from a couple of examples showing common ways to use it. With the existing description it's rather hard to parse.
Consider the following: ``` class A(HasTraits): pass class B(HasStrictTraits): pass class C(A, B): pass class D(B, A): pass ``` If we do ``` >>> c = C() >>> c.a =...
When we have two separate packages being released from a single repository, release management and versioning are unnecessarily painful. If we want to keep `traits-stubs` as a separate package, we...
The GitHub actions CI (see #1287) does not currently have job notifications for Slack. If we ever want to replace Travis CI and Appveyor entirely with GitHub Actions, it might...
For the test jobs in the GitHub Actions CI (see #1287), we're not currently caching the `pip`-installed packages used. We could do that, at the expense of some extra complexity...