App-Netdisco

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN


  [ENHANCEMENTS]

  * #1709 add a web_theme setting for Bootstrap color-mode themes
  * #1710 check SSH host keys, verify TLS, and limit string exec hook commands
  * HTTP hooks verify TLS certificates; set
    PERL_HTTP_TINY_SSL_INSECURE_BY_DEFAULT=1 to turn this off
  * Python CLI worklets check SSH host keys against known_hosts; set
    ssh_strict: false in the device_auth entry to turn this off

  [BUG FIXES]

  * #1705 align the Reports submenu indicators and category rows
  * #1706 keep the first connected node within its port cell
  * #1708 match the Reports menu's padding to the other menus after #1705
  * #1711 decide the token and metrics allow lists on the real client address
  * netdisco-sshcollector -O and SSH_TRACE no longer turn on tracing of the
    ssh process
  * netdisco-deploy verifies TLS certificates when it downloads OUI data and
    MIBs; set PERL_HTTP_TINY_SSL_INSECURE_BY_DEFAULT=1 to turn this off
  * a string exec hook cmd may use only the ip and ndo fields; write cmd as a
    list to pass other event fields
  * a token_acl or metrics_allow entry for an IPv4 address now matches that
    client on a dual-stack web server

2.109004 - 2026-10-03

  [BUG FIXES]

  * #1703 refuse configuration overrides on jobs queued by port_control users
  * keep a job's configuration overrides out of the backend's process titles
  * a port_control user whose role is not defined is refused port changes,
    rather than permitted on every port
  * accept only a number or MCE's documented forms in the workers tasks
    setting
  * the backend matches a queued job's action as text when it checks for a
    duplicate already running
  * fold line breaks out of the To, From and Subject headers of node monitor
    mail

2.109003 - 2026-10-03

  [BUG FIXES]

  * #1691 scope device and topology writes to the user's port control role
  * #1695 expire node_wireless on its own age
  * #1699 device_identity automatic renumber fails
  * #1701 fix job configuration overrides

2.109002 - 2026-10-01

  [ENHANCEMENTS]

  * #1680 include dynamically authenticated VLANs in MAC-Suck VLAN selection
    (needs an SNMP::Info release with snmp-info#580)
  * #1682 API: embed related rows in the nodes API with an include parameter

  [BUG FIXES]

  * fix metrics_allow logic: an empty list now means any, so metrics_path alone
    publishes the endpoint instead of refusing everyone, and metrics_token
    works on its own
  * the VLANs With Multiple Names report's CSV download is now CSV; it
    returned the web page's markup with no data in it
  * fix CSV downloads silently leaving out any row with a line break in one of
    its values; a line break is now written as a space
  * the backend matches a job's action name as text when loading its workers,
    so an action containing pattern characters no longer loads the plugins of
    other actions
  * the loadmibsfromoids action accepts only a vendor report name, such as
    juniper, and refuses anything else before changing the MIB cache
  * #1694 fix the job queue's delete-all button
  * #1683 stop storing wireless clients under an SSID called "unknown"
  * #1696 API: answer auth failures with 401/403 JSON instead of redirects
    and HTML
  * #1697 API: return a number from the job delete endpoints, not "0E0"
  * #1698 API: answer unknown paths and failing routes in JSON
  * #1681 API: nodes endpoints ignore their documented active_only default

2.109001 - 2026-09-18

  [ENHANCEMENTS]

  * netdisco's own configuration of the API browser is no longer kept inside
    the vendored Swagger UI files, so updating them cannot quietly revert it

  [BUG FIXES]

  * the "Ports on Hosts" choice when creating an Access Control List made a
    Host to Host mapping instead, so a port control rule using that list never
    applied. the list also then showed the other type's name
  * the session cookie key and API tokens are now minted from the operating
    system's random source, not the database's. the netdisco-deploy manual
    page says how to replace a key minted by the old code
  * fix a stored CSV formula injection in CSV downloads: a cell that would be
    read as a spreadsheet formula is now written as plain text
  * fix a stored cross-site scripting hole in several report and search tables
  * fix a stored cross-site scripting hole in the Ports tab and the node
    search views
  * fix arbitrary module loading in the SNMP browser's munge parameter
  * fix a privilege escalation in the queue API and the admin job controls,
    where a job action naming a backend command worker could be queued
  * fix an open redirect in the login form's return_url
  * warn at startup when metrics_path is set with neither metrics_allow nor
    metrics_token, so the endpoint is not published unrestricted unnoticed
  * raise the bcrypt work factor for locally stored passwords. an existing
    password is rewritten at the new factor on its owner's next successful
    login, and safe_password_store still governs whether that happens
  * bound the port count accepted when creating a pseudo device
  * fix a command injection in the external credentials command, where a
    device's DNS name was substituted into it unchecked

2.109000 - 2026-09-13

  [ENHANCEMENTS]

  * this release needs Safari 16.4, Firefox 101, Chrome 74 or Edge 79, or
    newer. it is the first that will not work on an older browser
  * pages are now drawn in the display mode the current framework is written
    for. rows in a table stand a little taller as a result
  * Back and Forward now fetch the page again for the tab and options in the
    address bar, so what you return to is current rather than the results as
    they were when you left them
  * changing your search or your columns while results are still loading now
    abandons the request already in flight, so what you asked for last arrives
    sooner and the results you replaced never flash up on the way
  * a request whose answer never arrives now gives up after five minutes and
    says so where the results would be, instead of leaving the spinner turning
  * searching the SNMP browser now goes straight to the object, where it used
    to open the tree a level at a time
  * the SNMP browser tree and the suggestion lists under the search boxes are
    drawn by netdisco itself now. they work as they did, and both look a little
    different
  * the arrow marking a sorted column is drawn differently and takes less room,
    so tables are a little narrower
  * the date range boxes on Node Search, IP Inventory and Subnet Utilization
    are now a list of the usual ranges above two ordinary date fields. they
    send what they always did
  * the sidebar now opens and closes at once instead of sliding
  * if you keep site-local templates or JavaScript, run netdisco-do
    checksitelocal after upgrading. this release removes several things a copy
    may still call, including script files and a stylesheet a copy of the
    layout may still name, and the report names every file and what to change.
    a shadowed layout is also reported when the web app starts, because it
    leaves every page dead and says nothing otherwise
  * the loadmibs action now loads the SQL bundled with netdisco-mibs. the
    previous behavior, building the table from the OID reports, is now the
    loadmibsfromoids action

  [BUG FIXES]

  * fix an authenticated server-side request forgery: any user could have the
    backend poll an address of their choosing
  * a non-admin job no longer forwards the extra and port parameters into the
    backend configuration
  * fix a privilege escalation in the port control endpoint, where a
    port_control user could queue any backend job action
  * fix an authenticated reflected XSS in the /t/<tenant> URL segment
  * a /t/ URL naming a tenancy which is not configured is no longer a page
  * fix an authenticated credential disclosure: the device API returned the
    stored SNMP community in the device object
  * fix an authenticated SQL injection in the device search "fields" parameter
  * Device Search no longer returns the stored SNMP community, and a field name
    which is not a Device column is refused rather than passed to the database
  * fix an authenticated SQL injection in report sorting and searching
  * the archived-node marker is drawn in one color everywhere it appears
  * the delete button on the Duplicate Devices admin page shows its icon
    again, rather than red on red
  * the Neighbor Hops label in the netmap sidebar lines up with its radio
    button again
  * the Module Inventory, NetBIOS and Node Vendor reports now honor every
    filter when more than one is given, rather than only the first
  * the ACL editor's Host Preference now follows the address bar, so it can be
    linked to and bookmarked
  * choosing an IPv6 prefix from the suggestions in the IP Inventory sidebar
    now disables the "never" option, which it only did if you typed the prefix
    out in full
  * a device name containing an ampersand now reads correctly in the search
    suggestions
  * when your session expires you are now taken to the login page and returned
    to where you were once you log in. a page whose panel refreshes on its own,
    the Job Queue in particular, used to report a server error and stop
    refreshing, with nothing to say your session had ended
  * the job log that appears when you hover a Job Queue row is now dismissed
    when the table refreshes. one was left behind on every refresh, still
    showing the job it described, and they piled up over the page and swallowed
    clicks meant for the rows beneath them
  * addresses that are links, on Device Inventory and Duplicate Devices, now
    sort by address. they sorted as text, which put .70 above .4
  * tooltips and the job log that appears when you hover a Job Queue row are
    drawn in the same typeface as the rest of the page again. the log had also
    been set larger, and in a monospaced face, which read as a terminal dropped
    onto the page
  * a button in an admin table no longer breaks its label across two lines as
    the window narrows. "Create ACL" on the User Management page split in two
    below about 1200 pixels
  * the Discover box on the front page now says whether your job was queued,
    and leaves you where you are. a name that does not resolve, a prefix wider
    than /22, or anything that is not an address, sent you back to the front
    page with nothing said either way
  * #1610 loadmibs silently skipped every vendor report when the mibhome path
    contained a dot
  * #1611 loadmibs -e <vendor> replaced the entire snmp_object table, and the
    single-vendor load now always includes rfc_oids, net-snmp_oids and
    cisco_oids

2.108004 - 2026-09-09

  [BUG FIXES]

  * #1675 a login logo too wide to sit beside the username and password fields
    is drawn below them again, where it was until the interface was rebuilt on
    Bootstrap 5
  * #1676 #1677 fix hook workers getting no configuration causing JSON decode
    error, caused by supporting JSON in NETDISCO_WITH_CONFIGURATION
  * fix where the ports are cached in Discover job so that they don't always

Changes  view on Meta::CPAN

  [BUG FIXES]

  * #1640 Stop the Ports tab re-reading every row once per subinterface parent

2.104000 - 2026-08-18

  [NEW FEATURES]

  * #1592 allow any setting override at runtime from command line, api, or environment

  [ENHANCEMENTS]

  * update Python dependencies and GitHub Actions versions

  [BUG FIXES]

  * fix the pseudo device and duplicate device panes discarding their content
  * fix an empty typeahead search term returning a 500 instead of an empty list
  * stop sending a Swagger UI url parameter that the 5.x page ignores

2.103000 - 2026-08-14

  [NEW FEATURES]

  * #1615 modernize the frontend dependencies: Bootstrap 5, Font Awesome 7, DataTables 2, jQuery 3
  * #1624 upgrade the vendored Swagger UI from 3.20.3 to 5.32.12

  [ENHANCEMENTS]

  * update Python dependencies and GitHub Actions versions

  [BUG FIXES]

  * fix a successful login returning to the login page instead of the home page
  * fix unstable ordering of child classes in the device module tree

2.102001 - 2026-08-10

  [BUG FIXES]

  * #1618 Restrict Swagger UI to netdisco's own API definition
  * fix broken links for demo db redeployment

2.102000 - 2026-08-10

  [NEW FEATURES]

  * #1582 {discover,macsuck,arpnip}_min_age settings are used when selecting *walk targets
  * #1584 make GET /api/v1/search/device batch ready with field selection
  * #1591 new option expire_nodeip_orphans to keep node_ip entries without node

  [ENHANCEMENTS]

  * update Python dependencies and GitHub Actions versions
  * use canonical URLs for upstream-sources raw files

  [BUG FIXES]

  * #1583 port lookup in API: uri_unescape and trim captured port name
  * #1585 uninitialized value warning when daterange param is absent
  * #1586 /api/ endpoints returning HTML when Accept header is missing
  * #1607 Refuse to empty snmp_object when the MIB reports parse to nothing
  * #1609 netdisco-deploy: report loadmibs failure instead of done

2.101000 - 2026-07-02

  [NEW FEATURES]

  * #1569 new option snmp_fast_connect_timeout instead of static 200ms value
  * #1570 NETDISCO_BACKEND_NAME env var to set shared backend identity
  * #1577 reimplement Port Control Roles as generic Managed ACLs

  [ENHANCEMENTS]

  * add dividers and better order to items in admin menu

  [BUG FIXES]

  * #1580 fix admin pages web forms not returning properly
  * update Python dependencies and GitHub Actions versions

2.100000 - 2026-06-23

  [NEW FEATURES]

  * #1549 discover subaction having JSON becomes per-job additional settings
  * #1550 add permanent API tokens and (dummy) Bearer auth support (allow_permanent_tokens)
  * #1561 new API endpoint GET /api/v1/queue/status
  * add queue_neighbors bool setting to allow neighbor discovery without queueing
  * add device_auth_tag_hint discover param to select specific device_auth stanza
  * support snmptimeout, snmpretries, bulkwalk_repeaters override in discover param
  * add skip_neighbor_queue discover param to do same as queue_neighbors:false
  * NETDISCO_NO_SCHEDULER environment variable same as "schedule: null"
  * NETDISCO_WORKERS_TASKS environment variable same as "workers.tasks"

  [ENHANCEMENTS]

  * #1544 show the device_auth tag in the log messages
  * #1564 improve SNMP exception reporting in job log
  * show mode, worker count and hostname on backend startup

  [BUG FIXES]

  * user delete in user admin page should refresh the page
  * update Python dependencies and GitHub Actions versions

2.099006 - 2026-06-05

  [ENHANCEMENTS]

  * #1282 #1466 fix mis-encoded MACs 7 bytes with a leading 0x06

2.099005 - 2026-05-31

  [ENHANCEMENTS]

  * migrate github build from qemu to matrix for multi-arch

2.099004 - 2026-05-29

  [BUG FIXES]

  * update Python dependencies and GitHub actions cache

2.099003 - 2026-05-28

  [BUG FIXES]

  * update Python and GitHub actions dependencies

2.099002 - 2026-05-27

  [BUG FIXES]

  * fix to workflow file skopeo command

2.099001 - 2026-05-27

  [ENHANCEMENTS]

  * update Python minimum version from 3.9 to 3.10
  * new demo website links to DigitalOcean hosting

  [BUG FIXES]

  * update Python dependencies for security patches

2.099000 - 2026-05-20

  [ENHANCEMENTS]

  * demo website is now deployed to DigitalOcean (was previously Heroku)

  [BUG FIXES]

  * update Python dependencies for security patches

2.098005 - 2026-05-10

  [ENHANCEMENTS]

  * is_discoverable check after retrieving additional device context (SNMP fields)

  [BUG FIXES]

  * #1508 nested try catch for CSV to skip synthesized table view columns

2.098004 - 2026-05-08

  [BUG FIXES]

  * #1507 errors in netdisco-web.log
  * fix unnecessary SQL query per node when node SSID is requested
  * some whitespace formatting in device ports template

2.098003 - 2026-05-05

  [ENHANCEMENTS]

  * #1499 device port node display improvements
  * #1500 skip log file redirection when running in foreground mode
  * #1504 skip privilege drop when already running unprivileged

  [BUG FIXES]

  * #1497 numeric warnings when nodes list is empty in ports template
  * #1503 Custom Fields cannot be used in External Links

2.098002 - 2026-04-20

  [BUG FIXES]

  * #1498 fix numeric warning when job log is NULL in jobqueue template

2.098001 - 2026-04-16

  [BUG FIXES]

  * add IO::Pty to build dependencies

2.098000 - 2026-04-16

  [NEW FEATURES]

  * #1492 add /api/v1/statistics API endpoint
  * #1494 /health and /metrics endpoints for monitoring or load balancing
  * #1496 add power_modules API endpoint and add PoE info to device API endpoint

  [ENHANCEMENTS]

  * #1493 check parameters to Hooks to avoid errors
  * Improve documentation for NXOS SSH collector

  [BUG FIXES]

  * #1484 add the device IP to scheduled Hooks
  * require Sys::SigAction 0.24

2.097003 - 2026-02-21

  [ENHANCEMENTS]

  * bump SNMP::Info dependency 3.975000

2.097002 - 2026-01-09

  [ENHANCEMENTS]

  * faster search for enterprise product number in netdisco-mibs

2.097001 - 2026-01-08

  [ENHANCEMENTS]

  * #1477 macsuck, arpnip, discover web buttons should follow is_* acls
  * search for enterprise product number in netdisco-mibs
  * add plain api driver type and adjust driver priorities
  * update NetAddr::MAC dependency to 0.99

  [BUG FIXES]

  * #1479 error to GET /ajax/content/device/ports when subinterface without parent
  * #1478 fixes vendor not known by netdisco

2.097000 - 2025-12-16

  [NEW FEATURES]

  * IOS-XE: add SSH ARP (multi-VRF) and MAC collectors (replaces IOSXEMac collector)

  [ENHANCEMENTS]

  * #1473 get_credentials can now also open a plain file

2.096001 - 2025-12-13

  [ENHANCEMENTS]

  * #1458 add login_banner_message setting to put text on the login page

  [BUG FIXES]

  * #1440 promote bare empty string to empty array if found on list custom field

2.096000 - 2025-12-07

  [NEW FEATURES]

Changes  view on Meta::CPAN


  [NEW FEATURES]

  * #1170 ping sweep utility worker to queue discover jobs from an IP prefix

  [BUG FIXES]

  * #1185 need to reset vars cache in early worker phase for multiple jobs

2.073001 - 2024-03-13

  [BUG FIXES]

  * fix missing dependency in DOCSIS module

2.073000 - 2024-03-13

  [NEW FEATURES]

  * #1181 add settings skip_neighbors and discover_neighbors to suppress neighbor discovery

  [ENHANCEMENTS]

  * #1172 add first discovered stamp to device details
  * #1176 make clear when netdisco-do -d is opening a file

  [BUG FIXES]

  * #1157 NX-OS SSHCollector errors out parsing output of some IPv6 neighbor entries on old versions of NX-OS
  * #1173 revert #830 and suggest default for subnets report instead of forcing it
  * #1175 separator for number formatting force to be comma
  * #1175 sort subnet column correctly in subnets report
  * #1177 fix vlan system reports

2.072003 - 2024-02-14

  [BUG FIXES]

  * #1167 fix bugs in calling port control features at command line

2.072002 - 2024-01-21

  [ENHANCEMENTS]

  * netdisco-do --force will ignore layers for macsuck/arpnip

  [BUG FIXES]

  * on defer reset job device to canonical IP to avoid missing dupes

2.072001 - 2024-01-15

  [BUG FIXES]

  * revert set is_uplink on ports with multiple vlans

2.072000 - 2024-01-14

  [ENHANCEMENTS]

  * add port_vlans API endpoint to device ports
  * set device ports with multiple vlans to be uplinks
  * removed the redundant portctl_vlans setting (handled by portctl_uplinks)
  * renamed vlanctl to be portctl_native_vlan

  [BUG FIXES]

  * #1150 rewritten port control acls

2.071003 - 2024-01-10

  [ENHANCEMENTS]

  * also display job device IP in expanded jobqueue info

  [BUG FIXES]

  * set Text::CSV requirement to 2.04 to ensure ABI is met
  * reload admin forms after making row changes
  * fix order of device port columns so links not between speeds
  * #1139 force anchor on all MAC address comparisons in search
  * #1140 special case for queueing a job for delete device from duplicatedevices admin report

2.071002 - 2024-01-06

  [BUG FIXES]

  * fix syntax error - array not hash in JobQueue.pm

2.071001 - 2023-12-07

  [BUG FIXES]

  * update vlansneverconfigured report to skip vlan 1
  * better approach to HTML entity encoding in custom report searchable fields

2.071000 - 2023-12-07

  [NEW FEATURES]

  * device port external links support
  * new preset fields and custom fields support for device external links
  * custom reports returning array columns will be split over lines
  * default database in tenancies can have a friendly name
  * #1133 improve searchable generic report fields

  [ENHANCEMENTS]

  * tidied up the report menus and report names
  * #830 subnets report can show all subnets to start with
  * #920 unused VLANs report
  * #999 device vlan count report
  * #1018 VLANs with Multiple Names report
  * #1022 VLANs Known but Not Configured report
  * #1023 ports with most vlans report
  * #1052 duplicate private networks report

  [BUG FIXES]

  * do not reverse the external links for IPs and Devices

Changes  view on Meta::CPAN

  * #738 crash on wildcard search
  * #747 handle missing snmpEngineID
  * #748 always call NetAddr::MAC->new() with named mac param

2.046002 - 2020-08-07

  [BUG FIXES]

  * #735 Slow web search for devices

2.046001 - 2020-07-10

  [ENHANCEMENTS]

  * #734 Multiple TACACS+/RADIUS servers now supported

2.046000 - 2020-07-08

  [ENHANCEMENTS]

  * #721 redux - better MAC address support in searching
  * #728 store SNMP Engine ID

  [BUG FIXES]

  * #733 strip nonprinting characters from OUI table
  * #227 Do not overwrite partially retrieved data with null or incorrect vals
  * #722 manual topology should not allow same left and right port/device
  * #729 Discovery partially fails on invalid indexes
  * #732 Node Search via API for known node returns invalid or empty JSON

2.045007 - 2020-06-05

  [BUG FIXES]

  * #725 Avoid duplicate device in rancid export file (earendilfr)

2.045006 - 2020-05-24

  [ENHANCEMENTS]

  * #721 search will trim whitespace and handle more MAC formats

2.045005 - 2020-05-18

  [BUG FIXES]

  * #713 Template processing issue prevents VLAN list displaying

2.045004 - 2020-05-15

  [BUG FIXES]

  * none - workflow testing

2.045003 - 2020-05-15

  [BUG FIXES]

  * #715 fix crash on missing Accept Header
  * #718 fix Node Search API endpoint
  * #719 include IO::Socket::INET6 in deps to ensure IPv6 support

2.045002 - 2020-04-19

  [ENHANCEMENTS]

  * allow API to work with non-root hosting (where path is not '/')

  [BUG FIXES]

  * rename ports column in device table to be num_ports

2.045001 - 2020-04-18

  [BUG FIXES]

  * restore ports column in device table to fix discover bug

2.045000 - 2020-04-15

  [NEW FEATURES]

  * API for search, objects, and reports: https://github.com/netdisco/netdisco/wiki/API

  [ENHANCEMENTS]

  * #442 add device ip, port and vlan to the node vendor report results
  * #674 added support for Clavister SSH collection (Henningen)
  * #707 change SSHCollector::NXOS to use expect (rc9000)

2.044015 - 2020-02-12

  [BUG FIXES]

  * default access list for device_auth should be ipv4 and ipv6

2.044014 - 2020-02-09

  [BUG FIXES]

  * change from MCE::Shared to MCE::Queue after resolution of crash bug

2.044013 - 2020-02-04

  [BUG FIXES]

  * change from MCE::Queue to MCE::Shared to better handle signals

2.044012 - 2020-02-01

  [ENHANCEMENTS]

  * #680 redux - speed up macsuck again (rc9000)

  [BUG FIXES]

  * prevent Template::AutoFilter taking action on CSV output

2.044011 - 2020-01-26



( run in 0.927 second using v1.01-cache-2.11-cpan-16aabcbfbcb )