Skip to content

Commit 6c63489

Browse files
authored
Feature/changelog (#193)
* feat(changelog): Generated a CHANGELOG.md using github_changelog_generator and edited for upcoming version to be more insightful * fix(changelog): GitHub doesn't display style in .md files. Replaced with red unicode symbol * fix(readme): Added a line to the Contribute section to encourage keeping the changelog up-to-date * fix(changelog, readme): Implemented code review suggestions * fix(changelog): Added 'Full Changelog' link under the 0.3.0 version section * fix(changelog): Cleaned up older versions, ready for release * fix(changelog, readme): Review suggestions * fix(changelog): Removed comment * fix(changelog): Small addition * fix(changelog): Date update * fix(changelog): Date update
1 parent d0410ee commit 6c63489

File tree

2 files changed

+87
-4
lines changed

2 files changed

+87
-4
lines changed

CHANGELOG.md

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# Changelog
2+
3+
Darts is still in an early development phase and we cannot always guarantee backwards compatibility. Changes that may **break code which uses a previous release of Darts** are marked with a "🔴".
4+
5+
## [Unreleased](https://github.com/unit8co/darts/tree/develop)
6+
7+
[Full Changelog](https://github.com/unit8co/darts/compare/0.3.0...develop)
8+
9+
## [0.3.0](https://github.com/unit8co/darts/tree/0.3.0) (2020-10-05)
10+
11+
[Full Changelog](https://github.com/unit8co/darts/compare/0.2.3...0.3.0)
12+
13+
### For users of the library:
14+
**Added:**
15+
16+
- Better indexing on TimeSeries (support for column/component indexing) [\#150](https://github.com/unit8co/darts/pull/150)
17+
- New `FourTheta` forecasting model [\#123](https://github.com/unit8co/darts/pull/123), [\#156](https://github.com/unit8co/darts/pull/156)
18+
- `map()` method for TimeSeries [\#121](https://github.com/unit8co/darts/issues/121), [\#166](https://github.com/unit8co/darts/pull/166)
19+
- Further improved the backtesting functions [\#111](https://github.com/unit8co/darts/pull/111):
20+
- Added support for multivariate TimeSeries and models
21+
- Added `retrain` and `stride` parameters
22+
- Custom style for matplotlib plots [\#191](https://github.com/unit8co/darts/pull/191)
23+
- sMAPE metric [\#129](https://github.com/unit8co/darts/pull/129)
24+
- Option to specify a `random_state` at model creation using the `@random_method` decorator on models using neural networks to allow reproducibility of results [\#118](https://github.com/unit8co/darts/pull/118)
25+
26+
**Changed:**
27+
28+
- 🔴 **Refactored backtesting** [\#184](https://github.com/unit8co/darts/pull/184)
29+
- Moved backtesting functionalities inside `ForecastingModel` and `RegressionModel`
30+
```python
31+
# old syntax:
32+
backtest_forecasting(forecasting_model, *args, **kwargs)
33+
34+
# new syntax:
35+
forecasting_model.backtest(*args, **kwargs)
36+
37+
# old syntax:
38+
backtest_regression(regression_model, *args, **kwargs)
39+
40+
# new syntax:
41+
regression_model.backtest(*args, **kwargs)
42+
```
43+
- Consequently removed the `backtesting` module
44+
- 🔴 `ForecastingModel` `fit()` **method syntax** using TimeSeries indexing instead of additional parameters [\#161](https://github.com/unit8co/darts/pull/161)
45+
```python
46+
# old syntax:
47+
multivariate_model.fit(multivariate_series, target_indices=[0, 1])
48+
49+
# new syntax:
50+
multivariate_model.fit(multivariate_series, multivariate_series[["0", "1"]])
51+
52+
# old syntax:
53+
univariate_model.fit(multivariate_series, component_index=2)
54+
55+
# new syntax:
56+
univariate_model.fit(multivariate_series["2"])
57+
```
58+
59+
**Fixed:**
60+
- Solved issue of TorchForecastingModel.predict(n) throwing an error at n=1. [\#108](https://github.com/unit8co/darts/pull/108)
61+
- Fixed MASE metrics [\#129](https://github.com/unit8co/darts/pull/129)
62+
- \[BUG\] ForecastingModel.backtest: Can bypass sanity checks [\#188](https://github.com/unit8co/darts/issues/188)
63+
- ForecastingModel.backtest\(\) fails if forecast\_horizon isn't provided [\#186](https://github.com/unit8co/darts/issues/186)
64+
65+
### For developers of the library
66+
67+
**Added:**
68+
- Gradle to build docs, docker image, run tests, … [\#112](https://github.com/unit8co/darts/pull/112), [\#127](https://github.com/unit8co/darts/pull/127), [\#159](https://github.com/unit8co/darts/pull/159)
69+
- M4 competition benchmark and notebook to the examples [\#138](https://github.com/unit8co/darts/pull/138)
70+
- Check of test coverage [\#141](https://github.com/unit8co/darts/pull/141)
71+
72+
**Changed:**
73+
- Dependencies' versions are now fixed [\#173](https://github.com/unit8co/darts/pull/173)
74+
- Workflow: tests trigger on Pull Request [\#165](https://github.com/unit8co/darts/pull/165)
75+
76+
**Fixed:**
77+
- Passed the `freq` parameter to the `TimeSeries` constructor in all TimeSeries generating functions [\#157](https://github.com/unit8co/darts/pull/157)
78+
79+
## Older releases
80+
81+
[Full Changelog](https://github.com/unit8co/darts/compare/f618c4536bf7ed6e3b6a2239fbca4e3089736426...0.2.3)

README.md

+6-4
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ from R2-scores to Mean Absolute Scaled Error.
9898
**Backtesting:** Utilities for simulating historical forecasts, using moving time windows.
9999

100100
**Regressive Models:** Possibility to predict a time series from several other time series
101-
(e.g., external regressors), using arbitrary regressive models.
101+
(e.g., external regressors), using arbitrary regressive models
102102

103103
**Multivariate Support:** Tools to create, manipulate and forecast multivariate time series.
104104

@@ -122,8 +122,10 @@ Before working on a contribution (a new feature or a fix) make sure you can't fi
122122
*
123123
* Work on your update
124124
6. Check that your code pass the tests / design new unit tests: `python -m unittest`.
125-
7. Verify your tests coverage with `./coverage.sh` (additionaly you can generate xml report and use VSCode Coverage gutter to identify untested lines with `./coverage.sh xml`).
126-
8. Create a pull request from your new branch to the **develop** branch.
125+
7. Verify your tests coverage by running `./gradlew coverageTest`
126+
* Additionally you can generate an xml report and use VSCode Coverage gutter to identify untested lines with `./coverage.sh xml`
127+
8. If your contribution introduces a significant change, add it to `CHANGELOG.md` under the "Unreleased" section.
128+
9. Create a pull request from your new branch to the **develop** branch.
127129

128130
## Contact Us
129131

@@ -137,7 +139,7 @@ Some of the models depend on `fbprophet` and `torch`, which have non-Python depe
137139
A Conda environment is thus recommended because it will handle all of those in one go.
138140

139141
The following steps assume running inside a conda environment.
140-
If that's not possible, first follow the official instructions to install
142+
If that's not possible, first follow the official instructions to install
141143
[fbprophet](https://facebook.github.io/prophet/docs/installation.html#python)
142144
and [torch](https://pytorch.org/get-started/locally/), then skip to
143145
[Install darts](#install-darts)

0 commit comments

Comments
 (0)