Param

Latest version: v2.1.1

Safety actively analyzes 683530 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 6

1.13.0

Date: 2023-03-14

The `1.13.0` is the last release of Param before the 2.0 release. However, Param 1.13 is meant to receive long-term support; security patches and fixes to critical bugs are planned to be backported to the 1.13.x series.

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.

Bug fixes:

* Fix copying when having watchers on e.g. bounds on inherited Parameter types ([675](https://github.com/holoviz/param/pull/675))
* Allow JSON serialization to work with `json.dumps` ([655](https://github.com/holoviz/param/pull/655))
* `ListSelector` restricted to `list` type objects ([531](https://github.com/holoviz/param/pull/531))
* Fix `depends` async wrapper ([684](https://github.com/holoviz/param/pull/684))
* Allow named colors to be any case ([711](https://github.com/holoviz/param/pull/711))

New features:

* Add Bytes parameter ([542](https://github.com/holoviz/param/pull/542))

Documentation:

* Fix param module link ([682](https://github.com/holoviz/param/pull/682))

Project governance:

* Create initial project governance docs ([674](https://github.com/holoviz/param/pull/674))

Maintenance:

* Rename `master` branch to `main` ([672](https://github.com/holoviz/param/pull/672))
* Add more tests ([710](https://github.com/holoviz/param/pull/710))
* Various CI related fixes ([680](https://github.com/holoviz/param/pull/680), [#683](https://github.com/holoviz/param/pull/683) and [#709](https://github.com/holoviz/param/pull/709))

1.12.3

Date: 2022-12-06

The `1.12.3` release adds support for Python 3.11. Many thanks to musicinmybrain (first contribution!) and maximlt for contributing to this release.

Enhancements:

* Preserve existing Random seed behavior in Python 3.11 ([638](https://github.com/holoviz/param/pull/638))
* Add support for Python 3.11 ([658](https://github.com/holoviz/param/pull/658))

1.12.2

Date: 2022-06-14

The `1.12.2` release fixes a number of bugs and adds support again for Python 2.7, which was unfortunately no longer supported in the last release. Note however that Param 2.0 will still drop support of Python 2.7 as already announced. Many thanks to Hoxbro and the maintainers jbednar, jlstevens, maximlt and philippjfr for contributing to this release.

Bug fixes:

* Match against complete spec name when determining dynamic watchers ([615](https://github.com/holoviz/param/pull/615))
* Ensure async functionality does not cause python2 syntax errors ([624](https://github.com/holoviz/param/pull/624))
* Allow (de)serializing `CalendarRange` and `DateRange` `Parameters` ([625](https://github.com/holoviz/param/pull/625))
* Improve `DateRange` validation ([627](https://github.com/holoviz/param/pull/627))
* Fix regression in `param.depends` execution ordering ([628](https://github.com/holoviz/param/pull/628))
* Ensure `named_objs` does not fail on unhashable objects ([632](https://github.com/holoviz/param/pull/632))
* Support comparing date-like objects ([629](https://github.com/holoviz/param/pull/629))
* Fixed `BinaryPower` example in the docs to use the correct name `EvenInteger`([634](https://github.com/holoviz/param/pull/634))

1.12.1

The 1.12.1 release fixes a number of bugs related to async callback handling when using `param.depends` and `.param.watch` and a number of documentation and error messages. Many thanks to HoxBro and the maintainers jbednar, jlstevens, maximlt and philippjfr for contributing to this release.

Error handling and documentation:

- Fixed description of shared_parameters ([568](https://github.com/holoviz/param/pull/568))
- Improve the error messages of Date and DateRange ([579](https://github.com/holoviz/param/pull/579))
- Clarified step error messages and other docs and links ([604](https://github.com/holoviz/param/pull/604))

Bug fixes:

- Make iscoroutinefunction more robust ([572](https://github.com/holoviz/param/pull/572))
- Fix for handling misspelled parameter ([575](https://github.com/holoviz/param/pull/575))
- Handle None serialization for Date, CalendarDate, Tuple, Array, and DataFrame ([582](https://github.com/holoviz/param/pull/582))
- Support async coroutines in param.depends ([591](https://github.com/holoviz/param/pull/591))
- Handle async functions in depends with watch=True ([611](https://github.com/holoviz/param/pull/611))
- Avoid equality check on Watcher ([612](https://github.com/holoviz/param/pull/612))

Documentation:

- Fix binder ([564](https://github.com/holoviz/param/pull/564))
- Fixed description of shared_parameters ([568](https://github.com/holoviz/param/pull/568))

1.12.0

Version 1.12.0 introduces a complete user manual and website (for the first time since 2003!) along with extensive API improvements gearing up for the 2.0 release (which will be Python3 only).

The pre-2.0 API is still being preserved and no new warnings are added in this release, so the older API can continue to be used with this release, but the next 1.x release is expected to enable warnings for deprecated API. If you have older code using the deprecated Param features below, please update your API calls as described below to be compatible with the 2.0 release when it comes out (or pin to param<2 if you don't need any new Param features). For new users, just use the API documented on the website, and you should be ready to go for either 1.12+ or 2.0+.

Thanks to James A. Bednar for the user guide and 2.0 API support, to Philipp Rudiger for improvements and new capabilities for handling dependencies on subobjects, and to Maxime Liquet and Philipp Rudiger for extensive improvements to the website/docs/package-building/testing.

New features:
- Added future-facing API for certain Parameterized().param methods (see Compatibility below; [556](https://github.com/holoviz/param/pull/556), [#558](https://github.com/holoviz/param/pull/558), [#559](https://github.com/holoviz/param/pull/559))
- New option `on_init=True` for `depends` decorator, to run the method in the constructor to ensure initial state is consistent when appropriate ([540](https://github.com/holoviz/param/pull/540))
- Now resolves subobject dependencies dynamically, allowing dependencies on internal parameters of subobjects to resolve appropriately as those objects are replaced. ([552](https://github.com/holoviz/param/pull/552))
- Added prettyprinting for numbergen expressions ([525](https://github.com/holoviz/param/pull/525))
- Improved JSON schema generation ([458](https://github.com/holoviz/param/pull/458))
- Added more-usable script_repr command, availabie in param namespace, with default values, and showing imports ([522](https://github.com/holoviz/param/pull/522))
- Added Parameterized.param.pprint(); underlying implementation of script_repr but with defaults suitable for interactive usage rather than generating a .py script. ([522](https://github.com/holoviz/param/pull/522))
- Watchers can now declare precedence so that events are triggered in the desired order ([552](https://github.com/holoviz/param/pull/552), [#557](https://github.com/holoviz/param/pull/557))

Bug fixes:
- Fix bug setting attributes in some cases before class is initialized ([544](https://github.com/holoviz/param/pull/544))
- Ensure None is supported on ListSelector ([511](https://github.com/holoviz/param/pull/511))
- Switched from deprecated `inspect.getargspec` to the py3 version `inspect.getfullargspec`, which is similar but splits `keyword` args into `varkw` (**) and kw-only args. Falls back to getargspec on Python2. ([521](https://github.com/holoviz/param/pull/521))

Doc improvements (including complete user guide for the first time!):
- Misc comments/docstrings/docs cleanup ([507](https://github.com/holoviz/param/pull/507), [#518](https://github.com/holoviz/param/pull/518), [#528](https://github.com/holoviz/param/pull/528), [#553](https://github.com/holoviz/param/pull/553))
- Added comparison with pydantic ([523](https://github.com/holoviz/param/pull/523))
- Added new user guide sections:
* Dependencies_and_Watchers user guide ([536](https://github.com/holoviz/param/pull/536))
* Dynamic Parameters ([525](https://github.com/holoviz/param/pull/525))
* Outputs ([523](https://github.com/holoviz/param/pull/523))
* Serialization and Persistence ([523](https://github.com/holoviz/param/pull/523))

Infrastructure:
- Added testing on Python 3.10 and on Mac OS X and removed slow PyPy/pandas/numpy tests ([548](https://github.com/holoviz/param/pull/548), [#549](https://github.com/holoviz/param/pull/549), [#526](https://github.com/holoviz/param/pull/526))
- Docs/tests/build infrastructure improvements ([509](https://github.com/holoviz/param/pull/509), [#521](https://github.com/holoviz/param/pull/521), [#529](https://github.com/holoviz/param/pull/529), [#530](https://github.com/holoviz/param/pull/530), [#537](https://github.com/holoviz/param/pull/537), [#538](https://github.com/holoviz/param/pull/538), [#539](https://github.com/holoviz/param/pull/539), [#547](https://github.com/holoviz/param/pull/547), [#548](https://github.com/holoviz/param/pull/548), [#555](https://github.com/holoviz/param/pull/555))

Compatibility (see [543](https://github.com/holoviz/param/pull/543) for the complete list):
- Calendardate now accepts date values only ([517](https://github.com/holoviz/param/pull/517))
- No longer allows modifying name of a Parameter once it is in a Parameterized class, to avoid confusion ([541](https://github.com/holoviz/param/pull/541))
- Renamed (with old name still accepted for compatibility until 2.0):
* `.param._add_parameter()`: Now public `.param.add_parameter()`; too useful to keep private! ([559](https://github.com/holoviz/param/pull/559))
* `.param.params_depended_on`: Now `.param.method_dependencies` to indicate that it accepts a method name and returns its dependencies ([559](https://github.com/holoviz/param/pull/559))
* `.pprint`: Now private `._pprint`; use public `.param.pprint` instead ([559](https://github.com/holoviz/param/pull/559))
* `batch_watch`: Now `batch_call_watchers`, to declare that it does not set up watching, it just invokes it. Removed unused operation argument ([536](https://github.com/holoviz/param/pull/536))

- Deprecated (but not yet warning unless noted):
* `.param.debug()`: Use `.param.log(param.DEBUG, ...)` instead ([556](https://github.com/holoviz/param/pull/556))
* `.param.verbose()`: Use `.param.log(param.VERBOSE, ...)` instead ([556](https://github.com/holoviz/param/pull/556))
* `.param.message()`: Use `.param.log(param.MESSAGE, ...)` instead ([556](https://github.com/holoviz/param/pull/556))
* `.param.defaults()`: Use `{k:v.default for k,v in p.param.objects().items()}` instead ([559](https://github.com/holoviz/param/pull/559))
* `.param.deprecate()`: To be repurposed or deleted after 2.0 ([559](https://github.com/holoviz/param/pull/559))
* `.param.params()`: Use `.param.values()` or `.param['param']` instead ([559](https://github.com/holoviz/param/pull/559))
* `.param.print_param_defaults()`: Use `for k,v in p.param.objects().items(): print(f"{p.__class__.name}.{k}={repr(v.default)}")` instead ([559](https://github.com/holoviz/param/pull/559))
* `.param.print_param_values()`: Use `for k,v in p.param.values().items(): print(f"{p.name}.{k}={v}")` instead ([559](https://github.com/holoviz/param/pull/559))
* `.param.set_default()`: Use `p.param.default=` instead ([559](https://github.com/holoviz/param/pull/559))
* `.param.set_param()`: Had tricky API; use `.param.update` instead ([558](https://github.com/holoviz/param/pull/558))
* `.param.get_param_values()`: Use `.param.values().items()` instead (or `.param.values()` for the common case of `dict(....param.get_param_values())`) ([559](https://github.com/holoviz/param/pull/559))
* `.state_pop()`: Will be renamed to `._state_pop` to make private
* `.state_push()`: Will be renamed to `._state_push` to make private
* `.initialized`: Will be renamed to `._initialized` to make private
* Most methods on Parameterized itself have already been deprecated and warning for some time now; see [543](https://github.com/holoviz/param/pull/543) for the list. Use the corresponding method on the `.param` accessor instead.

- Added:
* `.param.watchers`: Read-only version of private `_watchers` ([559](https://github.com/holoviz/param/pull/559))
* `.param.log()`: Subsumes .debug/verbose/message; all are logging calls. ([556](https://github.com/holoviz/param/pull/556))
* `.param.update()`: Dictionary-style updates to parameter values, as a drop-in replacement for `set_param` except for its optional legacy positional-arg syntax ([558](https://github.com/holoviz/param/pull/558))
* `.values()`: Dictionary of name:value pairs for parameter values, replacing `get_param_values` but now a dict since python3 preserves order ([558](https://github.com/holoviz/param/pull/558))
* `.param.log()`: General-purpose interface to the logging module functionailty; replaces .debug, .verbose, .message ([556](https://github.com/holoviz/param/pull/556))

1.11.1

(including changes in 1.11.0; 1.11.1 adds only a minor change to fix `param.List(None)`.)

Version 1.11 contains entirely new [documentation](https://param.holoviz.org), plus various enhancements and bugfixess. Thanks to James A. Bednar for the documentation, Philipp Rudiger for the website setup and for many of the other fixes and improvements below, and others as noted below.

Documentation:
- Brand-new website, with getting started, user manual, reference manual, and more! Some user guide sections are still under construction. ([428](https://github.com/holoviz/param/pull/428),[#464](https://github.com/holoviz/param/pull/464),[#479](https://github.com/holoviz/param/pull/479),[#483](https://github.com/holoviz/param/pull/483),[#501](https://github.com/holoviz/param/pull/501),[#502](https://github.com/holoviz/param/pull/502),[#503](https://github.com/holoviz/param/pull/503),[#504](https://github.com/holoviz/param/pull/504))
- New intro video with examples/Promo.ipynb notebook, thanks to Marc Skov Madsen and Egbert Ammicht ([488](https://github.com/holoviz/param/pull/488))
- Sort docstring by definition order and precedence, thanks to Andrew Huang ([445](https://github.com/holoviz/param/pull/445))

Enhancements:
- Allow printing representations for recursively nested Parameterized objects ([499](https://github.com/holoviz/param/pull/499))
- Allow named colors for param.Color ([472](https://github.com/holoviz/param/pull/472))
- Allow FileSelector and MultiFileSelector to accept initial values ([497](https://github.com/holoviz/param/pull/497))
- Add Step slot to Range, thanks to Simon Hansen ([467](https://github.com/holoviz/param/pull/467))
- Update FileSelector and MultiFileSelector parameters when setting path ([476](https://github.com/holoviz/param/pull/476))
- Improved error messages ([475](https://github.com/holoviz/param/pull/475))

Bug Fixes:
- Fix Path to allow folders, as documented but previously not supported ([495](https://github.com/holoviz/param/pull/495))
- Fix previously unimplemented Parameter._on_set ([484](https://github.com/holoviz/param/pull/484))
- Fix Python2 IPython output parameter precedence ([477](https://github.com/holoviz/param/pull/477))
- Fix allow_None for param.Series and param.DataFrame ([473](https://github.com/holoviz/param/pull/473))
- Fix behavior when both `instantiate` and `constant` are `True` ([474](https://github.com/holoviz/param/pull/474))
- Fix for versioning when param is inside a separate git-controlled repo (port of fix from autover/pull/67) ([469](https://github.com/holoviz/param/pull/469))

Compatibility:
- Swapped ObjectSelector and Selector in the inheritance hierarchy, to allow ObjectSelector to be deprecated. ([497](https://github.com/holoviz/param/pull/497))
- Now `get_soft_bounds`silently crops softbounds to any hard bounds supplied ; previously soft bounds would be returned even if they were outside the hard bounds ([498](https://github.com/holoviz/param/pull/498))
- Rename `class_` to `item_type` in List parameter, to avoid clashing semantics with ClassSelector and others with a `class_` slot. `class_` is still accepted as a keyword but is stored in `item_type`. ([456](https://github.com/holoviz/param/pull/456))

Page 2 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.