Skip to content

CMLDEV-1026 - ignore removed nodes attribute from compute host respon…#206

Merged
tmikuska merged 1 commit intodevfrom
CMLDEV-1026-system-compute-host-ignore-nodes
Apr 4, 2026
Merged

CMLDEV-1026 - ignore removed nodes attribute from compute host respon…#206
tmikuska merged 1 commit intodevfrom
CMLDEV-1026-system-compute-host-ignore-nodes

Conversation

@virlos
Copy link
Copy Markdown
Collaborator

@virlos virlos commented Apr 2, 2026

…se in previous CML releases

@tmikuska tmikuska merged commit e8d8c1e into dev Apr 4, 2026
5 checks passed
@tmikuska tmikuska deleted the CMLDEV-1026-system-compute-host-ignore-nodes branch April 4, 2026 23:03
tmikuska pushed a commit that referenced this pull request Apr 4, 2026
tmikuska added a commit that referenced this pull request Apr 9, 2026
* Expose all operational data in sync call
* Allow passing arbitrary PyATS parameters in run command
* Configuration cleanup
* Add missing attributes to join_existing_lab method
* Fix type annotations for convergence wait time
* Remove unnecessary trailing slashes

Add support for starting index when connecting nodes (#126)

SIMPLE-7357 - Advanced group permissions

SIMPLE-7357 - Advanced group permissions update
* Fix deprecated endpoints and remove missed trailing slashes

SIMPLE-6003 - Improve node __repr__ readability
* Switch all __repr__ to f-strings and shorten to useful info
* Simplify node constructor for manual use

Add params to connection function (#134)
* Add ability to update multiple lab properties

SIMPLE-7411 - Support tar file upload for Docker

SIMPLE-7407 - Diagnostics in client (#138)

SIMPLE-7496 - Deprecate get_diagnostics with no args (#139)
* Remove unused group permissions
* Rename modules to singular
* Fix docstring indentation and content
* Raise LabNotFound only on 404 Not Found

SIMPLE-7569 - API changes for RBAC (#141)

SIMPLE-7622 - Fix GET NodeDefinition API call (#145)

SIMPLE-7461 - Consolidate exceptions (#144)

SIMPLE-7433 - Show all running nodes in compute hosts sysadmin (#146)
* Fix image definition download with YAML response
* Workaround for previous CML releases

SIMPLE-7745 - Allow .tar.gz image file extension (#147)

SIMPLE-7783 - Use test_data_dir fixture, allow Path for image upload (#148)

SIMPLE-6967 - Add pubkey for user create/update and testbed key_path setting (#151)

SIMPLE-7758 - Add client type identifier (#149)
* Fix CVE-2024-47081

SIMPLE-7993 - Deprecate original module names (#156)
* Fix CVE-2025-50181, CVE-2025-50182

SIMPLE-8002 - Exclude unneeded files (#161)

SIMPLE-8052 - Fix None fields (#162)

SIMPLE-7778 - Update Poetry to version 2 (#163)
* Update CML version to 2.10
* Rework mechanism to check incompatible versions

SIMPLE-7926 - Fix PCL operational data storage (#157)

SIMPLE-7927 - Fix system management controller property compute load
* Fix invalid external connector references

Fix PCL node configuration confusion with Main and default (#166)

SIMPLE-8078 - PCL support for lab repositories (#165)

Make client version check optional, rearrange attribute setting in init (#169)

CMLDEV-95 - Remove deprecated structures (#170)

CMLDEV-377 - Support for clearing discovered addresses (#167)

CMLDEV-587 - Extend link conditioning parameters (#174)
* Allow unsetting link conditioning properties

CMLDEV-617 - Drop support for Python 3.9 (#175)
* Add support for Python 3.14

CMLDEV-655 - Refactor opt-in to enum (#178)
* Add telemetry support

CMLDEV-12 - Add serial console switching for pyATS connections (#177)

CMLDEV-376 - Fix pyATS relogin after node stop and start (#176)

CMLDEV-23 - Clean pyATS loggers (#179)

CMLDEV-531 - Implement lab_autostart support (#172)

CMLDEV-537 - Implement node-staging feature (#173)

CMLDEV-702 - Fix pyATS console switching (#184)
* Default pyATS terminal server SSH options disable agents and identities
* Improve disconnect detection and reconnect

CMLDEV-575 - PCAP support (#186)

CMLDEV-727 - JWT authentication (#182)

CMLDEV-777 - Refactor configuration handling
* Reduce complexity of _get_configuration
* Move config methods to ClientConfig
* Resolve pyATS inconsistencies

CMLDEV-727 - Revert old authentication for previous CML releases (#189)

CMLDEV-786 - Switch to using link ID as capture key (#188)
* Remove the never-released capture key method

CMLDEV-428 - Make pyATS configurable per node image definition (#190)

CMLDEV-690 - Add pyATS enable password configurable per node

Move deprecation warning for configuration via input (#191)

CMLDEV-689 - Implement RADIUS auth (#192)

CMLDEV-489 - Add timeout property to LDAP auth and fix password setter
* Fix opt_in coercion for UserManagement payloads
* Fix documentation and deprecation warning correctness
* Update cryptography to fix vulnerabilities
* Deprecate USER_LIST diagnostics

CMLDEV-910 - Raise APIError when JWT is incorrect and credentials not provided (#194)

Fix bugs and apply improvements across client library (#197)
* Fix PyatsException inheritance and ControllerNotFound instantiation
* Fix sync_states staleness handling and _import_link parameter order
* Refactor Annotation validation, Version comparisons, and get_lab_list
* Optimize Node.next_available_interface with direct slicing

Store users locally to improve performance when querying labs/nodes (#199)
* Consolidate duplicated annotation properties

CMLDEV-1026 - ignore removed nodes attribute from compute host response in previous CML releases (#206)

Fix various vulnerabilities in aiohttp, crypgraphy, pygments and requests

CMLDEV-940 Do not log SSL/TLS warnings when explicitly HTTP is requested (#207)

CMLDEV-1026 Add backward compatibility guards and tests for virl2_client 2.10 (#208)

- Move Version class from virl2_client.py to utils.py to avoid circular imports
- Add FeatureNotSupported exception and requires_version decorator to guard
  features that need CML >= 2.9 (clone_image, lab repositories)
- Store controller_version on session; always parse even with check_version=False
- Add respx-based backward compat tests (auth branching, version guards,
  response shape tolerance, 404 handling)
- Add API contract tests to verify public surface stability

CMLDEV-923 ruff lint fixes (#209)

* Add stacklevel=2 to all warnings.warn calls (ruff B028)

Ensures deprecation warnings point to the caller's frame
rather than the internal function issuing the warning.

* Convert logging f-strings to lazy % formatting (ruff G004)

Defers string interpolation until the message is actually emitted,
avoiding unnecessary formatting when the log level is disabled.

* Apply miscellaneous ruff auto-fixes

- Sort __all__ exports alphabetically (RUF022)
- Move Coroutine import from typing to collections.abc (UP035)
- Remove unnecessary string quotes on type annotations (UP037)
- Remove stale noqa: A003 on LabRepository.id property
- Convert str.format() to f-string (UP032)

* Revert EventListener to deferred import and misc ruff fixes

aiohttp is an optional extra; importing event_listening at module
level breaks installations without it.  Restore the deferred import
inside start_event_listening.  Also includes: SIM117 fix, B027 noqa,
T201 print replacements, examples/ exclusion, specific F403 noqa.

CMLDEV-941 Rename `id` parameters, fix LabRepository ownership, and protect object IDs (#210)

- Rename `id` to `notice_id` in SystemNotice and add_system_notice_local (A002)
- Rename `id` to `repo_id` in LabRepository and add_lab_repository_local (A002)
- Change LabRepository to reference its owning LabRepositoryManagement
  instead of SystemManagement, removing broken hasattr fallback branches
- Prevent _update from overwriting object IDs in Node, Interface,
  ResourcePool, ComputeHost, and SystemNotice
- Update folder type to str | None in LabRepository
- Align optional attributes with server-side Pydantic schemas:
  LabRepository.folder, ResourcePool (description, template, licenses,
  ram, cpus, disk_space, external_connectors, users, user_pools), and
  Interface.slot now default to None
- Simplify tests by dropping explicit None arguments that use defaults
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants