Skip to content

Changelog

0.13.1 (2024-05-05)

Compare the full difference.

Fixes

  • Fixed removing trees on windows. 98aa8e1
  • Fixed parseurl with windows path. 9d14ae4

    Was making the drive letter the scheme. - Fixed test PyPI upload. 7c59fc2

  • Fixed missing checkout in workflows. 95c9040
  • Fixed a typo in the workflows. aa8aed7
  • Fixed docstrings and doc rendering. 42f0392
  • Fixed cookiecutter update incompatibilities. 9132c3c

    • fixed version to 2.6.0
    • fixed outdated requirements management

    Other

  • Bump tqdm from 4.66.1 to 4.66.3 in /requirements. 94421a6

    Bumps tqdm from 4.66.1 to 4.66.3. - Release notes - Commits


    updated-dependencies: - dependency-name: tqdm dependency-type: direct:development

    signed-off-by: dependabot[bot] support@github.com

  • Migrated docs to use MkDocs. b4e7b57

Updates

  • Updated the GitHub workflows. 68a8602

0.13.0 (2024-02-10)

Compare the full difference.

Fixes

  • Fixed local git repo resolution. 115ed5f
  • Fixed dev versioning config. 6299c11
  • Fixed git worktree issue. e27636c

    • uses the correct git command depending on the parameters passed.
    • Fixed missing commit sha in test. c9997be
  • Fixed error handling with patching. f35864d
  • Fixed Exception handling for click. c481ad7
  • Fixed _copy_without_render bug. 4edc4bf
  • Fixed test type annotation. 4a4a7c0
  • Fixed rendering layers from previous commits. 0fefdbc
  • Fixed issue with generate_prompt_context. 4756660
  • Fixed issue with determining rendered layer names. 06bad39

    Added get_template_rendered_name to proactively determine the name of the rendered template. - Fixed resiliency issue with git template repos. a9bb80d

    Provided better error checking for bad cached repos. - Fixed issue with relative paths in local files. 7f1b354

    You can pass a local_path to use to resolve relative local paths for I/O and template determination. - Fixed data merge organization. 4bba0f4

    • Moved data merge constants and functions from composition.py to data_merge.py

    New

  • Added new workflow for versioning. 2232682
  • Added context managers for temporary copies. 90fa24c
  • Added convenience functions to the template classes. 0b62c44
  • Added interface to get template repositories. cf9ff4a
  • Added git template repositories. 02bf112
  • Added zipfile template repositories. 8190cb6
  • Added git shortcuts for cloning. 6ad76a3

Other

  • Moved get_context_for_layer from utils.py to composition.py. 6641a91
  • Moved get_template_name tests. 1c0c054
  • [pre-commit.ci] pre-commit autoupdate. bc33fbd

    updates: - https://github.com/charliermarsh/ruff-pre-commit → https://github.com/astral-sh/ruff-pre-commit

Updates

  • Updated requirement lock files. 026cd2d
  • Updated pre-commit config. 57d6cff
  • Renamed zipfile_repo.unzip to cache_source. 60a2393
  • Updated commands to use refactored methods. 14d2781
  • Refactored (de)serialization and I/O methods into io module. 3c64a3e
  • Refactored layers. e8af7d5

    • Integrated Template with LayerConfig - template attribute is now a Template instance - removed directory, checkout, password, and commit - renamed context to initial_context to distiguish it from the Template’s context
    • Updated RenderedLayer to use templates - renamed new_context to rendered_context to better describe it. - renamed latest_commit to rendered_commit for better clarity - added latest_commit convenience function
    • Simplified render_layer using the new template functions
    • Removed get_latest_template_commit from git_commands. af84ff4

    It is now part of the template repo - Updated requirements to use Pydantic 2. b24a158

  • Refactored layer context to fix #39. 300578f

0.11.0 (2023-07-27)

Compare the full difference.

Fixes

  • Fix test coverage matrix. 5ef8815
  • Fix pre-commit from autofixing templates. 99e7dfb

New

  • Added support for local extensions. 838f25c
  • Added -o and --output-dir as an alias. 04f063d

    It is now an alias for -d and --destination

    Other

  • Revert “[pre-commit.ci] auto fixes from pre-commit.com hooks”. 42d8704

    This reverts commit 52772f1352d6130b2d6189bf632b26fb9732c13f. - [pre-commit.ci] auto fixes from pre-commit.com hooks. 52772f1

    for more information, see https://pre-commit.ci - Migrated from setup.cfg to pyproject.toml. b3a39f0

0.10.3 (2023-05-15)

Compare the full difference.

New

  • Added support for accepting hooks. 096dfcc

0.10.2 (2023-05-11)

Compare the full difference.

Fixes

  • Fixed a bug that reformatted files that should be overwritten. 3f0f7b5

0.10.1 (2023-05-10)

Compare the full difference.

Fixes

  • Fixed a bug where additional context wasn’t passed to the composition. bd8b571

Other

0.10.0 (2023-03-24)

Compare the full difference.

New

  • Added relative directory support for compositions. 02fa5b8

    • Template paths or URLs are resolved using the path to the composition file.
    • Using an absolute path or URL as a template works as before
    • ., .., and relative paths (non-/ prefixed) are resolved with urllib.parse.urljoin

    0.9.2 (2023-02-13)

    Compare the full difference.

New

  • Added test for validate_context_params. a52d28d
  • Added ability to pass initial contexts. 9e3cdf3

Updates

  • Modified CLI options and arguments. 02a4bf3

    • The output_dir argument was moved to the --destination option.
    • Added CONTEXT_PARAMS argument for initial context
    • Removed checkout from first commit when linking. f2725ef
    • The first commit was causing confusing issues and now a normal checkout is performed.

    0.9.1 (2023-02-08)

    Compare the full difference.

New

0.9.0 (2023-01-25)

Compare the full difference.

Fixes

  • Fixed license and documentation badges. 37289c9
  • Fixed the coveralls badge in README. a4eaf73

New

  • Added testing for authentication.py. 73c8335
  • Added authentication capability. 19b5a8d

Other

Updates

  • Update README.md coveralls badge. b105133

0.8.1 (2023-01-04)

Compare the full difference.

Fixes

  • Fixed YAML merge formatting. 7259919

Other

0.8.0 (2022-12-16)

Compare the full difference.

Fixes

  • Fixed ability to merge a list of dicts in YAML. f3698ef

Other

Updates

  • Change frozendict to immutabledict. 8edf699

Fixes

  • Fixed ability to merge a list of dicts. 21b9033
  • Fixed chrobinson email to me. 7f2bf8e

0.7.0 (2022-10-31)

Compare the full difference.

New

  • Added ability to merge .toml files. 2e36b40
  • Added ability to merge .ini and .cfg files. 31ff1e0

Other

0.6.0 (2022-10-09)

Compare the full difference.

Fixes

  • Fixed a typo in the docs. 986f0d8
  • Fixed dependency conflict between flake8 and virtualenv. 6925b05

New

  • Added the link command to apply a composition to an existing project. 03f723e

Updates

  • Updated the update command to use git diff and git apply. d4bc14f
  • Updated the project requirements. 0834e0b
  • Refactored getting a composition from an input. 2f8edfe

0.5.0 (2022-09-22)

Compare the full difference.

New

  • Added the update subcommand. 6696589

    • Made the existing implementation idempotent
    • Connected the update_cmd to the command line
    • Add very basic cli tests. c6482d4

Other

Updates

0.4.0 (2022-09-06)

Compare the full difference.

New

  • Added subset of cookiecutter options to CLI. a66f17a
  • Added documentation images. 86113dc
  • Added template layer updating. 20c6fe3
  • Added layer naming convention. 5e61312

Other

Updates

  • Updated documentation configuration. a4c9652

0.3.0 (2022-06-29)

Compare the full difference.

Fixes

  • Fixed metadata’s long description content type. 99470e9

Other

  • Created tests for the add command. 358e189

Updates

  • Updated cc_override’s tests. 5388df7

0.2.2 (2022-06-26)

Compare the full difference.

New

  • Added badges to the readme. 9fdcad0

0.2.1 (2022-06-26)

Compare the full difference.

Fixes

  • Fixed minor issues with packaging tools. d0f49d4

0.2.0 (2022-06-26)

Compare the full difference.

Fixes

  • Fixed add command requiring destination. 15cbd16

    The destination of the add command is now optional and defaults to the current working directory. - Fixed error not writing commit to composition file. 8fd7bbe

  • Fixed handling remote compositions and git clones. ee142bd
  • Fixed a bug when two templates have _copy_without_render. 9e89347

    _copy_without_render is template-specific and attempting to override it raises an error in cookiecutter. Now that key is deleted for the default context and full context when generating each layer. - Fixed configurations. df365df

New

  • Added more github actions. 6bf5e54
  • Added ability to use previous templatee contexts in rendering defaults. fa6cb23
  • Added pip-compile to pre-commit config. aae79f5
  • Added the “add” command to add a layer to a rendered template. 86f17cd
  • Added git commands. 291b9aa

    • gitpython added as a prod requirement
    • GitError raised when git command fails
    • added functions encompassing key functionality
    • Added layer_name to RenderedLayer. 7f02db3

    This allows for detection of multiple rendered directories, and proper writing of the composition file. - Added release tooling. d0646d3

Other

  • Create python-publish.yml. 62830a3
  • [pre-commit.ci] auto fixes from pre-commit.com hooks. 2dae846

    for more information, see https://pre-commit.ci - Excluding test fixtures from requirement fixing. 40293a9

  • Switched from typer to click. d66f3f0
  • [pre-commit.ci] auto fixes from pre-commit.com hooks. 63f2d7d

    for more information, see https://pre-commit.ci - [pre-commit.ci] pre-commit autoupdate. 8f6d661

    updates: - https://github.com/timothycrosley/isort → https://github.com/PyCQA/isort

  • Migrated dependency management to pip-tools. 438c1a3
  • Vendored cookiecutter to use the latest version. e6540e7

Updates

  • Updated the documentation. 8b59661
  • Updated pre-commit to allow multiple documents in YAML files. 3a3e578
  • Removed vendored cookiecutter and switched to released version. f5cd36a
  • Updated the error text when missing a git repo. 78507e9
  • Updated formatting for composition output. 9df7856
  • Updated the documentation to a new theme. 5f68737
  • Renamed _commands to commands. da6d4f5
  • Changed MergeStrategy from an Enum to constants. ef8b828
  • Changed dependency management. 4cf52ba

    Uses pip-tools to compile and maintain dependency information. - Updated tests. 7c81df5

0.1.0 (2022-02-28)

Compare the full difference.

Other

0.12.0 (2023-11-04)

Compare the full difference.

Fixes

  • Fixed git worktree issue. e27636c

    • uses the correct git command depending on the parameters passed.
    • Fixed missing commit sha in test. c9997be
  • Fixed error handling with patching. f35864d
  • Fixed Exception handling for click. c481ad7
  • Fixed _copy_without_render bug. 4edc4bf
  • Fixed test type annotation. 4a4a7c0
  • Fixed rendering layers from previous commits. 0fefdbc
  • Fixed issue with generate_prompt_context. 4756660
  • Fixed issue with determining rendered layer names. 06bad39

    Added get_template_rendered_name to proactively determine the name of the rendered template. - Fixed resiliency issue with git template repos. a9bb80d

    Provided better error checking for bad cached repos. - Fixed issue with relative paths in local files. 7f1b354

    You can pass a local_path to use to resolve relative local paths for I/O and template determination. - Fixed data merge organization. 4bba0f4

    • Moved data merge constants and functions from composition.py to data_merge.py

    New

  • Added new workflow for versioning. 2232682
  • Added context managers for temporary copies. 90fa24c
  • Added convenience functions to the template classes. 0b62c44
  • Added interface to get template repositories. cf9ff4a
  • Added git template repositories. 02bf112
  • Added zipfile template repositories. 8190cb6
  • Added git shortcuts for cloning. 6ad76a3

Other

  • Moved get_context_for_layer from utils.py to composition.py. 6641a91
  • Moved get_template_name tests. 1c0c054
  • [pre-commit.ci] pre-commit autoupdate. bc33fbd

    updates: - https://github.com/charliermarsh/ruff-pre-commit → https://github.com/astral-sh/ruff-pre-commit

Updates

  • Updated requirement lock files. 026cd2d
  • Updated pre-commit config. 57d6cff
  • Renamed zipfile_repo.unzip to cache_source. 60a2393
  • Updated commands to use refactored methods. 14d2781
  • Refactored (de)serialization and I/O methods into io module. 3c64a3e
  • Refactored layers. e8af7d5

    • Integrated Template with LayerConfig - template attribute is now a Template instance - removed directory, checkout, password, and commit - renamed context to initial_context to distiguish it from the Template’s context
    • Updated RenderedLayer to use templates - renamed new_context to rendered_context to better describe it. - renamed latest_commit to rendered_commit for better clarity - added latest_commit convenience function
    • Simplified render_layer using the new template functions
    • Removed get_latest_template_commit from git_commands. af84ff4

    It is now part of the template repo - Updated requirements to use Pydantic 2. b24a158

  • Refactored layer context to fix #39. 300578f

0.11.0 (2023-07-27)

Compare the full difference.

Fixes

  • Fix test coverage matrix. 5ef8815
  • Fix pre-commit from autofixing templates. 99e7dfb

New

  • Added support for local extensions. 838f25c
  • Added -o and --output-dir as an alias. 04f063d

    It is now an alias for -d and --destination

    Other

  • Revert “[pre-commit.ci] auto fixes from pre-commit.com hooks”. 42d8704

    This reverts commit 52772f1352d6130b2d6189bf632b26fb9732c13f. - [pre-commit.ci] auto fixes from pre-commit.com hooks. 52772f1

    for more information, see https://pre-commit.ci - Migrated from setup.cfg to pyproject.toml. b3a39f0

0.10.3 (2023-05-15)

Compare the full difference.

New

  • Added support for accepting hooks. 096dfcc

0.10.2 (2023-05-11)

Compare the full difference.

Fixes

  • Fixed a bug that reformatted files that should be overwritten. 3f0f7b5

0.10.1 (2023-05-10)

Compare the full difference.

Fixes

  • Fixed a bug where additional context wasn’t passed to the composition. bd8b571

Other

0.10.0 (2023-03-24)

Compare the full difference.

New

  • Added relative directory support for compositions. 02fa5b8

    • Template paths or URLs are resolved using the path to the composition file.
    • Using an absolute path or URL as a template works as before
    • ., .., and relative paths (non-/ prefixed) are resolved with urllib.parse.urljoin

0.9.2 (2023-02-13)

Compare the full difference.

New

  • Added test for validate_context_params. a52d28d
  • Added ability to pass initial contexts. 9e3cdf3

Updates

  • Modified CLI options and arguments. 02a4bf3

    • The output_dir argument was moved to the --destination option.
    • Added CONTEXT_PARAMS argument for initial context
    • Removed checkout from first commit when linking. f2725ef
    • The first commit was causing confusing issues and now a normal checkout is performed.

0.9.1 (2023-02-08)

Compare the full difference.

New

0.9.0 (2023-01-25)

Compare the full difference.

Fixes

  • Fixed license and documentation badges. 37289c9
  • Fixed the coveralls badge in README. a4eaf73

New

  • Added testing for authentication.py. 73c8335
  • Added authentication capability. 19b5a8d

Other

Updates

  • Update README.md coveralls badge. b105133

0.8.1 (2023-01-04)

Compare the full difference.

Fixes

  • Fixed YAML merge formatting. 7259919

Other

0.8.0 (2022-12-16)

Compare the full difference.

Fixes

  • Fixed ability to merge a list of dicts in YAML. f3698ef

Other

Updates

  • Change frozendict to immutabledict. 8edf699
  • Changed JSON library to orjson. c857a2f

    • has better serialization capability and performance.

0.7.1 (2022-11-07)

Compare the full difference.

Fixes

  • Fixed ability to merge a list of dicts. 21b9033
  • Fixed chrobinson email to me. 7f2bf8e

0.7.0 (2022-10-31)

Compare the full difference.

New

  • Added ability to merge .toml files. 2e36b40
  • Added ability to merge .ini and .cfg files. 31ff1e0

Other

0.6.0 (2022-10-09)

Compare the full difference.

Fixes

  • Fixed a typo in the docs. 986f0d8
  • Fixed dependency conflict between flake8 and virtualenv. 6925b05

New

  • Added the link command to apply a composition to an existing project. 03f723e

Updates

  • Updated the update command to use git diff and git apply. d4bc14f
  • Updated the project requirements. 0834e0b
  • Refactored getting a composition from an input. 2f8edfe

0.5.0 (2022-09-22)

Compare the full difference.

New

  • Added the update subcommand. 6696589

    • Made the existing implementation idempotent
    • Connected the update_cmd to the command line
    • Add very basic cli tests. c6482d4

Other

Updates

0.4.0 (2022-09-06)

Compare the full difference.

New

  • Added subset of cookiecutter options to CLI. a66f17a
  • Added documentation images. 86113dc
  • Added template layer updating. 20c6fe3
  • Added layer naming convention. 5e61312

Other

Updates

  • Updated documentation configuration. a4c9652

0.3.0 (2022-06-29)

Compare the full difference.

Fixes

  • Fixed metadata’s long description content type. 99470e9

Other

  • Created tests for the add command. 358e189

Updates

  • Updated cc_override’s tests. 5388df7

0.2.2 (2022-06-26)

Compare the full difference.

New

  • Added badges to the readme. 9fdcad0

0.2.1 (2022-06-26)

Compare the full difference.

Fixes

  • Fixed minor issues with packaging tools. d0f49d4

0.2.0 (2022-06-26)

Compare the full difference.

Fixes

  • Fixed add command requiring destination. 15cbd16

    The destination of the add command is now optional and defaults to the current working directory. - Fixed error not writing commit to composition file. 8fd7bbe

  • Fixed handling remote compositions and git clones. ee142bd
  • Fixed a bug when two templates have _copy_without_render. 9e89347

    _copy_without_render is template-specific and attempting to override it raises an error in cookiecutter. Now that key is deleted for the default context and full context when generating each layer. - Fixed configurations. df365df

New

  • Added more github actions. 6bf5e54
  • Added ability to use previous templatee contexts in rendering defaults. fa6cb23
  • Added pip-compile to pre-commit config. aae79f5
  • Added the “add” command to add a layer to a rendered template. 86f17cd
  • Added git commands. 291b9aa

    • gitpython added as a prod requirement
    • GitError raised when git command fails
    • added functions encompassing key functionality
    • Added layer_name to RenderedLayer. 7f02db3

    This allows for detection of multiple rendered directories, and proper writing of the composition file. - Added release tooling. d0646d3

Other

  • Create python-publish.yml. 62830a3
  • [pre-commit.ci] auto fixes from pre-commit.com hooks. 2dae846

    for more information, see https://pre-commit.ci - Excluding test fixtures from requirement fixing. 40293a9

  • Switched from typer to click. d66f3f0
  • [pre-commit.ci] auto fixes from pre-commit.com hooks. 63f2d7d

    for more information, see https://pre-commit.ci - [pre-commit.ci] pre-commit autoupdate. 8f6d661

    updates: - https://github.com/timothycrosley/isort → https://github.com/PyCQA/isort

  • Migrated dependency management to pip-tools. 438c1a3
  • Vendored cookiecutter to use the latest version. e6540e7

Updates

  • Updated the documentation. 8b59661
  • Updated pre-commit to allow multiple documents in YAML files. 3a3e578
  • Removed vendored cookiecutter and switched to released version. f5cd36a
  • Updated the error text when missing a git repo. 78507e9
  • Updated formatting for composition output. 9df7856
  • Updated the documentation to a new theme. 5f68737
  • Renamed _commands to commands. da6d4f5
  • Changed MergeStrategy from an Enum to constants. ef8b828
  • Changed dependency management. 4cf52ba

    Uses pip-tools to compile and maintain dependency information. - Updated tests. 7c81df5

0.1.0 (2022-02-28)

Other

Comments