hishel 0.1.2__py3-none-any.whl → 0.1.4__py3-none-any.whl

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hishel
3
- Version: 0.1.2
3
+ Version: 0.1.4
4
4
  Summary: Persistent cache implementation for httpx and httpcore
5
5
  Project-URL: Homepage, https://hishel.com
6
6
  Project-URL: Source, https://github.com/karpetrosyan/hishel
@@ -21,18 +21,27 @@ Classifier: Programming Language :: Python :: 3.10
21
21
  Classifier: Programming Language :: Python :: 3.11
22
22
  Classifier: Programming Language :: Python :: 3.12
23
23
  Classifier: Programming Language :: Python :: 3.13
24
+ Classifier: Programming Language :: Python :: 3.14
24
25
  Classifier: Topic :: Internet :: WWW/HTTP
25
26
  Requires-Python: >=3.9
27
+ Requires-Dist: anyio>=4.9.0
28
+ Requires-Dist: anysqlite>=0.0.5
26
29
  Requires-Dist: httpx>=0.28.0
30
+ Requires-Dist: msgpack>=1.1.2
31
+ Requires-Dist: typing-extensions>=4.14.1
32
+ Provides-Extra: httpx
33
+ Requires-Dist: httpx>=0.28.1; extra == 'httpx'
27
34
  Provides-Extra: redis
28
- Requires-Dist: redis==5.0.4; extra == 'redis'
35
+ Requires-Dist: redis==6.2.0; extra == 'redis'
36
+ Provides-Extra: requests
37
+ Requires-Dist: requests>=2.32.5; extra == 'requests'
29
38
  Provides-Extra: s3
30
39
  Requires-Dist: boto3<=1.15.3,>=1.15.0; (python_version < '3.12') and extra == 's3'
31
40
  Requires-Dist: boto3>=1.15.3; (python_version >= '3.12') and extra == 's3'
32
41
  Provides-Extra: sqlite
33
42
  Requires-Dist: anysqlite>=0.0.5; extra == 'sqlite'
34
43
  Provides-Extra: yaml
35
- Requires-Dist: pyyaml==6.0.1; extra == 'yaml'
44
+ Requires-Dist: pyyaml==6.0.2; extra == 'yaml'
36
45
  Description-Content-Type: text/markdown
37
46
 
38
47
  <p align="center" class="logo">
@@ -59,8 +68,8 @@ Description-Content-Type: text/markdown
59
68
  <img src="https://img.shields.io/pypi/l/hishel" alt="license">
60
69
  </a>
61
70
 
62
- <a href="https://img.shields.io/codecov/c/github/karpetrosyan/hishel">
63
- <img src="https://img.shields.io/codecov/c/github/karpetrosyan/hishel" alt="license">
71
+ <a href="https://coveralls.io/github/karpetrosyan/hishel">
72
+ <img src="https://img.shields.io/coverallsCoverage/github/karpetrosyan/hishel" alt="license">
64
73
  </a>
65
74
 
66
75
  <a href="https://github.com/karpetrosyan/hishel">
@@ -68,6 +77,10 @@ Description-Content-Type: text/markdown
68
77
  </a>
69
78
  </p>
70
79
 
80
+ <p align="center">
81
+ <a href="https://buymeacoffee.com/karpetrosyan" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a>
82
+ </p>
83
+
71
84
  -----
72
85
 
73
86
  **Hishel (հիշել, remember)** is a library that implements HTTP Caching for [HTTPX](https://github.com/encode/httpx) and [HTTP Core](https://github.com/encode/httpcore) libraries in accordance with [**RFC 9111**](https://www.rfc-editor.org/rfc/rfc9111.html), the most recent caching specification.
@@ -179,7 +192,38 @@ You have complete control over them; you can change storage or even write your o
179
192
  You can support the project by simply leaving a GitHub star ⭐ or by [contributing](https://hishel.com/contributing/).
180
193
  Help us grow and continue developing good software for you ❤️
181
194
 
182
- # Changelog
195
+ ## [0.1.4] - 2025-10-14
196
+
197
+ ### 🚀 Features
198
+
199
+ - Add support for requests library
200
+ - Add support for Python 3.14
201
+ - Add support for a sans-IO API (#366)
202
+ - Allow already consumed streams with `CacheTransport` (#377)
203
+ - Add sqlite storage for beta storages
204
+ - Get rid of some locks from sqlite storage
205
+ - Better async implemetation for sqlite storage
206
+ - Added `Metadata` to public API. (#363)
207
+ - Fix race condition in FileStorage initialization. (#353)
208
+
209
+ ### 🐛 Bug Fixes
210
+
211
+ - Create an sqlite file in a cache folder
212
+ - Fix beta imports
213
+
214
+ ### ⚙️ Miscellaneous Tasks
215
+
216
+ - Improve CI (#369)
217
+ - *(internal)* Remove src folder (#373)
218
+ - *(internal)* Temporary remove python3.14 from CI
219
+ - *(tests)* Add sqlite tests for new storage
220
+ - *(tests)* Move some tests to beta
221
+ ## 0.1.3 (1st July, 2025)
222
+
223
+ - Remove `types-redis` from dev dependencies (#336)
224
+ - Bump redis to 6.0.0 and address async `.close()` deprecation warning (#336)
225
+ - Avoid race condition when unlinking files in `FileStorage`. (#334)
226
+ - Allow prodiving a `path_prefix` in `S3Storage` and `AsyncS3Storage`. (#342)
183
227
 
184
228
  ## 0.1.2 (5th April, 2025)
185
229
 
@@ -0,0 +1,41 @@
1
+ hishel/__init__.py,sha256=uFPxYPm-vFegjbeEvYmTqIE7ALymqYf837Z1mMZNVdM,1221
2
+ hishel/_controller.py,sha256=nQMEF-upuBf6-r0wyjd2CGYgBhB-JbEw6IgGxtvADJ4,24629
3
+ hishel/_exceptions.py,sha256=qbg55RNlzwhv5JreWY9Zog_zmmiKdn5degtqJKijuRs,198
4
+ hishel/_files.py,sha256=7J5uX7Nnzd7QQWfYuDGh8v6XGLG3eUDBjoJZ4aTaY1c,2228
5
+ hishel/_headers.py,sha256=BPvas0LQgwbz-HZhFykZiHEIeNgnY-E33U__oskYzJw,7323
6
+ hishel/_lfu_cache.py,sha256=GBxToQI8u_a9TzYnLlZMLhgZ8Lb83boPHzTvIgqV6pA,2707
7
+ hishel/_lmdb_types_.pyi,sha256=2qx4-3kZhkKxhkWApZdnoGck3CbPrhUJQIIMLPBT90w,1492
8
+ hishel/_s3.py,sha256=HkmWYjYWAiWgEMp1_Jl79hG5aUpMcD0NDXjj8VHRmQE,4322
9
+ hishel/_serializers.py,sha256=wQ5xqeQPAnzDFxLrjmWUP6f0IC0RihpgpTgy3jljxjE,11646
10
+ hishel/_synchronization.py,sha256=xOmU9_8KAWTAv3r8EpqPISrtSF3slyh1J0Sc7ZQO1rg,897
11
+ hishel/_utils.py,sha256=uO8PcY_E1sHSgBGzZ2GNB4kpKqAlzmnzPCc3s-yDd44,13826
12
+ hishel/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
+ hishel/_async/__init__.py,sha256=_oAltH4emAtUF7_9SSxz_KKGYzSXL34o_EGgGvoPG7E,187
14
+ hishel/_async/_client.py,sha256=WqYHV8SeAXlK6Q0uQe0ixkC99i64iOwD2EPOYhQcUL8,1088
15
+ hishel/_async/_mock.py,sha256=995v9p5xiw3svGSOJATkLMqwodlhZhcwmGygLHM2VFw,1515
16
+ hishel/_async/_pool.py,sha256=xCcSAl4bHI5eVsZyPap7iHDpxzzgfMqYE_txcjQJ1Hs,8195
17
+ hishel/_async/_storages.py,sha256=zR0kIJSN1WK6P0qWpOTceEYtwWTcfgabf7t3qnGDK3w,28899
18
+ hishel/_async/_transports.py,sha256=YTZecg1A5vnv4GnF9y9n394nzqGBAkr-M4BF2lvci5U,11445
19
+ hishel/_sync/__init__.py,sha256=_oAltH4emAtUF7_9SSxz_KKGYzSXL34o_EGgGvoPG7E,187
20
+ hishel/_sync/_client.py,sha256=hHTuS9wOBZhcNSQmbopSWTtTTGYu-q_0FQOc9g5TuRI,1048
21
+ hishel/_sync/_mock.py,sha256=im88tZr-XhP9BpzvIt3uOjndAlNcJvFP7Puv3H-6lKU,1430
22
+ hishel/_sync/_pool.py,sha256=U2b9ZGYUltwTjI2q2KHZwmj4boIqUExJ_rUKWuLmYSs,7960
23
+ hishel/_sync/_storages.py,sha256=PAt0HdkGE-LNd-UV3EclrahuFFPcatDK4DoYiTXhiBM,28108
24
+ hishel/_sync/_transports.py,sha256=ivPztcm84PxObIXMZ3hLD_o5HMo8XXGhRlSg0Lm_sNo,11117
25
+ hishel/beta/__init__.py,sha256=VzlIfaGQaYfpesqOujNcG0HMCaIF9CzEyhIY04A4c8g,1477
26
+ hishel/beta/_async_cache.py,sha256=vhdTyRIjMpKzc4qKPZGVoFQa9-60aCXLNGltOE1mDg8,6807
27
+ hishel/beta/_sync_cache.py,sha256=a0fcNY5qApPBXQ_kCUBW2Ccwwj0bEkNTVmv-6W3cqPI,6553
28
+ hishel/beta/httpx.py,sha256=KkK3_ZY3FyjWHDJFNLucXoEBph-pMkI2wuHdagXn_lo,10729
29
+ hishel/beta/requests.py,sha256=Q6hPs8ZoFM6802ZCV9_ERG5BVRacMOMwpw5IanmPrYQ,6393
30
+ hishel/beta/_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
+ hishel/beta/_core/_headers.py,sha256=vkdHZFFg734TO-kDpAZ271I7dXpwFUtAOuX3vS2LatU,9809
32
+ hishel/beta/_core/_spec.py,sha256=5z5kZ7Q9BO8yZynQIiDiIly77iTMzUljekhmrF1Otyc,99529
33
+ hishel/beta/_core/models.py,sha256=rbU72bCT_lpwASIs5Qzmo3vcjiDm-lu0C99-CgYWl7k,5524
34
+ hishel/beta/_core/_async/_storages/_sqlite.py,sha256=_PZ4t8KXk-YErTCze80Uh8XnG8WZ2323VrRd0NwoKHY,14719
35
+ hishel/beta/_core/_base/_storages/_base.py,sha256=XvhNNQhMNEc2Jt2p0k8SNW5_yLoDfmYMFfPncmKbmX0,8267
36
+ hishel/beta/_core/_base/_storages/_packing.py,sha256=8s0UxYTLdwzs4A_1E896EVj5VPT8Aqv9UabWbeMD8lw,4898
37
+ hishel/beta/_core/_sync/_storages/_sqlite.py,sha256=1sBU_geVbUSC8e46gao5p_k8MogYEWnZodse55FQQ6Q,14153
38
+ hishel-0.1.4.dist-info/METADATA,sha256=GBT-r6kU3dotaAozdL7xlqDQ5jPt1D88kBcXKceGV1U,14344
39
+ hishel-0.1.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
40
+ hishel-0.1.4.dist-info/licenses/LICENSE,sha256=1qQj7pE0V2O9OIedvyOgLGLvZLaPd3nFEup3IBEOZjQ,1493
41
+ hishel-0.1.4.dist-info/RECORD,,
@@ -1,27 +0,0 @@
1
- hishel/__init__.py,sha256=R91Ika4Y8yXeuWLIrpbrXHUPASzYa-ZlaC2r7cX7L74,368
2
- hishel/_controller.py,sha256=be1_eL34Gue6a1px_eLFWWxViPQbYENMvtZmv8gFRhA,24636
3
- hishel/_exceptions.py,sha256=qbg55RNlzwhv5JreWY9Zog_zmmiKdn5degtqJKijuRs,198
4
- hishel/_files.py,sha256=7J5uX7Nnzd7QQWfYuDGh8v6XGLG3eUDBjoJZ4aTaY1c,2228
5
- hishel/_headers.py,sha256=BPvas0LQgwbz-HZhFykZiHEIeNgnY-E33U__oskYzJw,7323
6
- hishel/_lfu_cache.py,sha256=GBxToQI8u_a9TzYnLlZMLhgZ8Lb83boPHzTvIgqV6pA,2707
7
- hishel/_s3.py,sha256=HDS3-3HM8xmIb-1_p2VRKJk9EwfzoxgTT0F1Kryl8sU,4087
8
- hishel/_serializers.py,sha256=gepVb8JC4aBkGw9kLcbAsyo-1XgK_lzTssLr_8av4SQ,11640
9
- hishel/_synchronization.py,sha256=xOmU9_8KAWTAv3r8EpqPISrtSF3slyh1J0Sc7ZQO1rg,897
10
- hishel/_utils.py,sha256=7HhJlomBCqbhBv01ZuK5WfG8dCtGONLFFF7ujIvBBWQ,3277
11
- hishel/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- hishel/_async/__init__.py,sha256=_oAltH4emAtUF7_9SSxz_KKGYzSXL34o_EGgGvoPG7E,187
13
- hishel/_async/_client.py,sha256=AkVSSbNTTHmK0gX6PRYVQ-3aDbuCX2Im4VKbLkwLiBU,1101
14
- hishel/_async/_mock.py,sha256=995v9p5xiw3svGSOJATkLMqwodlhZhcwmGygLHM2VFw,1515
15
- hishel/_async/_pool.py,sha256=xCcSAl4bHI5eVsZyPap7iHDpxzzgfMqYE_txcjQJ1Hs,8195
16
- hishel/_async/_storages.py,sha256=tJXwov37HOvwYwXyjFtf-uRn7y7wR8RZs49F_Urj570,28744
17
- hishel/_async/_transports.py,sha256=BhtEj8SHxu0YKHWDDP5mfCabIWgrAM7lMLJ1-TwWigw,11203
18
- hishel/_sync/__init__.py,sha256=_oAltH4emAtUF7_9SSxz_KKGYzSXL34o_EGgGvoPG7E,187
19
- hishel/_sync/_client.py,sha256=O-gwm9DsveKtSFUfqdbBB-3I1FmXr5rE-uQ7X5frwDA,1060
20
- hishel/_sync/_mock.py,sha256=im88tZr-XhP9BpzvIt3uOjndAlNcJvFP7Puv3H-6lKU,1430
21
- hishel/_sync/_pool.py,sha256=U2b9ZGYUltwTjI2q2KHZwmj4boIqUExJ_rUKWuLmYSs,7960
22
- hishel/_sync/_storages.py,sha256=NhIIAoWdpFECcexz121rfYLFRCk3C1iBazVXwoDVoSU,27954
23
- hishel/_sync/_transports.py,sha256=cQQgdJSy1zfmIa14ycADPek9Tobpa33nqBHA614_6kc,10875
24
- hishel-0.1.2.dist-info/METADATA,sha256=aqgCs4WIdawt1s7MUa6kVR32jEWG9Zeu3yTGJUL9ah4,12583
25
- hishel-0.1.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
26
- hishel-0.1.2.dist-info/licenses/LICENSE,sha256=1qQj7pE0V2O9OIedvyOgLGLvZLaPd3nFEup3IBEOZjQ,1493
27
- hishel-0.1.2.dist-info/RECORD,,
File without changes