mreg-cli 1.11.0__tar.gz → 1.12.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/CHANGELOG.md +7 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/CLAUDE.md +0 -14
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/PKG-INFO +2 -2
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/ci/docker-compose.yml +1 -1
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/ci/testsuite-result.json +427 -361
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/_version.py +3 -3
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/cli.py +2 -2
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/help.py +4 -12
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host_submodules/core.py +2 -2
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/policy.py +3 -3
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/exceptions.py +22 -57
- mreg_cli-1.12.0/mreg_cli/output/history.py +57 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/policy.py +1 -1
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/utilities/api.py +1 -3
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/PKG-INFO +2 -2
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/requires.txt +1 -1
- mreg_cli-1.12.0/mreg_cli.egg-info/scm_version.json +8 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/pyproject.toml +1 -1
- mreg_cli-1.12.0/tests/test_exceptions.py +291 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/uv.lock +4 -4
- mreg_cli-1.11.0/mreg_cli/output/history.py +0 -106
- mreg_cli-1.11.0/mreg_cli.egg-info/scm_version.json +0 -8
- mreg_cli-1.11.0/tests/test_exceptions.py +0 -164
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/.github/workflows/publish.yml +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/.github/workflows/test.yml +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/.gitignore +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/.markdownlint.json +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/AUTHORS +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/CONTRIBUTING +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/LICENSE +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/README.md +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/ci/Dockerfile +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/ci/diff.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/ci/run_testsuite_and_record_V2.sh +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/ci/testsuite +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/data/mreg-cli.conf +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/__about__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/__main__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/choices.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/client.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/base.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/cache.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/dhcp.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/group.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host_submodules/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host_submodules/a_aaaa.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host_submodules/bacnet.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host_submodules/cname.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/host_submodules/rr.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/label.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/logging.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/network.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/permission.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/recording.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/registry.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/root.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/commands/zone.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/config.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/dirs.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/errorbuilder.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/help_formatter.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/log.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/main.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/base.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/cache.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/group.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/host.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/meta.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/network.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/output/zone.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/outputmanager.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/prompt.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/py.typed +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/tags.txt +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/tokenfile.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/types.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/utilities/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/utilities/fs.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/utilities/shared.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli/utilities/validators.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/SOURCES.txt +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/dependency_links.txt +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/entry_points.txt +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/scm_file_list.json +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/mreg_cli.egg-info/top_level.txt +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/run.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/setup.cfg +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/api/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/api/test_client.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/commands/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/commands/test_host.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/commands/test_network.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/commands/test_rr.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/conftest.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_config.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_errorbuilder.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_log.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_outputmanager.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_prompt.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_tokenfile.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/test_types.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/utilities/__init__.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/utilities/test_fs.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tests/utils.py +0 -0
- {mreg_cli-1.11.0 → mreg_cli-1.12.0}/tox.ini +0 -0
|
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
<!-- ## Unreleased -->
|
|
9
9
|
|
|
10
|
+
## [1.12.0](https://github.com/unioslo/mreg-cli/releases/tag/1.12.0) - 2026-10-05
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Mreg API errors are now rendered as human-readable messages instead of formatted JSON. This is a result of improved exception parsing and handling in `mreg-api` 0.6.0.
|
|
15
|
+
- Large internal refactor of exceptions, drastically reducing the number of exception classes. Should have no effect on the user experience.
|
|
16
|
+
|
|
10
17
|
## [1.11.0](https://github.com/unioslo/mreg-cli/releases/tag/1.11.0) - 2026-09-09
|
|
11
18
|
|
|
12
19
|
### Changed
|
|
@@ -125,20 +125,6 @@ This allows uniform handling of exceptions from both `mreg_cli` and `mreg_api`.
|
|
|
125
125
|
|
|
126
126
|
### Exception Classes
|
|
127
127
|
|
|
128
|
-
Exception classes in `mreg_cli.exceptions` are pure data containers with no output methods:
|
|
129
|
-
|
|
130
|
-
```text
|
|
131
|
-
CliException (base)
|
|
132
|
-
├── CliError (non-recoverable errors, displayed in red)
|
|
133
|
-
│ ├── CreateError, PatchError, DeleteError, GetError
|
|
134
|
-
│ ├── InternalError, FileError, ValidationError, LoginFailedError
|
|
135
|
-
└── CliWarning (recoverable, displayed in italics)
|
|
136
|
-
├── APIError (has response attribute), UnexpectedDataError
|
|
137
|
-
├── EntityNotFound, EntityAlreadyExists, MultipleEntitiesFound
|
|
138
|
-
├── TooManyResults, NoHistoryFound, ForceMissing
|
|
139
|
-
└── IPNetworkWarning and subclasses
|
|
140
|
-
```
|
|
141
|
-
|
|
142
128
|
### Exception Handling Locations
|
|
143
129
|
|
|
144
130
|
- `mreg_cli/cli.py` - Main command parsing catches and handles exceptions
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mreg-cli
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.12.0
|
|
4
4
|
Summary: MREG interactive command line client
|
|
5
5
|
Author: Others (see AUTHORS)
|
|
6
6
|
Author-email: Øyvind Kolbu <oyvind.kolbu@usit.uio.no>, Safet A <amedov@usit.uio.no>, Magnus Hirth <mhmorgan42@gmail.com>, Nico <nicolaydmohebi@gmail.com>, Marius Bakke <marius.bakke@usit.uio.no>, Fredrik Larsen <fredrik.larsen@usit.uio.no>, Paal Braathen <paal.braathen@usit.uio.no>, Nils Hiorth <nils@nls.me>, Dmytro Karpenko <dmytrok@usit.uio.no>
|
|
@@ -26,7 +26,7 @@ Requires-Dist: pydantic-extra-types>=2.1.0
|
|
|
26
26
|
Requires-Dist: platformdirs>=4.3.0
|
|
27
27
|
Requires-Dist: pydantic-settings>=2.10.1
|
|
28
28
|
Requires-Dist: rich>=13.9.4
|
|
29
|
-
Requires-Dist: mreg-api<0.
|
|
29
|
+
Requires-Dist: mreg-api<0.7.0,>=0.6.0
|
|
30
30
|
Dynamic: license-file
|
|
31
31
|
|
|
32
32
|
# MREG CLI [](https://github.com/unioslo/mreg-cli/actions/workflows/test.yml)
|