Bob renders directory structure templates
Project description
**Mister Bob the Builder** creates directory skeletons.
Documentation
=============
http://mrbob.readthedocs.org/
TODO
====
- [medium] refactor Python API
- [medium] gittip
- [medium] add +var+ folder in template_sample
- [medium] Check how one would implement multi-namespace python package with current mr.bob api
- [low] Ability to configure what to ignore when copying templates in bobconfig (as a hook?)
- [low] better format print questions output (keep order of questions -> use order information like for asking questions)
- [low] document we don't need local commands once answers are remembered (just issue another template on top of current)
- [low] ability to specify variables/defaults to questions from cli
- [maybe] ability to simulate rendering (dry-run)
- [maybe] ability to update/patch templates
Changelog
=========
0.2 (unreleased)
----------------
- Nothing changed yet.
0.1.1 (2014-03-03)
------------------
- Claim Python 3.4 support
[Domen Kožar]
- Fix encoding errors on Python 3 during installation
[Domen Kožar]
- Use Jinja2 < 2.7 only for python 3.2
[Domen Kožar]
0.1 (2014-03-02)
----------------
- move exceptions to bobexceptions
[Jean-Philippe Camguilhem]
- Use jinja2 < 2.7, since 2.7+ doesn't support Python 3.2
[Domen Kožar]
- Filename variable name substitution regex failed to compile on windows
[Domen Kožar]
- Do not copy ``.DS_Store``.
[Godefroid Chapelle]
- Configure patterns of files to ignore through
``ignored_files`` option of ``mr.bob`` section.
[Godefroid Chapelle]
- Configure patterns of directories to ignore through
``ignored_directories`` option of ``mr.bob`` section.
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.to_integer``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.to_decimal``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.validate_choices``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.validate_regex``
[Fotis Gimian]
- Added new pre-question hook ``mrbob.hooks.set_current_datetime``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.validate_datetime``
[Fotis Gimian]
0.1a9 (2013-04-26)
------------------
- Regex to detect variable names when rendering file names was broken when
directory path contains pluses.
[Godefroid Chapelle]
0.1a8 (2013-03-11)
------------------
- Depend on six>=1.2.0
[Domen Kožar]
- Moved all exceptions to `mrbob.exceptions` module
[Domen Kožar]
- Fix loading of zip files
[Domen Kožar]
- #28: Remote loading of config files
[Nejc Zupan]
- #30: Keep newlines of rendered template
[Domen Kožar]
0.1a7 (2013-01-23)
------------------
- Don't depend on argparse in python 2.7 and higher, since it's already
in stdlib
[Domen Kožar]
- #22: Prevent users from specifying target directory inside template dir
[Domen Kožar]
0.1a6 (2013-01-02)
------------------
- Use ``StrictUndefined`` with jinja2 renderer so that any missing key is
reported as an error
[Domen Kožar]
- If a key in a namespace was missing while rendering, no error was raised
[Domen Kožar]
- Added hook ``mrbob.hooks.show_message``
[Domen Kožar]
- ``mrbob.validators.boolean`` renamed to ``mrbob.hooks.to_boolean``
[Domen Kožar]
- Renamed ``validators.py`` to ``hooks.py``
[Domen Kožar]
- Removed ``validators`` and ``action`` settings from ``[questions]`` as it is
superseded by hooks
[Domen Kožar]
- Added ``pre_ask_question`` and ``post_ask_question`` to ``[questions]`` section
[Domen Kožar]
- Added ``pre_render``, ``post_render`` and ``post_render_msg`` options
[Domen Kožar]
- Added ``[defaults]`` section that will override template defaults. The only
difference to ``[variables]`` is that variables provide default answers
[Domen Kožar]
- Moved ``renderer`` parameter to ``[template]`` section
[Domen Kožar]
- Added ``[template]`` section that is parsed only from ``.mrbob.ini`` inside a
template directory.
[Domen Kožar]
- Correctly evaluate boolean of ``quiet`` and ``verbose`` settings
[Domen Kožar]
- Added ``non_interactive`` setting that will not prompt for any input and fail
if any of required questions are not answered
[Domen Kožar]
- Added ``remember_answers`` setting that will create ``.mrbob.ini`` file inside
rendered directory with all the answers written to ``[variables]`` section
[Domen Kožar]
- Include changelog in documentation
[Domen Kožar]
- ``Question`` does no longer raise error if unknown parameter is passed from a
config file. Instead those parameters are saved to ``question.extra`` that can
be later inspected and validated. This is first step to have advanced question
types such as question with a set of predefined answers
[Domen Kožar]
- Rewrite all py.test stuff to nosetests, so we have unified testing now. This
also fixes flake8 segfaults on pypy
[Domen Kožar]
0.1a5 (2012-12-12)
------------------
- #26: Variables were not correctly parsed from config files
[Domen Kožar]
0.1a4 (2012-12-11)
------------------
- Fix MANIFEST.in so that template examples are also included with distribution
[Domen Kožar]
- Add -q/--quiet option to suppress output which isn't strictly necessary
[Sasha Hart]
- Suppress the interactive-mode welcome banner if there are no questions to ask
[Sasha Hart]
- Don't raise KeyError: 'questions_order' if [questions] is missing in an ini
[Sasha Hart]
0.1a3 (2012-11-30)
------------------
- #13: Read user config from ~/.mrbob (as stated in docs and inline comments).
[Andreas Kaiser]
0.1a2 (2012-11-29)
------------------
- #12: Fix unicode errors when using non-ASCII in questions or defaults
[Domen Kožar]
- Ask questions in same order they were
defined in template configuration file
[Domen Kožar]
0.1a1 (2012-10-19)
------------------
- Initial release.
[Domen Kožar, Tom Lazar]
Documentation
=============
http://mrbob.readthedocs.org/
TODO
====
- [medium] refactor Python API
- [medium] gittip
- [medium] add +var+ folder in template_sample
- [medium] Check how one would implement multi-namespace python package with current mr.bob api
- [low] Ability to configure what to ignore when copying templates in bobconfig (as a hook?)
- [low] better format print questions output (keep order of questions -> use order information like for asking questions)
- [low] document we don't need local commands once answers are remembered (just issue another template on top of current)
- [low] ability to specify variables/defaults to questions from cli
- [maybe] ability to simulate rendering (dry-run)
- [maybe] ability to update/patch templates
Changelog
=========
0.2 (unreleased)
----------------
- Nothing changed yet.
0.1.1 (2014-03-03)
------------------
- Claim Python 3.4 support
[Domen Kožar]
- Fix encoding errors on Python 3 during installation
[Domen Kožar]
- Use Jinja2 < 2.7 only for python 3.2
[Domen Kožar]
0.1 (2014-03-02)
----------------
- move exceptions to bobexceptions
[Jean-Philippe Camguilhem]
- Use jinja2 < 2.7, since 2.7+ doesn't support Python 3.2
[Domen Kožar]
- Filename variable name substitution regex failed to compile on windows
[Domen Kožar]
- Do not copy ``.DS_Store``.
[Godefroid Chapelle]
- Configure patterns of files to ignore through
``ignored_files`` option of ``mr.bob`` section.
[Godefroid Chapelle]
- Configure patterns of directories to ignore through
``ignored_directories`` option of ``mr.bob`` section.
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.to_integer``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.to_decimal``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.validate_choices``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.validate_regex``
[Fotis Gimian]
- Added new pre-question hook ``mrbob.hooks.set_current_datetime``
[Fotis Gimian]
- Added new post-question hook ``mrbob.hooks.validate_datetime``
[Fotis Gimian]
0.1a9 (2013-04-26)
------------------
- Regex to detect variable names when rendering file names was broken when
directory path contains pluses.
[Godefroid Chapelle]
0.1a8 (2013-03-11)
------------------
- Depend on six>=1.2.0
[Domen Kožar]
- Moved all exceptions to `mrbob.exceptions` module
[Domen Kožar]
- Fix loading of zip files
[Domen Kožar]
- #28: Remote loading of config files
[Nejc Zupan]
- #30: Keep newlines of rendered template
[Domen Kožar]
0.1a7 (2013-01-23)
------------------
- Don't depend on argparse in python 2.7 and higher, since it's already
in stdlib
[Domen Kožar]
- #22: Prevent users from specifying target directory inside template dir
[Domen Kožar]
0.1a6 (2013-01-02)
------------------
- Use ``StrictUndefined`` with jinja2 renderer so that any missing key is
reported as an error
[Domen Kožar]
- If a key in a namespace was missing while rendering, no error was raised
[Domen Kožar]
- Added hook ``mrbob.hooks.show_message``
[Domen Kožar]
- ``mrbob.validators.boolean`` renamed to ``mrbob.hooks.to_boolean``
[Domen Kožar]
- Renamed ``validators.py`` to ``hooks.py``
[Domen Kožar]
- Removed ``validators`` and ``action`` settings from ``[questions]`` as it is
superseded by hooks
[Domen Kožar]
- Added ``pre_ask_question`` and ``post_ask_question`` to ``[questions]`` section
[Domen Kožar]
- Added ``pre_render``, ``post_render`` and ``post_render_msg`` options
[Domen Kožar]
- Added ``[defaults]`` section that will override template defaults. The only
difference to ``[variables]`` is that variables provide default answers
[Domen Kožar]
- Moved ``renderer`` parameter to ``[template]`` section
[Domen Kožar]
- Added ``[template]`` section that is parsed only from ``.mrbob.ini`` inside a
template directory.
[Domen Kožar]
- Correctly evaluate boolean of ``quiet`` and ``verbose`` settings
[Domen Kožar]
- Added ``non_interactive`` setting that will not prompt for any input and fail
if any of required questions are not answered
[Domen Kožar]
- Added ``remember_answers`` setting that will create ``.mrbob.ini`` file inside
rendered directory with all the answers written to ``[variables]`` section
[Domen Kožar]
- Include changelog in documentation
[Domen Kožar]
- ``Question`` does no longer raise error if unknown parameter is passed from a
config file. Instead those parameters are saved to ``question.extra`` that can
be later inspected and validated. This is first step to have advanced question
types such as question with a set of predefined answers
[Domen Kožar]
- Rewrite all py.test stuff to nosetests, so we have unified testing now. This
also fixes flake8 segfaults on pypy
[Domen Kožar]
0.1a5 (2012-12-12)
------------------
- #26: Variables were not correctly parsed from config files
[Domen Kožar]
0.1a4 (2012-12-11)
------------------
- Fix MANIFEST.in so that template examples are also included with distribution
[Domen Kožar]
- Add -q/--quiet option to suppress output which isn't strictly necessary
[Sasha Hart]
- Suppress the interactive-mode welcome banner if there are no questions to ask
[Sasha Hart]
- Don't raise KeyError: 'questions_order' if [questions] is missing in an ini
[Sasha Hart]
0.1a3 (2012-11-30)
------------------
- #13: Read user config from ~/.mrbob (as stated in docs and inline comments).
[Andreas Kaiser]
0.1a2 (2012-11-29)
------------------
- #12: Fix unicode errors when using non-ASCII in questions or defaults
[Domen Kožar]
- Ask questions in same order they were
defined in template configuration file
[Domen Kožar]
0.1a1 (2012-10-19)
------------------
- Initial release.
[Domen Kožar, Tom Lazar]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mr.bob2-0.2.3.tar.gz
(50.1 kB
view details)
File details
Details for the file mr.bob2-0.2.3.tar.gz
.
File metadata
- Download URL: mr.bob2-0.2.3.tar.gz
- Upload date:
- Size: 50.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3a505cd92664795e8ebe26955dba3a83ba44ab4b8539f255101f05c3f86d2376 |
|
MD5 | 0f19547c0b3b874c9caed4b0c4bb1f62 |
|
BLAKE2b-256 | 7f4cbe579dc311e76791b75c3d45df7c4c2a2cc1d0379c2aca66f98976bd8888 |