qualys-cli 0.1.7__tar.gz → 0.1.9__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.
Files changed (70) hide show
  1. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/CHANGELOG.md +27 -1
  2. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/PKG-INFO +2 -2
  3. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/pyproject.toml +1 -1
  4. qualys_cli-0.1.9/src/qualys_cli/__init__.py +1 -0
  5. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/_docs/usage.html +3 -3
  6. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/cli.py +9 -4
  7. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/client.py +117 -0
  8. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/vm.py +22 -1
  9. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/config.py +38 -0
  10. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/conftest.py +23 -0
  11. qualys_cli-0.1.9/tests/test_isolation.py +31 -0
  12. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_vm.py +127 -0
  13. qualys_cli-0.1.7/src/qualys_cli/__init__.py +0 -1
  14. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/.gitignore +0 -0
  15. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/LICENSE +0 -0
  16. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/README.md +0 -0
  17. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/__main__.py +0 -0
  18. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/audit.py +0 -0
  19. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/auth.py +0 -0
  20. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/cache.py +0 -0
  21. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/__init__.py +0 -0
  22. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/asset.py +0 -0
  23. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/ca.py +0 -0
  24. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/cs.py +0 -0
  25. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/csam.py +0 -0
  26. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/etm.py +0 -0
  27. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/pc.py +0 -0
  28. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/pm.py +0 -0
  29. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/scanauth.py +0 -0
  30. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/sub.py +0 -0
  31. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/tc.py +0 -0
  32. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/user.py +0 -0
  33. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/commands/was.py +0 -0
  34. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/extras.py +0 -0
  35. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/flair.py +0 -0
  36. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/formatters.py +0 -0
  37. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/history.py +0 -0
  38. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/http_server.py +0 -0
  39. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/mcp_server.py +0 -0
  40. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/metrics.py +0 -0
  41. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/platforms.py +0 -0
  42. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/src/qualys_cli/queries.py +0 -0
  43. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/__init__.py +0 -0
  44. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_agent_mode.py +0 -0
  45. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_all_commands_smoke.py +0 -0
  46. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_asset.py +0 -0
  47. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_audit.py +0 -0
  48. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_ca.py +0 -0
  49. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_client.py +0 -0
  50. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_csam.py +0 -0
  51. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_error_handling.py +0 -0
  52. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_etm.py +0 -0
  53. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_features.py +0 -0
  54. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_flair.py +0 -0
  55. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_formatters.py +0 -0
  56. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_global_flags.py +0 -0
  57. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_help.py +0 -0
  58. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_high_fixes.py +0 -0
  59. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_main.py +0 -0
  60. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_med_fixes.py +0 -0
  61. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_pc.py +0 -0
  62. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_pm.py +0 -0
  63. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_resiliency.py +0 -0
  64. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_review_fixes.py +0 -0
  65. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_scanauth.py +0 -0
  66. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_security_fixes.py +0 -0
  67. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_sub.py +0 -0
  68. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_tc.py +0 -0
  69. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_user.py +0 -0
  70. {qualys_cli-0.1.7 → qualys_cli-0.1.9}/tests/test_was.py +0 -0
@@ -6,6 +6,29 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.1.9] — 2026-08-12
10
+
11
+ ### Changed
12
+ - Version bump for PyPI release. No functional changes relative to 0.1.8.
13
+
14
+ ## [0.1.8] — 2026-07-21
15
+
16
+ ### Added
17
+ - Every API request now carries client-identification headers so server-side
18
+ operators can attribute traffic to the CLI and count calls per install/user:
19
+ a descriptive `User-Agent` (`qualys-cli/<version> (python/<ver>; <os> <arch>)`
20
+ in place of the opaque `python-httpx/*` default), plus `X-Client-Id`,
21
+ `X-Client-Version`, `X-Install-Id`, and `X-User-Id`.
22
+ - `X-Install-Id` is a stable, opaque per-installation UUID persisted to
23
+ `~/.config/qualys-cli/install_id` (mode `0600`); it encodes no username,
24
+ hostname, or other host information. Resolution is best-effort — a read-only
25
+ or unwritable home degrades to an ephemeral id and never fails a request.
26
+ - The two identifying headers (`X-Install-Id`, `X-User-Id`) can be suppressed
27
+ with `QUALYS_NO_TELEMETRY_HEADERS=1`; the non-identifying `User-Agent` /
28
+ `X-Client-*` headers are always sent. The `X-User-Id` value is sanitised
29
+ (control characters and non-latin-1 bytes stripped) so an unusual username
30
+ can neither break client construction nor enable header injection.
31
+
9
32
  ## [0.1.7] — 2026-07-17
10
33
 
11
34
  ### Fixed
@@ -229,7 +252,10 @@ Initial public release.
229
252
  - Ruff lint clean (E, F, I, UP, B, C4, SIM rule sets).
230
253
  - Codegen pipeline (`scripts/`) is opt-in via the `codegen` extra.
231
254
 
232
- [Unreleased]: https://github.com/qualys/qualys-cli/compare/v0.1.6...HEAD
255
+ [Unreleased]: https://github.com/qualys/qualys-cli/compare/v0.1.9...HEAD
256
+ [0.1.9]: https://github.com/qualys/qualys-cli/compare/v0.1.8...v0.1.9
257
+ [0.1.8]: https://github.com/qualys/qualys-cli/compare/v0.1.7...v0.1.8
258
+ [0.1.7]: https://github.com/qualys/qualys-cli/compare/v0.1.6...v0.1.7
233
259
  [0.1.6]: https://github.com/qualys/qualys-cli/compare/v0.1.5...v0.1.6
234
260
  [0.1.5]: https://github.com/qualys/qualys-cli/compare/v0.1.4...v0.1.5
235
261
  [0.1.4]: https://github.com/qualys/qualys-cli/compare/v0.1.2...v0.1.4
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.4
1
+ Metadata-Version: 2.5
2
2
  Name: qualys-cli
3
- Version: 0.1.7
3
+ Version: 0.1.9
4
4
  Summary: Unified command-line interface for the Qualys Cloud Platform REST APIs (VM, PC, PM, ETM, WAS, TotalCloud, Cloud Agent, Container Security, CSAM, Subscription, Asset, and User management).
5
5
  Project-URL: Homepage, https://www.qualys.com
6
6
  Author-email: Qualys <support@qualys.com>
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "qualys-cli"
7
- version = "0.1.7"
7
+ version = "0.1.9"
8
8
  description = "Unified command-line interface for the Qualys Cloud Platform REST APIs (VM, PC, PM, ETM, WAS, TotalCloud, Cloud Agent, Container Security, CSAM, Subscription, Asset, and User management)."
9
9
  readme = { file = "README.md", content-type = "text/markdown" }
10
10
  license = { file = "LICENSE" }
@@ -0,0 +1 @@
1
+ __version__ = "0.1.9"