-
- $ cz commit --help
-usage: cz commit [-h][--retry][--no-retry][--dry-run]
-[--write-message-to-file FILE_PATH][-s][-a][-e]
-[-l MESSAGE_LENGTH_LIMIT][--]
-
-create new commit
-
-options:
- -h, --help show this help message and exit
- --retry retry last commit
- --no-retry skip retry if retry_after_failure is set to true
- --dry-run show output to stdout, no commit, no modified files
- --write-message-to-file FILE_PATH
- write message to file before committing (can be
- combined with --dry-run)
- -s, --signoff sign off the commit
- -a, --all Tell the command to automatically stage files that
- have been modified and deleted, but new files you have
- not told Git about are not affected.
- -e, --edit edit the commit message before committing
- -l, --message-length-limit MESSAGE_LENGTH_LIMIT
- length limit of the commit message; 0 for no limit
- -- Positional arguments separator (recommended)
-
+
+ $ cz commit --help
+usage: cz commit [-h][--retry][--no-retry][--dry-run]
+[--write-message-to-file FILE_PATH][-s][-a][-e]
+[-l MESSAGE_LENGTH_LIMIT][--]
+
+create new commit
+
+options:
+ -h, --help show this help message and exit
+ --retry retry last commit
+ --no-retry skip retry if retry_after_failure is set to true
+ --dry-run show output to stdout, no commit, no modified files
+ --write-message-to-file FILE_PATH
+ write message to file before committing (can be
+ combined with --dry-run)
+ -s, --signoff Deprecated, use 'cz commit -- -s' instead
+ -a, --all Tell the command to automatically stage files that
+ have been modified and deleted, but new files you have
+ not told Git about are not affected.
+ -e, --edit edit the commit message before committing
+ -l, --message-length-limit MESSAGE_LENGTH_LIMIT
+ length limit of the commit message; 0 for no limit
+ -- Positional arguments separator (recommended)
+
diff --git a/docs/third-party-commitizen.md b/docs/third-party-commitizen.md
index dc9b539c85..0c35a31557 100644
--- a/docs/third-party-commitizen.md
+++ b/docs/third-party-commitizen.md
@@ -145,3 +145,56 @@ commitizen:
version_provider: deno-provider
version_scheme: semver
```
+
+### [cz-path](https://pypi.org/project/cz-path/)
+
+Provides prefix choices for commit messages based on staged files (Git only).
+For example, if the staged files are `component/z/a.ts` and `component/z/b.ts`,
+the path prefix option will be `component/z` and commit message might look like:
+`component/z/: description of changes`. If only one file is staged, the extension
+is removed in the prefix.
+
+#### Installation
+
+```sh
+pip install cz-path
+```
+
+#### Usage
+
+Add `cz-path` to your configuration file.
+
+Example for `.cz.json`:
+
+```json
+{
+ "commitizen": {
+ "name": "cz_path",
+ "remove_path_prefixes": ["src", "module_name"]
+ }
+}
+```
+
+The default value for `remove_path_prefixes` is `["src"]`. Adding `/` to the
+prefixes is not required.
+
+#### Example session
+
+```plain
+ $ git add .vscode/
+ $ cz -n cz_path c
+? Prefix: (Use arrow keys)
+ ยป .vscode
+ .vscode/
+ project
+ (empty)
+? Prefix: .vscode
+? Commit title: adjust settings
+
+.vscode: adjust settings
+
+[main 0000000] .vscode: adjust settings
+ 2 files changed, 1 insertion(+), 11 deletions(-)
+
+Commit successful!
+```
diff --git a/poetry.lock b/poetry.lock
index c5c893931a..e7f0e96e51 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -222,7 +222,6 @@ description = "Composable command line interface toolkit"
optional = false
python-versions = ">=3.7"
groups = ["documentation"]
-markers = "python_version == \"3.9\""
files = [
{file = "click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2"},
{file = "click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a"},
@@ -231,22 +230,6 @@ files = [
[package.dependencies]
colorama = {version = "*", markers = "platform_system == \"Windows\""}
-[[package]]
-name = "click"
-version = "8.2.1"
-description = "Composable command line interface toolkit"
-optional = false
-python-versions = ">=3.10"
-groups = ["documentation"]
-markers = "python_version != \"3.9\""
-files = [
- {file = "click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b"},
- {file = "click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202"},
-]
-
-[package.dependencies]
-colorama = {version = "*", markers = "platform_system == \"Windows\""}
-
[[package]]
name = "colorama"
version = "0.4.6"
@@ -550,31 +533,6 @@ perf = ["ipython"]
test = ["flufl.flake8", "importlib_resources (>=1.3) ; python_version < \"3.9\"", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"]
type = ["pytest-mypy"]
-[[package]]
-name = "importlib-metadata"
-version = "8.7.0"
-description = "Read metadata from Python packages"
-optional = false
-python-versions = ">=3.9"
-groups = ["main"]
-markers = "python_version != \"3.9\""
-files = [
- {file = "importlib_metadata-8.7.0-py3-none-any.whl", hash = "sha256:e5dd1551894c77868a30651cef00984d50e1002d06942a7101d34870c5f02afd"},
- {file = "importlib_metadata-8.7.0.tar.gz", hash = "sha256:d13b81ad223b890aa16c5471f2ac3056cf76c5f10f82d6f9292f0b415f389000"},
-]
-
-[package.dependencies]
-zipp = ">=3.20"
-
-[package.extras]
-check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""]
-cover = ["pytest-cov"]
-doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"]
-enabler = ["pytest-enabler (>=2.2)"]
-perf = ["ipython"]
-test = ["flufl.flake8", "importlib_resources (>=1.3) ; python_version < \"3.9\"", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6,!=8.1.*)", "pytest-perf (>=0.9.2)"]
-type = ["pytest-mypy"]
-
[[package]]
name = "iniconfig"
version = "2.1.0"
@@ -594,7 +552,6 @@ description = "IPython: Productive Interactive Computing"
optional = false
python-versions = ">=3.9"
groups = ["dev"]
-markers = "python_version == \"3.9\""
files = [
{file = "ipython-8.18.1-py3-none-any.whl", hash = "sha256:e8267419d72d81955ec1177f8a29aaa90ac80ad647499201119e2f05e99aa397"},
{file = "ipython-8.18.1.tar.gz", hash = "sha256:ca6f079bb33457c66e233e4580ebfc4128855b4cf6370dddd73842a9563e8a27"},
@@ -626,46 +583,6 @@ qtconsole = ["qtconsole"]
test = ["pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath"]
test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pandas", "pickleshare", "pytest (<7.1)", "pytest-asyncio (<0.22)", "testpath", "trio"]
-[[package]]
-name = "ipython"
-version = "8.37.0"
-description = "IPython: Productive Interactive Computing"
-optional = false
-python-versions = ">=3.10"
-groups = ["dev"]
-markers = "python_version != \"3.9\""
-files = [
- {file = "ipython-8.37.0-py3-none-any.whl", hash = "sha256:ed87326596b878932dbcb171e3e698845434d8c61b8d8cd474bf663041a9dcf2"},
- {file = "ipython-8.37.0.tar.gz", hash = "sha256:ca815841e1a41a1e6b73a0b08f3038af9b2252564d01fc405356d34033012216"},
-]
-
-[package.dependencies]
-colorama = {version = "*", markers = "sys_platform == \"win32\""}
-decorator = "*"
-exceptiongroup = {version = "*", markers = "python_version < \"3.11\""}
-jedi = ">=0.16"
-matplotlib-inline = "*"
-pexpect = {version = ">4.3", markers = "sys_platform != \"win32\" and sys_platform != \"emscripten\""}
-prompt_toolkit = ">=3.0.41,<3.1.0"
-pygments = ">=2.4.0"
-stack_data = "*"
-traitlets = ">=5.13.0"
-typing_extensions = {version = ">=4.6", markers = "python_version < \"3.12\""}
-
-[package.extras]
-all = ["ipython[black,doc,kernel,matplotlib,nbconvert,nbformat,notebook,parallel,qtconsole]", "ipython[test,test-extra]"]
-black = ["black"]
-doc = ["docrepr", "exceptiongroup", "intersphinx_registry", "ipykernel", "ipython[test]", "matplotlib", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "sphinxcontrib-jquery", "tomli ; python_version < \"3.11\"", "typing_extensions"]
-kernel = ["ipykernel"]
-matplotlib = ["matplotlib"]
-nbconvert = ["nbconvert"]
-nbformat = ["nbformat"]
-notebook = ["ipywidgets", "notebook"]
-parallel = ["ipyparallel"]
-qtconsole = ["qtconsole"]
-test = ["packaging", "pickleshare", "pytest", "pytest-asyncio (<0.22)", "testpath"]
-test-extra = ["curio", "ipython[test]", "jupyter_ai", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.23)", "pandas", "trio"]
-
[[package]]
name = "jedi"
version = "0.19.2"
@@ -1104,7 +1021,7 @@ description = "Pexpect allows easy control of interactive console applications."
optional = false
python-versions = "*"
groups = ["dev"]
-markers = "python_version == \"3.9\" and sys_platform != \"win32\" or sys_platform != \"win32\" and sys_platform != \"emscripten\""
+markers = "sys_platform != \"win32\""
files = [
{file = "pexpect-4.9.0-py2.py3-none-any.whl", hash = "sha256:7236d1e080e4936be2dc3e326cec0af72acf9212a7e1d060210e70a47e253523"},
{file = "pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f"},
@@ -1207,7 +1124,7 @@ description = "Run a subprocess in a pseudo terminal"
optional = false
python-versions = "*"
groups = ["dev"]
-markers = "python_version == \"3.9\" and sys_platform != \"win32\" or sys_platform != \"win32\" and sys_platform != \"emscripten\""
+markers = "sys_platform != \"win32\""
files = [
{file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"},
{file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"},
@@ -1817,7 +1734,7 @@ files = [
{file = "typing_extensions-4.14.0-py3-none-any.whl", hash = "sha256:a1514509136dd0b477638fc68d6a91497af5076466ad0fa6c338e44e359944af"},
{file = "typing_extensions-4.14.0.tar.gz", hash = "sha256:8676b788e32f02ab42d9e7c61324048ae4c6d844a399eebace3d4979d75ceef4"},
]
-markers = {main = "python_version < \"3.11\"", dev = "python_version < \"3.12\"", script = "python_version < \"3.11\"", test = "python_version < \"3.11\""}
+markers = {main = "python_version < \"3.11\"", dev = "python_version < \"3.11\"", script = "python_version < \"3.11\"", test = "python_version < \"3.11\""}
[[package]]
name = "urllib3"
@@ -2009,11 +1926,11 @@ description = "Backport of pathlib-compatible object wrapper for zip files"
optional = false
python-versions = ">=3.9"
groups = ["main", "documentation"]
+markers = "python_version == \"3.9\""
files = [
{file = "zipp-3.22.0-py3-none-any.whl", hash = "sha256:fe208f65f2aca48b81f9e6fd8cf7b8b32c26375266b009b413d45306b6148343"},
{file = "zipp-3.22.0.tar.gz", hash = "sha256:dd2f28c3ce4bc67507bfd3781d21b7bb2be31103b51a4553ad7d90b84e57ace5"},
]
-markers = {documentation = "python_version == \"3.9\""}
[package.extras]
check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""]
@@ -2026,4 +1943,4 @@ type = ["pytest-mypy"]
[metadata]
lock-version = "2.1"
python-versions = ">=3.9,<4.0"
-content-hash = "f35cf57718e28836cf1e70b33edab9ce623b01a7f2d31d712585554721f6d403"
+content-hash = "c98af83d4ce726bbfba04eea3de90e642fb7bdb08bedf0bf1b00b92a1b140e76"
diff --git a/pyproject.toml b/pyproject.toml
index 6990741957..ab3ba39ee1 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -23,8 +23,7 @@ dependencies = [
"typing-extensions (>=4.0.1,<5.0.0) ; python_version < '3.11'",
"charset-normalizer (>=2.1.0,<4)",
# Use the Python 3.11 and 3.12 compatible API: https://github.com/python/importlib_metadata#compatibility
- "importlib-metadata >=8.0.0,!=8.7.0,<9.0.0 ; python_version == '3.9'", # importlib-metadata@8.7.0 + python3.9 breaks our unit test
- "importlib-metadata >=8.0.0,<9.0.0 ; python_version != '3.9'",
+ "importlib-metadata >=8.0.0,<8.7.0 ; python_version < '3.10'",
]
keywords = ["commitizen", "conventional", "commits", "git"]
# See also: https://pypi.org/classifiers/
pFad - Phonifier reborn
Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies:
Alternative Proxy
pFad Proxy
pFad v3 Proxy
pFad v4 Proxy