You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
π₯ re-named a number of CentralApi methods (for consistency)
π₯ made parameters consistent. device_type, from_time, to_time, mac, serial, serials...
π§βπ» device_type should always accept common centralcli library device_types not the various API endpoint device_types.
β°οΈ Removed a number of comments, and unused or redundant methods.
π§βπ» replaced *args, **kwargs in a few places, with full arg/kwarg typed definitions.
β¨ various minor improvements, additional options.
π get_audit_log_events renamed to get_audit_event_logs
Bug Fixes
π Update/fix url for get_dhcp_servers which is renamed to get_dhcp_pools
π fix batch add/delete labels. Needed update after switch to common import file parser.
π fix potential for sub expiration to be None (no sub)
π fix errant logic throwing cache error when one didn't occur
β Fix potential for caption to be undefined, corner-case, pytest, or user using hidden -U option
π½ refactor RateLimit.ok to accomodate accounts with per sec rate-limit disabled.
π Handle scenario where cleaner includes filter that results in no results. (i.e. show inventory --no-sub when all devices have a subscription). This filtering is done in the cleaner.
π cencli upgrade swarm | group fix issue with --at option
β¨ add new --in option.
π fix cache update after batch move when only one of site/group move is performed
π fix potential IndexError while cleaning event log output
π fix issue where cencli show acp-logs would exit with an error when -a or -n flag was used.
π fix issue causing cache to update each time test method is ran.
ποΈ π fix potential rate-limit issue in full cache refresh
π accept datetime object for time params in get_audit_logs and get_audit_logs_events
π Various other minor bug fixes
ποΈ fix potential rate-limit issue in full cache refresh
π refactor cache logging... now done in cache update methods
π Fix issue where show <dev_type | all> --inv stripped MAC address for devices only in the inventory.
π fix common yes options
π fix cli disable auto-sub
π Fix corner-case issue where outdated cache causes exception in client list cleaner
π fix minor bug in batch examples. tablib not honoring booleans in import data
Enhancements
β¨ Add support for APs in cencli show interfaces
β¨ show inventory now shows colorized subscription expiration for each device.
:adjust verbosity options for show inventory and show all
β¨ Show inventory now shows subscription expiration
π¨ overhaul show alerts use common time parser.
β¨ π π¨ major overhaul of cencli show logs Uses consistent timerange options, supports all available filtering options, completion for level...
ποΈ Update inventory cache after device add
β¨ allow delete label or delete labels (singular/plural)
π cencli upgrade device fix issue with --at option
β»οΈ refactor show audit logs and show audit acp-logs
π rename sub-command: show audit system-logs is not show audit acp-logs
π fix bug related to default start in show audit acp-logs
π¨ simplify start/end accepted format options. Remove seconds
β¨ π Use CLI options/arguments from common clioption.py
β¨ show audit logs and show audit acp-logs will accept serial for --dev without doing cache lookup.
β¨ Add cencli cancel (upgrade)
β¨ improve site completion
ποΈ Use pydantic model for site cache updates
π¬ CombinedResponse ensure RateLimit string is from most recent API call
π If CombinedResponse partially failed due to exception it could pull the rate_limit string from the Exception Response which did not perform an API call.
ποΈ Update inv cache after unassigning license from device(s)
π¬ Confirmation prompts and most other messages outside of the actual rendered output are now sent to stderr. (This reduces the amount of other stuff if user redirects stdout)
π‘ --out flag is still the preferred method for redirecting output to a file.
ποΈ model for Labels in cache, improve label completion
ποΈ π move and batch move now update the cache after move.
β¨ Filter non central licenses, improve get_x_identifier messaging when not found
β¨ Add support for license_type and device_type filters to get_subscriptions
ποΈ Improve cache update after label add
π¨ improve sort_by logic (accomodate % in key). restore full response output for failed responses.
π¬ Some minor improvements to assign label <devs>, use error_console for confirmation prompt.
β¨ cencli add labels now supports multiple labels,
β¨ Update cencli batch delete Allow unnecessary sub-command devices Add -k option to preserve the config for CX switches during group move.
β¨ Add cencli check firmware-available...
Dev Improvements
β»οΈ Improve get_multiline_input
β rename rate limit test so it's skipped.
This test has to be ran solo, or other tests running in parallel will cause it to fail.
β»οΈ Move Empty response message to Response object str method
π¨ Improve batch verify logic re subscription/license
π¨ break up show_devices into multiple functions.
π·οΈ Improve Inventory model, it is now used as the validator/cleaner for Inventory cache updates.
β¨ DateTime constructor now supports format_expiration will colorize associated string representation based on remaining expiration (< 6 months = orange, < 3 months = red).
π Finish last remaining DateTime bits, add original attribute
π Added docstr to a few methods that lacked them.
β¨ add more common arguments/options
π§βπ» Add sep parameter to utils.color. To customize the seperator used to join a list of strings.
π·οΈ Add all params and typing params passed to get_*_device methods
π§βπ» Add table attribute to Response object. Will return List[dict] where each dict only contains keys common to all other dicts.
β»οΈ Inventory model will accept pre-cleaned keys from cache
π§βπ» Add cache_file_ok property
β Add test for show audit acp-logs
π§βπ» Add len method to RateLimit object (returns length of the resulting str), may be useful in determining sizing for caption to display nicely.
π move verify_time_range into clicommon
π¨ rename isserial to is_serial for consistency
β»οΈ rename and adapt delta_to_start() to provide time in past or future.
π¬ Selective colorization for Response string, add __rich__method to Response.
π Move batch_move_devices and get_import_file from clibatch to clicommon. cencli batch delete and cencli delete will both use common funcs
β remove Halo dependency
π¬ Allow set_width_cols to only include a min value
π Move cencli delete device logic to use common funcs in clicommon (also used be batch delete)
π§βπ» helper function when updating dict with values in a list. Either adds key with value as first entry in list, or appends to existing if key already exists.
π¬ π β¨ New common confirm method / econsole / console
Output/Display Enhancements
π¬ Filter additional non Central Licenses from show subscription names output.
π¬ show subscription names set min width on subscription name column in rich output
β¨ build out output options for show archived
π¬ Remove duplicate display when r.output is None and format is action
β¨ Add support for sorting when there is a mix of DateTime and NoneType
π¬ Numerous help text improvements.
π¬ π Major spinner overhaul. More details, color, emoji...
π¬ support markup in inner_dict text.
π¬ Adjust format of get_multipline_input prompt
π¬ Add All import types to example for batch delete devices
π¬ sort devices by name in ambiguous device selection menu
π¬ flip default order so newest is on bottom of listing in show logs
π¬ remove potential for duplicate caption display. Make abort=True default for cli.confirm
π¬ for csv output swap in original value for date (epoch timestamp)
This was the case already in most scenarios, but show firmware list sends an ISO date string. Added original attribute to DateTime object, given ts attribute is not always what was originally sent