-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
Hey @cookiecutter 👋 ,
I think we should start to talks about 2.0.1.
We have more than a year of unreleased contributions with some breaking changes (python 2, pyyaml, etc) so the next release will be a major 🎉 and will be huge!
Let's start with sweet things...
Changes
Breaking Changes
- Replace poyo with pyyaml. (Replace poyo with pyyaml. #1489) @dHannasch
- Added: Path templates will be rendered when copy_without_render used (Added: Path templates will be rendered when copy_without_render used #839) @noirbizarre
- Added: End of line detection and configuration. (Added: End of line detection and configuration. #1407) @insspb
- Remove support for python2.7 (Remove support for python2.7 #1386) @ssbarnea
- allow jinja 3.0.0 (allow jinja 3.0.0 #1548) @wouterdb
Minor Changes
- Log the error message when git clone fails, not just the return code (Log the error message when git clone fails, not just the return code #1505) @logworthy
- Added uuid extension to be able to generate uuids (Added uuid extension to be able to generate uuids #1493) @jonaswre
- Alert user if choice is invalid (Alert user if choice is invalid #1496) @dHannasch
- update AUTHOR lead (update AUTHOR lead #1532) @HosamAlmoghraby
- Add Python 3.9 (Add Python 3.9 #1478) @gliptak
- Added: --list-installed cli option, listing already downloaded cookiecutter packages (Added: --list-installed cli option, listing already downloaded cookiecutter packages #1096) @chrisbrake
- Added: Jinja2 Environment extension on files generation stage (Added: Jinja2 Environment extension on files generation stage #1419) @insspb
- Added: --replay-file cli option, for replay file distributing (Added: --replay-file cli option, for replay file distributing #906) @Cadair
- Added: _output_dir to cookiecutter context (Added: _output_dir to cookiecutter context #1034) @Casyfill
- Added: CLI option to ignore hooks (Added: CLI option to ignore hooks #992) @rgreinho
- Changed: Generated projects can use multiple type hooks at same time. (sh + py) (Changed: Generated projects can use multiple type hooks at same time. (sh + py) #974) @milonimrod
- Added: Path templates will be rendered when copy_without_render used (Added: Path templates will be rendered when copy_without_render used #839) @noirbizarre
- Making code python 3 only: Remove python2 u' sign, fix some strings (Making code python 3 only: Remove python2 u' sign, fix some strings #1402) @insspb
- py3: remove futures, six and encoding (py3: remove futures, six and encoding #1401) @insspb
- Render variables starting with an underscore. (Render variables starting with an underscore. #1339) @smoothml
- Tests refactoring: test_utils write issues fixed Tests refactoring: writing outside of temp dir #1405 (Tests refactoring: test_utils write issues fixed #1405 #1406) @insspb
CI/CD and QA changes
- Replace tmpdir in favour of tmp_path (Replace tmpdir in favour of tmp_path #1545) @SharpEdgeMarshall
- Fix linting in CI (Fix linting in CI #1546) @SharpEdgeMarshall
- Coverage 100% (Coverage 100% #1526) @SharpEdgeMarshall
- Run coverage with matrix (Run coverage with matrix #1521) @SharpEdgeMarshall
- Lint rst files (Lint rst files #1443) @ssbarnea
- Python3: Changed io.open to build-in open (PEP3116) (Python3: Changed io.open to build-in open (PEP3116) #1408) @insspb
- Making code python 3 only: Remove python2 u' sign, fix some strings (Making code python 3 only: Remove python2 u' sign, fix some strings #1402) @insspb
- py3: remove futures, six and encoding (py3: remove futures, six and encoding #1401) @insspb
- Removed: Bumpversion, setup.py arguments. (Removed: Bumpversion, setup.py arguments. #1404) @insspb
- Tests refactoring: test_utils write issues fixed Tests refactoring: writing outside of temp dir #1405 (Tests refactoring: test_utils write issues fixed #1405 #1406) @insspb
- Added: Automatic PyPI deploy on tag creation (Added: Automatic PyPI deploy on tag creation #1400) @insspb
- Changed: Restored coverage reporter (Changed: Restored coverage reporter #1399) @insspb
Documentation updates
- Fix pull requests checklist reference (Fix pull requests checklist reference #1537) @glumia
- Fix author name (Fix author name #1544) @HosamAlmoghraby
- Add missing contributors (Add missing contributors #1535) @glumia
- Update CONTRIBUTING.md (Update CONTRIBUTING.md #1529) @glumia
- Update LICENSE (Update LICENSE #1519) @simobasso
- docs: rewrite the conditional files / directories example description. (docs: rewrite the conditional files / directories example description. #1437) @lyz-code
- Fix incorrect years in release history (Fix incorrect years in release history #1473) @graue70
- Add slugify in the default extensions list (Add slugify in the default extensions list #1470) @oncleben31
- Renamed cookiecutter.package to API (Renamed cookiecutter.package to API #1442) @grrlic
- Fixed wording detail (Fixed wording detail #1427) @steltenpower
- Changed: CLI Commands documentation engine (Changed: CLI Commands documentation engine #1418) @insspb
- Added: Example for conditional files / directories in hooks (Added: Example for conditional files / directories in hooks #1397) @xyb
- Changed: README.md PyPI URLs changed to the modern PyPI last version (Changed: README.md PyPI URLs changed to the modern PyPI last version #1391) @brettcannon
- Fixed: Comma in README.md (Fixed: Comma in README.md #1390) @Cy-dev-tex
- Fixed: Replaced no longer maintained pipsi by pipx (Fixed: Replaced no longer maintained pipsi by pipx #1395) @ndclt
Bugfixes
- Remove direct dependency on markupsafe (Remove direct dependency on markupsafe #1549) @ssbarnea
- fixes prompting private rendered dicts (fixes prompting private rendered dicts #1504) @juhuebner
- User's JSON parse error causes ugly Python exception User's JSON parse error causes ugly Python exception #809 (User's JSON parse error causes ugly Python exception #809 #1468) @noone234
- config: set default on missing default_context key (config: set default on missing default_context key #1516) @simobasso
- Fixed: Values encoding on Windows (Fixed: Values encoding on Windows #1414) @agateau
- Fixed: Fail with gitolite repositories (Fixed: Fail with gitolite repositories #1144) @javiersanp
- MANIFEST: Fix file name extensions (MANIFEST: Fix file name extensions #1387) @sebix
Deprecations
- Removed: Bumpversion, setup.py arguments. (Removed: Bumpversion, setup.py arguments. #1404) @insspb
This release is made by wonderful contributors:
@Cadair, @Casyfill, @Cy-dev-tex, @HosamAlmoghraby, @SharpEdgeMarshall, @agateau, @brettcannon, @chrisbrake, @dHannasch, @gliptak, @glumia, @graue70, @grrlic, @insspb, @javiersanp, @jonaswre, @juhuebner, @logworthy, @lyz-code, @milonimrod, @ndclt, @noirbizarre, @noone234, @oncleben31, @rgreinho, @sebix, @smoothml, @ssbarnea, @steltenpower, @wouterdb, @xyb, Christopher Wolfe and Hosam Almoghraby ( RIAG Digital )
Thank you all for the amazing work 🙏 !
The plan
There are 4 important breaking changes and tons of features, so I think we should take some extra care to tag this version:
- reduce the scope of 2.0.0: at the time of writing, we have 43 open issue/pull request, I have just created the milestone Next as a container for all contributions that are already in the plan but are not essential for this release.
- check the documentation and consider a migration guide, also can be a good chance to introduces the use of
- consider a release candidate of 2.0.0 to help maintainers to install and test a package instead of a master checkout.
- priority and all focus are on releasing 2.0.0 and closing bugs. we already released 1.7.3 (Thanks @ssbarnea 🙏 ) as a backport of a bugfix for dependencies, and no other intermediate tag (other than security patch and critical bugs) will be released.
What do you think about it?
Any contribution will be appreciated,
thanks 🚀 !