* Add a `default_factory` attribute to the base Parameter (#1092)
* Add a `metadata` attribute to the base Parameter (#1094)
* Allow declaring Parameterized abstract base classes by inheriting
from `ParameterizedABC` => This approach should be favored over
`__abstract = True` (#1031)
* Add `.rx.set()` method (#957)
* Add missing docstrings and enhance existing ones
(#992), (#994), (#997), (#998)
* Better error when calling `len()` on a reactive expression (#1033)
* Raise `AttributeError` when attempting to set the `value` attribute
of a reactive expression (#1022)
* Add an `is_instance` attribute to the `List` Parameter (#1023)
* Allow `depends(..., on_init=True)` to be applied to async method (#1067)
* Add `concrete` keyword to the `descendents` function => Prefer
`concrete(<cls>, descendents=True)` over `concrete_descendents(<cls>)` (#1027)
* Improve import time by lazy importing "slow" modules (#1037)
* Only update Parameter signatures when needed (#1038)
* Fix calling `descendents` on an `object()` instance (#1024)
* Ensure `edit_constant` resets class and instance level parameters (#1015)
* Ensure `constant` attribute is inherited (#1017)
* Ensure type checkers skip `ParameterizedFunction.__init__` (#1039)
* Fix `.values()/get_value_generator()` dealing with Dynamic params
and an updated default value (#1058)
* Do not remove `nested_refs` when updating another ref (#1061)
* Fix error message of `ReactiveESMMetaClass` (#1064)
* Fix `reactive_ops.__call__` (#1069)
* `unwatch` no longer logs a warning and idempotent behavior clarified (#1018)
* Remove bad abstract declaration on `SelectorBase` (#1086)
* Do not override refs when parameter is triggered (#1089)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=68
* Annotate `depends` and `accept_arguments` decorators (#962)
* Stop directly importing numpy and add `gen_types` decorator (#966)
* Added missing `super().__init_subclass__` call in `_ParameterBase.__init_subclass__` (#969)
* Remove `_dict_update` (#980)
* Improve some docstrings and set up `ruff` to validate them (#977), (#982), and (#983)
* Remove `_param_watchers`, raise `RuntimeError` on unsafe ops during init,
and failed validation of a parameter default after inheritance (#973)
* Promote many deprecation warnings to future warnings (#974)
* Test Python 3.13 (#971)
* Drop Python 3.8 support (#986)
* Replace `hatch` with `pixi` (#971)
* Fix reactive tests failing intermittently on Windows (#971)
* Change linting to `ruff` (#978)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=62
- update to 2.1.1:
* Ensure rx._callback resolves accessors
* Ensure refs can be updated by watcher of the same parameter
* Recursively resolve references on args and kwargs passed to a
reactive operation (#944)
* Only override the name of a Parameterized instance on Parameter
instantiation when instantiate=True (#938)
* Various minor documentation improvements
* Fix test_reactive_logic_unary_ops on Python 3.12
OBS-URL: https://build.opensuse.org/request/show/1184129
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-param?expand=0&rev=29
* Ensure rx._callback resolves accessors
* Ensure refs can be updated by watcher of the same parameter
* Recursively resolve references on args and kwargs passed to a
reactive operation (#944)
* Only override the name of a Parameterized instance on Parameter
instantiation when instantiate=True (#938)
* Various minor documentation improvements
* Fix test_reactive_logic_unary_ops on Python 3.12
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=60
- update to 2.1.0:
* Improvements for synchronous and asychronous generators (#908)
* Additions to the .rx namespace including and_, bool, map, not_,
or_ and updating (#906)
* Add support for adding asynchronous watcher to rx (#917)
* Make it possible to resolve reactive expressions recursively
with .rx.resolve (#918)
* Add support for async and generator functions in .rx.pipe (#924)
* Ensure that .param.update context manager restore refs (#915)
* Avoid overeager root invalidation on rx leading to unnecessary
evaluation (#919)
* Passing positional arguments to Parameter now raises a
ParamDeprecationWarning
OBS-URL: https://build.opensuse.org/request/show/1172438
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-param?expand=0&rev=28
* Improvements for synchronous and asychronous generators (#908)
* Additions to the .rx namespace including and_, bool, map, not_,
or_ and updating (#906)
* Add support for adding asynchronous watcher to rx (#917)
* Make it possible to resolve reactive expressions recursively
with .rx.resolve (#918)
* Add support for async and generator functions in .rx.pipe (#924)
* Ensure that .param.update context manager restore refs (#915)
* Avoid overeager root invalidation on rx leading to unnecessary
evaluation (#919)
* Passing positional arguments to Parameter now raises a
ParamDeprecationWarning
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=58
- update to 2.0.2:
* Minor optimizations in hot codepaths accessing class parameters
* Unpack partial callables in iscoroutinefunction
* Fix building Param with setuptools-scm<7
* Parameter slot values are now all inherited correctly across
* There is now a ListProxy wrapper around Selector.objects (with
forward and backward compatibility) to easily update objects
* Parameterized classes and instances now have a rich HTML
representation that is displayed automatically in
* Parameters have all gained the allow_refs and nested_refs
attributes, bringing an exceptionally useful feature that was
* You can now use .param.update as a context manager for applying
* Path now has check_exists attribute, leading it to raise an error
- Update to version 1.12.3:
- Don't test optional numpy with python36, but include optional
* No upstream changelog
OBS-URL: https://build.opensuse.org/request/show/1140199
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-param?expand=0&rev=26
* Minor optimizations in hot codepaths accessing class parameters
* Unpack partial callables in iscoroutinefunction
* Fix building Param with setuptools-scm<7
* Parameter slot values are now all inherited correctly across
* There is now a ListProxy wrapper around Selector.objects (with
forward and backward compatibility) to easily update objects
* Parameterized classes and instances now have a rich HTML
representation that is displayed automatically in
* Parameters have all gained the allow_refs and nested_refs
attributes, bringing an exceptionally useful feature that was
* You can now use .param.update as a context manager for applying
* Path now has check_exists attribute, leading it to raise an error
- Update to version 1.12.3:
- Don't test optional numpy with python36, but include optional
* No upstream changelog
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=54
- Update to 2.0.0
* Parameter slot values are now all inherited correctly across
a hierarchy of Parameterized classes.
* There is now a ListProxy wrapper around Selector.objects (with
forward and backward compatibility) to easily update objects
and watch objects updates.
* Parameterized classes and instances now have a rich HTML
representation that is displayed automatically in
a Jupyter/IPython notebook.
* Parameters have all gained the allow_refs and nested_refs
attributes, bringing an exceptionally useful feature that was
available in Panel since version 1.2 to Param.
* Experimental new rx reactive expressions.
* You can now use .param.update as a context manager for applying
temporary updates.
* For speed, only generate the Parameter docstring in an IPython context.
* Support for deserialization of file types into Array and DataFrame.
* Integer now accepts numpy.integer values.
* Range now does stricter validation of the slot values.
* Path now has check_exists attribute, leading it to raise an error
if path is not found on parameter instantiation.
* Add top-level __all__ and move Parameter classes to parameters.py.
* Now compatible with Python 3.8+
* Other changes, take a look at the upstream changelog.
OBS-URL: https://build.opensuse.org/request/show/1120521
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=50
- update to 1.13.0:
* This release includes a new `Bytes` *Parameter* and a few
important bug fixes. This release is also marked by the
adoption of a formal project governance, ensuring Param's
future as a healthy open-source project. Many thanks to
@ovidner and @droumis for their first contributions! And to
@maximlt, @Hoxbro, @jlstevens, @philippjfr and @jbednar for
their continuing support to fixing and improving Param.
* Fix copying when having watchers on e.g. bounds on inherited
Parameter types (#675)
* Allow JSON serialization to work with `json.dumps` (#655)
* `ListSelector` restricted to `list` type objects (#531)
* Fix `depends` async wrapper (#684)
* Allow named colors to be any case (#711)
OBS-URL: https://build.opensuse.org/request/show/1074514
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-param?expand=0&rev=23
* This release includes a new `Bytes` *Parameter* and a few
important bug fixes. This release is also marked by the
adoption of a formal project governance, ensuring Param's
future as a healthy open-source project. Many thanks to
@ovidner and @droumis for their first contributions! And to
@maximlt, @Hoxbro, @jlstevens, @philippjfr and @jbednar for
their continuing support to fixing and improving Param.
* Fix copying when having watchers on e.g. bounds on inherited
Parameter types (#675)
* Allow JSON serialization to work with `json.dumps` (#655)
* `ListSelector` restricted to `list` type objects (#531)
* Fix `depends` async wrapper (#684)
* Allow named colors to be any case (#711)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-param?expand=0&rev=48