1797 Commits

Author SHA1 Message Date
Mitch Negus
c79482580e
docs: fix filesystem view to match text (and homepage) (#1136) 2023-05-14 07:19:03 +00:00
dependabot[bot]
876d4f8c98 build(deps-dev): bump mypy from 1.2.0 to 1.3.0
Bumps [mypy](https://github.com/python/mypy) from 1.2.0 to 1.3.0.
- [Commits](https://github.com/python/mypy/compare/v1.2.0...v1.3.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-14 07:59:34 +01:00
dependabot[bot]
81988da722 build(deps-dev): bump mkdocs-material from 9.1.9 to 9.1.11
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.1.9 to 9.1.11.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.1.9...9.1.11)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-10 04:43:23 +01:00
Sigurd Spieckermann
f6f37ab4fb
feat: support conditional choices (#1010)
Choices can now be validated with a custom inline jinja template.

Disabled choices won't be selectable, and they display a message telling why.
2023-05-04 09:13:18 +01:00
Sigurd Spieckermann
d16f49ae57 fix: work around Pydantic bug when parsing choices 2023-05-02 15:48:11 +01:00
Sigurd Spieckermann
aca16a020b
fix: skip validating question and generating its default value when its skip condition is met
I've indirectly fixed the validation of answers to questions for which the skip condition is met. Before, a question with a truthy skip condition was not properly skipped such that (a) its default value (if present) was still validated and could cause a validation error or (b) an error was raised that the question was required although it should have been skipped. As a side effect of the previous implementation (which didn't properly skip questions), answers of skipped questions were recorded in the answers file which IMO makes no sense.

I've changed the way skipped questions are handled such that the skip condition is evaluated early and the question is immediately skipped when the skip condition is truthy. To prevent records of such answers in the answers file, e.g. when they originate from previous runs, when they are provided by the user via the `--data` flag, etc., any answers in the internal answers map are removed (or rather marked as removed). As a result, I needed to adapt a few tests and even removed one that specifically tested for the presence of those records in the answers file.

This new behavior should be backwards compatible and is more logical in my opinion. As a side effect, some slightly confusing code block could be removed which handled some special case of using a templated default answer.

Fixes #1125.
2023-05-02 15:45:44 +01:00
dependabot[bot]
dd5ab5d7be build(deps-dev): bump mkdocs-material from 9.1.8 to 9.1.9
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.1.8 to 9.1.9.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.1.8...9.1.9)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-05-02 15:38:53 +01:00
Sigurd Spieckermann
00f398eb98 refactor: remove unused local overrides to answers 2023-04-29 08:42:20 +01:00
Sigurd Spieckermann
7911d42862
style(typing): remove useless type hints (#1118)
* fix(typing): fix type hint of `--skip` switch attribute

* style(typing): remove useless type hints
2023-04-29 08:41:03 +01:00
dependabot[bot]
2d5b6610ca build(deps-dev): bump mkdocs-material from 9.1.7 to 9.1.8
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.1.7 to 9.1.8.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.1.7...9.1.8)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-25 16:30:32 +01:00
dependabot[bot]
d9d2302a92 build(deps-dev): bump mkdocs-material from 9.1.6 to 9.1.7
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.1.6 to 9.1.7.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.1.6...9.1.7)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 20:52:19 +01:00
dependabot[bot]
1a7d92754f build(deps): bump importlib-metadata from 6.5.0 to 6.6.0
Bumps [importlib-metadata](https://github.com/python/importlib_metadata) from 6.5.0 to 6.6.0.
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/CHANGES.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v6.5.0...v6.6.0)

---
updated-dependencies:
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-24 20:51:52 +01:00
Sigurd Spieckermann
ed38f24487
feat: validate default values (#1075)
BREAKING CHANGE: default values must be of the same type than the question.
2023-04-23 06:31:06 +01:00
dependabot[bot]
7f05baf4f0 build(deps-dev): bump types-psutil from 5.9.5.11 to 5.9.5.12
Bumps [types-psutil](https://github.com/python/typeshed) from 5.9.5.11 to 5.9.5.12.
- [Release notes](https://github.com/python/typeshed/releases)
- [Commits](https://github.com/python/typeshed/commits)

---
updated-dependencies:
- dependency-name: types-psutil
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-20 16:47:15 +01:00
Jairo Llopis
eee609dddf
bump: version 7.1.0 → 7.2.0 v7.2.0 2023-04-19 17:45:50 +01:00
Jairo Llopis
09cc9953d1
docs: clarify what's invoke
Fix https://github.com/copier-org/copier/issues/1095.
2023-04-19 17:42:48 +01:00
dependabot[bot]
77640b1968 build(deps): bump importlib-metadata from 6.4.1 to 6.5.0
Bumps [importlib-metadata](https://github.com/python/importlib_metadata) from 6.4.1 to 6.5.0.
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/CHANGES.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v6.4.1...v6.5.0)

---
updated-dependencies:
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 17:31:14 +01:00
dependabot[bot]
769fa25bea build(deps): bump pygments from 2.15.0 to 2.15.1
Bumps [pygments](https://github.com/pygments/pygments) from 2.15.0 to 2.15.1.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.15.0...2.15.1)

---
updated-dependencies:
- dependency-name: pygments
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 17:31:05 +01:00
dependabot[bot]
545d1f0b26 build(deps-dev): bump markdown-exec from 1.5.3 to 1.6.0
Bumps [markdown-exec](https://github.com/pawamoy/markdown-exec) from 1.5.3 to 1.6.0.
- [Release notes](https://github.com/pawamoy/markdown-exec/releases)
- [Changelog](https://github.com/pawamoy/markdown-exec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pawamoy/markdown-exec/compare/1.5.3...1.6.0)

---
updated-dependencies:
- dependency-name: markdown-exec
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 17:30:43 +01:00
Sigurd Spieckermann
14fa78a1dc fix: fix using a branch name as VCS ref 2023-04-19 17:30:31 +01:00
dependabot[bot]
0f070b5fc0 build(deps-dev): bump markdown-exec from 1.5.0 to 1.5.3
Bumps [markdown-exec](https://github.com/pawamoy/markdown-exec) from 1.5.0 to 1.5.3.
- [Release notes](https://github.com/pawamoy/markdown-exec/releases)
- [Changelog](https://github.com/pawamoy/markdown-exec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pawamoy/markdown-exec/compare/1.5.0...1.5.3)

---
updated-dependencies:
- dependency-name: markdown-exec
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-19 06:03:22 +01:00
Sigurd Spieckermann
bd450b5db6
fix: answer validation for question with complex choices (#1110)
I've fixed a bug related to answer validation of questions with complex choices. Previously, choice values were collected in a set which requires the choice values to be hashable. But complex choice values such as dict or list values aren't hashable. Now, they are collected in a list.

Fixes #1108.
2023-04-19 06:02:32 +01:00
dependabot[bot]
cc338a4a5b build(deps-dev): bump pytest from 7.3.0 to 7.3.1
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.3.0 to 7.3.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.3.0...7.3.1)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 22:58:26 +01:00
dependabot[bot]
f4d2a489cf build(deps): bump importlib-metadata from 6.3.0 to 6.4.1
Bumps [importlib-metadata](https://github.com/python/importlib_metadata) from 6.3.0 to 6.4.1.
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/CHANGES.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v6.3.0...v6.4.1)

---
updated-dependencies:
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 22:57:52 +01:00
dependabot[bot]
62929a2365 build(deps-dev): bump markdown-exec from 1.4.0 to 1.5.0
Bumps [markdown-exec](https://github.com/pawamoy/markdown-exec) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/pawamoy/markdown-exec/releases)
- [Changelog](https://github.com/pawamoy/markdown-exec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/pawamoy/markdown-exec/compare/1.4.0...1.5.0)

---
updated-dependencies:
- dependency-name: markdown-exec
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 22:57:11 +01:00
Jairo Llopis
af628d9977
test: cover and fix the case of context lines through CLI calls too (#1104) 2023-04-17 12:59:21 +00:00
dependabot[bot]
ab12d379ce build(deps): bump packaging from 23.0 to 23.1
Bumps [packaging](https://github.com/pypa/packaging) from 23.0 to 23.1.
- [Release notes](https://github.com/pypa/packaging/releases)
- [Changelog](https://github.com/pypa/packaging/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/packaging/compare/23.0...23.1)

---
updated-dependencies:
- dependency-name: packaging
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 13:31:47 +01:00
Jairo Llopis
1709d677ee feat: customizable update accuracy
Until today, the updatediff algorithm always used just 1 line of context when detecting conflicts. This was because:

- Solving conflicts wasn't very ergonomic with those `.rej` files around.
- More lines meant too many conflicts usually.

However, it made the diff detection less accurate.

With this change, we allow the users to configure that algorithm. Since they have now the `--context inline` option, more conflicts isn't so much of a problem.

@moduon MT-2638
2023-04-17 12:59:28 +01:00
Jairo Llopis
6609f49f93 build(lint): use podman before docker
Folks that have both tend to prefer podman.
2023-04-17 12:56:45 +01:00
Sigurd Spieckermann
c0e356bf28 docs(configuring): fix typo 2023-04-17 12:56:27 +01:00
Nils de Bruin
4ecd0ce6c6 Update configuring.md
Changed ' to " as the statement dit not work
2023-04-17 12:53:08 +01:00
dependabot[bot]
d5fa487d84 build(deps-dev): bump mkdocs-material from 9.1.5 to 9.1.6
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.1.5 to 9.1.6.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.1.5...9.1.6)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-12 15:25:23 +01:00
dependabot[bot]
2c56f067bb
Merge pull request #1087 from copier-org/dependabot/pip/pygments-2.15.0 2023-04-10 15:34:35 +00:00
dependabot[bot]
dccf9807c2 build(deps): bump importlib-metadata from 6.1.0 to 6.3.0
Bumps [importlib-metadata](https://github.com/python/importlib_metadata) from 6.1.0 to 6.3.0.
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/CHANGES.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v6.1.0...v6.3.0)

---
updated-dependencies:
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-10 16:00:33 +01:00
dependabot[bot]
22b68ca556 build(deps-dev): bump pytest from 7.2.2 to 7.3.0
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.2.2 to 7.3.0.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.2.2...7.3.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-10 16:00:09 +01:00
dependabot[bot]
dedc53aa77
build(deps): bump pygments from 2.14.0 to 2.15.0
Bumps [pygments](https://github.com/pygments/pygments) from 2.14.0 to 2.15.0.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.14.0...2.15.0)

---
updated-dependencies:
- dependency-name: pygments
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-10 13:00:42 +00:00
Jairo Llopis
91f21c738c bump: version 7.1.0a0 → 7.1.0 v7.1.0 2023-04-07 16:16:14 +00:00
Jairo Llopis
b919a7b41f feat: include git in flake app
This way, we don't depend on it being available in the context. Makes nix build more resilient.
2023-04-07 17:13:39 +01:00
Jairo Llopis
689dd8bbb0 docs: explain how to leverage nix with docker
Many folks are not very comfortable with nix yet, so let's document how they can use it in their pipelines with more widely-known tools such as Docker and Podman.

Fixes https://github.com/copier-org/copier/issues/457.
2023-04-07 17:13:39 +01:00
dependabot[bot]
ebda912228 build(deps): bump funcy from 1.18 to 2.0
Bumps [funcy](https://github.com/Suor/funcy) from 1.18 to 2.0.
- [Release notes](https://github.com/Suor/funcy/releases)
- [Changelog](https://github.com/Suor/funcy/blob/master/CHANGELOG)
- [Commits](https://github.com/Suor/funcy/compare/1.18...2.0)

---
updated-dependencies:
- dependency-name: funcy
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-07 17:13:04 +01:00
dependabot[bot]
bbe7d1e88f build(deps-dev): bump mkdocstrings from 0.21.1 to 0.21.2
Bumps [mkdocstrings](https://github.com/mkdocstrings/mkdocstrings) from 0.21.1 to 0.21.2.
- [Release notes](https://github.com/mkdocstrings/mkdocstrings/releases)
- [Changelog](https://github.com/mkdocstrings/mkdocstrings/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mkdocstrings/mkdocstrings/compare/0.21.1...0.21.2)

---
updated-dependencies:
- dependency-name: mkdocstrings
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-07 17:10:51 +01:00
dependabot[bot]
f7edd723c4 build(deps-dev): bump mypy from 1.1.1 to 1.2.0
Bumps [mypy](https://github.com/python/mypy) from 1.1.1 to 1.2.0.
- [Release notes](https://github.com/python/mypy/releases)
- [Commits](https://github.com/python/mypy/compare/v1.1.1...v1.2.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-07 17:10:40 +01:00
Jairo Llopis
e34bcda48b fix: include dirty local changes when copying HEAD
This was the intended and documented behavior, but at some point it got broken.

Well, now it's tested and it works.

Besides, there's a new FAQ to avoid further surprises.

Fixes https://github.com/copier-org/copier/issues/787
2023-04-07 11:55:59 +01:00
Sigurd Spieckermann
065d6ba1d0
fix: require answer for questions without default value (#958)
When questions didn't have a default answer, the interactive behavior was confusing.

Fixes https://github.com/copier-org/copier/issues/355.

BREAKING CHANGE: All default answers must be explicit now.
2023-04-07 08:09:27 +01:00
Adrian Freund
0f610be801
feat: support preserving symlinks when copying templates (#938)
* feat: Preserve symlinks when copying templates

* test: Add tests for symlink copying
2023-04-07 08:03:17 +01:00
dependabot[bot]
c96ff3cf5e build(deps-dev): bump mkdocstrings from 0.20.0 to 0.21.1
Bumps [mkdocstrings](https://github.com/mkdocstrings/mkdocstrings) from 0.20.0 to 0.21.1.
- [Release notes](https://github.com/mkdocstrings/mkdocstrings/releases)
- [Changelog](https://github.com/mkdocstrings/mkdocstrings/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mkdocstrings/mkdocstrings/compare/0.20.0...0.21.1)

---
updated-dependencies:
- dependency-name: mkdocstrings
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-06 16:43:09 +01:00
Sigurd Spieckermann
a230e4f4d6
docs: add advice on detecting Git repos (#1046) 2023-04-06 06:42:52 +01:00
Sigurd Spieckermann
17135c5f34 fix(cleanup): don't clean up local template in parent folder 2023-04-03 06:02:04 +01:00
Sigurd Spieckermann
266139bff4
feat: allow imports in inline templates (#986)
* feat: import Jinja templates/macros relative to template root

* feat: add `joinpath()` function to Jinja globals

* fix: use POSIX paths for Jinja imports/includes

* docs: fix `copier.yml` examples
2023-04-02 15:37:40 +00:00
dependabot[bot]
c1768b9f17 build(deps-dev): bump mkdocs-material from 9.1.4 to 9.1.5
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.1.4 to 9.1.5.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.1.4...9.1.5)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-02 16:18:53 +01:00