From cd1ece86c2a504a5362abe9b60b8067951d1942c Mon Sep 17 00:00:00 2001 From: muffi-dn Date: Wed, 21 Jun 2023 11:09:00 +0100 Subject: [PATCH 1/5] updated nornir-netmiko to the latest version. This operation also updated a few more dependencies --- poetry.lock | 130 +++++-------------------------------------------- pyproject.toml | 2 +- 2 files changed, 12 insertions(+), 120 deletions(-) diff --git a/poetry.lock b/poetry.lock index 2156b32..173262e 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,10 +1,9 @@ -# This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. [[package]] name = "anyio" version = "3.7.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -27,7 +26,6 @@ trio = ["trio (<0.22)"] name = "astroid" version = "2.11.7" description = "An abstract syntax tree for Python with inference support." -category = "dev" optional = false python-versions = ">=3.6.2" files = [ @@ -46,7 +44,6 @@ wrapt = ">=1.11,<2" name = "bandit" version = "1.7.5" description = "Security oriented static analyser for python code." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -70,7 +67,6 @@ yaml = ["PyYAML"] name = "bcrypt" version = "4.0.1" description = "Modern password hashing for your software and your servers" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -105,7 +101,6 @@ typecheck = ["mypy"] name = "black" version = "23.3.0" description = "The uncompromising code formatter." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -156,7 +151,6 @@ uvloop = ["uvloop (>=0.15.2)"] name = "cached-property" version = "1.5.2" description = "A decorator for caching properties in classes." -category = "dev" optional = false python-versions = "*" files = [ @@ -168,7 +162,6 @@ files = [ name = "certifi" version = "2023.5.7" description = "Python package for providing Mozilla's CA Bundle." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -180,7 +173,6 @@ files = [ name = "cffi" version = "1.15.1" description = "Foreign Function Interface for Python calling C code." -category = "main" optional = false python-versions = "*" files = [ @@ -257,7 +249,6 @@ pycparser = "*" name = "charset-normalizer" version = "3.1.0" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." -category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -342,7 +333,6 @@ files = [ name = "click" version = "8.1.3" description = "Composable command line interface toolkit" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -358,7 +348,6 @@ importlib-metadata = {version = "*", markers = "python_version < \"3.8\""} name = "colorama" version = "0.4.6" description = "Cross-platform colored terminal text." -category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" files = [ @@ -370,7 +359,6 @@ files = [ name = "cryptography" version = "40.0.2" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -412,7 +400,6 @@ tox = ["tox"] name = "dill" version = "0.3.6" description = "serialize all of python" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -427,7 +414,6 @@ graph = ["objgraph (>=1.7.2)"] name = "exceptiongroup" version = "1.1.1" description = "Backport of PEP 654 (exception groups)" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -442,7 +428,6 @@ test = ["pytest (>=6)"] name = "flake8" version = "3.9.2" description = "the modular source code checker: pep8 pyflakes and co" -category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" files = [ @@ -460,7 +445,6 @@ pyflakes = ">=2.3.0,<2.4.0" name = "future" version = "0.18.3" description = "Clean single-source support for Python 3 and 2" -category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -471,7 +455,6 @@ files = [ name = "ghp-import" version = "2.1.0" description = "Copy your docs directly to the gh-pages branch." -category = "dev" optional = false python-versions = "*" files = [ @@ -489,7 +472,6 @@ dev = ["flake8", "markdown", "twine", "wheel"] name = "gitdb" version = "4.0.10" description = "Git Object Database" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -504,7 +486,6 @@ smmap = ">=3.0.1,<6" name = "gitpython" version = "3.1.31" description = "GitPython is a Python library used to interact with Git repositories" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -520,7 +501,6 @@ typing-extensions = {version = ">=3.7.4.3", markers = "python_version < \"3.8\"" name = "griffe" version = "0.27.5" description = "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -536,7 +516,6 @@ colorama = ">=0.4" name = "h11" version = "0.14.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -551,7 +530,6 @@ typing-extensions = {version = "*", markers = "python_version < \"3.8\""} name = "httpcore" version = "0.17.2" description = "A minimal low-level HTTP client." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -563,17 +541,16 @@ files = [ anyio = ">=3.0,<5.0" certifi = "*" h11 = ">=0.13,<0.15" -sniffio = ">=1.0.0,<2.0.0" +sniffio = "==1.*" [package.extras] http2 = ["h2 (>=3,<5)"] -socks = ["socksio (>=1.0.0,<2.0.0)"] +socks = ["socksio (==1.*)"] [[package]] name = "httpx" version = "0.24.1" description = "The next generation HTTP client." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -589,15 +566,14 @@ sniffio = "*" [package.extras] brotli = ["brotli", "brotlicffi"] -cli = ["click (>=8.0.0,<9.0.0)", "pygments (>=2.0.0,<3.0.0)", "rich (>=10,<14)"] +cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] -socks = ["socksio (>=1.0.0,<2.0.0)"] +socks = ["socksio (==1.*)"] [[package]] name = "idna" version = "3.4" description = "Internationalized Domain Names in Applications (IDNA)" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -609,7 +585,6 @@ files = [ name = "importlib-metadata" version = "4.13.0" description = "Read metadata from Python packages" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -630,7 +605,6 @@ testing = ["flake8 (<5)", "flufl.flake8", "importlib-resources (>=1.3)", "packag name = "iniconfig" version = "2.0.0" description = "brain-dead simple config-ini parsing" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -642,7 +616,6 @@ files = [ name = "invoke" version = "2.1.2" description = "Pythonic task execution" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -654,7 +627,6 @@ files = [ name = "isort" version = "5.11.5" description = "A Python utility / library to sort Python imports." -category = "dev" optional = false python-versions = ">=3.7.0" files = [ @@ -672,7 +644,6 @@ requirements-deprecated-finder = ["pip-api", "pipreqs"] name = "jinja2" version = "3.1.2" description = "A very fast and expressive template engine." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -690,7 +661,6 @@ i18n = ["Babel (>=2.7)"] name = "junos-eznc" version = "2.6.7" description = "Junos 'EZ' automation for non-programmers" -category = "main" optional = false python-versions = ">=3.5, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -716,7 +686,6 @@ yamlordereddictloader = "*" name = "lazy-object-proxy" version = "1.9.0" description = "A fast and thorough lazy object proxy." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -762,7 +731,6 @@ files = [ name = "lxml" version = "4.9.2" description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" files = [ @@ -855,7 +823,6 @@ source = ["Cython (>=0.29.7)"] name = "markdown" version = "3.3.7" description = "Python implementation of Markdown." -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -873,7 +840,6 @@ testing = ["coverage", "pyyaml"] name = "markdown-it-py" version = "2.2.0" description = "Python port of markdown-it. Markdown parsing, done right!" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -899,7 +865,6 @@ testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] name = "markupsafe" version = "2.1.2" description = "Safely add untrusted strings to HTML/XML markup." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -959,7 +924,6 @@ files = [ name = "mccabe" version = "0.6.1" description = "McCabe checker, plugin for flake8" -category = "dev" optional = false python-versions = "*" files = [ @@ -971,7 +935,6 @@ files = [ name = "mdurl" version = "0.1.2" description = "Markdown URL utilities" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -983,7 +946,6 @@ files = [ name = "mergedeep" version = "1.3.4" description = "A deep merge function for 🐍." -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -995,7 +957,6 @@ files = [ name = "mkdocs" version = "1.3.1" description = "Project documentation with Markdown." -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1022,7 +983,6 @@ i18n = ["babel (>=2.9.0)"] name = "mkdocs-autorefs" version = "0.4.1" description = "Automatically link across pages in MkDocs." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1038,7 +998,6 @@ mkdocs = ">=1.1" name = "mkdocs-material" version = "8.3.9" description = "Documentation that simply works" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1058,7 +1017,6 @@ pymdown-extensions = ">=9.4" name = "mkdocs-material-extensions" version = "1.1.1" description = "Extension pack for Python Markdown and MkDocs Material." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1070,7 +1028,6 @@ files = [ name = "mkdocs-version-annotations" version = "1.0.0" description = "MkDocs plugin to add custom admonitions for documenting version differences" -category = "dev" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1082,7 +1039,6 @@ files = [ name = "mkdocstrings" version = "0.19.0" description = "Automatic documentation from sources, for MkDocs." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1107,7 +1063,6 @@ python-legacy = ["mkdocstrings-python-legacy (>=0.2.1)"] name = "mkdocstrings-python" version = "0.7.1" description = "A Python handler for mkdocstrings." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1123,7 +1078,6 @@ mkdocstrings = ">=0.19" name = "mypy-extensions" version = "0.4.4" description = "Experimental type system extensions for programs checked with the mypy typechecker." -category = "main" optional = false python-versions = ">=2.7" files = [ @@ -1134,7 +1088,6 @@ files = [ name = "napalm" version = "4.0.0" description = "Network Automation and Programmability Abstraction Layer with Multivendor support" -category = "main" optional = false python-versions = "*" files = [ @@ -1167,7 +1120,6 @@ typing-extensions = ">=4.3.0" name = "ncclient" version = "0.6.13" description = "Python library for NETCONF clients" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -1184,7 +1136,6 @@ six = "*" name = "netaddr" version = "0.8.0" description = "A network address manipulation library for Python" -category = "main" optional = false python-versions = "*" files = [ @@ -1196,7 +1147,6 @@ files = [ name = "netmiko" version = "4.1.2" description = "Multi-vendor library to simplify legacy CLI connections to network devices" -category = "main" optional = false python-versions = "*" files = [ @@ -1218,7 +1168,6 @@ textfsm = "1.1.2" name = "netutils" version = "1.4.1" description = "Common helper functions useful in network automation." -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1233,7 +1182,6 @@ optionals = ["napalm (>=4.0.0,<5.0.0)"] name = "nornir" version = "3.3.0" description = "Pluggable multi-threaded framework with inventory management to help operate collections of devices" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1254,7 +1202,6 @@ docs = ["jupyter (>=1,<2)", "nbsphinx (>=0.8,<0.9)", "pygments (>=2,<3)", "sphin name = "nornir-jinja2" version = "0.2.0" description = "Jinja2 plugins for nornir" -category = "main" optional = false python-versions = ">=3.6,<4.0" files = [ @@ -1270,7 +1217,6 @@ nornir = ">=3,<4" name = "nornir-napalm" version = "0.4.0" description = "NAPALM's plugins for nornir" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1284,14 +1230,13 @@ nornir = ">=3,<4" [[package]] name = "nornir-netmiko" -version = "0.2.0" +version = "1.0.0" description = "Netmiko's plugins for Nornir" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ - {file = "nornir_netmiko-0.2.0-py3-none-any.whl", hash = "sha256:6960e7ae0b0566a46750634ec7ab3b3a081e09afb554f593bc547bb9383d41b1"}, - {file = "nornir_netmiko-0.2.0.tar.gz", hash = "sha256:78c93b11ef21a8dd55689b82e47149061ab653cc7fe641e43886c847d171f486"}, + {file = "nornir_netmiko-1.0.0-py3-none-any.whl", hash = "sha256:5ffcbecae3d2c374e0cbee8e3cf2ed5937e3effee73ad3c5195d6b3572dc7a56"}, + {file = "nornir_netmiko-1.0.0.tar.gz", hash = "sha256:842810f929c27d158e45a837e4d57acde1a699ab29f3dab86d78037eddc17469"}, ] [package.dependencies] @@ -1302,7 +1247,6 @@ textfsm = "1.1.2" name = "nornir-utils" version = "0.2.0" description = "Collection of plugins and functions for nornir that don't require external dependencies" -category = "main" optional = false python-versions = ">=3.6.2,<4.0.0" files = [ @@ -1318,7 +1262,6 @@ nornir = ">=3,<4" name = "ntc-templates" version = "3.3.0" description = "TextFSM Templates for Network Devices, and Python wrapper for TextFSM's CliTable." -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1333,7 +1276,6 @@ textfsm = ">=1.1.0,<2.0.0" name = "packaging" version = "23.1" description = "Core utilities for Python packages" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1345,7 +1287,6 @@ files = [ name = "paramiko" version = "3.1.0" description = "SSH2 protocol library" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1367,7 +1308,6 @@ invoke = ["invoke (>=2.0)"] name = "pathspec" version = "0.11.1" description = "Utility library for gitignore style pattern matching of file paths." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1379,7 +1319,6 @@ files = [ name = "pbr" version = "5.11.1" description = "Python Build Reasonableness" -category = "dev" optional = false python-versions = ">=2.6" files = [ @@ -1391,7 +1330,6 @@ files = [ name = "platformdirs" version = "3.5.1" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1410,7 +1348,6 @@ test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.3.1)", "pytest- name = "pluggy" version = "1.0.0" description = "plugin and hook calling mechanisms for python" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1429,7 +1366,6 @@ testing = ["pytest", "pytest-benchmark"] name = "pycodestyle" version = "2.7.0" description = "Python style guide checker" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1441,7 +1377,6 @@ files = [ name = "pycparser" version = "2.21" description = "C parser in Python" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1453,7 +1388,6 @@ files = [ name = "pydantic" version = "1.10.7" description = "Data validation and settings management using python type hints" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1507,7 +1441,6 @@ email = ["email-validator (>=1.0.3)"] name = "pydocstyle" version = "6.3.0" description = "Python docstring style checker" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1526,7 +1459,6 @@ toml = ["tomli (>=1.2.3)"] name = "pyeapi" version = "0.8.4" description = "Python Client for eAPI" -category = "main" optional = false python-versions = "*" files = [ @@ -1544,7 +1476,6 @@ test = ["coverage", "mock"] name = "pyflakes" version = "2.3.1" description = "passive checker of Python programs" -category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1556,7 +1487,6 @@ files = [ name = "pygments" version = "2.15.1" description = "Pygments is a syntax highlighting package written in Python." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1571,7 +1501,6 @@ plugins = ["importlib-metadata"] name = "pylint" version = "2.13.9" description = "python code static checker" -category = "dev" optional = false python-versions = ">=3.6.2" files = [ @@ -1596,7 +1525,6 @@ testutil = ["gitpython (>3)"] name = "pymdown-extensions" version = "10.0.1" description = "Extension pack for Python Markdown." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1612,7 +1540,6 @@ pyyaml = "*" name = "pynacl" version = "1.5.0" description = "Python binding to the Networking and Cryptography (NaCl) library" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1639,7 +1566,6 @@ tests = ["hypothesis (>=3.27.0)", "pytest (>=3.2.1,!=3.3.0)"] name = "pynautobot" version = "1.4.0" description = "Nautobot API client library" -category = "main" optional = false python-versions = ">=3.7,<4.0" files = [ @@ -1654,7 +1580,6 @@ requests = ">=2.20.0,<3.0.0" name = "pyparsing" version = "3.0.9" description = "pyparsing module - Classes and methods to define and execute parsing grammars" -category = "main" optional = false python-versions = ">=3.6.8" files = [ @@ -1669,7 +1594,6 @@ diagrams = ["jinja2", "railroad-diagrams"] name = "pyserial" version = "3.5" description = "Python Serial Port Extension" -category = "main" optional = false python-versions = "*" files = [ @@ -1684,7 +1608,6 @@ cp2110 = ["hidapi"] name = "pytest" version = "7.3.1" description = "pytest: simple powerful testing with Python" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1708,7 +1631,6 @@ testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "no name = "python-dateutil" version = "2.8.2" description = "Extensions to the standard Python datetime module" -category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ @@ -1723,7 +1645,6 @@ six = ">=1.5" name = "python-dotenv" version = "0.21.1" description = "Read key-value pairs from a .env file and set them as environment variables" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1738,7 +1659,6 @@ cli = ["click (>=5.0)"] name = "pyyaml" version = "6.0" description = "YAML parser and emitter for Python" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1788,7 +1708,6 @@ files = [ name = "pyyaml-env-tag" version = "0.1" description = "A custom YAML tag for referencing environment variables in YAML files. " -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -1803,7 +1722,6 @@ pyyaml = "*" name = "requests" version = "2.30.0" description = "Python HTTP for Humans." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1825,7 +1743,6 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] name = "requests-mock" version = "1.10.0" description = "Mock out responses from the requests package" -category = "dev" optional = false python-versions = "*" files = [ @@ -1845,7 +1762,6 @@ test = ["fixtures", "mock", "purl", "pytest", "requests-futures", "sphinx", "tes name = "rich" version = "13.3.5" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" -category = "dev" optional = false python-versions = ">=3.7.0" files = [ @@ -1865,7 +1781,6 @@ jupyter = ["ipywidgets (>=7.5.1,<9)"] name = "routeros-api" version = "0.17.0" description = "Python API to RouterBoard devices produced by MikroTik." -category = "main" optional = true python-versions = "*" files = [ @@ -1880,7 +1795,6 @@ six = "*" name = "ruamel-yaml" version = "0.17.26" description = "ruamel.yaml is a YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order" -category = "main" optional = false python-versions = ">=3" files = [ @@ -1899,7 +1813,6 @@ jinja2 = ["ruamel.yaml.jinja2 (>=0.2)"] name = "ruamel-yaml-clib" version = "0.2.7" description = "C version of reader, parser and emitter for ruamel.yaml derived from libyaml" -category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1910,7 +1823,8 @@ files = [ {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win32.whl", hash = "sha256:763d65baa3b952479c4e972669f679fe490eee058d5aa85da483ebae2009d231"}, {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win_amd64.whl", hash = "sha256:d000f258cf42fec2b1bbf2863c61d7b8918d31ffee905da62dede869254d3b8a"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:045e0626baf1c52e5527bd5db361bc83180faaba2ff586e763d3d5982a876a9e"}, - {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_12_6_arm64.whl", hash = "sha256:721bc4ba4525f53f6a611ec0967bdcee61b31df5a56801281027a3a6d1c2daf5"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:1a6391a7cabb7641c32517539ca42cf84b87b667bad38b78d4d42dd23e957c81"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:9c7617df90c1365638916b98cdd9be833d31d337dbcd722485597b43c4a215bf"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:41d0f1fa4c6830176eef5b276af04c89320ea616655d01327d5ce65e50575c94"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win32.whl", hash = "sha256:f6d3d39611ac2e4f62c3128a9eed45f19a6608670c5a2f4f07f24e8de3441d38"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win_amd64.whl", hash = "sha256:da538167284de58a52109a9b89b8f6a53ff8437dd6dc26d33b57bf6699153122"}, @@ -1945,7 +1859,6 @@ files = [ name = "scp" version = "0.14.5" description = "scp module for paramiko" -category = "main" optional = false python-versions = "*" files = [ @@ -1960,7 +1873,6 @@ paramiko = "*" name = "setuptools" version = "67.7.2" description = "Easily download, build, install, upgrade, and uninstall Python packages" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1977,7 +1889,6 @@ testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs ( name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" -category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -1989,7 +1900,6 @@ files = [ name = "smmap" version = "5.0.0" description = "A pure Python implementation of a sliding window memory map manager" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2001,7 +1911,6 @@ files = [ name = "sniffio" version = "1.3.0" description = "Sniff out which async library your code is running under" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2013,7 +1922,6 @@ files = [ name = "snowballstemmer" version = "2.2.0" description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -category = "dev" optional = false python-versions = "*" files = [ @@ -2025,7 +1933,6 @@ files = [ name = "stevedore" version = "3.5.2" description = "Manage dynamic plugins for Python applications" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2041,7 +1948,6 @@ pbr = ">=2.0.0,<2.1.0 || >2.1.0" name = "tenacity" version = "8.2.2" description = "Retry code until it succeeds" -category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2056,7 +1962,6 @@ doc = ["reno", "sphinx", "tornado (>=4.5)"] name = "textfsm" version = "1.1.2" description = "Python module for parsing semi-structured text into python tables." -category = "main" optional = false python-versions = "*" files = [ @@ -2072,7 +1977,6 @@ six = "*" name = "toml" version = "0.10.2" description = "Python Library for Tom's Obvious, Minimal Language" -category = "dev" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -2084,7 +1988,6 @@ files = [ name = "tomli" version = "2.0.1" description = "A lil' TOML parser" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2096,7 +1999,6 @@ files = [ name = "transitions" version = "0.9.0" description = "A lightweight, object-oriented Python state machine implementation with many extensions." -category = "main" optional = false python-versions = "*" files = [ @@ -2115,7 +2017,6 @@ test = ["pytest"] name = "ttp" version = "0.9.4" description = "Template Text Parser" -category = "main" optional = false python-versions = ">=2.7,<4.0" files = [ @@ -2131,7 +2032,6 @@ full = ["cerberus (>=1.3.0,<1.4.0)", "deepdiff (>=5.8.0,<5.9.0)", "jinja2 (>=3.0 name = "ttp-templates" version = "0.3.5" description = "Template Text Parser Templates collections" -category = "main" optional = false python-versions = ">=3.6,<4.0" files = [ @@ -2149,7 +2049,6 @@ docs = ["mkdocs (==1.2.4)", "mkdocs-material (==7.2.2)", "mkdocs-material-extens name = "typed-ast" version = "1.5.4" description = "a fork of Python 2 and 3 ast modules with type comment support" -category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -2183,7 +2082,6 @@ files = [ name = "typing-extensions" version = "4.5.0" description = "Backported and Experimental Type Hints for Python 3.7+" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2195,7 +2093,6 @@ files = [ name = "urllib3" version = "2.0.2" description = "HTTP library with thread-safe connection pooling, file post, and more." -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2213,7 +2110,6 @@ zstd = ["zstandard (>=0.18.0)"] name = "watchdog" version = "3.0.0" description = "Filesystem events monitoring" -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2253,7 +2149,6 @@ watchmedo = ["PyYAML (>=3.10)"] name = "wrapt" version = "1.15.0" description = "Module for decorators, wrappers and monkey patching." -category = "dev" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" files = [ @@ -2338,7 +2233,6 @@ files = [ name = "yamllint" version = "1.31.0" description = "A linter for YAML files." -category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2357,7 +2251,6 @@ dev = ["doc8", "flake8", "flake8-import-order", "rstcheck[sphinx]", "sphinx"] name = "yamlordereddictloader" version = "0.4.0" description = "YAML loader and dump for PyYAML allowing to keep keys order." -category = "main" optional = false python-versions = "*" files = [ @@ -2371,7 +2264,6 @@ pyyaml = "*" name = "zipp" version = "3.15.0" description = "Backport of pathlib-compatible object wrapper for zip files" -category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2389,4 +2281,4 @@ mikrotik-driver = ["routeros-api"] [metadata] lock-version = "2.0" python-versions = "^3.7" -content-hash = "7b6179b42b3d41db301bb468ce1c0ef69dec96e92b8caf685da826c0fb12a86b" +content-hash = "0ef67839183f7725e0ef4a5ff16666e7bed68843a59b9c1f8f80fdf33fcca3a6" diff --git a/pyproject.toml b/pyproject.toml index 451197e..83d345b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -27,7 +27,7 @@ requests = "^2.25.1" nornir-utils = "^0" nornir-napalm = ">=0.4.0 <1.0.0" nornir-jinja2 = "^0" -nornir-netmiko = "^0" +nornir-netmiko = "^1" pynautobot = "^1.0.1" netutils = "^1" routeros-api = {version = "^0.17.0", optional = true} From 783bbc6e129ffa7c566520ac175133230246db7b Mon Sep 17 00:00:00 2001 From: Josh VanDeraa Date: Sun, 16 Jul 2023 17:07:53 -0500 Subject: [PATCH 2/5] Release 1.5 with Netmiko update. --- docs/dev/CHANGELOG.md | 4 ++++ pyproject.toml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/dev/CHANGELOG.md b/docs/dev/CHANGELOG.md index e4147fd..5d4bb64 100644 --- a/docs/dev/CHANGELOG.md +++ b/docs/dev/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## v2.5.0 + +- (#93) Updates Nornir-Netmiko to 1.0.0 release + ## v2.4.0 - (#61) Be more clear on error messages by @itdependsnetworks diff --git a/pyproject.toml b/pyproject.toml index 83d345b..47dd9c7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "nornir-nautobot" -version = "2.4.0" +version = "2.5.0" description = "Nornir Nautobot" authors = ["Network to Code, LLC "] readme = "README.md" From b518b9e62153124bc495d0c90a411a5f5fa92a02 Mon Sep 17 00:00:00 2001 From: Eric Hansen Date: Mon, 17 Jul 2023 11:45:28 -0400 Subject: [PATCH 3/5] =?UTF-8?q?feat:=20=E2=9C=A8=20Add=20support=20for=20p?= =?UTF-8?q?assing=20in=20custom=20jinja2=20environment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/nautobot/nautobot-plugin-golden-config/issues/525 --- nornir_nautobot/plugins/tasks/dispatcher/default.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nornir_nautobot/plugins/tasks/dispatcher/default.py b/nornir_nautobot/plugins/tasks/dispatcher/default.py index 46c2941..2310200 100644 --- a/nornir_nautobot/plugins/tasks/dispatcher/default.py +++ b/nornir_nautobot/plugins/tasks/dispatcher/default.py @@ -162,6 +162,7 @@ def generate_config( jinja_root_path: str, output_file_location: str, jinja_filters: Optional[dict] = None, + jinja_env: Optional[jinja2.Environment] = None, ) -> Result: """A small wrapper around template_file Nornir task. @@ -172,6 +173,7 @@ def generate_config( jinja_template (str): The file location of the actual Jinja template. jinja_root_path (str): The file folder where the file will be saved to. jinja_filters (dict): The filters which will be added to the jinja2 environment. + jinja_env (jinja2.Environment): The jinja2 environment to use. If not provided, nornir will create one. output_file_location (str): The filename where the file will be saved to. Returns: @@ -184,6 +186,7 @@ def generate_config( template=jinja_template, path=jinja_root_path, jinja_filters=jinja_filters, + jinja_env=jinja_env, )[0].result except NornirSubTaskError as exc: if isinstance(exc.result.exception, jinja2.exceptions.UndefinedError): # pylint: disable=no-else-raise From a04757c97bb2d958869ad3446b261a217df9e103 Mon Sep 17 00:00:00 2001 From: Josh VanDeraa Date: Mon, 31 Jul 2023 14:51:40 -0500 Subject: [PATCH 4/5] Fixes release notes. --- docs/dev/CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/dev/CHANGELOG.md b/docs/dev/CHANGELOG.md index 5d4bb64..96956d5 100644 --- a/docs/dev/CHANGELOG.md +++ b/docs/dev/CHANGELOG.md @@ -3,6 +3,7 @@ ## v2.5.0 - (#93) Updates Nornir-Netmiko to 1.0.0 release +- (#97) Adds Jinja Environment execution option ## v2.4.0 From 978b1fad35cbf8b33be089fed070093fd3233405 Mon Sep 17 00:00:00 2001 From: Josh VanDeraa Date: Wed, 2 Aug 2023 13:08:09 -0500 Subject: [PATCH 5/5] Update docs/dev/CHANGELOG.md Co-authored-by: Joe Wesch <10467633+joewesch@users.noreply.github.com> --- docs/dev/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/dev/CHANGELOG.md b/docs/dev/CHANGELOG.md index 96956d5..0f82c52 100644 --- a/docs/dev/CHANGELOG.md +++ b/docs/dev/CHANGELOG.md @@ -3,7 +3,7 @@ ## v2.5.0 - (#93) Updates Nornir-Netmiko to 1.0.0 release -- (#97) Adds Jinja Environment execution option +- (#97) Adds Jinja Environment option to generate_config ## v2.4.0