Merge "Handle servers that don't support NMDA"
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 803bc95..f95c615 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -77,14 +77,14 @@
     message(FATAL_ERROR "Cannot combine ENABLE_FULL_TESTS=ON with BUILD_TESTING=OFF")
 endif()
 
-pkg_check_modules(LIBYANG REQUIRED libyang-cpp>=1.0.233 IMPORTED_TARGET libyang)
-pkg_check_modules(LIBNETCONF2 REQUIRED libnetconf2>=1.1.45 IMPORTED_TARGET libnetconf2)
+pkg_check_modules(LIBYANG REQUIRED libyang-cpp>=1.0.248 IMPORTED_TARGET libyang)
+pkg_check_modules(LIBNETCONF2 REQUIRED libnetconf2>=1.1.48 IMPORTED_TARGET libnetconf2)
 
 if(ENABLE_FULL_TESTS STREQUAL OFF AND ENABLE_SYSREPO_CLI STREQUAL OFF)
     message(STATUS "Skipping sysrepo per configure options")
     set(SYSREPO_FOUND 0)
 else()
-    pkg_check_modules(SYSREPO sysrepo-cpp>=1.4.135 IMPORTED_TARGET sysrepo)
+    pkg_check_modules(SYSREPO sysrepo-cpp>=1.4.148 IMPORTED_TARGET sysrepo)
 endif()
 
 if(SYSREPO_FOUND)
diff --git a/src/cli.cpp b/src/cli.cpp
index 0635c28..efa9f7c 100644
--- a/src/cli.cpp
+++ b/src/cli.cpp
@@ -227,7 +227,12 @@
 
     lineEditor.set_completion_callback([&parser](const std::string& input, int& context) {
         std::stringstream stream;
-        auto completions = parser.completeCommand(input, stream);
+        Completions completions;
+        try {
+            completions = parser.completeCommand(input, stream);
+        } catch (std::exception& ex) {
+            std::cerr << "Error while completing: " << ex.what() << "\n";
+        }
 
         std::vector<replxx::Replxx::Completion> res;
         std::copy(completions.m_completions.begin(), completions.m_completions.end(), std::back_inserter(res));
diff --git a/submodules/dependencies b/submodules/dependencies
index 7ea7ddb..b74996a 160000
--- a/submodules/dependencies
+++ b/submodules/dependencies
@@ -1 +1 @@
-Subproject commit 7ea7ddb2e1f38767a5cf915e05aa43e437d961a4
+Subproject commit b74996a1d308e4bdf1cf05a5a03c410c502b5459