forked from mpenning/ciscoconfparse
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
220 lines (211 loc) · 15.2 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
1.2.47 20170305 Fix Github issue #75, Github issue #76, Github issue #77
1.2.46 20170109 Normalize zero-padded IP address string inputs to IPv4Obj()
1.2.45 20170105 Add zero-padded ccp_util.IPv4Obj() strings, improve IPv4Obj() and IPv6Obj()
1.2.44 20161125 Improve parsing speed for the factory=True parser
1.2.43 20161125 Fix Github issue #63, add a new function: find_objects_w_all_children()
1.2.42 20161124 Fix Github issue #62, add a new object called CiscoRange()
1.2.41 20161124 Fix Github issue #51, Github issue #53, Github issue #57, Githbu issue #64, Github issue #65
1.2.40 20160430 Fix Github issue #44 (Could not parse 'ipv6 router ospf 6'). Modify default value for access_vlan. Add new is_portchannel property. Update copyright dates. Remove OSX from test matrix
1.2.39 20151027 Fix TravisCI breakage
1.2.38 20151027 Integrate PR #48, which fixes github issue #47
1.2.37 20150706 Fix Github issue #37 (sync_diff() includes double negatives)
1.2.36 20150706 Add dns6_lookup(), add tutorial
1.2.35 20150703 Fix issue with ipv6 route parsing
1.2.34 20150703 Add support for ipv6 static routes in models_cisco (Github issue #34)
1.2.33 20150702 Expand coverage of icmp and standard ACLs in models_asa
1.2.32 20150701 Add find_objects_dna()
1.2.31 20150629 Fix Github issue #39 (not parsing Junos comments correctly)
1.2.30 20150627 Enhance banner delimiter parsing
1.2.29 20150627 Add dns_lookup and reverse_dns_lookup in ccp_util
1.2.28 20150627 Fix build problem
1.2.27 20150627 termcolor -> colorama
1.2.27 20150627 Forgot to check in some updates...
1.2.26 20150627 Update debugging code
1.2.25 20150623 Modest ASAObjGroupNetwork speed improvements
1.2.24 20150622 Fix Github issue #41, improve IPv4Obj docs
1.2.23 20150619 Improve IPv4Obj parsing speed
1.2.22 20150618 Improve ASAAclLine Log level parsing support
1.2.21 20150616 Initial support for ASAAclLine parsing, partial commit for Github Issue #29
1.2.20 20150611 Increase ASA config parse speed (when parsed with factory=True)
1.2.19 20150418 Fix Github issue #33 - Unicode path support, Github issue #36 - Banner delimiter issues, Github issue #37 - delete() broke in some situations
1.2.18 20150408 Fix Github issue #32 (ccp + py34 + windows broken).
1.2.17 20150406 Fix Github issue #31. First steps towards IPv6Obj support.
1.2.16 20150401 Improve ip route detection in models_cisco, as requested by Github issue #30. Convert more unit tests to native py.test format
1.2.15 20150322 Implement feature requested by Github issue #28 (Cisco ASA standby addrs), improve sync_diff() / fix bugs, add .geneology / .geneology_text features
1.2.14 20150307 Enhance config modification speed as documented in Github issue #26. Implement find_interface_objects() as documented in Github issue #27. Improved unit test coverage
1.2.13 20150301 Fix Github issue #25: Python3 bites me again
1.2.12 20150301 Fix Github issue #24: recursive dependencies in setup.py and ciscoconfparse/__init__.py
1.2.11 20150301 Converted unit-tests to py.test. Fix Github issue #23 (banner detection bug), add sync_diff() feature from Github issue #22, improve setup.py script. NOTE: going forward, sync_diff() will deprecate use of req_cfgspec_excl_diff()
1.2.10 20150210 Fix Github issue #21 in find_all_children(), update unit tests to detect github issue #21, add new-style example in examples/
1.2.9 20150202 reduce package size, enhance generator support
1.2.8 20150129 Add support for iterating over a generator (CiscoConfParse input, ref Github issue #19)
1.2.7 20150126 Fix README, again; pypi and github don't act the same way.
1.2.6 20150126 Fix README, because it looks awful on pypi (they don't allow twitter embedding)
1.2.5 20150126 Add 'indent' and 'auto_indent' options to append_to_family()
1.2.4 20150125 Fix _unique_OBJ() to work in Python2.6, which doesn't have set comprehensions
1.2.3 20150125 Add find_objects_w_parents()
1.2.2 20150125 Add support for parsing Junos as a Cisco-IOS-style configuration - github issue #17, fixed github issue #16 [Banners with comment characters in them are not parsed correctly], fixed github issue #15 [CiscoConfParse.append('config_line_here') is a null operation]
1.2.1 20150124 More parsing speed optimizations, particularly in banner parsing. Ripped out old, unused code
1.2.0 20150124 Major parser rewrite: streamline parser, less spaghetti code, add ccp_abc.is_config_line. This version *should* parse Cisco Nexus syntax now (but parse Cisco Nexus configs with ignore_blank_lines=False). Implement enhancement in github issue #6
1.1.24 20150123 Fix github issue #13 (ciscoconfparse did not parse correctly when ignore_blank_lines=True); some parent assignments were missed if blank lines were in the configuration
1.1.23 20150117 Update copyrights to 2015, use list comprehension in re_search_children() to increase speed
1.1.22 20141204 More bugfixes in ccp_util.IPv4Obj(); IPv4Obj should mostly be stable and reliable now. Added solid unit test coverage for IPv4Obj()
1.1.21 20141203 Major bugfixes in IPv4Obj, convert results from ordinal_list() from a python list to a python tuple
1.1.20 20141116 Remove numpydoc
1.1.19 20141116 Fix for Read the Docs publication
1.1.18 20141115 Doc reformating; remove duplicated ccp_util.IPv4Obj method
1.1.17 20141113 More doc reformating; add recursion for ASA group-objects on object-groups
1.1.16 20141113 Reformat docs; improve ASAConfigList()
1.1.15 20141112 Add gt and lt comparision methods to ccp_util.IPv4Obj(); consolidate test scripts into one shell script
1.1.14 20141111 Fix Python3 breakage in 1.1.13
1.1.13 20141111 Fix github issues #10 and #11. Improve Cisco ASA parsing support
1.1.12 20140919 Enhance support for ccp_util.IPv4Obj, add Cisco ASA parsing in models_asa
1.1.11 20140918 Fix Github Issue #9
1.1.10 20140905 Enhance AAA parsing in models_cisco
1.1.9 20140904 Enhance AAA parsing in models_cisco
1.1.8 20140903 Add initial models_cisco support for parsing basic AAA configuration
1.1.7 20140902 Fix TravisCI failures
1.1.6 20140902 Replace ipaddr.IPv4Network with ccp_util.IPv4Obj for more consistency. Started adding unittests for models_cisco functionality. Added local_py/ipaddress.py
1.1.5 20140829 Add IOS Interface object functions in models_cisco to parse port number, interface type, etc. Added the "Huge Ugly Warning" to models_cisco. I also removed an unnecessary isinstance() in ccp_abc to improve performance.
1.1.4 20140818 Major speed improvement when parsing large configurations (~45% faster than some previous CiscoConfParse versions)
1.1.3 20140729 Fix is_switchport parsing
1.1.2 20140515 Fix Python3 packaging (related to missing PEP366 compliance),
more relative ipaddr imports
1.1.1 20140515 Fix Python3 breakage due to xrange
1.1.0 20140514 Improve parsing speed. Simplify debugging logs.
1.0.7 20140507 Add build automation improvements. Modify default value for
ipv4_network_object()
1.0.6 20140506 Improve docs
1.0.5 20140506 Improve docs
1.0.4 20140504 Add new find_objects_w_child() and find_objects_wo_child()
methods. Add more documentation.
1.0.3 20140503 Removed all examples in README.rst, and expanded those in the
web documentation. More non-trivial doc updates
1.0.2 20140502 Even more documentation improvements. Changed default value
of IOSCfgLine.re_search / re_match from None to "".
1.0.1 20140501 More documentation improvements. Fix problem with experimental
IOSCfgLine factory feature.
1.0.0 20140430 Significant documentation overhaul. Add documentation of
new IOSCfgLine methods introduced in 0.9.10, as well as making the
documentation more friendly to mobile devices; substitute the
sphinx_bootstrap_theme instead of the sphinxdoc theme. Add line
highlights in code examples which hopefully make complex examples more
clear.
0.9.35 20140430 Update docstrings with more examples. Improve doc Makefile
0.9.34 20140429 Update IOSCfgLine objects with a recursive delete, which
will automatically delete children if the parent is deleted. First
steps toward a long-overdue documentation update. A lot more is left to
do.
0.9.33 20140425 Add unit test for banner parsing coverage
0.9.32 20140422 Fix banner parent-child relationships for Github Issue #4.
Improve parsing speed with pre-compiled regex in _mark_banner().
Update example in README.rst. Add new ignore_rgx option to the
re_sub() line-object method.
0.9.31 20140415 Fix DBGFLAG issue in CiscoConfParse() for Github Issue #5
0.9.30 20140404 Add ignore_blank_lines option in CiscoConfParse() for Github
Issue #3
0.9.29 20140404 Fix typo in CiscoConfParse()
0.9.28 20140403 Added new linesplit_rgx option in CiscoConfParse() to help
user who filed Github Issue #2; no defaults were changed. Added
Python 3.4 in .travis.yml in hopes of testing against Python 3.4
0.9.27 20140326 Added a new append_line() method to ciscoconfparse.
0.9.26 20140319 Finally caved and left my copy of ipaddr that's modified to
work with python3 in ciscoconfparse/ipaddr.py, where Travis can find it
0.9.25 20140319 Improve speed in find_blocks(), as requested by Github
Issue #1. Minor change to improve Travis CI builds
0.9.24 20140313 Fix broken Travis CI builds (because of where I moved the ipaddr module). Added new functionality
in models_cisco (still alpha code at this point)
0.9.23 20140305 Modify ipv4_addr_object default value in models_cisco;
move ipaddr module to a local folder
0.9.22 20140228 Add PIM interface support in models_cisco (still alpha at
this point)
0.9.21 20140226 Fix Python3.2 build (note to self... u'' isn't supported until
Python3.3).
0.9.20 20140226 Updated README with other Cisco IOS configuration resources.
Fixed problems in models_cisco; improved / added docstrings. Improve
build workflow.
0.9.19 20140217 Fixed Python3 build issue in 0.9.18
0.9.18 20140217 Updated README.rst. Added new IOSCfgLine.lineage() &
CiscoConfParse.lineage() methods (experimental at this point).
Added IOSCfgLine.all_children. "President's Day holiday release"
0.9.17 20140215 Updated README.rst, add MANIFEST.in and requirements.txt.
Several new object-oriented methods added.
0.9.16 20140212 Fix bug in ccp_abc.insert_before() and insert_after(). Made
updates to README.rst. Ripped out linenum references in various
insert methods
0.9.15 20140210 Updated README.rst with inline example
0.9.14 20140209 Support for Travis CI. Fix Travis CI build failures on
Python3.3 (due to how __hash__() is computed).
0.9.13 20140209 Fixed Python3 compatibility, which broke a few builds ago.
Including ipaddr-py (patched for Python3) until versions of Python3
typically include it (right now, Debian 7.3 has Python3.2 without
ipaddr-py)
0.9.12 20140208 Fixed bug in ccp_abc.py; reworked comment detection;
performance improvements
0.9.11 20140204 Bugfixes
0.9.10 20140203 Bugfixes and more performance improvements. Doubled
number of unit tests. Added alpha-quality code in another module.
0.9.9 20140131 Major insert() / append() performance improvements. Add
optional interface-aware config line factory objects. Add abstract base
classes. Add atomic options to insert_before(), insert_after(), etc...
0.9.8 20140124 Remove debugging info
0.9.7 20140124 Major rewrite, removed support for old python versions.
Ripped out inefficient code I wrote as a python newbie, added more
idiomatic structures in various places. Also added support for
inserting and deleting lines via insert_before(), insert_after(), and
insert_after_child()
0.9.6 20140106 Update copyright to 2014. Rewrite unit tests
0.9.5 20131231 Add replace_lines() function, enhance unit tests,
added an exactmatch option on _find_line_OBJ(). Updated code
copyright to include 2014
0.9.4 20130814 Add Python3 compliance; other minor tweaks
0.9.3 20130511 Added methods to IOSCfgLine: __eq__(), __hash__(), __lt__(),
__gt__(), as well as simplifying several other methods. Misc code
maintenance...
0.9.2 20130509 Add find_children_w_parents() method... tidy up unit-tests
0.9.1 20121231 Improve docs with numpydoc and intersphinx links. Add
more examples / doctests. Renamed internal CiscoConfParse methods
with a leading _ to make Sphinx documentation more intuitive...
0.9.0 20121230 Add RST documentation into the archives and fix more build
issues
0.8.6 20121230 Fix packaging problems introduced when I switched to a native
mercurial repository (examples/* and configs/* were not automatically
packaged in the .egg / .tar.gz anymore...)
0.8.5 20121229 - Added custom comment delimiters that were in the 0.8.3a private
build. Converted the unicode backslash to a true unicode instance.
0.8.4 20121229 - Add doctests, code maintenance, and more documentation fixes.
Improved examples/req_cfgspec_all_diff.py and
examples/req_cfgspec_excl_diff.py.
0.8.3 20091016 - Documentation updates. PEP8 formatting
0.8.2 20090808 - Fixed a fatal crash in find_blocks()
0.8.1 20090719 - Code reorganization. Fixed a bad RuntimeError. Promoted to
production-quality at this point
0.8.0 20071011 - Removed residual internal debugging from the CiscoPassword
class. Added an 'ignore_ws' options to all public methods, except
req_cfgspec_excl_diff; this option will make the method's matches
ignore whitespace differences (useful in some CatOS configurations).
After much deliberation, I have removed the explicit 'False' return
values for methods that do not match; instead I am returning an empty
list (which will test False). Apologies for breaking any existing
code, but I decided against leaving beta with this behavior. Removed
all sys.exit(0) statements in favor of raising a RuntimeError.
0.7.5 20070804 - Fixed a bug in the parse() method, which was associating
grandchildren as children of the grandparent. Added unit tests.
0.7.0 20070803 - Added an optional parameter to the find_lines(),
find_children(), find_all_children(), and find_blocks() methods. This
parameter will allow the user to specify whether he wants an "exact"
match or a normal regex match. Also fixed a bug that broke parsing
of configs with an indented line at the very end.
0.6.8 20070802 - Ported fixes to the CiscoPassword class from the
cisco_decrypt package. Notably, there were crashes when it was called
with certain unencrypted passwords.
0.6.7 20070801 - Fixed bug where some methods didn't return False when no
diffs were found
0.6.6 20070730 - Added password decryption options to the command-line help
menu. Modified all diff functions to return False if no diffs are found
0.6.5 20070728 - Fixed another CiscoPassword bug. Added warning if
CiscoPassword decryption fails. Added command-line functionality for
improved interoperability with other languages (and shell-usage if
you like).
0.6.1 20070726 - Cosmetic restructuring of code
0.6.0 20070721 - Revised APIs. Existing APIs should be stable now