)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"abff261641b9b569a3842f995b6d170d2a4af8b5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b55f242d_3962d16c","updated":"2026-08-20 13:47:45.000000000","message":"Marking -1 pending discussion.","commit_id":"d4bcf8bb2be8d1a3ee2c7965bf744b39281f775a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"d38bc29791c32a78a443da72cbeafd1a04880029","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3b5068e1_8380bea7","updated":"2026-09-18 15:12:37.000000000","message":"LGTM, this is a nice clean-switch over to use libssh which aligns with the landed spec.","commit_id":"fc2f2fb6c1955a441b5edea57282980b8195c840"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"79326ab58988d73e59c6f849ac4d0b84b680036b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d9287523_8f99ab8d","updated":"2026-09-22 11:28:50.000000000","message":"recheck","commit_id":"b5b6f72a6843acdf0594515b06058c09699c1ff7"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"4e0ae23076ce3a5febbe780a1114a2f9f8911546","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"1b9e48a5_79b172b4","updated":"2026-09-22 20:34:45.000000000","message":"recheck - POST_FAILURE","commit_id":"b5b6f72a6843acdf0594515b06058c09699c1ff7"}],"networking_generic_switch/devices/__init__.py":[{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"44d7d621b63c72634ab524d78eae21201da06034","unresolved":true,"context_lines":[{"line_number":83,"context_line":"    {\u0027name\u0027: \u0027ngs_netconf_confirmed_commit_timeout\u0027, \u0027default\u0027: 5},"},{"line_number":84,"context_line":"    # Whether to use libssh (True) or paramiko (False) for NETCONF transport."},{"line_number":85,"context_line":"    # Paramiko supports keyboard-interactive auth fallback for password."},{"line_number":86,"context_line":"    {\u0027name\u0027: \u0027ngs_use_libssh\u0027, \u0027default\u0027: True},"},{"line_number":87,"context_line":"]"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"EM_SEMAPHORE \u003d \u0027ngs_device_manager\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"81073714_1d9448ac","line":86,"updated":"2026-08-19 19:50:25.000000000","message":"I guess I\u0027m not really a fan of presenting a knob. I\u0027d much rather prefer a composed driver to denote the tested/supported path.","commit_id":"d4bcf8bb2be8d1a3ee2c7965bf744b39281f775a"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"4586f15190d43c89239d29c9d1e640a195f138df","unresolved":true,"context_lines":[{"line_number":83,"context_line":"    {\u0027name\u0027: \u0027ngs_netconf_confirmed_commit_timeout\u0027, \u0027default\u0027: 5},"},{"line_number":84,"context_line":"    # Whether to use libssh (True) or paramiko (False) for NETCONF transport."},{"line_number":85,"context_line":"    # Paramiko supports keyboard-interactive auth fallback for password."},{"line_number":86,"context_line":"    {\u0027name\u0027: \u0027ngs_use_libssh\u0027, \u0027default\u0027: True},"},{"line_number":87,"context_line":"]"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"EM_SEMAPHORE \u003d \u0027ngs_device_manager\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"d5fdc0c8_0ff20ac1","line":86,"in_reply_to":"81073714_1d9448ac","updated":"2026-08-20 12:48:00.000000000","message":"The libssh support in ncclient is fairly new, came in v0.7.0 release, and v0.7.1 shipped two fixes related to using libssh. The knob gives current users an option to switch back to parmiko iff the run into issue with the new default to libssh.","commit_id":"d4bcf8bb2be8d1a3ee2c7965bf744b39281f775a"},{"author":{"_account_id":24245,"name":"Harald Jensås","email":"hjensas@redhat.com","username":"harald.jensas"},"change_message_id":"252e844faed202c567abcca9fe9e74fd8b9ce280","unresolved":false,"context_lines":[{"line_number":83,"context_line":"    {\u0027name\u0027: \u0027ngs_netconf_confirmed_commit_timeout\u0027, \u0027default\u0027: 5},"},{"line_number":84,"context_line":"    # Whether to use libssh (True) or paramiko (False) for NETCONF transport."},{"line_number":85,"context_line":"    # Paramiko supports keyboard-interactive auth fallback for password."},{"line_number":86,"context_line":"    {\u0027name\u0027: \u0027ngs_use_libssh\u0027, \u0027default\u0027: True},"},{"line_number":87,"context_line":"]"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"EM_SEMAPHORE \u003d \u0027ngs_device_manager\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"985576d6_20945974","line":86,"in_reply_to":"87d95b9d_52228821","updated":"2026-09-03 14:51:16.000000000","message":"I restored this to what I had in patchset 1. It switches to use libssh for the netconf driver which uses ncclient.","commit_id":"d4bcf8bb2be8d1a3ee2c7965bf744b39281f775a"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"abff261641b9b569a3842f995b6d170d2a4af8b5","unresolved":true,"context_lines":[{"line_number":83,"context_line":"    {\u0027name\u0027: \u0027ngs_netconf_confirmed_commit_timeout\u0027, \u0027default\u0027: 5},"},{"line_number":84,"context_line":"    # Whether to use libssh (True) or paramiko (False) for NETCONF transport."},{"line_number":85,"context_line":"    # Paramiko supports keyboard-interactive auth fallback for password."},{"line_number":86,"context_line":"    {\u0027name\u0027: \u0027ngs_use_libssh\u0027, \u0027default\u0027: True},"},{"line_number":87,"context_line":"]"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"EM_SEMAPHORE \u003d \u0027ngs_device_manager\u0027"}],"source_content_type":"text/x-python","patch_set":2,"id":"87d95b9d_52228821","line":86,"in_reply_to":"d5fdc0c8_0ff20ac1","updated":"2026-08-20 13:47:45.000000000","message":"Then we likely need to discuss because the modeling of the spec is not to make it configurable, but to codify the config through class modeling so we can ultimately provide a \"if you use this driver, then switch over to that driver\" mental modeling.\n\nhttps://review.opendev.org/c/openstack/ironic-specs/+/997653","commit_id":"d4bcf8bb2be8d1a3ee2c7965bf744b39281f775a"}]}
