Repository navigation
version_files not working #1369
Description
Activity
Hello
I have the same problem. Did you manage to fix it?Edit
I managed to solve this problem by trial and error - it's a pity that it is not clearly described in the documentation, or cz bump does not have a debug option, which will indicate problematic elements.In a situation where I have set the cz.toml configuration file in the root folder
in order for the versions in the listed files to be updated correctly, you should:-
include the version in the cz.toml file
-
the version included in cz.toml must match the versions in the other files (in a situation where the versions in the files differ, they will not be updated)
[tool.commitizen] name = "cz_conventional_commits" tag_format = "$version" version_scheme = "semver" version = "1.6.5-b23" update_changelog_on_bump = false major_version_zero = false annotated_tag = false version_files = [ "package.json:version", "src/package.json:version", "src/pyproject.toml:version" ]
Another solution was to have pyproject.toml (or the appropriate manifest for configuration) in the root folder, which contained only information about the version
[tool.poetry] version = "1.6.5-b23"
cz by default searches for the location in search of the manifest file.
-
thank you for solving the problem.
I'm now using commitizen npm package and semantic-releaseI will try this later.
Hey, sorry for the late reply.
may I know what the format of
"package.json:version", "app.json:expo.version"it needs to be in the same line like
"version": ...if they're set in the version_file, we do not detect
package.jsonapp.jsonif usingdefaultprovider. we only use string matching to find the line contains stringversionand the app versionhello I'm back.
sorry I've been a project deadline last week.these is my file format.
- .cz.json
{ "commitizen": { "name": "cz_conventional_commits", "tag_format": "test-$version", "version_scheme": "semver", "version": "3.124.0", "update_changelog_on_bump": true, "version_files": [ "package.json:version", "app.json:expo.version" ] } }- package.json
{ "name": "", "version": "3.124.0", "scripts": {}, "dependencies": {}, }- app.json
{ "expo": { "name": "", "slug": "", "scheme": "", "version": "3.123.0", "ios": {}, "android": {} }I try the @kamilgajekdxc solution.
setting all file's with same version.after run
cz bump
package.json is update correctly.
but app.json still not.thanks @kamilgajekdxc , set to same version is really helpful. my package.json do update.
I found the problem.
as @Lee-W said. it will find string match.
so I addexpo.versionin myapp.jsonfor testingcz bump update "expo.version": "" to correct version and keep "expo": {"version": ""} in old version.
now my question is how to set the correct version property in
version_filesif version is in a nesting object.- locked and limited conversation to collaborators
on Apr 6, 2025
Description
I'm using commitizen in a expo + react-native project
I do cz init and make a .cz.json like this
{ "commitizen": { "name": "cz_conventional_commits", "tag_format": "test-$version", "version_scheme": "semver", "version": "3.2.4", "update_changelog_on_bump": true, "version_files": [ "package.json:version", "app.json:expo.version" ] } }btw I select
commitizen(default)notnpmin source of the versionthen I do
cz commitandcz bumpeverything finish
version in .cz.json did update
but version in package.json and app.json not update
I'm not sure is it a bug or not,
maybe is something I missed in configuration?
or is a syntax error?
Steps to reproduce
cz init..cz.jsoncz_conventional_commits(default)commitizen(default)Y (latest tag)semvern (correct tag format)test-$versionY (auto changelog)enter (with no hooks)version_filesin .cz.jsoncz bumpCurrent behavior
after I setting
package.json:versionandapp.json:expo.versionI think these 2 files will update the correct version
same as the version in .cz.json
but not
Desired behavior
I want these 3 files update with same and correct version
Screenshots
No response
Environment
Commitizen Version: 4.4.1
Python Version: 3.13.2 (main, Feb 4 2025, 14:51:09) [Clang 16.0.0 (clang-1600.0.26.6)]
Operating System: Darwin