v2.3 Release Notes¶
This document describes all new features and changes in the release. The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Release Overview¶
- Added the ability to for remote file copy on Cisco NXOS, Cisco ASA, and Arista EOS operating systems.
v2.3.0 (2026-04-14)¶
Added¶
- #365 - Added the remote file copy feature to Arista EOS devices.
- #365 - Added unittests for remote file copy on Arista EOS devices.
- #366 - Added
remote_file_copy,check_file_exists,get_remote_checksum, andverify_filesupport forASADevice(FTP, TFTP, SCP, HTTP, HTTPS). - #367 - Added remote file copy feature to Cisco NXOS devices.
- #367 - Added unittests for remote file copy for Cisco NXOS devices.
Changed¶
- #368 - Improved EOS remote file copy to validate scheme and query strings before connecting, use
clean_urlto prevent credential leakage, and simplify credential routing. - #368 - Changed copy command builders to include the source file path in the URL and use
flash:as the destination, matching EOS CLI conventions. - #368 - Fixed
_uptime_to_stringto use integer division, preventingValueErroron format specifiers. - #368 - Fixed
check_file_existsandget_remote_checksumto open the SSH connection before use, preventingAttributeErrorwhen called standalone. - #368 - Fixed password-prompt handling in
remote_file_copyto wait for the transfer to complete before proceeding to verification. - #368 - Simplified checksum parsing in
get_remote_checksumto use string splitting instead of regex. - #368 - Changed
verify_fileto return early when file does not exist and use case-insensitive checksum comparison. - #368 - Removed
include_usernameparameter fromremote_file_copyin favor of automatic credential routing based on scheme and username presence.
Removed¶
Fixed¶
- #366 - Fixed
ASADevice._get_file_systemto usere.searchinstead ofre.matchso the filesystem label is correctly parsed regardless of leading whitespace indiroutput. - #366 - Fixed
ASADevice._send_commandto anchor the%error pattern to the start of a line (^%) to prevent false-positiveCommandErrorraises during file copy operations. - #366 - Fixed
ASADevice.active_redundancy_statesto include"disabled"so standalone (non-failover) units are correctly treated as active.
Housekeeping¶
- #368 - Converted EOS remote file copy tests from hypothesis/pytest standalone functions to unittest TestCase with
self.assertRaisesandsubTestfor consistency with the rest of the codebase. - #368 - Removed duplicate test class
TestRemoteFileCopyCommandExecutionand consolidated intoTestRemoteFileCopy. - #368 - Added integration tests for EOS device connectivity and remote file copy across FTP, TFTP, SCP, HTTP, HTTPS, and SFTP protocols.