banip 2.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. banip-2.1.0/LICENSE +22 -0
  2. banip-2.1.0/LICENSE-rich +20 -0
  3. banip-2.1.0/PKG-INFO +80 -0
  4. banip-2.1.0/README.md +49 -0
  5. banip-2.1.0/changelogs/README.md +8 -0
  6. banip-2.1.0/changelogs/v0.1.x.md +9 -0
  7. banip-2.1.0/changelogs/v1.0.x.md +55 -0
  8. banip-2.1.0/changelogs/v1.1.x.md +43 -0
  9. banip-2.1.0/changelogs/v1.2.x.md +22 -0
  10. banip-2.1.0/changelogs/v1.3.x.md +180 -0
  11. banip-2.1.0/changelogs/v1.4.x.md +25 -0
  12. banip-2.1.0/changelogs/v1.5.x.md +7 -0
  13. banip-2.1.0/changelogs/v2.0.x.md +27 -0
  14. banip-2.1.0/global-gitignore.txt +64 -0
  15. banip-2.1.0/pyproject.toml +89 -0
  16. banip-2.1.0/pyproject.toml.orig +80 -0
  17. banip-2.1.0/samples/plugins/foo.py +43 -0
  18. banip-2.1.0/samples/plugins/foo_args.py +59 -0
  19. banip-2.1.0/src/banip/__init__.py +1 -0
  20. banip-2.1.0/src/banip/__main__.py +6 -0
  21. banip-2.1.0/src/banip/app.py +217 -0
  22. banip-2.1.0/src/banip/argument_types.py +68 -0
  23. banip-2.1.0/src/banip/bots.py +461 -0
  24. banip-2.1.0/src/banip/build.py +407 -0
  25. banip-2.1.0/src/banip/check.py +121 -0
  26. banip-2.1.0/src/banip/config.py +591 -0
  27. banip-2.1.0/src/banip/constants.py +38 -0
  28. banip-2.1.0/src/banip/database.py +307 -0
  29. banip-2.1.0/src/banip/null.py +13 -0
  30. banip-2.1.0/src/banip/parsers/__init__.py +1 -0
  31. banip-2.1.0/src/banip/parsers/bots_args.py +41 -0
  32. banip-2.1.0/src/banip/parsers/build_args.py +58 -0
  33. banip-2.1.0/src/banip/parsers/check_args.py +19 -0
  34. banip-2.1.0/src/banip/parsers/database_args.py +48 -0
  35. banip-2.1.0/src/banip/parsers/patch_args.py +49 -0
  36. banip-2.1.0/src/banip/parsers/stats_args.py +31 -0
  37. banip-2.1.0/src/banip/patch.py +88 -0
  38. banip-2.1.0/src/banip/py.typed +0 -0
  39. banip-2.1.0/src/banip/stats.py +79 -0
  40. banip-2.1.0/src/banip/utilities/__init__.py +43 -0
  41. banip-2.1.0/src/banip/utilities/data.py +130 -0
  42. banip-2.1.0/src/banip/utilities/display.py +157 -0
  43. banip-2.1.0/src/banip/utilities/external.py +35 -0
  44. banip-2.1.0/src/banip/utilities/ip.py +79 -0
  45. banip-2.1.0/src/banip/utilities/lookup.py +171 -0
banip-2.1.0/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright 2024-2026 Peter Nardi
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a
6
+ copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included
14
+ in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2020 Will McGugan
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a
4
+ copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be included
12
+ in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
+ OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
banip-2.1.0/PKG-INFO ADDED
@@ -0,0 +1,80 @@
1
+ Metadata-Version: 2.4
2
+ Name: banip
3
+ Version: 2.1.0
4
+ Summary: Create country-focused IP blocklists
5
+ Keywords: blocklist,firewall,geolocation,ip-address,security
6
+ Author: Peter Nardi
7
+ Author-email: Peter Nardi <geozeke@gmail.com>
8
+ License-Expression: MIT
9
+ License-File: LICENSE
10
+ License-File: LICENSE-rich
11
+ Classifier: Development Status :: 5 - Production/Stable
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: System Administrators
14
+ Classifier: Operating System :: MacOS
15
+ Classifier: Operating System :: POSIX :: Linux
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Topic :: Security
19
+ Classifier: Topic :: System :: Networking :: Firewalls
20
+ Classifier: Typing :: Typed
21
+ Requires-Dist: requests>=2.32.3
22
+ Requires-Dist: rich>=15.0.0
23
+ Requires-Dist: ruamel-yaml>=0.19.1
24
+ Requires-Python: >=3.12
25
+ Project-URL: Homepage, https://github.com/geozeke/banip
26
+ Project-URL: Documentation, https://geozeke.github.io/banip/
27
+ Project-URL: Repository, https://github.com/geozeke/banip
28
+ Project-URL: Issues, https://github.com/geozeke/banip/issues
29
+ Project-URL: Changelog, https://github.com/geozeke/banip/blob/main/CHANGELOG.md
30
+ Description-Content-Type: text/markdown
31
+
32
+ # banip
33
+
34
+ <img
35
+ src="https://raw.githubusercontent.com/geozeke/banip/main/assets/banip-logo.png"
36
+ alt="banip logo"
37
+ width="120"
38
+ />
39
+
40
+ banip creates country-focused IP blocklists from MaxMind GeoLite2 data,
41
+ the ipsum threat-intelligence feed, and user-managed configuration.
42
+
43
+ ## Documentation
44
+
45
+ Read the full documentation at <https://geozeke.github.io/banip/>.
46
+
47
+ It covers installation, configuration, commands, managed bot ranges,
48
+ development, and the country-code reference.
49
+
50
+ ## Quick start
51
+
52
+ ```console
53
+ uv tool install --managed-python banip
54
+ banip database init
55
+ banip database update
56
+ banip build
57
+ ```
58
+
59
+ Upgrade an existing installation with `uv tool upgrade banip`.
60
+
61
+ For pipx and virtual-environment installation options, see the
62
+ [getting-started guide](https://geozeke.github.io/banip/getting-started/).
63
+
64
+ `banip database update geolite` requires MaxMind credentials. See the
65
+ [getting-started guide](https://geozeke.github.io/banip/getting-started/)
66
+ for the required account and configuration details.
67
+
68
+ ## Development
69
+
70
+ ```console
71
+ just setup
72
+ just check
73
+ ```
74
+
75
+ See the [development guide](https://geozeke.github.io/banip/development/)
76
+ for focused checks, changelog preparation, and release procedures.
77
+
78
+ ## License
79
+
80
+ banip is released under the MIT license. See [LICENSE](LICENSE).
banip-2.1.0/README.md ADDED
@@ -0,0 +1,49 @@
1
+ # banip
2
+
3
+ <img
4
+ src="https://raw.githubusercontent.com/geozeke/banip/main/assets/banip-logo.png"
5
+ alt="banip logo"
6
+ width="120"
7
+ />
8
+
9
+ banip creates country-focused IP blocklists from MaxMind GeoLite2 data,
10
+ the ipsum threat-intelligence feed, and user-managed configuration.
11
+
12
+ ## Documentation
13
+
14
+ Read the full documentation at <https://geozeke.github.io/banip/>.
15
+
16
+ It covers installation, configuration, commands, managed bot ranges,
17
+ development, and the country-code reference.
18
+
19
+ ## Quick start
20
+
21
+ ```console
22
+ uv tool install --managed-python banip
23
+ banip database init
24
+ banip database update
25
+ banip build
26
+ ```
27
+
28
+ Upgrade an existing installation with `uv tool upgrade banip`.
29
+
30
+ For pipx and virtual-environment installation options, see the
31
+ [getting-started guide](https://geozeke.github.io/banip/getting-started/).
32
+
33
+ `banip database update geolite` requires MaxMind credentials. See the
34
+ [getting-started guide](https://geozeke.github.io/banip/getting-started/)
35
+ for the required account and configuration details.
36
+
37
+ ## Development
38
+
39
+ ```console
40
+ just setup
41
+ just check
42
+ ```
43
+
44
+ See the [development guide](https://geozeke.github.io/banip/development/)
45
+ for focused checks, changelog preparation, and release procedures.
46
+
47
+ ## License
48
+
49
+ banip is released under the MIT license. See [LICENSE](LICENSE).
@@ -0,0 +1,8 @@
1
+ # Changelog archives
2
+
3
+ `CHANGELOG.md` contains the active minor release line. When a release
4
+ starts a new minor or major line, `just bump <version>` moves older
5
+ release sections into files named `vX.Y.x.md` in this directory.
6
+
7
+ Release notes are generated files. Prepare them through `just bump`; do
8
+ not edit archived release sections directly.
@@ -0,0 +1,9 @@
1
+ # Changelog archive: 0.1.x
2
+
3
+ Archived banip releases for the 0.1.x minor version line.
4
+
5
+ ## [0.1.0] - 2024-05-12
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v0.1.0)
8
+
9
+ _Initial Release._
@@ -0,0 +1,55 @@
1
+ # Changelog archive: 1.0.x
2
+
3
+ Archived banip releases for the 1.0.x minor version line.
4
+
5
+ ## [1.0.2] - 2024-08-09
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.0.2)
8
+
9
+ ### Added
10
+
11
+ - Add functionality to remove IP addresses captured in a subnets.
12
+
13
+ - Add license and acknowledgements for the tqdm library
14
+
15
+ ### Changed
16
+
17
+ - Optimize binary search. [#13][issue13]
18
+
19
+ - Bumped tqdm library to v4.66.5.
20
+
21
+ ### Fixed
22
+
23
+ - Fix calculation error in summary metrics.
24
+
25
+ - Choose Better Variable Names. [#14][issue14]
26
+
27
+ - Improve IP checking to include membership in subnets. [#15][issue15]
28
+
29
+ ## [1.0.1] - 2024-07-30
30
+
31
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.0.1)
32
+
33
+ ### Added
34
+
35
+ - Add separate command line option to display version information.
36
+
37
+ - Add additional help indicators to the subcommands.
38
+
39
+ ## [1.0.0] - 2024-03-15
40
+
41
+ ### Added
42
+
43
+ - Introduce a plugin architecture.
44
+
45
+ ### Changed
46
+
47
+ - Update documentation with page anchors.
48
+
49
+ ### Fixed
50
+
51
+ - Fixed uncaught exception.
52
+
53
+ [issue13]: https://github.com/geozeke/banip/issues/13
54
+ [issue14]: https://github.com/geozeke/banip/issues/14
55
+ [issue15]: https://github.com/geozeke/banip/issues/15
@@ -0,0 +1,43 @@
1
+ # Changelog archive: 1.1.x
2
+
3
+ Archived banip releases for the 1.1.x minor version line.
4
+
5
+ ## [1.1.3] - 2024-12-19
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.1.3)
8
+
9
+ ### Added
10
+
11
+ - Add the ability to compact ipsum entries into /24 subnets.
12
+
13
+ ### Fixed
14
+
15
+ - Improve input validation.
16
+
17
+ ## [1.1.2] - 2024-12-02
18
+
19
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.1.2)
20
+
21
+ ### Changed
22
+
23
+ - Tune binary search algorithm.
24
+
25
+ - Enhance `banip check` with prettier output using [rich][rich].
26
+
27
+ ## [1.1.1] - 2024-11-15
28
+
29
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.1.1)
30
+
31
+ ### Changed
32
+
33
+ - Get better output with the [rich][rich] library.
34
+
35
+ ## [1.1.0] - 2024-10-23
36
+
37
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.1.0)
38
+
39
+ ### Changed
40
+
41
+ - Refine display of final metrics.
42
+
43
+ [rich]: https://github.com/Textualize/rich
@@ -0,0 +1,22 @@
1
+ # Changelog archive: 1.2.x
2
+
3
+ Archived banip releases for the 1.2.x minor version line.
4
+
5
+ ## [1.2.0] - 2025-01-11
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.2.0)
8
+
9
+ ### Added
10
+
11
+ - Add statistics for a given country. [#32][issue32]
12
+
13
+ ### Changed
14
+
15
+ - Implement [tomli compatability layer][tomli].
16
+
17
+ ### Fixed
18
+
19
+ - Display properly sorted options when getting help.
20
+
21
+ [issue32]: https://github.com/geozeke/banip/issues/32
22
+ [tomli]: https://pypi.org/project/tomli/
@@ -0,0 +1,180 @@
1
+ # Changelog archive: 1.3.x
2
+
3
+ Archived banip releases for the 1.3.x minor version line.
4
+
5
+ ## [1.3.12] - 2026-04-03
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.12)
8
+
9
+ ### Added
10
+
11
+ - Allow for selective tagging ([d8c4319](https://github.com/geozeke/banip/commit/d8c4319))
12
+
13
+ ### Dependencies
14
+
15
+ - Bump requests from 2.33.0 to 2.33.1 ([420fa05](https://github.com/geozeke/banip/commit/420fa05))
16
+
17
+ - Bump mypy from 1.19.1 to 1.20.0 ([1243ba2](https://github.com/geozeke/banip/commit/1243ba2))
18
+
19
+ - Bump ruff from 0.15.8 to 0.15.9 ([9ecf861](https://github.com/geozeke/banip/commit/9ecf861))
20
+
21
+ ## [1.3.11] - 2026-03-27
22
+
23
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.11)
24
+
25
+ ### Dependencies
26
+
27
+ - Bump ruff from 0.15.6 to 0.15.7 ([0523b84](https://github.com/geozeke/banip/commit/0523b84))
28
+
29
+ - Bump ruff from 0.15.7 to 0.15.8 ([7222617](https://github.com/geozeke/banip/commit/7222617))
30
+
31
+ - Bump requests from 2.32.5 to 2.33.0 ([1445ba2](https://github.com/geozeke/banip/commit/1445ba2))
32
+
33
+ ## [1.3.10] - 2026-03-14
34
+
35
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.10)
36
+
37
+ ### Added
38
+
39
+ - Add clear screen routine ([467afd0](https://github.com/geozeke/banip/commit/467afd0))
40
+
41
+ ### Dependencies
42
+
43
+ - Bump ruff from 0.15.5 to 0.15.6 ([080ba7b](https://github.com/geozeke/banip/commit/080ba7b))
44
+
45
+ ## [1.3.9] - 2026-03-06
46
+
47
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.9)
48
+
49
+ ### Fixed
50
+
51
+ - Pin upper bound for uv-build by @geozeke in <https://github.com/geozeke/banip/pull/69>
52
+
53
+ ### Dependencies
54
+
55
+ - Bump ruff from 0.15.0 to 0.15.1 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/65>
56
+
57
+ - Bump rich from 14.3.2 to 14.3.3 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/67>
58
+
59
+ - Bump ruff from 0.15.1 to 0.15.2 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/66>
60
+
61
+ - Bump ruff from 0.15.2 to 0.15.4 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/68>
62
+
63
+ - Bump ruff from 0.15.4 to 0.15.5 by @dependabot[bot] in
64
+ <https://github.com/geozeke/banip/pull/70>
65
+
66
+ ## [1.3.8] - 2026-02-06
67
+
68
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.8)
69
+
70
+ ### Dependencies
71
+
72
+ - Bump ruff from 0.14.11 to 0.14.13 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/58>
73
+
74
+ - Bump ruff from 0.14.13 to 0.14.14 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/59>
75
+
76
+ - Bump urllib3 from 2.5.0 to 2.6.3 in the uv group across 1 directory by @dependabot[bot] in <https://github.com/geozeke/banip/pull/60>
77
+
78
+ - Bump rich from 14.2.0 to 14.3.1 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/61>
79
+
80
+ - Bump rich from 14.3.1 to 14.3.2 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/63>
81
+
82
+ - Bump ruff from 0.14.14 to 0.15.0 by @dependabot[bot] in
83
+ <https://github.com/geozeke/banip/pull/62>
84
+
85
+ ## [1.3.7] - 2026-01-11
86
+
87
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.7)
88
+
89
+ ## [1.3.6] - 2026-01-09
90
+
91
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.6)
92
+
93
+ ### Dependencies
94
+
95
+ - Bump ruff from 0.14.2 to 0.14.3 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/46>
96
+
97
+ - Bump ruff from 0.14.3 to 0.14.4 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/47>
98
+
99
+ - Bump ruff from 0.14.4 to 0.14.5 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/48>
100
+
101
+ - Bump ruff from 0.14.5 to 0.14.6 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/49>
102
+
103
+ - Bump ruff from 0.14.6 to 0.14.8 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/51>
104
+
105
+ - Bump mypy from 1.18.2 to 1.19.0 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/50>
106
+
107
+ - Bump ruff from 0.14.8 to 0.14.9 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/52>
108
+
109
+ - Bump ruff from 0.14.9 to 0.14.10 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/54>
110
+
111
+ - Bump mypy from 1.19.0 to 1.19.1 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/53>
112
+
113
+ - Bump ruff from 0.14.10 to 0.14.11 by @dependabot[bot] in <https://github.com/geozeke/banip/pull/55>
114
+
115
+ ## [1.3.5] - 2025-10-30
116
+
117
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.5)
118
+
119
+ ### Changed
120
+
121
+ - Bump min Python version to 3.12
122
+
123
+ ## [1.3.4] - 2025-08-23
124
+
125
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.4)
126
+
127
+ ### Changed
128
+
129
+ - [requests][requests] bumped `2.32.5`.
130
+
131
+ ## [1.3.3] - 2025-06-13
132
+
133
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.3)
134
+
135
+ ### Added
136
+
137
+ - [FEATURE] Add feature to patch `ipsum.txt` file with new IP addresses.
138
+ [#43][issue43]
139
+
140
+ ### Changed
141
+
142
+ - Swap status colors when checking IP. [#42][issue42]
143
+
144
+ - [requests][requests] bumped `2.32.4`.
145
+
146
+ ## [1.3.2] - 2025-05-23
147
+
148
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.2)
149
+
150
+ ## [1.3.1] - 2025-05-04
151
+
152
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.1)
153
+
154
+ ### Fixed
155
+
156
+ - [BUG] Host Public IP should not be in blacklist. [#40][issue40]
157
+
158
+ ## [1.3.0] - 2025-01-13
159
+
160
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.3.0)
161
+
162
+ **This is a breaking change! banip is now installed via `uv`, and your
163
+ existing data files need to move. Please see [README.md][banip] for
164
+ more.**
165
+
166
+ ### Breaking Changes
167
+
168
+ - Migrate banip to an installable package. [#36][issue36]
169
+
170
+ ### Fixed
171
+
172
+ - Fix italics in markdown files [#35][issue35]
173
+
174
+ [banip]: https://github.com/geozeke/banip
175
+ [issue35]: https://github.com/geozeke/banip/issues/35
176
+ [issue36]: https://github.com/geozeke/banip/issues/36
177
+ [issue40]: https://github.com/geozeke/banip/issues/40
178
+ [issue42]: https://github.com/geozeke/banip/issues/42
179
+ [issue43]: https://github.com/geozeke/banip/issues/43
180
+ [requests]: https://github.com/psf/requests
@@ -0,0 +1,25 @@
1
+ # Changelog archive: 1.4.x
2
+
3
+ Archived banip releases for the 1.4.x minor version line.
4
+
5
+ ## [1.4.1] - 2026-04-17
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.4.1)
8
+
9
+ ### Dependencies
10
+
11
+ - Build(deps): bump rich from 14.3.3 to 15.0.0 ([ef12714](https://github.com/geozeke/banip/commit/ef12714))
12
+
13
+ - Bump ruff from 0.15.9 to 0.15.10 ([4b9eea1](https://github.com/geozeke/banip/commit/4b9eea1))
14
+
15
+ - Build(deps-dev): bump mypy from 1.20.0 to 1.20.1 ([b32e819](https://github.com/geozeke/banip/commit/b32e819))
16
+
17
+ - Bump ruff from 0.15.10 to 0.15.11 ([9ca0970](https://github.com/geozeke/banip/commit/9ca0970))
18
+
19
+ ## [1.4.0] - 2026-04-05
20
+
21
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.4.0)
22
+
23
+ ### Changed
24
+
25
+ - Prompt in a loop to check IPs ([724a2a7](https://github.com/geozeke/banip/commit/724a2a7))
@@ -0,0 +1,7 @@
1
+ # Changelog archive: 1.5.x
2
+
3
+ Archived banip releases for the 1.5.x minor version line.
4
+
5
+ ## [1.5.0] - 2026-07-07
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v1.5.0)
@@ -0,0 +1,27 @@
1
+ # Changelog archive: 2.0.x
2
+
3
+ Archived banip releases for the 2.0.x minor version line.
4
+
5
+ ## [2.0.1] - 2026-07-09
6
+
7
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v2.0.1)
8
+
9
+ ### Added
10
+
11
+ - Add support for Meta bots and crawlers ([701a12c](https://github.com/geozeke/banip/commit/701a12c))
12
+
13
+ - Add support for Anthropic bots ([b9e47f6](https://github.com/geozeke/banip/commit/b9e47f6))
14
+
15
+ ## [2.0.0] - 2026-07-08
16
+
17
+ [View release tag](https://github.com/geozeke/banip/releases/tag/v2.0.0)
18
+
19
+ ### Performance
20
+
21
+ - Move network lookups to iterative logic ([32086c7](https://github.com/geozeke/banip/commit/32086c7))
22
+
23
+ - Improve set/list handling ([c5bafe4](https://github.com/geozeke/banip/commit/c5bafe4))
24
+
25
+ ### Dependencies
26
+
27
+ - Upgrade development dependencies ([6249f97](https://github.com/geozeke/banip/commit/6249f97))
@@ -0,0 +1,64 @@
1
+ # Put this file in ~/.gitignore and run the following command:
2
+ # git config --global core.excludesfile ~/.gitignore
3
+
4
+ # Visual Studio =================================
5
+
6
+ # Visual Studio Code settings, et. al.
7
+ .vscode/
8
+
9
+ # Local History for Visual Studio Code
10
+ .history/
11
+
12
+ # Built Visual Studio Code Extensions
13
+ *.vsix
14
+
15
+ # MacOS =========================================
16
+
17
+ # General
18
+ .DS_Store
19
+ .AppleDouble
20
+ .LSOverride
21
+
22
+ # Icon must end with two \r
23
+ Icon
24
+
25
+ # Thumbnails
26
+ ._*
27
+
28
+ # Files that might appear in the root of a volume
29
+ .DocumentRevisions-V100
30
+ .fseventsd
31
+ .Spotlight-V100
32
+ .TemporaryItems
33
+ .Trashes
34
+ .VolumeIcon.icns
35
+ .com.apple.timemachine.donotpresent
36
+
37
+ # Directories potentially created on remote AFP share
38
+ .AppleDB
39
+ .AppleDesktop
40
+ Network Trash Folder
41
+ Temporary Items
42
+ .apdisk
43
+
44
+ # VIM ===========================================
45
+
46
+ # Swap
47
+ [._]*.s[a-v][a-z]
48
+ !*.svg # comment out if you don't need vector files
49
+ [._]*.sw[a-p]
50
+ [._]s[a-rt-v][a-z]
51
+ [._]ss[a-gi-z]
52
+ [._]sw[a-p]
53
+
54
+ # Session
55
+ Session.vim
56
+ Sessionx.vim
57
+
58
+ # Temporary
59
+ .netrwhist
60
+ *~
61
+ # Auto-generated tag files
62
+ tags
63
+ # Persistent undo
64
+ [._]*.un~