1797 Commits

Author SHA1 Message Date
dependabot[bot]
6cf30309cd build(deps): bump mkdocs-material from 7.3.4 to 7.3.5
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 7.3.4 to 7.3.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/7.3.4...7.3.5)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-29 16:24:13 +01:00
dependabot[bot]
b33a79c821 build(deps): bump packaging from 21.0 to 21.2
Bumps [packaging](https://github.com/pypa/packaging) from 21.0 to 21.2.
- [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/21.0...21.2)

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

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-29 16:22:53 +01:00
Timo Furrer
edc60fee9f
feat: support Python 3.10 (#462) 2021-10-27 10:31:48 +00:00
Alexander Hungenberg
1d36e20c15
build(deps): updating all dependencies to latest version (if possible) (#463)
* bump: dependency versions (backwards compatible)

* bump: flake8 and associated package versions

* bump: black version

* bump: jinja2 version

* bump: mkdocs and related versions

* bump: mypy version

* bump: packaging version

* bump: poethepoet version

* bump: pytest-cov version

* bump: prompt-toolkit version

Co-authored-by: Alexander Hungenberg <alexander.hungenberg@roche.com>
2021-10-25 19:24:40 +01:00
Yajo
ee684ee6fa fix: make test more explicit 2021-10-23 18:19:02 +01:00
Brian Burgin
78e8e90208 feat: support subdirectory update 2021-10-23 18:19:02 +01:00
dependabot[bot]
ec1a26c45d build(deps): bump actions/cache from 2.1.0 to 2.1.6
Bumps [actions/cache](https://github.com/actions/cache) from 2.1.0 to 2.1.6.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.0...v2.1.6)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-15 13:04:10 +01:00
dependabot[bot]
accedbf4df build(deps): bump codecov/codecov-action from 1 to 2.1.0
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 1 to 2.1.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v1...v2.1.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2021-10-15 13:03:21 +01:00
Jairo Llopis
531de4e516 build: dependabot
Let's get updates!
2021-10-15 05:31:07 +01:00
Blake Naccarato
b8ff4d8c71
build: allow windows install without building (#440)
Bumping `iteration-utilities` allows Windows to install the dependency without having to build it first.

Fixes #439.
2021-08-20 07:07:57 +00:00
Timothée Mazzucotelli
b3860dd274
fix: Fix unicode error on binary files (#436)
* fix: Fix unicode error on binary files

If a unicode decode error is raised
while trying to compile a file as a Jinja2 template,
and the templates suffix is empty,
we fallback to copying this file as is.

Fixes #433.
v6.0.0a7
2021-08-03 17:19:04 +01:00
Timothée Mazzucotelli
98a41a6a65 docs: Tell about creating the venv in the project 2021-08-02 09:39:30 +01:00
Jairo Llopis
2fe3072d6d docs: migration strategies across major copier versions
Try to answer a good question: when you upgrade one subproject from template v1 to v2, the template itself needs to be properly rendered in v1 to be compared to the subproject and extract the diff... well, we all know this at this point. But if Copier 6 renders differently the template v1 as compared to how Copier 5 would, then the template developer is on big trouble: How to evolve a subproject from a Copier v5-only template to a Copier v6-only template?

Fix https://github.com/copier-org/copier/issues/348
2021-07-17 08:37:30 +01:00
Jairo Llopis
87b93ee558 fix: multiline default values prompted
When the question is YAML or JSON and it is multiline and has a default value, that one should be prompted in multiline mode automatically.

It includes a test that will always fail (thus it is skipped). Gotta fix that some day when I'm more pro in python-prompt-toolkit stuff. For the time being, manual test is enough and this works!

I also removed some garbage found here and there.

Fixes https://github.com/copier-org/copier/issues/298.
2021-07-10 11:45:51 +01:00
Jairo Llopis
7bbd0406b8 feat: do not ask for overwriting copier answers file
The copier answers file (`.copier-answers.yml` by default) should be updated always, and everybody is almost excessively warned to NOT touch that file by hand and let Copier handle it. Thus, it makes no sense to ask users whether it should be updated on conflict.

Fixes https://github.com/copier-org/copier/issues/325.
2021-07-02 16:28:57 +01:00
Jairo Llopis
e3d8e2e170 fix: inherit permissions
When copying a file, make sure its permissions are the same as those of the file in the template.

Fixes https://github.com/copier-org/copier/issues/361.
2021-07-02 16:24:41 +01:00
Yajo
c390685f05 test: fix other cases of force removal 2021-07-02 15:34:51 +01:00
Dennis Roche
a1fcccf906 test: Replace force=True with defaults=True, overwrite=True 2021-07-02 15:34:51 +01:00
Dennis Roche
2241c7d74c docs: Updated changelog 2021-07-02 15:34:51 +01:00
Dennis Roche
cfb9ec3bbc feat: Add additional flags for using default questions or overwriting files 2021-07-02 15:34:51 +01:00
Timothée Mazzucotelli
8bed0441a9 docs: Fix typo 2021-06-28 13:31:37 +01:00
Jairo Llopis
3b63b6057b fix: restore templated choice keys and types
Last commit removed some false positives in tests and revealed these regressions.

Some tests are modified to reveal reality.
2021-06-11 07:19:46 +01:00
Jairo Llopis
9de3dd0574 fix: respect spawn timeout when doing coverage
It appeared as a debugger and resulted in endless test runs on CI.
2021-06-11 07:19:46 +01:00
Jairo Llopis
5411276c8b fix: wrong usage of expect_exact([...])
I was expecting that calls in this form matched all strings in sequence. It turns out that [the docs][1] clearly state that it only tries to match one of them.

Thus, fixing the tests to avoid false positives.

[1]: https://pexpect.readthedocs.io/en/stable/api/pexpect.html?highlight=expect_exact#pexpect.spawn.expect_exact
2021-06-11 07:19:46 +01:00
Jairo Llopis
20c151e9f4 fix!: only support explicit types for multi-type choice questions
- Inform about `null` value being converted to choice key.
- Warn about problems when using multiple types in choices.

Fixes https://github.com/copier-org/copier/issues/405.
2021-05-21 16:54:30 +01:00
Jairo Llopis
5b6cd052da fix: detect properly debugging context 2021-05-21 16:54:30 +01:00
Timothée Mazzucotelli
91c6a43668 refactor: Remove extraneous parent classes from errors 2021-05-17 13:30:08 +01:00
Timothée Mazzucotelli
23f5695a96 feat: Handle empty templates suffix 2021-05-17 13:29:13 +01:00
Jairo Llopis
60f916017b fix: consider template skip_if_exists when updating
Fixes https://github.com/copier-org/copier/issues/369, which was a regression from the refactor.
2021-05-10 17:41:07 +01:00
Jairo Llopis
1f24b5a02e
build: fix poetry-dynamic-versioning style
We're using PEP440 since long ago, but forgot to reflect that here.
2021-04-26 08:06:23 +01:00
Jairo Llopis
2547899546 fix: remember user answers while running interactively
This was the case when forced, but not when ran interactively. It was a regression from the v6 refactor.

Fixes https://github.com/copier-org/copier/issues/327.
2021-04-23 17:45:25 +01:00
Jairo Llopis
0500a617c0 test: make spawned processes debuggable
Implement the workaround from https://github.com/microsoft/debugpy/issues/596#issuecomment-824643237 to allow debugging pexpect subprocesses.
2021-04-23 17:45:25 +01:00
Timothée Mazzucotelli
f331b44271 refactor: Remove __all__ variables from modules
Fixes #206.
2021-04-23 15:05:42 +01:00
Jairo Llopis
2a944bf736 docs: update with latest changes
🤦‍♂️ it seems I forgot to document a lot of changes.
2021-04-20 07:21:36 +01:00
Jairo Llopis
0c5a25157d build(gitpod): recommend mermaid markdown plugin
This allows to preview the mermaid chart in docs while writing it in VSCode.
2021-04-20 07:21:36 +01:00
Jairo Llopis
ee776d9a05 build(gitpod): configure docs server vscode task 2021-04-20 07:21:36 +01:00
Jairo Llopis
054b962d70 docs: enable mermaid code fences 2021-04-20 07:21:36 +01:00
Jairo Llopis
8dd9a1ba20
Revert "Create FUNDING.yml"
This reverts commit 082d2707891147d8a876b9e16a3eb4bc6c10f406.

This will be set organization-wide.
2021-04-17 14:24:45 +01:00
Jairo Llopis
bd29342502 docs: update questionary configuration
All those new things were not documented... 🤦‍♂️

Fix https://github.com/copier-org/copier/issues/297
2021-04-17 09:53:12 +01:00
Jairo Llopis
082d270789 Create FUNDING.yml
Maintaining this thing is a lot of work. If someone wants to support it, make it easy for them.
2021-04-17 08:45:03 +01:00
Yajo
bbdbeb86c3 build: better gitpod and vscode UX
These days, Gitpod supports VSCode workspaces instead of only Theia.

Theia understands settings under `.vscode` as well as under `.theia`, but VSCode only understands settings under `.vscode`. Thus, it seems reasonable to move settings to that new location and then provide a good UX on both local VSCode and Gitpod's.

I also install new tools such as commitizen.

The goal is that just clicking on Gitpod badge, you have a full dev environment ready to hack.
2021-04-15 17:46:24 +01:00
Jairo Llopis
4f36db4c72 style(pre-commit): enforce conventional commits
Using python commitizen, we check that commits conform to the desired style. This way, we will be able to leverage other tools later, such as changelog automatic generation.

Fix https://github.com/copier-org/copier/issues/380
2021-04-15 17:46:24 +01:00
Timothée Mazzucotelli
534a888a0a
feat: Add __main__ module allowing to run python -m copier (#384)
* feat: Add `__main__` module allowing to run `python -m copier`

* tests: Add test for `python -m copier`
2021-04-06 08:46:06 +01:00
Timothée Mazzucotelli
b3886a3730 docs: Add copier-templates-extensions in the extensions list 2021-04-05 13:05:42 +01:00
Jairo Llopis
9209af58b7
docs: update changelog
Fix #374.
2021-03-28 12:52:58 +01:00
Timothée Mazzucotelli
bd83f15bd6
feat: Add extensions option allowing to load additional Jinja2 extensions (#370)
Co-authored-by: Jairo Llopis <Yajo@users.noreply.github.com>
2021-03-27 22:07:56 +00:00
Jairo Llopis
93d95a6a7b
Standard jinja defaults for v6+ templates (#363)
* Fix #247. We now use Jinja's default envops, and recommended extension for templates: .jinja (integrates better with IDEs)

* Ignore pdm stuff

* Include poetry-dynamic-versioning when installing poetry on CI

* Fetch all from git, to get tags and let poetry-dynamic-versioning do its magic

* Docs, with some sections explaining the copier 5-6 difference and how to make your template support both versions
2021-03-14 08:12:51 +00:00
Jairo Llopis
a9f3523b4e
docs 2021-03-14 08:04:20 +00:00
Jairo Llopis
acd80a701c
Fetch all from git 2021-03-14 07:10:25 +00:00
Jairo Llopis
363a01b05c
Include poetry-dynamic-versioning when installing poetry on CI 2021-03-14 07:07:11 +00:00