Skip to content

Latest commit

 

History

History
532 lines (347 loc) · 27.7 KB

File metadata and controls

532 lines (347 loc) · 27.7 KB

(changelog)=

Changelog

5.11.1

(Full Changelog)

Merged PRs

  • Try to skip publishing to NPM to be able to publish a patch version on PYPI #459 (@Carreau)
  • disable pendingdeprecationWarnings for now #458 (@Carreau)
  • Bump github/codeql-action from 4.37.3 to 4.37.5 in the actions group #453 (@Carreau)
  • Clarify normalize guidance in the changelog #451 (@aryansk, @Carreau)
  • fix steps to skip #450 (@Carreau)

Contributors to this release

The following people contributed discussions, new ideas, code and documentation contributions, and review. See our definition of contributors.

(GitHub contributors page for this release)

@aryansk (activity) | @Carreau (activity)

5.11.0

(Full Changelog)

Enhancements made

  • Add context manager support to NotebookNotary #436 (@Carreau)

Maintenance and upkeep improvements

Documentation improvements

  • Use intersphinx_registry for intersphinx_mapping #415 (@Carreau)

Other merged PRs

Contributors to this release

The following people contributed discussions, new ideas, code and documentation contributions, and review. See our definition of contributors.

(GitHub contributors page for this release)

@blink1073 (activity) | @Carreau (activity) | @claude (activity) | @crypdick (activity) | @jasongrout (activity) | @LecrisUT (activity) | @rgbkrk (activity)

5.10.4

(Full Changelog)

Maintenance and upkeep improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073 | @pre-commit-ci

5.10.3

(Full Changelog)

Bugs fixed

  • Revert PR #378 (Simplify NotebookNotary._data_dir_default) #397 (@krassowski)

Contributors to this release

(GitHub contributors page for this release)

@krassowski

5.10.2

(Full Changelog)

Maintenance and upkeep improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073

5.10.1

No merged PRs

5.10.0

(Full Changelog)

Maintenance and upkeep improvements

Documentation improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073 | @Carreau | @cmd-ntrf | @dependabot | @pre-commit-ci | @pydanny

5.9.2

(Full Changelog)

Bugs fixed

Maintenance and upkeep improvements

Documentation improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073

5.9.1

(Full Changelog)

Maintenance and upkeep improvements

  • Fix deprecation warning when importing from jsonschema #368 (@eladkal)

Contributors to this release

(GitHub contributors page for this release)

@eladkal | @pre-commit-ci

5.9.0

(Full Changelog)

Maintenance and upkeep improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073 | @dependabot | @pre-commit-ci

5.8.0

(Full Changelog)

Enhancements made

  • Add strip_invalid_metadata argument to validator normalize method #355 (@jonabc)

Maintenance and upkeep improvements

Documentation improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073 | @dcsaba89 | @jonabc | @pre-commit-ci | @rschroll | @westurner

5.7.3

(Full Changelog)

Maintenance and upkeep improvements

  • Undeprecate validate(nb, relax_add_props=True) #343 (@minrk)

Contributors to this release

(GitHub contributors page for this release)

@minrk

5.7.2

(Full Changelog)

Bugs fixed

  • Only require nbformat_minor for v4 #342 (@minrk)

Maintenance and upkeep improvements

Contributors to this release

(GitHub contributors page for this release)

@blink1073 | @minrk | @pre-commit-ci

5.7.1

(Full Changelog)

Maintenance and upkeep improvements

Documentation improvements

Other merged PRs

Contributors to this release

(GitHub contributors page for this release)

@blink1073 | @chrisjsewell | @pre-commit-ci

Changes in nbformat

5.7.0

  • Always use jsonschema to handle error reporting.
  • Fix deprecation warning suggestion.

5.6.1

  • Fix handling of __version__ on Python 3.7.

5.6.0

  • Fix docs and type annotations for validator.normalize.
  • Switch to hatch build backend.

5.5.0

The biggest change in nbformat 5.5.0 is the deprecation of arguments to validate() that try to fix notebook errors during validation.

validate() is a function that is core to the security model of Jupyter. Callers rely on it not mutating its argument or trying to fix the notebook passed to it.

Automatically fixing a notebook during validation can hide subtle bugs. The auto-fixing arguments are therefore deprecated and will be removed in a future release; validation will fail instead of silently modifying an invalid notebook.

Use normalize() explicitly when a notebook from an external source needs to be repaired before validation. It returns a normalized copy and the number of changes made:

from nbformat.validator import normalize

changes, normalized = normalize(notebook)
nbformat.validate(normalized)

The preferred approach is still to generate valid notebooks at the source; normalization is a compatibility tool, not a substitute for fixing the producer.

Other changes

  • nbformat is now built with flit, and uses pyproject.toml
  • Documentation and Deprecations have been updated with version number and stack levels.

5.4.0

  • Add project URLs to setup.py
  • Fix import in nbformat.current
  • Add mypy and typings support
  • Improve CI

5.3.0

  • Use fastjsonschema by default
  • Adopt pre-commit and auto-formatters
  • Increase minimum jsonschema to 2.6, handle warnings

5.2.0

  • Add ability to capture validation errors
  • Update supported python versions
  • Ensure nbformat minor version is present when upgrading
  • Only fix cell ID validation issues if asked
  • Return the notebook when no conversion is needed
  • Catch AttributeErrors stemming from ipython_genutils as ValidationErrors on read
  • Don't list pytest-cov as a test dependency
  • Remove dependency on IPython genutils
  • Include tests in sdist but not wheel

5.1.3

  • Change id generation to be hash based to avoid problematic word combinations
  • Added tests for python 3.9
  • Fixed setup.py build operations to include package data

5.1.2

  • Fixed missing file in manifest

5.1.1

  • Changes convert.upgrade to upgrade minor 4.x versions to 4.5

5.1.0

  • Implemented CellIds from JEP-62
  • Fixed a regression introduced when using fastjsonschema, which does not directly support to validate a "reference"/"subschema"
  • Removed unreachable/unneeded code
  • Added CI workflow for package release on tag push

5.0.8

  • Add optional support for using [fastjsonschema]{.title-ref} as the JSON validation library. To enable fast validation, install [fastjsonschema]{.title-ref} and set the environment variable [NBFORMAT_VALIDATOR]{.title-ref} to the value [fastjsonschema]{.title-ref}.

5.0.7

  • Fixed a bug where default values for validator.get_validator() failed with an import error

5.0.6

  • nbformat.read() function has a better duck-type interface and will raise more meaningful error messages if it can't parse a notebook document.

5.0.5

  • Allow notebook format 4.0 and 4.1 to have the arbitrary JSON mimebundles from format 4.2 for pragmatic purposes.
  • Support reading/writing path-like objects has been added to read operations.

5.0.4

  • Fixed issue causing python 2 to pick up 5.0.x releases.

5.0.3

  • Removed debug print statements from project.

5.0.2

  • Added schema validation files for older versions. This was breaking notebook generation.

5.0.1

5.0

5.0 on GitHub

  • Starting with 5.0, nbformat is now Python 3 only (>= 3.5)
  • Add execution timings in code cell metadata for v4 spec. "metadata": { "execution": {...}} should be populated with kernel-specific timing information.
  • Documentation for how markup is used in notebooks added
  • Link to json schema docs from format page added
  • Documented the editable metadata flag
  • Update description for collapsed field
  • Documented notebook format versions 4.0-4.3 with accurate json schema specification files
  • Clarified info about name's meaning for cells
  • Added a default execution_count of None for new_output_cell('execute_result')
  • Added support for handling nbjson kwargs
  • Wheels now correctly have a LICENSE file
  • Travis builds now have a few more execution environments

4.4

4.4 on GitHub

  • Explicitly state that metadata fields can be ignored.
  • Introduce official jupyter namespace inside metadata (metadata.jupyter).
  • Introduce source_hidden and outputs_hidden as official front-end metadata fields to indicate hiding source and outputs areas. NB: These fields should not be used to hide elements in exported formats.
  • Fix ending the redundant storage of signatures in the signature database.
  • nbformat.validate can be set to not raise a ValidationError if additional properties are included.
  • Fix for errors with connecting and backing up the signature database.
  • Dict-like objects added to NotebookNode attributes are now transformed to be NotebookNode objects; transformation also works for [.update()]{.title-ref}.

4.3

4.3 on GitHub

  • A new pluggable SignatureStore class allows specifying different ways to record the signatures of trusted notebooks. The default is still an SQLite database. See pluggable_signature_store for more information.
  • nbformat.read and nbformat.write accept file paths as bytes as well as unicode.
  • Fix for calling nbformat.validate on an empty dictionary.
  • Fix for running the tests where the locale makes ASCII the default encoding.
  • Include nbformat-schema files (v3 and v4) in nbformat-schema npm package.
  • Include configuration for appveyor's continuous integration service.

4.2

4.2.0

4.2 on GitHub

  • Update nbformat spec version to 4.2, allowing JSON outputs to have any JSONable type, not just object, and mime-types of the form application/anything+json.
  • Define basics of authors in notebook metadata. nb.metadata.authors shall be a list of objects with the property name, a string of each author's full name.
  • Update use of traitlets API to require traitlets 4.1.
  • Support trusting notebooks on stdin with cat notebook | jupyter trust

4.1

4.1.0

4.1 on GitHub

  • Update nbformat spec version to 4.1, adding support for attachments on markdown and raw cells.
  • Catch errors opening trust database, falling back on :memory: if the database cannot be opened.

4.0

4.0 on GitHub

The first release of nbformat as its own package.