link_traits is a fork of traitlets' link and dlink functions to add the ability to link traits in addition to traitlets.
Make sure you have pip installed and run:
pip install link_traits
link_traits depends on traits which is not a pure Python package. In Anaconda you can install link_traits and traits as follows:
conda install link-traits -c conda-forge
py.test is required to run the tests.
pip install "link_traits[test]"
py.test --pyargs traitlets
import traits.api as t
import traitlets
from link_traits import link
class A(t.HasTraits):
a = t.Int()
class B(traitlets.HasTraits):
b = t.Int()
a = A()
b = B()
l = link((a, "a"), (b, "b"))
>>> a.a = 3
>>> b.b
3
Contributions through pull requests are welcome. The intention is to keep the syntax and features in sync with the original traitlets' link and dlink functions. Therefore, before contributing a new feature here, please contribute it to traitlets first.