This repository contains sktime's enhancement proposals.
A sktime enhacement proposal (or STEP in short) is a design document providing information to the sktime community, or describing a new feature for sktime. The proposal should provide a concise technical specification of the feature and a rationale for adopting it.
We intend STEPs to be the primary mechanisms for proposing major changes, for collecting community input on an issue, and for documenting the design decisions that have gone into sktime. Smaller changes can be discussed and implemented directly on sktime main repository.
For the general design principles and patterns followed in sktime, we refer to our paper: Designing ML Toolboxes: Concepts, Principles and Patterns.
STEPS are also described in our governance document.
To create a new STEP, please copy and use TEMPLATE.md
and open a pull request on this repository.
It is highly recommended that a single STEP contains a single key proposal or new idea. The more focused the proposal, the more successful it tends to be. If in doubt, split your STEP into several well-focused ones.
Enhancement proposals are common in the Python ecosystem, we have taken inspiration from Python Enhancement Proposals (PEP), scikit-learn's enhancement proposals, and astropy's enhancement proposals (APE) among others.