github copier-org/copier v8.0.0
v8.0.0 (2023-06-04)

latest releases: v9.3.1, v9.3.0, v9.2.0...
15 months ago

BREAKING CHANGE

  • Updates will overwrite existing files always. If you need to select only some files, just use git mergetool or git difftool after updating.
  • Flag --overwrite/-w disappeared from copier update. It is now implicit.
  • To update via API, overwrite=True is now required.
  • The default update conflict mode is now inline instead of rej.
  • By default, updates now consider 3 lines of context instead of just 1.
  • All CLI calls to Copier must now include the subcommand as the 1st argument. For example, copier must become now copier update; also copier ./tpl ./dst must become copier copy ./tpl ./dst.
  • All flags must go after the subcommand now. For example, copier -r HEAD update ./dst must now become copier update -r HEAD ./dst or copier update ./dst -r HEAD.
  • Automatic mode removed. Since now subcommands are required, the automatic mode is removed.
  • Deprecated copier.copy function is removed. Use copier.run_copy, copier.run_update or copier.run_recopy explicitly as needed.
  • default values must be of the same type than the question.

Feat

  • disable unsafe features by default and add --UNSAFE switch (#1171)
  • basic nixpkgs overlay
  • add recopy command and function
  • support conditional choices (#1010)
  • validate default values (#1075)

Fix

  • explain better why an answer casting fails
  • cli: display subcommand args meaning
  • preserver recursive symlinks
  • work around Pydantic bug when parsing choices
  • skip validating question and generating its default value when its skip condition is met

Refactor

  • overwrite always on updates
  • update: default to inline markers and 3 lines of context
  • remove unused local overrides to answers

Don't miss a new copier release

NewReleases is sending notifications on new releases.