mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-30 10:38:37 +00:00
net-mgmt/py-ciscoconfparse: Update to 1.9.16
* Switch to PEP517 build framework. * Convert to USE_PYTHON=pytest to simplify Makefile. * Remove no longer required patch for newer releases of setuptools. Changelog since 1.5.51: https://github.com/mpenning/ciscoconfparse/compare/v1.5.51...1.9.16
This commit is contained in:
parent
608775544e
commit
0f718a2032
@ -1,5 +1,5 @@
|
||||
PORTNAME= ciscoconfparse
|
||||
DISTVERSION= 1.5.51
|
||||
DISTVERSION= 1.9.16
|
||||
CATEGORIES= net-mgmt python
|
||||
MASTER_SITES= PYPI
|
||||
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
|
||||
@ -11,19 +11,20 @@ WWW= http://www.pennington.net/py/ciscoconfparse/
|
||||
LICENSE= GPLv3+
|
||||
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||
|
||||
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}loguru>0:devel/py-loguru@${PY_FLAVOR}
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}colorama>0:devel/py-colorama@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}dnspython>0:dns/py-dnspython@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}loguru>0:devel/py-loguru@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}passlib>0:security/py-passlib@${PY_FLAVOR}
|
||||
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR}
|
||||
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.6.1:devel/py-poetry-core@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}packaging>=23.0:devel/py-packaging@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}wheel>=0.38.4:devel/py-wheel@${PY_FLAVOR}
|
||||
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}deprecated>=1.2.14:devel/py-deprecated@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}dnspython>=2.4.2:dns/py-dnspython@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}loguru>=0.7.2:devel/py-loguru@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}passlib>=1.7.4:security/py-passlib@${PY_FLAVOR} \
|
||||
${PYTHON_PKGNAMEPREFIX}toml>=0.10.2:textproc/py-toml@${PY_FLAVOR}
|
||||
|
||||
USES= python
|
||||
USE_PYTHON= distutils autoplist
|
||||
USE_PYTHON= autoplist pep517 pytest
|
||||
|
||||
TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
|
||||
|
||||
NO_ARCH= yes
|
||||
|
||||
do-test:
|
||||
@cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ${PYTHON_CMD} -m pytest -v -rs
|
||||
|
||||
.include <bsd.port.mk>
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1635877655
|
||||
SHA256 (ciscoconfparse-1.5.51.tar.gz) = 392688d883727cc85b09d294bcc13c15e5d8f9c7b3b571ad8570028514ae1364
|
||||
SIZE (ciscoconfparse-1.5.51.tar.gz) = 145675
|
||||
TIMESTAMP = 1698590690
|
||||
SHA256 (ciscoconfparse-1.9.16.tar.gz) = 35dca4b79d24bf18e7e85ed045e99785f2b4914fe11de0ca4ffa389c064d3045
|
||||
SIZE (ciscoconfparse-1.9.16.tar.gz) = 463762
|
||||
|
@ -1,461 +0,0 @@
|
||||
--- ciscoconfparse/__init__.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/__init__.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
from ciscoconfparse.ciscoconfparse import __author_email__
|
||||
from ciscoconfparse.ciscoconfparse import __author__
|
||||
from ciscoconfparse.ciscoconfparse import __license__
|
||||
--- ciscoconfparse/__main__.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/__main__.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
|
||||
""" __main__.py - Parse, Query, Build, and Modify IOS-style configurations
|
||||
|
||||
--- ciscoconfparse/ccp_abc.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/ccp_abc.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
from operator import methodcaller, attrgetter
|
||||
from abc import ABCMeta, abstractmethod
|
||||
from copy import deepcopy
|
||||
@@ -37,9 +37,7 @@ r""" ccp_abc.py - Parse, Query, Build, and Modify IOS-
|
||||
##
|
||||
|
||||
|
||||
-class BaseCfgLine(object):
|
||||
- __metaclass__ = ABCMeta
|
||||
-
|
||||
+class BaseCfgLine(object, metaclass=ABCMeta):
|
||||
def __init__(self, text="", comment_delimiter="!"):
|
||||
"""Accept an IOS line number and initialize family relationship
|
||||
attributes"""
|
||||
@@ -313,14 +311,14 @@ class BaseCfgLine(object):
|
||||
!
|
||||
>>>
|
||||
"""
|
||||
- cobjs = filter(methodcaller("re_search", linespec), self.children)
|
||||
- retval = map(attrgetter("text"), cobjs)
|
||||
+ cobjs = list(filter(methodcaller("re_search", linespec), self.children))
|
||||
+ retval = list(map(attrgetter("text"), cobjs))
|
||||
# Delete the children
|
||||
- map(methodcaller("delete"), cobjs)
|
||||
+ list(map(methodcaller("delete"), cobjs))
|
||||
return retval
|
||||
|
||||
def has_child_with(self, linespec):
|
||||
- return bool(filter(methodcaller("re_search", linespec), self.children))
|
||||
+ return bool(list(filter(methodcaller("re_search", linespec), self.children)))
|
||||
|
||||
@junos_unsupported
|
||||
def insert_before(self, insertstr):
|
||||
@@ -876,7 +874,7 @@ class BaseCfgLine(object):
|
||||
a list of all ancestors in the direct line as well as this obj.
|
||||
Cousins or aunts / uncles are *not* returned. Note: children of this
|
||||
object are *not* returned."""
|
||||
- retval = map(lambda x: x.text, sorted(self.all_parents))
|
||||
+ retval = [x.text for x in sorted(self.all_parents)]
|
||||
retval.append(self.text)
|
||||
return retval
|
||||
|
||||
--- ciscoconfparse/ccp_util.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/ccp_util.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
from operator import attrgetter
|
||||
from colorama import Fore
|
||||
import itertools
|
||||
@@ -542,7 +542,7 @@ class IPv4Obj(object):
|
||||
## For Python3 iteration...
|
||||
return self.network_object.__next__()
|
||||
|
||||
- def next(self):
|
||||
+ def __next__(self):
|
||||
## For Python2 iteration...
|
||||
return self.network_object.__next__()
|
||||
|
||||
@@ -998,7 +998,7 @@ class IPv6Obj(object):
|
||||
## For Python3 iteration...
|
||||
return self.network_object.__next__()
|
||||
|
||||
- def next(self):
|
||||
+ def __next__(self):
|
||||
## For Python2 iteration...
|
||||
return self.network_object.__next__()
|
||||
|
||||
@@ -1399,7 +1399,7 @@ def dns_query(input_str="", query_type="", server="",
|
||||
elif query_type == "AXFR":
|
||||
"""This is a hack: return text of zone transfer, instead of axfr objs"""
|
||||
_zone = zone.from_xfr(query.xfr(server, input_str, lifetime=timeout))
|
||||
- return [_zone[node].to_text(node) for node in _zone.nodes.keys()]
|
||||
+ return [_zone[node].to_text(node) for node in list(_zone.nodes.keys())]
|
||||
elif query_type == "CNAME":
|
||||
try:
|
||||
answer = resolver.query(input_str, query_type)
|
||||
@@ -1689,7 +1689,7 @@ class CiscoRange(MutableSequence):
|
||||
|
||||
# Unicode is the only type with .isnumeric()...
|
||||
if sys.version_info < (3, 0, 0):
|
||||
- prefix_removed = unicode(ii[len(common_prefix):], "utf-8")
|
||||
+ prefix_removed = str(ii[len(common_prefix):], "utf-8")
|
||||
else:
|
||||
prefix_removed = ii[len(common_prefix):]
|
||||
|
||||
@@ -1734,7 +1734,7 @@ class CiscoRange(MutableSequence):
|
||||
begin, end = int(begin.strip()), int(end.strip()) + 1
|
||||
assert begin > -1
|
||||
assert end > begin
|
||||
- retval.extend(range(begin, end))
|
||||
+ retval.extend(list(range(begin, end)))
|
||||
return list(set(retval))
|
||||
|
||||
def _range(self):
|
||||
@@ -1784,7 +1784,7 @@ class CiscoRange(MutableSequence):
|
||||
for ii in self._list:
|
||||
# Removed try / except which is slower than sys.version_info
|
||||
if sys.version_info < (3, 0, 0):
|
||||
- unicode_ii = unicode(str(ii)) # Python2.7...
|
||||
+ unicode_ii = str(str(ii)) # Python2.7...
|
||||
else:
|
||||
unicode_ii = str(ii)
|
||||
|
||||
--- ciscoconfparse/ciscoconfparse.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/ciscoconfparse.py
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
-from __future__ import absolute_import
|
||||
|
||||
+
|
||||
from loguru import logger
|
||||
|
||||
from ciscoconfparse.models_cisco import IOSHostnameLine, IOSRouteLine
|
||||
@@ -886,7 +886,7 @@ class CiscoConfParse(object):
|
||||
elif exactmatch:
|
||||
# Return objects whose text attribute matches linespec exactly
|
||||
linespec_re = re.compile("^{0}$".format(dnaspec))
|
||||
- return list(filter(lambda obj: linespec_re.search(obj.dna), self.ConfigObjs))
|
||||
+ return list([obj for obj in self.ConfigObjs if linespec_re.search(obj.dna)])
|
||||
|
||||
def find_objects(self, linespec, exactmatch=False, ignore_ws=False):
|
||||
"""Find all :class:`~models_cisco.IOSCfgLine` objects whose text
|
||||
@@ -1412,7 +1412,7 @@ class CiscoConfParse(object):
|
||||
retval = list()
|
||||
if ignore_ws:
|
||||
parentspec = self._build_space_tolerant_regex(parentspec)
|
||||
- childspec = map(self._build_space_tolerant_regex, childspec)
|
||||
+ childspec = list(map(self._build_space_tolerant_regex, childspec))
|
||||
|
||||
for parentobj in self.find_objects(parentspec):
|
||||
results = set([])
|
||||
@@ -1450,7 +1450,7 @@ class CiscoConfParse(object):
|
||||
retval = list()
|
||||
if ignore_ws:
|
||||
parentspec = self._build_space_tolerant_regex(parentspec)
|
||||
- childspec = map(self._build_space_tolerant_regex, childspec)
|
||||
+ childspec = list(map(self._build_space_tolerant_regex, childspec))
|
||||
|
||||
for parentobj in self.find_objects(parentspec):
|
||||
results = set([])
|
||||
@@ -2719,7 +2719,7 @@ class CiscoConfParse(object):
|
||||
tmp = self._find_line_OBJ(linespec)
|
||||
if uncfgspec is None:
|
||||
uncfgspec = linespec
|
||||
- a_lines = map(lambda x: x.text, tmp)
|
||||
+ a_lines = [x.text for x in tmp]
|
||||
a = CiscoConfParse(a_lines)
|
||||
|
||||
b = CiscoConfParse(cfgspec, factory=False)
|
||||
@@ -2758,10 +2758,10 @@ class CiscoConfParse(object):
|
||||
a_lines.append(obj.text)
|
||||
a_linenums.append(obj.linenum)
|
||||
a_lines.extend(
|
||||
- map(lambda x: getattr(x, "text"), obj.all_children)
|
||||
+ [getattr(x, "text") for x in obj.all_children]
|
||||
)
|
||||
a_linenums.extend(
|
||||
- map(lambda x: getattr(x, "linenum"), obj.all_children)
|
||||
+ [getattr(x, "linenum") for x in obj.all_children]
|
||||
)
|
||||
b_lines = list()
|
||||
b_linenums = list()
|
||||
@@ -2769,10 +2769,10 @@ class CiscoConfParse(object):
|
||||
b_lines.append(obj.text)
|
||||
b_linenums.append(obj.linenum)
|
||||
b_lines.extend(
|
||||
- map(lambda x: getattr(x, "text"), obj.all_children)
|
||||
+ [getattr(x, "text") for x in obj.all_children]
|
||||
)
|
||||
b_linenums.extend(
|
||||
- map(lambda x: getattr(x, "linenum"), obj.all_children)
|
||||
+ [getattr(x, "linenum") for x in obj.all_children]
|
||||
)
|
||||
else:
|
||||
if ignore_order:
|
||||
@@ -2784,20 +2784,12 @@ class CiscoConfParse(object):
|
||||
a_nonparents, b_nonparents
|
||||
)
|
||||
else:
|
||||
- a_lines = map(
|
||||
- lambda x: getattr(x, "text"), getattr(adiff_level, attr)
|
||||
- )
|
||||
+ a_lines = [getattr(x, "text") for x in getattr(adiff_level, attr)]
|
||||
# Build a map from a_lines index to a.ConfigObjs index
|
||||
- a_linenums = map(
|
||||
- lambda x: getattr(x, "linenum"), getattr(adiff_level, attr)
|
||||
- )
|
||||
- b_lines = map(
|
||||
- lambda x: getattr(x, "text"), getattr(bdiff_level, attr)
|
||||
- )
|
||||
+ a_linenums = [getattr(x, "linenum") for x in getattr(adiff_level, attr)]
|
||||
+ b_lines = [getattr(x, "text") for x in getattr(bdiff_level, attr)]
|
||||
# Build a map from b_lines index to b.ConfigObjs index
|
||||
- b_linenums = map(
|
||||
- lambda x: getattr(x, "linenum"), getattr(bdiff_level, attr)
|
||||
- )
|
||||
+ b_linenums = [getattr(x, "linenum") for x in getattr(bdiff_level, attr)]
|
||||
|
||||
###
|
||||
### Mark diffs here
|
||||
@@ -2836,7 +2828,7 @@ class CiscoConfParse(object):
|
||||
aobj = aobjs[idx]
|
||||
# set aparent_text to all parents' text (joined)
|
||||
aparent_text = " ".join(
|
||||
- map(lambda x: x.text, aobj.all_parents)
|
||||
+ [x.text for x in aobj.all_parents]
|
||||
)
|
||||
except IndexError:
|
||||
# aobj doesn't exist, if we get an index error
|
||||
@@ -2851,7 +2843,7 @@ class CiscoConfParse(object):
|
||||
bobj = bobjs[idx]
|
||||
# set bparent_text to all parents' text (joined)
|
||||
bparent_text = " ".join(
|
||||
- map(lambda x: x.text, bobj.all_parents)
|
||||
+ [x.text for x in bobj.all_parents]
|
||||
)
|
||||
except IndexError:
|
||||
# bobj doesn't exist, if we get an index error
|
||||
@@ -3055,7 +3047,7 @@ class CiscoConfParse(object):
|
||||
elif exactmatch:
|
||||
# Return objects whose text attribute matches linespec exactly
|
||||
linespec_re = re.compile("^%s$" % linespec)
|
||||
- return list(filter(lambda obj: linespec_re.search(obj.text), self.ConfigObjs))
|
||||
+ return list([obj for obj in self.ConfigObjs if linespec_re.search(obj.text)])
|
||||
|
||||
def _find_sibling_OBJ(self, lineobject):
|
||||
"""SEMI-PRIVATE: Takes a singe object and returns a list of sibling
|
||||
@@ -3198,7 +3190,7 @@ class IOSConfigList(MutableSequence):
|
||||
logger.debug("self._list = {0}".format(self._list))
|
||||
|
||||
def has_line_with(self, linespec):
|
||||
- return bool(filter(methodcaller("re_search", linespec), self._list))
|
||||
+ return bool(list(filter(methodcaller("re_search", linespec), self._list)))
|
||||
|
||||
@junos_unsupported
|
||||
def insert_before(self, exist_val, new_val, atomic=False):
|
||||
@@ -3440,7 +3432,7 @@ class IOSConfigList(MutableSequence):
|
||||
|
||||
def _banner_mark_regex(self, REGEX):
|
||||
# Build a list of all leading banner lines
|
||||
- banner_objs = list(filter(lambda obj: REGEX.search(obj.text), self._list))
|
||||
+ banner_objs = list([obj for obj in self._list if REGEX.search(obj.text)])
|
||||
|
||||
BANNER_STR_RE = r"^(?:(?P<btype>(?:set\s+)*banner\s\w+\s+)(?P<bchar>\S))"
|
||||
for parent in banner_objs:
|
||||
@@ -3582,9 +3574,7 @@ class IOSConfigList(MutableSequence):
|
||||
if (indent < max_indent) and is_config_line:
|
||||
parent = None
|
||||
# walk parents and intelligently prune stale parents
|
||||
- stale_parent_idxs = filter(
|
||||
- lambda ii: ii >= indent, sorted(parents.keys(), reverse=True)
|
||||
- )
|
||||
+ stale_parent_idxs = [ii for ii in sorted(list(parents.keys()), reverse=True) if ii >= indent]
|
||||
for parent_idx in stale_parent_idxs:
|
||||
del parents[parent_idx]
|
||||
else:
|
||||
@@ -3793,7 +3783,7 @@ class NXOSConfigList(MutableSequence):
|
||||
logger.debug("self._list = {0}".format(self._list))
|
||||
|
||||
def has_line_with(self, linespec):
|
||||
- return bool(filter(methodcaller("re_search", linespec), self._list))
|
||||
+ return bool(list(filter(methodcaller("re_search", linespec), self._list)))
|
||||
|
||||
def insert_before(self, robj, val, atomic=False):
|
||||
## Insert something before robj
|
||||
@@ -3904,7 +3894,7 @@ class NXOSConfigList(MutableSequence):
|
||||
|
||||
def _banner_mark_regex(self, REGEX):
|
||||
# Build a list of all leading banner lines
|
||||
- banner_objs = list(filter(lambda obj: REGEX.search(obj.text), self._list))
|
||||
+ banner_objs = list([obj for obj in self._list if REGEX.search(obj.text)])
|
||||
|
||||
BANNER_STR_RE = r"^(?:(?P<btype>(?:set\s+)*banner\s\w+\s+)(?P<bchar>\S))"
|
||||
for parent in banner_objs:
|
||||
@@ -4020,9 +4010,7 @@ class NXOSConfigList(MutableSequence):
|
||||
if (indent < max_indent) and is_config_line:
|
||||
parent = None
|
||||
# walk parents and intelligently prune stale parents
|
||||
- stale_parent_idxs = filter(
|
||||
- lambda ii: ii >= indent, sorted(parents.keys(), reverse=True)
|
||||
- )
|
||||
+ stale_parent_idxs = [ii for ii in sorted(list(parents.keys()), reverse=True) if ii >= indent]
|
||||
for parent_idx in stale_parent_idxs:
|
||||
del parents[parent_idx]
|
||||
else:
|
||||
@@ -4227,7 +4215,7 @@ class ASAConfigList(MutableSequence):
|
||||
self._list = self._bootstrap_obj_init(list(map(attrgetter("text"), self._list)))
|
||||
|
||||
def has_line_with(self, linespec):
|
||||
- return bool(filter(methodcaller("re_search", linespec), self._list))
|
||||
+ return bool(list(filter(methodcaller("re_search", linespec), self._list)))
|
||||
|
||||
def insert_before(self, robj, val, atomic=False):
|
||||
## Insert something before robj
|
||||
@@ -4357,9 +4345,7 @@ class ASAConfigList(MutableSequence):
|
||||
if (indent < max_indent) and is_config_line:
|
||||
parent = None
|
||||
# walk parents and intelligently prune stale parents
|
||||
- stale_parent_idxs = filter(
|
||||
- lambda ii: ii >= indent, sorted(parents.keys(), reverse=True)
|
||||
- )
|
||||
+ stale_parent_idxs = [ii for ii in sorted(list(parents.keys()), reverse=True) if ii >= indent]
|
||||
for parent_idx in stale_parent_idxs:
|
||||
del parents[parent_idx]
|
||||
else:
|
||||
@@ -4700,7 +4686,7 @@ if __name__ == "__main__":
|
||||
diff = CiscoConfParse(opts.config).req_cfgspec_all_diff(opts.arg1.split(","))
|
||||
elif opts.method == "decrypt":
|
||||
pp = CiscoPassword()
|
||||
- print(pp.decrypt(opts.arg1))
|
||||
+ print((pp.decrypt(opts.arg1)))
|
||||
exit(1)
|
||||
elif opts.method == "help":
|
||||
print("Valid methods and their arguments:")
|
||||
@@ -4710,10 +4696,10 @@ if __name__ == "__main__":
|
||||
print(" find_blocks: arg1=linespec")
|
||||
print(" find_parents_w_child: arg1=parentspec arg2=childspec")
|
||||
print(" find_parents_wo_child: arg1=parentspec arg2=childspec")
|
||||
- print(
|
||||
+ print((
|
||||
" req_cfgspec_excl_diff: arg1=linespec arg2=uncfgspec"
|
||||
+ " arg3=cfgspec"
|
||||
- )
|
||||
+ ))
|
||||
print(" req_cfgspec_all_diff: arg1=cfgspec")
|
||||
print(" decrypt: arg1=encrypted_passwd")
|
||||
exit(1)
|
||||
--- ciscoconfparse/errors.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/errors.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
|
||||
r""" errors.py - Parse, Query, Build, and Modify IOS-style configs
|
||||
|
||||
--- ciscoconfparse/models_asa.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/models_asa.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
import re
|
||||
|
||||
from ciscoconfparse.protocol_values import (
|
||||
--- ciscoconfparse/models_cisco.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/models_cisco.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
import traceback
|
||||
import sys
|
||||
import re
|
||||
@@ -1412,7 +1412,7 @@ class BaseIOSIntfLine(IOSCfgLine):
|
||||
}
|
||||
|
||||
## Analyze each vdict in sequence and apply to retval sequentially
|
||||
- for key, val in vdict.items():
|
||||
+ for key, val in list(vdict.items()):
|
||||
if val != "_nomatch_":
|
||||
## absolute in the key overrides previous values
|
||||
if "absolute" in key:
|
||||
@@ -1851,7 +1851,7 @@ class IOSAccessLine(BaseCfgLine):
|
||||
retval = self.re_match_typed(
|
||||
r"([a-zA-Z]+\s+)*(\d+\s*\d*)$", group=2, result_type=str, default=""
|
||||
)
|
||||
- tmp = map(int, retval.strip().split())
|
||||
+ tmp = list(map(int, retval.strip().split()))
|
||||
return tmp
|
||||
|
||||
def manual_exectimeout_min(self):
|
||||
@@ -1869,7 +1869,7 @@ class IOSAccessLine(BaseCfgLine):
|
||||
retval = self.re_match_iter_typed(
|
||||
r"^\s*exec-timeout\s+(\d+\s*\d*)\s*$", group=1, result_type=str, default=""
|
||||
)
|
||||
- tmp = map(int, retval.strip().split())
|
||||
+ tmp = list(map(int, retval.strip().split()))
|
||||
return tmp
|
||||
|
||||
|
||||
--- ciscoconfparse/models_junos.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/models_junos.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
import sys
|
||||
import re
|
||||
import os
|
||||
--- ciscoconfparse/models_nxos.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/models_nxos.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
import sys
|
||||
import re
|
||||
import os
|
||||
@@ -1365,7 +1365,7 @@ class BaseNXOSIntfLine(NXOSCfgLine):
|
||||
}
|
||||
|
||||
## Analyze each vdict in sequence and apply to retval sequentially
|
||||
- for key, val in vdict.items():
|
||||
+ for key, val in list(vdict.items()):
|
||||
if val != "_nomatch_":
|
||||
## absolute in the key overrides previous values
|
||||
if "absolute" in key:
|
||||
@@ -1971,7 +1971,7 @@ class NXOSAccessLine(BaseCfgLine):
|
||||
retval = self.re_match_typed(
|
||||
r"([a-zA-Z]+\s+)*(\d+\s*\d*)$", group=2, result_type=str, default=""
|
||||
)
|
||||
- tmp = map(int, retval.strip().split())
|
||||
+ tmp = list(map(int, retval.strip().split()))
|
||||
return tmp
|
||||
|
||||
def manual_exectimeout_min(self):
|
||||
@@ -1989,7 +1989,7 @@ class NXOSAccessLine(BaseCfgLine):
|
||||
retval = self.re_match_iter_typed(
|
||||
r"^\s*exec-timeout\s+(\d+\s*\d*)\s*$", group=1, result_type=str, default=""
|
||||
)
|
||||
- tmp = map(int, retval.strip().split())
|
||||
+ tmp = list(map(int, retval.strip().split()))
|
||||
return tmp
|
||||
|
||||
|
||||
--- ciscoconfparse/protocol_values.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ ciscoconfparse/protocol_values.py
|
||||
@@ -1,4 +1,4 @@
|
||||
-from __future__ import absolute_import
|
||||
+
|
||||
|
||||
""" protocol_values.py - Parse, Query, Build, and Modify IOS-style configurations
|
||||
Copyright (C) 2020-2021 David Michael Pennington at Cisco Systems
|
||||
--- setup.py.orig 2021-11-02 03:51:35 UTC
|
||||
+++ setup.py
|
||||
@@ -127,7 +127,6 @@ def setup_packages():
|
||||
long_description=read("README.rst"),
|
||||
include_package_data=True, # See MANIFEST.in for explicit rules
|
||||
packages=find_packages(),
|
||||
- use_2to3=True, # Reqd for Windows + Py3 - ref Github issue #32
|
||||
zip_safe=False,
|
||||
python_requires='>=3.5',
|
||||
install_requires=REQUIRES,
|
25
net-mgmt/py-ciscoconfparse/files/patch-pyproject.toml
Normal file
25
net-mgmt/py-ciscoconfparse/files/patch-pyproject.toml
Normal file
@ -0,0 +1,25 @@
|
||||
Just use poetry-core and remove directives that are unknown for it.
|
||||
|
||||
Avoid the installation of the test suite into the top of Python's site-lib.
|
||||
|
||||
--- pyproject.toml.orig 2023-10-29 15:08:28 UTC
|
||||
+++ pyproject.toml
|
||||
@@ -2,9 +2,8 @@
|
||||
|
||||
[build-system]
|
||||
# See -> PEP 517
|
||||
-requires = ["poetry>=1.5.1", "poetry-core>=1.6.1", "wheel>=0.38.4", "packaging>=23.0"]
|
||||
+requires = ["poetry-core>=1.6.1", "wheel>=0.38.4", "packaging>=23.0"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
-requires-python = ">=3.8.0"
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
@@ -38,7 +37,6 @@ packages = [
|
||||
packages = [
|
||||
# Syntax -> https://python-poetry.org/docs/pyproject/#packages
|
||||
{ include = "ciscoconfparse/*" },
|
||||
- { include = "tests/*" },
|
||||
]
|
||||
# See -> https://python-poetry.org/docs/pyproject/#include-and-exclude
|
||||
include = [
|
Loading…
Reference in New Issue
Block a user