History
In Development (Master Branch)
Note: Up to July 9 only. Need to finish adding material.
Bug Fixes:
- Fixed the contributing file so it displays nicely in Github, thanks to @pydanny.
- Updates 2.6 requirements to include simplejson, thanks to @saxix.
- Avoid unwanted extra spaces in string literal, thanks to @merwok.
- Fix @unittest.skipIf error on Python 2.6.
- Let sphinx parse :param: properly by inserting newlines #213, thanks to @mineo.
- Fixed Windows test prompt failure by replacing stdin per @cjrh in #195.
- Made rmtree remove readonly files, thanks to @pfmoore.
- Now using tox to run tests on Appveyor, thanks to @pfmoore (#241).
- Fixed tests that assumed the system encoding was utf-8, thanks to @pfmoore (#242, #244).
- Added a tox ini file that uses py.test, thanks to @pfmoore (#245).
Other Changes:
- @audreyr formally accepted position as BDFL of cookiecutter.
- Elevated @pydanny, @michaeljoseph, and @pfmoore to core committer status.
- Added Core Committer guide, by @audreyr.
- Generated apidocs from make docs, by @audreyr.
- Added contributing command to the make docs function, by @pydanny.
- Refactored contributing documentation, included adding core committer instructions, by @pydanny and @audreyr.
- Do not convert input prompt to bytes, thanks to @uranusjr (#192).
- Added troubleshooting info about Python 3.3 tests and tox.
- Added documentation about command line arguments, thanks to @saxix.
- Style cleanups.
- Added environment variable to disable network tests for environments without networking, thanks to @vincentbernat.
- Added Appveyor support to aid Windows integrations, thanks to @pydanny (#215).
- CONTRIBUTING.rst is now generated via make contributing, thanks to @pydanny (#220).
- Removed unnecessary endoing argument to json.load, thanks to @pfmoore (#234).
- Now generating shell hooks dynamically for Unix/Windows portability, thanks to @pfmoore (#236).
- Removed non-portable assumptions about directory structure, thanks to @pfmoore (#238).
- Added a note on portability to the hooks documentation, thanks to @pfmoore (#239).
- Replaced unicode_open with direct use of io.open, thanks to @pfmoore (#229).
- Added more Cookiecutters to the list:
0.7.1 (2014-04-26)
Bug fixes:
- Use the current Python interpreter to run Python hooks, thanks to
@coderanger.
- Include tests and documentation in source distribution, thanks to
@vincentbernat.
- Fix various warnings and missing things in the docs (#129, #130),
thanks to @nedbat.
- Add command line option to get version (#89), thanks to @davedash
and @cyberj.
Other changes:
- Add more Cookiecutters to the list:
0.7.0 (2013-11-09)
This is a release with significant improvements and changes. Please read
through this list before you upgrade.
New features:
- Support for –checkout argument, thanks to @foobacca.
- Support for pre-generate and post-generate hooks, thanks to @raphigaziano.
Hooks are Python or shell scripts that run before and/or after your project
is generated.
- Support for absolute paths to cookiecutters, thanks to @krallin.
- Support for Mercurial version control system, thanks to @pokoli.
- When a cookiecutter contains invalid Jinja2 syntax, you get a better message
that shows the location of the TemplateSyntaxError. Thanks to @benjixx.
- Can now prompt the user to enter values during generation from a local
cookiecutter, thanks to @ThomasChiroux. This is now always the default
behavior. Prompts can also be supressed with –no-input.
- Your cloned cookiecutters are stored by default in your ~/.cookiecutters/
directory (or Windows equivalent). The location is configurable. (This is a
major change from the pre-0.7.0 behavior, where cloned cookiecutters were
deleted at the end of project generation.) Thanks @raphigaziano.
- User config in a ~/.cookiecutterrc file, thanks to @raphigaziano.
Configurable settings are cookiecutters_dir and default_context.
- File permissions are now preserved during project generation, thanks to
@benjixx.
Bug fixes:
- Unicode issues with prompts and answers are fixed, thanks to @s-m-i-t-a.
- The test suite now runs on Windows, which was a major effort. Thanks to
@pydanny, who collaborated on this with me.
Other changes:
- Quite a bit of refactoring and API changes.
- Lots of documentation improvements. Thanks @sloria, @alex, @pydanny,
@freakboy3742, @es128, @rolo.
- Better naming and organization of test suite.
- A CookiecutterCleanSystemTestCase to use for unit tests affected by the
user’s config and cookiecutters directory.
- Improvements to the project’s Makefile.
- Improvements to tests. Thanks @gperetin, @s-m-i-t-a.
- Removal of subprocess32 dependency. Now using non-context manager version
of subprocess.Popen for Python 2 compatibility.
- Removal of cookiecutter’s cleanup module.
- A bit of setup.py cleanup, thanks to @oubiga.
- Now depends on binaryornot 0.2.0.
0.6.4 (2013-08-21)
- Windows support officially added.
- Fix TemplateNotFound Exception on Windows (#37).
0.6.3 (2013-08-20)
- Fix copying of binary files in nested paths (#41), thanks to @sloria.
0.6.2 (2013-08-19)
- Depend on Jinja2>=2.4 instead of Jinja2==2.7.
- Fix errors on attempt to render binary files. Copy them over from the project
template without rendering.
- Fix Python 2.6/2.7 UnicodeDecodeError when values containing Unicode chars
are in cookiecutter.json.
- Set encoding in Python 3 unicode_open() to always be utf-8.
0.6.1 (2013-08-12)
- Improved project template finding. Now looks for the occurrence of {{,
cookiecutter, and }} in a directory name.
- Fix help message for input_dir arg at command prompt.
- Minor edge cases found and corrected, as a result of improved test coverage.
0.6.0 (2013-08-08)
- Config is now in a single cookiecutter.json instead of in json/.
- When you create a project from a git repo template, Cookiecutter prompts
you to enter custom values for the fields defined in cookiecutter.json.
0.5 (2013-07-28)
Friendlier, more simplified command line usage:
# Create project from the cookiecutter-pypackage/ template
$ cookiecutter cookiecutter-pypackage/
# Create project from the cookiecutter-pypackage.git repo template
$ cookiecutter https://github.com/audreyr/cookiecutter-pypackage.git
Can now use Cookiecutter from Python as a package:
from cookiecutter.main import cookiecutter
# Create project from the cookiecutter-pypackage/ template
cookiecutter('cookiecutter-pypackage/')
# Create project from the cookiecutter-pypackage.git repo template
cookiecutter('https://github.com/audreyr/cookiecutter-pypackage.git')
Internal refactor to remove any code that changes the working directory.
0.4 (2013-07-22)
- Only takes in one argument now: the input directory. The output directory
is generated by rendering the name of the input directory.
- Output directory cannot be the same as input directory.
0.3 (2013-07-17)
- Takes in command line args for the input and output directories.
0.2 (2013-07-17)
Bumped to “Development Status :: 3 - Alpha”.
- Works with any type of text file.
- Directory names and filenames can be templated.