fastbz2 0.1.1__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 (59) hide show
  1. fastbz2-0.1.1/.github/workflows/ci.yml +85 -0
  2. fastbz2-0.1.1/.gitignore +19 -0
  3. fastbz2-0.1.1/Cargo.lock +490 -0
  4. fastbz2-0.1.1/Cargo.toml +40 -0
  5. fastbz2-0.1.1/DEV.md +86 -0
  6. fastbz2-0.1.1/LICENSE +202 -0
  7. fastbz2-0.1.1/PKG-INFO +70 -0
  8. fastbz2-0.1.1/README.md +49 -0
  9. fastbz2-0.1.1/_config.yml +1 -0
  10. fastbz2-0.1.1/_layouts/default.html +52 -0
  11. fastbz2-0.1.1/pyproject.toml +39 -0
  12. fastbz2-0.1.1/python/fastbz2/__init__.py +102 -0
  13. fastbz2-0.1.1/rustfmt.toml +3 -0
  14. fastbz2-0.1.1/src/bin/fastbz2.rs +179 -0
  15. fastbz2-0.1.1/src/bitreader.rs +117 -0
  16. fastbz2-0.1.1/src/block.rs +31 -0
  17. fastbz2-0.1.1/src/crc.rs +51 -0
  18. fastbz2-0.1.1/src/decode.rs +302 -0
  19. fastbz2-0.1.1/src/decoder.rs +444 -0
  20. fastbz2-0.1.1/src/error.rs +79 -0
  21. fastbz2-0.1.1/src/format.rs +186 -0
  22. fastbz2-0.1.1/src/index.rs +264 -0
  23. fastbz2-0.1.1/src/indexed.rs +189 -0
  24. fastbz2-0.1.1/src/lib.rs +184 -0
  25. fastbz2-0.1.1/src/source.rs +49 -0
  26. fastbz2-0.1.1/tests/cli.rs +47 -0
  27. fastbz2-0.1.1/tests/corpus/README.md +18 -0
  28. fastbz2-0.1.1/tests/corpus/go/Isaac.Newton-Opticks.txt.bz2 +0 -0
  29. fastbz2-0.1.1/tests/corpus/go/LICENSE +27 -0
  30. fastbz2-0.1.1/tests/corpus/go/e.txt.bz2 +0 -0
  31. fastbz2-0.1.1/tests/corpus/go/fail-issue5747.bz2.bad +0 -0
  32. fastbz2-0.1.1/tests/corpus/go/pass-random1.bz2 +0 -0
  33. fastbz2-0.1.1/tests/corpus/go/pass-random2.bz2 +0 -0
  34. fastbz2-0.1.1/tests/corpus/go/pass-sawtooth.bz2 +0 -0
  35. fastbz2-0.1.1/tests/corpus/go/random.data.bz2 +0 -0
  36. fastbz2-0.1.1/tests/corpus/lbzip2/32767.bz2 +0 -0
  37. fastbz2-0.1.1/tests/corpus/lbzip2/LICENSE +674 -0
  38. fastbz2-0.1.1/tests/corpus/lbzip2/ch255.bz2 +0 -0
  39. fastbz2-0.1.1/tests/corpus/lbzip2/codelen20.bz2 +0 -0
  40. fastbz2-0.1.1/tests/corpus/lbzip2/concat.bz2 +0 -0
  41. fastbz2-0.1.1/tests/corpus/lbzip2/crc1.bz2.bad +0 -0
  42. fastbz2-0.1.1/tests/corpus/lbzip2/crc2.bz2.bad +0 -0
  43. fastbz2-0.1.1/tests/corpus/lbzip2/cve.bz2.bad +0 -0
  44. fastbz2-0.1.1/tests/corpus/lbzip2/cve2.bz2.bad +0 -0
  45. fastbz2-0.1.1/tests/corpus/lbzip2/empty.bz2 +0 -0
  46. fastbz2-0.1.1/tests/corpus/lbzip2/fib.bz2 +0 -0
  47. fastbz2-0.1.1/tests/corpus/lbzip2/idx899999.bz2 +0 -0
  48. fastbz2-0.1.1/tests/corpus/lbzip2/incomp-1.bz2 +0 -0
  49. fastbz2-0.1.1/tests/corpus/lbzip2/incomp-2.bz2 +0 -0
  50. fastbz2-0.1.1/tests/corpus/lbzip2/overrun.bz2.bad +0 -0
  51. fastbz2-0.1.1/tests/corpus/lbzip2/overrun2.bz2.bad +0 -0
  52. fastbz2-0.1.1/tests/corpus/lbzip2/repet.bz2 +0 -0
  53. fastbz2-0.1.1/tests/corpus/lbzip2/void.bz2.bad +0 -0
  54. fastbz2-0.1.1/tests/corpus.rs +155 -0
  55. fastbz2-0.1.1/tests/test_api.py +77 -0
  56. fastbz2-0.1.1/tests/test_install.py +11 -0
  57. fastbz2-0.1.1/tests/test_scan.py +40 -0
  58. fastbz2-0.1.1/tests/wiki_perf.rs +74 -0
  59. fastbz2-0.1.1/tools/stage_binaries.py +9 -0
@@ -0,0 +1,85 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ tags: ['v*']
7
+ pull_request:
8
+
9
+ jobs:
10
+ test:
11
+ strategy:
12
+ matrix:
13
+ os: [ubuntu-latest, ubuntu-24.04-arm, macos-15]
14
+ runs-on: ${{ matrix.os }}
15
+ steps:
16
+ - uses: actions/checkout@v7
17
+ - uses: dtolnay/rust-toolchain@stable
18
+ - run: cargo test --release
19
+ - run: cargo check --all-features
20
+ - uses: actions/setup-python@v7
21
+ with:
22
+ python-version: '3.12'
23
+ - run: cargo build --release --bins
24
+ - run: python tools/stage_binaries.py
25
+ - run: pip install -e '.[dev]'
26
+ - run: pytest -q
27
+
28
+ build:
29
+ needs: test
30
+ strategy:
31
+ matrix:
32
+ os: [ubuntu-latest, ubuntu-24.04-arm, macos-15]
33
+ runs-on: ${{ matrix.os }}
34
+ steps:
35
+ - uses: actions/checkout@v7
36
+ - uses: dtolnay/rust-toolchain@stable
37
+ - name: Stage native binary
38
+ if: runner.os != 'Linux'
39
+ run: |
40
+ cargo build --release --bins
41
+ python tools/stage_binaries.py
42
+ - uses: PyO3/maturin-action@v1
43
+ with:
44
+ args: --release --out dist -i python3.10 -i python3.11 -i python3.12 -i python3.13
45
+ manylinux: auto
46
+ before-script-linux: cargo build --release --bins && python3.10 tools/stage_binaries.py
47
+ - uses: actions/upload-artifact@v7
48
+ with:
49
+ name: wheels-${{ matrix.os }}
50
+ path: dist
51
+
52
+ sdist:
53
+ runs-on: ubuntu-latest
54
+ steps:
55
+ - uses: actions/checkout@v7
56
+ - run: mkdir -p target/wheel-data
57
+ - uses: PyO3/maturin-action@v1
58
+ with:
59
+ command: sdist
60
+ args: -o dist
61
+ - uses: actions/upload-artifact@v7
62
+ with:
63
+ name: wheels-sdist
64
+ path: dist
65
+
66
+ publish:
67
+ if: startsWith(github.ref, 'refs/tags/v')
68
+ needs: [build, sdist]
69
+ runs-on: ubuntu-latest
70
+ permissions:
71
+ id-token: write
72
+ contents: write
73
+ steps:
74
+ - uses: actions/checkout@v7
75
+ - uses: actions/download-artifact@v8
76
+ with:
77
+ path: dist
78
+ merge-multiple: true
79
+ - uses: softprops/action-gh-release@v3
80
+ with:
81
+ files: dist/*
82
+ generate_release_notes: true
83
+ - uses: pypa/gh-action-pypi-publish@release/v1
84
+ with:
85
+ packages-dir: dist/
@@ -0,0 +1,19 @@
1
+ __pycache__/
2
+ .pytest_cache/
3
+ .mypy_cache/
4
+ .ruff_cache/
5
+ *.py[cod]
6
+ *.so
7
+ *.egg-info/
8
+ .sesskey
9
+ tags
10
+ target/
11
+ dist/
12
+ build/
13
+ meta/
14
+ .venv/
15
+ venv/
16
+ .env
17
+ .DS_Store
18
+ .ipynb_checkpoints/
19
+ Cargo.lock
@@ -0,0 +1,490 @@
1
+ # This file is automatically @generated by Cargo.
2
+ # It is not intended for manual editing.
3
+ version = 4
4
+
5
+ [[package]]
6
+ name = "anstream"
7
+ version = "1.0.0"
8
+ source = "registry+https://github.com/rust-lang/crates.io-index"
9
+ checksum = "824a212faf96e9acacdbd09febd34438f8f711fb84e09a8916013cd7815ca28d"
10
+ dependencies = [
11
+ "anstyle",
12
+ "anstyle-parse",
13
+ "anstyle-query",
14
+ "anstyle-wincon",
15
+ "colorchoice",
16
+ "is_terminal_polyfill",
17
+ "utf8parse",
18
+ ]
19
+
20
+ [[package]]
21
+ name = "anstyle"
22
+ version = "1.0.14"
23
+ source = "registry+https://github.com/rust-lang/crates.io-index"
24
+ checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000"
25
+
26
+ [[package]]
27
+ name = "anstyle-parse"
28
+ version = "1.0.0"
29
+ source = "registry+https://github.com/rust-lang/crates.io-index"
30
+ checksum = "52ce7f38b242319f7cabaa6813055467063ecdc9d355bbb4ce0c68908cd8130e"
31
+ dependencies = [
32
+ "utf8parse",
33
+ ]
34
+
35
+ [[package]]
36
+ name = "anstyle-query"
37
+ version = "1.1.5"
38
+ source = "registry+https://github.com/rust-lang/crates.io-index"
39
+ checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
40
+ dependencies = [
41
+ "windows-sys",
42
+ ]
43
+
44
+ [[package]]
45
+ name = "anstyle-wincon"
46
+ version = "3.0.11"
47
+ source = "registry+https://github.com/rust-lang/crates.io-index"
48
+ checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
49
+ dependencies = [
50
+ "anstyle",
51
+ "once_cell_polyfill",
52
+ "windows-sys",
53
+ ]
54
+
55
+ [[package]]
56
+ name = "arrayvec"
57
+ version = "0.7.8"
58
+ source = "registry+https://github.com/rust-lang/crates.io-index"
59
+ checksum = "d3fb67a6e08acf24fdeccbac2cb6ac4305825bd1f117462e0e6f2f193345ad56"
60
+
61
+ [[package]]
62
+ name = "bitflags"
63
+ version = "2.13.1"
64
+ source = "registry+https://github.com/rust-lang/crates.io-index"
65
+ checksum = "b588b76d00fde79687d7646a9b5bdf3cc0f655e0bbd080335a95d7e96f3587da"
66
+
67
+ [[package]]
68
+ name = "blake3"
69
+ version = "1.8.7"
70
+ source = "registry+https://github.com/rust-lang/crates.io-index"
71
+ checksum = "6d9e454fc11f76977dc803893aff6304ed33d6a26efae8696573bea74baa27ae"
72
+ dependencies = [
73
+ "arrayvec",
74
+ "cc",
75
+ "cfg-if",
76
+ "constant_time_eq",
77
+ "cpufeatures",
78
+ ]
79
+
80
+ [[package]]
81
+ name = "cc"
82
+ version = "1.4.4"
83
+ source = "registry+https://github.com/rust-lang/crates.io-index"
84
+ checksum = "0ad534f4357a5264cce5019c989cf66a4f0dc4e0d1b1d15f8aacec0ff7360273"
85
+ dependencies = [
86
+ "find-msvc-tools",
87
+ "shlex",
88
+ ]
89
+
90
+ [[package]]
91
+ name = "cfg-if"
92
+ version = "1.0.4"
93
+ source = "registry+https://github.com/rust-lang/crates.io-index"
94
+ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
95
+
96
+ [[package]]
97
+ name = "clap"
98
+ version = "4.6.6"
99
+ source = "registry+https://github.com/rust-lang/crates.io-index"
100
+ checksum = "473c7e07f409a8d772161724aa8db6a765a2532a70f9667eeb7b49d3d02fbdca"
101
+ dependencies = [
102
+ "clap_builder",
103
+ "clap_derive",
104
+ ]
105
+
106
+ [[package]]
107
+ name = "clap_builder"
108
+ version = "4.6.6"
109
+ source = "registry+https://github.com/rust-lang/crates.io-index"
110
+ checksum = "7b48fea5a88e9ae728a2dcbedbfc0e730f7d60da42e1cb049a83c9fb8b789889"
111
+ dependencies = [
112
+ "anstream",
113
+ "anstyle",
114
+ "clap_lex",
115
+ "strsim",
116
+ ]
117
+
118
+ [[package]]
119
+ name = "clap_derive"
120
+ version = "4.6.4"
121
+ source = "registry+https://github.com/rust-lang/crates.io-index"
122
+ checksum = "d012d2b9d65aca7f18f4d9878a045bc17899bba951561ba5ec3c2ba1eed9a061"
123
+ dependencies = [
124
+ "heck",
125
+ "proc-macro2",
126
+ "quote",
127
+ "syn 3.0.3",
128
+ ]
129
+
130
+ [[package]]
131
+ name = "clap_lex"
132
+ version = "1.1.0"
133
+ source = "registry+https://github.com/rust-lang/crates.io-index"
134
+ checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9"
135
+
136
+ [[package]]
137
+ name = "colorchoice"
138
+ version = "1.0.5"
139
+ source = "registry+https://github.com/rust-lang/crates.io-index"
140
+ checksum = "1d07550c9036bf2ae0c684c4297d503f838287c83c53686d05370d0e139ae570"
141
+
142
+ [[package]]
143
+ name = "constant_time_eq"
144
+ version = "0.4.2"
145
+ source = "registry+https://github.com/rust-lang/crates.io-index"
146
+ checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b"
147
+
148
+ [[package]]
149
+ name = "cpufeatures"
150
+ version = "0.3.0"
151
+ source = "registry+https://github.com/rust-lang/crates.io-index"
152
+ checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201"
153
+ dependencies = [
154
+ "libc",
155
+ ]
156
+
157
+ [[package]]
158
+ name = "crabz2"
159
+ version = "0.4.0"
160
+ source = "registry+https://github.com/rust-lang/crates.io-index"
161
+ checksum = "5511d6a1bf09819854ce033f3a402189e6f12d13ede526fc9585833524509546"
162
+
163
+ [[package]]
164
+ name = "crossbeam-deque"
165
+ version = "0.8.7"
166
+ source = "registry+https://github.com/rust-lang/crates.io-index"
167
+ checksum = "5181e0de7b61eb03a81e347d6dd8797bae9da5146707b51077e2d71a54ec0ceb"
168
+ dependencies = [
169
+ "crossbeam-epoch",
170
+ "crossbeam-utils",
171
+ ]
172
+
173
+ [[package]]
174
+ name = "crossbeam-epoch"
175
+ version = "0.9.20"
176
+ source = "registry+https://github.com/rust-lang/crates.io-index"
177
+ checksum = "2d6914041f254d6e9176c01941b21115dcfb7089e55135a35411081bd106ef3f"
178
+ dependencies = [
179
+ "crossbeam-utils",
180
+ ]
181
+
182
+ [[package]]
183
+ name = "crossbeam-utils"
184
+ version = "0.8.22"
185
+ source = "registry+https://github.com/rust-lang/crates.io-index"
186
+ checksum = "61803da095bee82a81bb1a452ecc25d3b2f1416d1897eb86430c6159ef717c17"
187
+
188
+ [[package]]
189
+ name = "either"
190
+ version = "1.18.0"
191
+ source = "registry+https://github.com/rust-lang/crates.io-index"
192
+ checksum = "252afb9ae5eaa683babdc6a068b3f5726eb19e05070c731f9b2a23a7c3e8ed34"
193
+
194
+ [[package]]
195
+ name = "errno"
196
+ version = "0.3.14"
197
+ source = "registry+https://github.com/rust-lang/crates.io-index"
198
+ checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
199
+ dependencies = [
200
+ "libc",
201
+ "windows-sys",
202
+ ]
203
+
204
+ [[package]]
205
+ name = "fastbz2"
206
+ version = "0.1.1"
207
+ dependencies = [
208
+ "blake3",
209
+ "clap",
210
+ "crabz2",
211
+ "libbz2-rs-sys",
212
+ "memmap2",
213
+ "pyo3",
214
+ "rayon",
215
+ "tempfile",
216
+ ]
217
+
218
+ [[package]]
219
+ name = "fastrand"
220
+ version = "2.5.0"
221
+ source = "registry+https://github.com/rust-lang/crates.io-index"
222
+ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223"
223
+
224
+ [[package]]
225
+ name = "find-msvc-tools"
226
+ version = "0.1.11"
227
+ source = "registry+https://github.com/rust-lang/crates.io-index"
228
+ checksum = "d45db016d36b838f563236e9193d0ee6ce38f3f68b6c94e914b4929c96bbb890"
229
+
230
+ [[package]]
231
+ name = "getrandom"
232
+ version = "0.4.3"
233
+ source = "registry+https://github.com/rust-lang/crates.io-index"
234
+ checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099"
235
+ dependencies = [
236
+ "cfg-if",
237
+ "libc",
238
+ "r-efi",
239
+ ]
240
+
241
+ [[package]]
242
+ name = "heck"
243
+ version = "0.5.0"
244
+ source = "registry+https://github.com/rust-lang/crates.io-index"
245
+ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
246
+
247
+ [[package]]
248
+ name = "is_terminal_polyfill"
249
+ version = "1.70.2"
250
+ source = "registry+https://github.com/rust-lang/crates.io-index"
251
+ checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695"
252
+
253
+ [[package]]
254
+ name = "libbz2-rs-sys"
255
+ version = "0.2.5"
256
+ source = "registry+https://github.com/rust-lang/crates.io-index"
257
+ checksum = "34b357333733e8260735ba5894eb928c02ecc69c78715f01a8019e7fa7f2db4c"
258
+
259
+ [[package]]
260
+ name = "libc"
261
+ version = "0.2.189"
262
+ source = "registry+https://github.com/rust-lang/crates.io-index"
263
+ checksum = "3eaf3ede3fee6db1a4c2ee091bf8a8b4dccdc6d17f656fb07896ee72867612f2"
264
+
265
+ [[package]]
266
+ name = "linux-raw-sys"
267
+ version = "0.12.1"
268
+ source = "registry+https://github.com/rust-lang/crates.io-index"
269
+ checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53"
270
+
271
+ [[package]]
272
+ name = "memmap2"
273
+ version = "0.9.11"
274
+ source = "registry+https://github.com/rust-lang/crates.io-index"
275
+ checksum = "d1219ed1b7f229ee7104d281dd01d6802fe28bb6e95d292942c4daacdeb798c0"
276
+ dependencies = [
277
+ "libc",
278
+ ]
279
+
280
+ [[package]]
281
+ name = "once_cell"
282
+ version = "1.21.4"
283
+ source = "registry+https://github.com/rust-lang/crates.io-index"
284
+ checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50"
285
+
286
+ [[package]]
287
+ name = "once_cell_polyfill"
288
+ version = "1.70.2"
289
+ source = "registry+https://github.com/rust-lang/crates.io-index"
290
+ checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
291
+
292
+ [[package]]
293
+ name = "portable-atomic"
294
+ version = "1.15.0"
295
+ source = "registry+https://github.com/rust-lang/crates.io-index"
296
+ checksum = "05c8b63e8d9609db387f0324918f81d68fe27748f084ef092fb35954d0539a85"
297
+
298
+ [[package]]
299
+ name = "proc-macro2"
300
+ version = "1.0.107"
301
+ source = "registry+https://github.com/rust-lang/crates.io-index"
302
+ checksum = "985e7ec9bb745e6ce6535b544d84d6cd6f7ad8bd711c398938ae983b91a766d9"
303
+ dependencies = [
304
+ "unicode-ident",
305
+ ]
306
+
307
+ [[package]]
308
+ name = "pyo3"
309
+ version = "0.29.2"
310
+ source = "registry+https://github.com/rust-lang/crates.io-index"
311
+ checksum = "4688ddedf473e32662b9b067670129a8afb8c18e351482c70d62ba4a88171e8b"
312
+ dependencies = [
313
+ "libc",
314
+ "once_cell",
315
+ "portable-atomic",
316
+ "pyo3-build-config",
317
+ "pyo3-ffi",
318
+ "pyo3-macros",
319
+ ]
320
+
321
+ [[package]]
322
+ name = "pyo3-build-config"
323
+ version = "0.29.2"
324
+ source = "registry+https://github.com/rust-lang/crates.io-index"
325
+ checksum = "f41027e41b4bd03f6e60f9f417fe24a6341a6bb744edd62b6f709f2a52ea30e9"
326
+ dependencies = [
327
+ "target-lexicon",
328
+ ]
329
+
330
+ [[package]]
331
+ name = "pyo3-ffi"
332
+ version = "0.29.2"
333
+ source = "registry+https://github.com/rust-lang/crates.io-index"
334
+ checksum = "e591a95526fead067432c3b3a33fc74770b87b1e04e73671090d9c2055a2b327"
335
+ dependencies = [
336
+ "libc",
337
+ "pyo3-build-config",
338
+ ]
339
+
340
+ [[package]]
341
+ name = "pyo3-macros"
342
+ version = "0.29.2"
343
+ source = "registry+https://github.com/rust-lang/crates.io-index"
344
+ checksum = "73225868fc1cd84eef2c3c230ddb91273bf1de46aeb8a4248da76d32a0924a1c"
345
+ dependencies = [
346
+ "proc-macro2",
347
+ "pyo3-macros-backend",
348
+ "quote",
349
+ "syn 2.0.119",
350
+ ]
351
+
352
+ [[package]]
353
+ name = "pyo3-macros-backend"
354
+ version = "0.29.2"
355
+ source = "registry+https://github.com/rust-lang/crates.io-index"
356
+ checksum = "571575aa3749fa6216757dd47d2a3e7ef360f329a40f0666a9fbd14889024952"
357
+ dependencies = [
358
+ "heck",
359
+ "proc-macro2",
360
+ "quote",
361
+ "syn 2.0.119",
362
+ ]
363
+
364
+ [[package]]
365
+ name = "quote"
366
+ version = "1.0.47"
367
+ source = "registry+https://github.com/rust-lang/crates.io-index"
368
+ checksum = "1fbf4db142a473a8d80c26bbf18454ed458bf8d26c8219c331daecfdbd079001"
369
+ dependencies = [
370
+ "proc-macro2",
371
+ ]
372
+
373
+ [[package]]
374
+ name = "r-efi"
375
+ version = "6.0.0"
376
+ source = "registry+https://github.com/rust-lang/crates.io-index"
377
+ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
378
+
379
+ [[package]]
380
+ name = "rayon"
381
+ version = "1.12.0"
382
+ source = "registry+https://github.com/rust-lang/crates.io-index"
383
+ checksum = "fb39b166781f92d482534ef4b4b1b2568f42613b53e5b6c160e24cfbfa30926d"
384
+ dependencies = [
385
+ "either",
386
+ "rayon-core",
387
+ ]
388
+
389
+ [[package]]
390
+ name = "rayon-core"
391
+ version = "1.13.0"
392
+ source = "registry+https://github.com/rust-lang/crates.io-index"
393
+ checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91"
394
+ dependencies = [
395
+ "crossbeam-deque",
396
+ "crossbeam-utils",
397
+ ]
398
+
399
+ [[package]]
400
+ name = "rustix"
401
+ version = "1.1.4"
402
+ source = "registry+https://github.com/rust-lang/crates.io-index"
403
+ checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190"
404
+ dependencies = [
405
+ "bitflags",
406
+ "errno",
407
+ "libc",
408
+ "linux-raw-sys",
409
+ "windows-sys",
410
+ ]
411
+
412
+ [[package]]
413
+ name = "shlex"
414
+ version = "2.0.1"
415
+ source = "registry+https://github.com/rust-lang/crates.io-index"
416
+ checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
417
+
418
+ [[package]]
419
+ name = "strsim"
420
+ version = "0.11.1"
421
+ source = "registry+https://github.com/rust-lang/crates.io-index"
422
+ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
423
+
424
+ [[package]]
425
+ name = "syn"
426
+ version = "2.0.119"
427
+ source = "registry+https://github.com/rust-lang/crates.io-index"
428
+ checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
429
+ dependencies = [
430
+ "proc-macro2",
431
+ "quote",
432
+ "unicode-ident",
433
+ ]
434
+
435
+ [[package]]
436
+ name = "syn"
437
+ version = "3.0.3"
438
+ source = "registry+https://github.com/rust-lang/crates.io-index"
439
+ checksum = "53e9bae58849f64dfa4f5d5ae372c8341f7305f82a3868709269343628b659a3"
440
+ dependencies = [
441
+ "proc-macro2",
442
+ "quote",
443
+ "unicode-ident",
444
+ ]
445
+
446
+ [[package]]
447
+ name = "target-lexicon"
448
+ version = "0.13.5"
449
+ source = "registry+https://github.com/rust-lang/crates.io-index"
450
+ checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
451
+
452
+ [[package]]
453
+ name = "tempfile"
454
+ version = "3.27.0"
455
+ source = "registry+https://github.com/rust-lang/crates.io-index"
456
+ checksum = "32497e9a4c7b38532efcdebeef879707aa9f794296a4f0244f6f69e9bc8574bd"
457
+ dependencies = [
458
+ "fastrand",
459
+ "getrandom",
460
+ "once_cell",
461
+ "rustix",
462
+ "windows-sys",
463
+ ]
464
+
465
+ [[package]]
466
+ name = "unicode-ident"
467
+ version = "1.0.24"
468
+ source = "registry+https://github.com/rust-lang/crates.io-index"
469
+ checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
470
+
471
+ [[package]]
472
+ name = "utf8parse"
473
+ version = "0.2.2"
474
+ source = "registry+https://github.com/rust-lang/crates.io-index"
475
+ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
476
+
477
+ [[package]]
478
+ name = "windows-link"
479
+ version = "0.2.1"
480
+ source = "registry+https://github.com/rust-lang/crates.io-index"
481
+ checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5"
482
+
483
+ [[package]]
484
+ name = "windows-sys"
485
+ version = "0.61.2"
486
+ source = "registry+https://github.com/rust-lang/crates.io-index"
487
+ checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
488
+ dependencies = [
489
+ "windows-link",
490
+ ]
@@ -0,0 +1,40 @@
1
+ [package]
2
+ name = "fastbz2"
3
+ version = "0.1.1"
4
+ edition = "2024"
5
+ rust-version = "1.91"
6
+ license = "Apache-2.0"
7
+ description = "Fast parallel and indexed bzip2 decompression for Rust and Python"
8
+ repository = "https://github.com/AnswerDotAI/fastbz2"
9
+ homepage = "https://github.com/AnswerDotAI/fastbz2"
10
+ documentation = "https://github.com/AnswerDotAI/fastbz2"
11
+ readme = "README.md"
12
+
13
+ [lib]
14
+ name = "fastbz2"
15
+ crate-type = ["cdylib", "rlib"]
16
+
17
+ [[bin]]
18
+ name = "fastbz2"
19
+ path = "src/bin/fastbz2.rs"
20
+ test = false
21
+
22
+ [profile.release]
23
+ lto = true
24
+ codegen-units = 1
25
+
26
+ [dependencies]
27
+ blake3 = "1.8.7"
28
+ clap = { version = "4.6.6", features = ["derive"] }
29
+ memmap2 = "0.9.11"
30
+ pyo3 = { version = ">=0.29.2", optional = true }
31
+ rayon = "1.12.0"
32
+ tempfile = "3.27.0"
33
+
34
+ [dev-dependencies]
35
+ crabz2 = "0.4.0"
36
+ libbz2-rs-sys = { version = "0.2.5", default-features = false, features = ["std"] }
37
+
38
+ [features]
39
+ python = ["dep:pyo3"]
40
+ extension-module = ["python", "pyo3/extension-module"]