From 4b2f134aaf7add435e4dd49d4faa0bd2d1975277 Mon Sep 17 00:00:00 2001 From: David Skrundz Date: Sun, 31 May 2026 16:54:30 -0600 Subject: [PATCH] Restructure crates and switch to Zed --- .vscode/extensions.json | 9 -- .vscode/settings.json | 33 ---- .zed/settings.json | 25 ++++ CONTRIBUTING.md | 3 +- Cargo.lock | 183 ++++++++--------------- Cargo.toml | 49 +++--- {cli => crates/cli}/Cargo.toml | 43 +++--- {cli => crates/cli}/src/cli.rs | 0 {cli => crates/cli}/src/main.rs | 8 + {ipfilter => crates/ipfilter}/Cargo.toml | 20 ++- {ipfilter => crates/ipfilter}/README.md | 0 {ipfilter => crates/ipfilter}/src/lib.rs | 0 tombi.toml | 11 ++ 13 files changed, 160 insertions(+), 224 deletions(-) delete mode 100644 .vscode/extensions.json delete mode 100644 .vscode/settings.json create mode 100644 .zed/settings.json rename {cli => crates/cli}/Cargo.toml (91%) rename {cli => crates/cli}/src/cli.rs (100%) rename {cli => crates/cli}/src/main.rs (86%) rename {ipfilter => crates/ipfilter}/Cargo.toml (81%) rename {ipfilter => crates/ipfilter}/README.md (100%) rename {ipfilter => crates/ipfilter}/src/lib.rs (100%) create mode 100644 tombi.toml diff --git a/.vscode/extensions.json b/.vscode/extensions.json deleted file mode 100644 index c70ed43..0000000 --- a/.vscode/extensions.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "recommendations": [ - "vadimcn.vscode-lldb", - "barbosshack.crates-io", - "usernamehw.errorlens", - "tamasfe.even-better-toml", - "rust-lang.rust-analyzer", - ] -} diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 2f432d8..0000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - // VSCode - "editor.detectIndentation": false, - "editor.insertSpaces": false, - "editor.tabSize": 4, - "files.exclude": { - "**/target": true, - "**/Cargo.lock": true, - }, - "files.insertFinalNewline": true, - "files.trimFinalNewlines": true, - "files.trimTrailingWhitespace": true, - "files.watcherExclude": { - "**/.git/**": true, - "**/target/**": true, - }, - // Extensions - "crates.listPreReleases": true, - "evenBetterToml.formatter.alignComments": true, - "evenBetterToml.formatter.alignEntries": false, - "evenBetterToml.formatter.allowedBlankLines": 1, - "evenBetterToml.formatter.arrayAutoExpand": true, - "evenBetterToml.formatter.arrayTrailingComma": true, - "evenBetterToml.formatter.columnWidth": 80, - "evenBetterToml.formatter.reorderKeys": true, - "evenBetterToml.formatter.trailingNewline": true, - "rust-analyzer.imports.granularity.enforce": true, - "rust-analyzer.imports.granularity.group": "module", - "rust-analyzer.imports.group.enable": true, - "rust-analyzer.imports.merge.glob": false, - "rust-analyzer.imports.preferNoStd": true, - "rust-analyzer.showUnlinkedFileNotification": false, -} diff --git a/.zed/settings.json b/.zed/settings.json new file mode 100644 index 0000000..14b551a --- /dev/null +++ b/.zed/settings.json @@ -0,0 +1,25 @@ +{ + "languages": { + "TOML": { + "format_on_save": "on", + "formatter": { "language_server": { "name": "tombi" } }, + }, + }, + "lsp": { + "rust-analyzer": { + "initialization_options": { + "imports": { + "granularity": { "enforce": true, "group": "module" }, + "group": { "enable": true }, + "merge": { "glob": false }, + "preferNoStd": true, + }, + "server": { + "extraEnv": { + "RUSTUP_TOOLCHAIN": "stable", + }, + }, + }, + }, + }, +} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2f4b83c..ee6138d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -3,4 +3,5 @@ How to Contribute We'd love to accept your patches and contributions to this project. We just need you to follow the Contributor License Agreement outlined -in the latest v0.0.x of https://github.com/Skrunix/license +in the latest v0.0.x of https://git.skrundz.dev/skrunix/license +(mirrored to https://github.com/skrunix/license) diff --git a/Cargo.lock b/Cargo.lock index ba31ca5..8556ab2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 4 [[package]] name = "anstream" -version = "0.6.20" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae563653d1938f79b1ab1b5e668c87c76a9930414574a6583a7b7e11a8e6192" +checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d" dependencies = [ "anstyle", "anstyle-parse", @@ -19,33 +19,33 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.11" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" [[package]] name = "anstyle-parse" -version = "0.2.7" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" +checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.4" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2" +checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" dependencies = [ "windows-sys", ] [[package]] name = "anstyle-wincon" -version = "3.0.10" +version = "3.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a" +checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" dependencies = [ "anstyle", "once_cell_polyfill", @@ -54,9 +54,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.99" +version = "1.0.102" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" +checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c" [[package]] name = "bincode" @@ -70,9 +70,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.47" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931" +checksum = "1ddb117e43bbf7dacf0a4190fef4d345b9bad68dfc649cb349e7d17d28428e51" dependencies = [ "clap_builder", "clap_derive", @@ -80,9 +80,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.47" +version = "4.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" dependencies = [ "anstream", "anstyle", @@ -92,9 +92,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.47" +version = "4.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c" +checksum = "f2ce8604710f6733aa641a2b3731eaa1e8b3d9973d5e3565da11800813f997a9" dependencies = [ "heck", "proc-macro2", @@ -104,33 +104,33 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.7.5" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" [[package]] name = "colorchoice" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" +checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570" [[package]] name = "csv" -version = "1.3.1" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" +checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938" dependencies = [ "csv-core", "itoa", "ryu", - "serde", + "serde_core", ] [[package]] name = "csv-core" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d" +checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782" dependencies = [ "memchr", ] @@ -149,7 +149,7 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "ipfilter" -version = "0.0.1" +version = "0.0.2" dependencies = [ "bincode", "ipnet", @@ -158,7 +158,7 @@ dependencies = [ [[package]] name = "ipfilter-cli" -version = "0.0.0" +version = "0.0.2" dependencies = [ "anyhow", "clap", @@ -170,9 +170,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.11.0" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +checksum = "d98f6fed1fde3f8c21bc40a1abb88dd75e67924f9cffc3ef95607bad8017f8e2" [[package]] name = "iprange" @@ -186,9 +186,9 @@ dependencies = [ [[package]] name = "is_terminal_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" [[package]] name = "itertools" @@ -201,51 +201,51 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" [[package]] name = "memchr" -version = "2.7.5" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" [[package]] name = "once_cell_polyfill" -version = "1.70.1" +version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" +checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" [[package]] name = "proc-macro2" -version = "1.0.101" +version = "1.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.40" +version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" dependencies = [ "proc-macro2", ] [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f" [[package]] name = "serde" -version = "1.0.225" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6c24dee235d0da097043389623fb913daddf92c76e9f5a1db88607a0bcbd1d" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ "serde_core", "serde_derive", @@ -253,18 +253,18 @@ dependencies = [ [[package]] name = "serde_core" -version = "1.0.225" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "659356f9a0cb1e529b24c01e43ad2bdf520ec4ceaf83047b83ddcc2251f96383" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.225" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -279,9 +279,9 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "syn" -version = "2.0.106" +version = "2.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" dependencies = [ "proc-macro2", "quote", @@ -290,9 +290,9 @@ dependencies = [ [[package]] name = "unicode-ident" -version = "1.0.19" +version = "1.0.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" [[package]] name = "unty" @@ -308,80 +308,15 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "windows-link" -version = "0.1.3" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-sys" -version = "0.60.2" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" -dependencies = [ - "windows-targets", -] - -[[package]] -name = "windows-targets" -version = "0.53.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ "windows-link", - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", ] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" - -[[package]] -name = "windows_i686_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" - -[[package]] -name = "windows_i686_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" diff --git a/Cargo.toml b/Cargo.toml index 41808fd..69ac07f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,18 +1,25 @@ [workspace] -members = ["cli", "ipfilter"] resolver = "2" +members = ["crates/*"] [workspace.package] -authors = ["David Skrundz"] -edition = "2024" license-file = "LICENSE.md" + +edition = "2024" rust-version = "1.85.0" -[workspace.lints.rust] -arithmetic_overflow = "forbid" -missing_docs = "forbid" -unsafe_code = "forbid" -unused_doc_comments = "forbid" +[workspace.dependencies] +ipfilter = { path = "crates/ipfilter", version = "=0.0.2", default-features = false } +ipfilter-cli = { path = "crates/cli", version = "=0.0.2", default-features = false } + +bincode = { version = "^2", default-features = false } # 3.x is effectively a yank + +anyhow = { version = "^1", default-features = false } +clap = { version = "^4", default-features = false } +csv = { version = "^1", default-features = false } +ipnet = { version = "^2", default-features = false } +iprange = { version = "^0.6", default-features = false } +itertools = { version = "^0.14", default-features = false } [workspace.lints.clippy] arithmetic_side_effects = "forbid" @@ -24,24 +31,18 @@ indexing_slicing = "forbid" integer_division = "forbid" integer_division_remainder_used = "forbid" transmute_undefined_repr = "forbid" -unchecked_duration_subtraction = "forbid" +unchecked_time_subtraction = "forbid" unwrap_used = "forbid" +[workspace.lints.rust] +arithmetic_overflow = "forbid" +missing_docs = "forbid" +unsafe_code = "forbid" +unused_doc_comments = "forbid" + [profile.release] -codegen-units = 1 -lto = "fat" opt-level = 3 -overflow-checks = true strip = "debuginfo" - -[workspace.dependencies] -ipfilter = { path = "ipfilter", version = "=0.0.1", default-features = false } - -anyhow = { version = "^1", default-features = false } -bincode = { version = "^2", default-features = false } -clap = { version = "^4", default-features = false, features = ["std"] } -csv = { version = "^1", default-features = false } -ipnet = { version = "^2", default-features = false } -iprange = { version = "^0.6", default-features = false } -itertools = { version = "^0.14", default-features = false } -serde = { version = "^1", default-features = false } +overflow-checks = true +lto = "fat" +codegen-units = 1 diff --git a/cli/Cargo.toml b/crates/cli/Cargo.toml similarity index 91% rename from cli/Cargo.toml rename to crates/cli/Cargo.toml index 4726a7d..51afd34 100644 --- a/cli/Cargo.toml +++ b/crates/cli/Cargo.toml @@ -1,19 +1,29 @@ [package] name = "ipfilter-cli" -version = "0.0.0" - -authors.workspace = true -edition.workspace = true +version = "0.0.2" license-file.workspace = true + +edition.workspace = true rust-version.workspace = true [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] -[lints.rust] -arithmetic_overflow = "forbid" -unsafe_code = "forbid" +[dependencies] +anyhow = { workspace = true } +clap = { workspace = true, features = [ + "color", + "derive", + "help", + "std", + "suggestions", + "usage", +] } +csv = { workspace = true } +ipfilter = { workspace = true, features = ["std"] } +ipnet = { workspace = true } +itertools = { workspace = true } [lints.clippy] arithmetic_side_effects = "deny" @@ -25,20 +35,9 @@ indexing_slicing = "deny" integer_division = "deny" integer_division_remainder_used = "deny" transmute_undefined_repr = "deny" -unchecked_duration_subtraction = "deny" +unchecked_time_subtraction = "deny" unwrap_used = "deny" -[dependencies] -ipfilter = { workspace = true, features = ["std"] } - -anyhow = { workspace = true } -clap = { workspace = true, features = [ - "derive", - "color", - "help", - "suggestions", - "usage", -] } -csv = { workspace = true } -ipnet = { workspace = true } -itertools = { workspace = true } +[lints.rust] +arithmetic_overflow = "forbid" +unsafe_code = "forbid" diff --git a/cli/src/cli.rs b/crates/cli/src/cli.rs similarity index 100% rename from cli/src/cli.rs rename to crates/cli/src/cli.rs diff --git a/cli/src/main.rs b/crates/cli/src/main.rs similarity index 86% rename from cli/src/main.rs rename to crates/cli/src/main.rs index 33f89cb..7d1dae6 100644 --- a/cli/src/main.rs +++ b/crates/cli/src/main.rs @@ -12,6 +12,14 @@ mod cli; use cli::{Cli, Commands}; use itertools::Itertools; +// RiRs +// +// APNIC - https://ftp.apnic.net/stats/apnic/delegated-apnic-extended-latest +// ARIN - https://ftp.arin.net/pub/stats/arin/delegated-arin-extended-latest +// RIPE - https://ftp.ripe.net/pub/stats/ripencc/delegated-ripencc-extended-latest +// LACNIC - https://ftp.lacnic.net/pub/stats/lacnic/delegated-lacnic-extended-latest +// AFRINIC - https://ftp.afrinic.net/pub/stats/afrinic/delegated-afrinic-extended-latest + fn main() -> Result<()> { let cli = Cli::parse(); diff --git a/ipfilter/Cargo.toml b/crates/ipfilter/Cargo.toml similarity index 81% rename from ipfilter/Cargo.toml rename to crates/ipfilter/Cargo.toml index 9e7f007..28c9577 100644 --- a/ipfilter/Cargo.toml +++ b/crates/ipfilter/Cargo.toml @@ -1,29 +1,27 @@ [package] name = "ipfilter" -version = "0.0.1" +version = "0.0.2" +license-file.workspace = true -categories = ["network-programming"] description = "A library to streamline IP filtering" repository = "https://github.com/QuantumShade/ipfilter" +categories = ["network-programming"] -authors.workspace = true edition.workspace = true -license-file.workspace = true rust-version.workspace = true [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] -[lints] -workspace = true +[dependencies] +bincode = { workspace = true, features = ["serde"], optional = true } +ipnet = { workspace = true } +iprange = { workspace = true, features = ["serde"] } [features] default = [] std = ["bincode/std"] -[dependencies] -ipnet = { workspace = true } -iprange = { workspace = true, features = ["serde"] } - -bincode = { workspace = true, optional = true, features = ["serde"] } +[lints] +workspace = true diff --git a/ipfilter/README.md b/crates/ipfilter/README.md similarity index 100% rename from ipfilter/README.md rename to crates/ipfilter/README.md diff --git a/ipfilter/src/lib.rs b/crates/ipfilter/src/lib.rs similarity index 100% rename from ipfilter/src/lib.rs rename to crates/ipfilter/src/lib.rs diff --git a/tombi.toml b/tombi.toml new file mode 100644 index 0000000..34aa2df --- /dev/null +++ b/tombi.toml @@ -0,0 +1,11 @@ +toml-version = "v1.0.0" + +[format.rules] +indent-style = "tab" +indent-width = 4 + +# Required for rust <1.94 +[[schemas]] +toml-version = "v1.0.0" +path = "tombi://www.schemastore.org/cargo.json" +include = ["Cargo.toml"]