We closed 5 issues and merged 115 pull requests. The full list can be seen on GitHub

The following 34 authors contributed 465 commits.

- Adam Chainz

- Albert Zeyer

- Aliaksei Urbanski

- Benjamin Ragan-Kelley

- Carol Willing

- Christian Clauss

- Conner Cowling

- Dan Allan

- David Brochart

- Francisco de la Peña

- Frédéric Chapoton

- Hans Moritz Günther

- Jake VanderPlas

- Jason Grout

- Jeroen Demeyer

- Kevin Bates

- Kostis Anagnostopoulos

- Kyle Kelley

- Leo Gallucci

- Leonardo Uieda

- Lumir Balhar

- maartenbreddels

- martinRenou

- Matthias Bussonnier

- Ryan Morshead

- Sylvain Corlay

- Thomas Aarholt

- Thomas Kluyver

- Tim Paine

- Todd

- Travis DePrato

- Vidar Tonaas Fauske

- William Krinsman

- Yves Delley

GitHub issues and pull requests:

Pull Requests (115):

- PR #576: more removal of Python 2 specificity

- PR #575: finish first pass on whats new

- PR #574: more version_info removal

- PR #573: Some removal of Python 2 compatibility (in particular six)

- PR #572: review a few more PRs.

- PR #570: review more PRs changelog and reorder

- PR #571: remove PY2 compat + isort + pyupgrade + darker

- PR #567: fixup changelog

- PR #566: Changelog part 1

- PR #565: Fix doc formatting.

- PR #563: Stop testing traittypes which fails.

- PR #562: Travis CI: Fix Travis build configuration validation issues

- PR #561: Travis CI: Run tests on Python 3.8, not 3.7

- PR #543: Travis CI: Test the current versions of Python

- PR #531: Update myapp.py

- PR #546: Export Bunch

- PR #547: Unpin Python 3.5 for docs

- PR #559: Start testing on current Python versions.

- PR #556: add callable test for master

- PR #542: typo

- PR #515: Add trait-names autocompletion support

- PR #529: Minor addition to docs

- PR #528: Fix formatting.

- PR #526: Fix tests for ipywidgets

- PR #525: Fix backward compatibility and tests

- PR #522: Expose loaded config files, make load idempotent

- PR #524: Fix SyntaxWarning: “is” with a literal.

- PR #523: DOC: Add Callable to docs.

- PR #509: do not catch system exceptions like KeyboardInterrupt

- PR #501: Preserve Class Repr After `add_traits`

- PR #517: Use log from parent in LoggingConfigurable.

- PR #516: Fix CI

- PR #510: remove one useless return line

- PR #493: Include LICENSE file in wheels

- PR #491: Add missing `default` import to run the example

- PR #489: Update link to enthought trait library

- PR #484: Add imports to “Using Traitlets” docs

- PR #482: Fix copy(HasTraits) by copying `_trait_values` dict

- PR #483: Appveyor has started failing when upgrading `pip`

- PR #473: test some downstream projects

- PR #464: Drop dependency on decorator package

- PR #462: drop Python 3.3, update to use 3.6

- PR #458: Add Sphinx extension and autogen function for documenting config options

- PR #453: Remove extra backtics from class link

- PR #407: fix flags & aliases with the same name

- PR #438: fix(help): finish #381 for RsT to print enum-choices

- PR #393: Link tranform

- PR #440: Fix getting class for deprecation warning

- PR #436: Fix overriding `_trait_default` method

- PR #437: Don’t call notify_change with non-change events

- PR #434: disable cross-validation of defaults

- PR #413: Has Trait Value Method

- PR #416: whitelist traitlets exports

- PR #426: Explain the casing/substring matching of Enums on help-msgs and errors

- PR #424: refact(log): consolidate some duplicate log statements

- PR #430: Fix parsing of deprecated list options failing with empty strings

- PR #433: fix(help): a yield had been forgotten from #405

- PR #422: fix(help): minor typo in print_examples()

- PR #420: BUG: remove redundant call to List.validate_elements

- PR #418: remove incorrect version arg from json config doc

- PR #415: follow mro for trait default generators

- PR #414: fix instance error message

- PR #402: Better Errors for Nested Traits

- PR #405: feat(app): provide help-functions also as generators of text-lines

- PR #406: update pip before install

- PR #404: Tell about help-all last.

- PR #371: New FuzzyEnum trait that matches case-insensitive prefixes/substrings

- PR #392: style(cfg): apply review items in #385 for gen-config

- PR #384: add `trait_values` method

- PR #399: test on appveyor

- PR #391: Suppress Redundant Configurable Validation

- PR #341: add Application.show_config[_json]

- PR #396: Ensure config loader tests include unicode

- PR #394: Add link method to link and dlink

- PR #398: explain which singleton is already instanciated

- PR #385: generate all config, not just new traits on each class

- PR #383: notify on default creation

- PR #381: feat(cfg): write also enum choices when generating config.py files

- PR #257: [WIP] make This inherit from Instance and add ThisType

- PR #380: feat(app): iterate Configurable base-classes for non `app.classes` lists

- PR #368: README: Addd links-table from index, improve opening

- PR #365: FIX: KVConfigLoader could not handle lone dashes(‘-’) as extra arguments

- PR #364: Re-enable TC-code for subcmds forgotten by #362

- PR #367: Fix a bug in TraitType.default

- PR #362: Support callable subcommands

- PR #361: help: Alias overriding help-text (like flags), options list human-help before automated infos

- PR #360: Add factory method on Application for customizing the Loader parsing cmd-line args

- PR #354: Improve generated help and config messages

- PR #359: Pin docs build to Python 3.5

- PR #356: Allow “cls” and “self” as keyword argument in __new__

- PR #346: invert class/instance initialize priority in union “subtraits”

- PR #347: test union valdiation priority

- PR #353: Don’t warn about correctly decorated default-value generators

- PR #355: Merge class config dicts when flattening flags

- PR #350: further clarify Dict docstring

- PR #306: added a key_trait argument to Dict

- PR #340: reintroduce deprecated support for old-style container args

- PR #338: [proposal] Make new argparse container CLI opt-in

- PR #349: Consolidated TraitType Defaults Into One Generator

- PR #343: Any should allow None by default

- PR #332: Create All Default Values With Generators

- PR #337: Enable deprecation warnings during test-suite.

- PR #339: nicer repr of LazyConfigValues

- PR #333: Add a Callable Trait

- PR #322: Use argparse to configure container-traits from command-line

- PR #331: Update examples to use an IPython config option which still exists

- PR #330: Convert readthedocs links for their .org -> .io migration for hosted projects

- PR #329: setup.py - set url to github repo

- PR #319: app: support flags/aliases given as (–long, -short) tuple

- PR #320: docs: Move changelog as /CHANGES.rst

- PR #324: Add more cross-validation examples

- PR #323: use simpler callable check for meta_eval

- PR #316: Test on nightly and allow_failure.

- PR #299: casting traits inherit from mixin

- PR #311: use pip_install in readthedocs.yml

Issues (5):

- #287: Default values are not cross-validated with `@validation`

- #363: Traitlets master breaks ipywidgets

- #417: buggy recommendation for version param in json config traitlets/docs/source/config.rst

- #342: Test failures in jack-of-none

- #256: how to extend dynamic defaults with super