Conversation
…se in previous CML releases
tmikuska
pushed a commit
that referenced
this pull request
Apr 4, 2026
…se in previous CML releases (#206)
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
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
…se in previous CML releases