content-core 0.6.0__tar.gz → 0.7.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.
Potentially problematic release.
This version of content-core might be problematic. Click here for more details.
- {content_core-0.6.0 → content_core-0.7.0}/PKG-INFO +3 -5
- {content_core-0.6.0 → content_core-0.7.0}/pyproject.toml +4 -5
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/extraction/graph.py +2 -9
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/url.py +52 -0
- {content_core-0.6.0 → content_core-0.7.0}/uv.lock +14 -144
- {content_core-0.6.0 → content_core-0.7.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/.github/workflows/publish.yml +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/.gitignore +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/.python-version +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/CONTRIBUTING.md +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/LICENSE +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/Makefile +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/README.md +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/docs/processors.md +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/docs/usage.md +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/prompts/content/cleanup.jinja +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/prompts/content/summarize.jinja +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/cc_config.yaml +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/common/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/common/exceptions.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/common/state.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/common/utils.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/config.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/cleanup/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/cleanup/core.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/extraction/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/summary/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/content/summary/core.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/logging.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/models.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/models_config.yaml +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/notebooks/run.ipynb +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/audio.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/docling.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/office.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/pdf.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/text.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/video.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/processors/youtube.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/py.typed +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/templated_message.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/tools/__init__.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/tools/cleanup.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/tools/extract.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/src/content_core/tools/summarize.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.docx +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.epub +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.md +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.mp3 +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.mp4 +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.pdf +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.pptx +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.txt +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file.xlsx +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/input_content/file_audio.mp3 +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/integration/test_extraction.py +0 -0
- {content_core-0.6.0 → content_core-0.7.0}/tests/unit/test_docling.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: content-core
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.7.0
|
|
4
4
|
Summary: Extract what matters from any media source
|
|
5
5
|
Author-email: LUIS NOVO <lfnovo@gmail.com>
|
|
6
6
|
License-File: LICENSE
|
|
@@ -9,14 +9,12 @@ Requires-Dist: ai-prompter>=0.2.3
|
|
|
9
9
|
Requires-Dist: aiohttp>=3.11
|
|
10
10
|
Requires-Dist: bs4>=0.0.2
|
|
11
11
|
Requires-Dist: dicttoxml>=1.7.16
|
|
12
|
-
Requires-Dist: esperanto>=1.2.0
|
|
13
|
-
Requires-Dist: google-genai>=1.10.0
|
|
12
|
+
Requires-Dist: esperanto[openai]>=1.2.0
|
|
14
13
|
Requires-Dist: jinja2>=3.1.6
|
|
15
14
|
Requires-Dist: langdetect>=1.0.9
|
|
16
15
|
Requires-Dist: langgraph>=0.3.29
|
|
17
16
|
Requires-Dist: loguru>=0.7.3
|
|
18
17
|
Requires-Dist: moviepy>=2.1.2
|
|
19
|
-
Requires-Dist: openai>=1.73.0
|
|
20
18
|
Requires-Dist: openpyxl>=3.1.5
|
|
21
19
|
Requires-Dist: pandas>=2.2.3
|
|
22
20
|
Requires-Dist: pymupdf>=1.25.5
|
|
@@ -28,7 +26,7 @@ Requires-Dist: validators>=0.34.0
|
|
|
28
26
|
Requires-Dist: youtube-transcript-api>=1.0.3
|
|
29
27
|
Provides-Extra: docling
|
|
30
28
|
Requires-Dist: asciidoc; extra == 'docling'
|
|
31
|
-
Requires-Dist: docling
|
|
29
|
+
Requires-Dist: docling; extra == 'docling'
|
|
32
30
|
Requires-Dist: pandas; extra == 'docling'
|
|
33
31
|
Requires-Dist: pillow; extra == 'docling'
|
|
34
32
|
Description-Content-Type: text/markdown
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "content-core"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.7.0"
|
|
4
4
|
description = "Extract what matters from any media source"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
homepage = "https://github.com/lfnovo/content-core"
|
|
@@ -11,12 +11,10 @@ requires-python = ">=3.10"
|
|
|
11
11
|
dependencies = [
|
|
12
12
|
"aiohttp>=3.11",
|
|
13
13
|
"bs4>=0.0.2",
|
|
14
|
-
"esperanto>=1.2.0",
|
|
15
|
-
"google-genai>=1.10.0",
|
|
14
|
+
"esperanto[openai]>=1.2.0",
|
|
16
15
|
"jinja2>=3.1.6",
|
|
17
16
|
"langdetect>=1.0.9",
|
|
18
17
|
"loguru>=0.7.3",
|
|
19
|
-
"openai>=1.73.0",
|
|
20
18
|
"openpyxl>=3.1.5",
|
|
21
19
|
"pandas>=2.2.3",
|
|
22
20
|
"pymupdf>=1.25.5",
|
|
@@ -33,7 +31,7 @@ dependencies = [
|
|
|
33
31
|
]
|
|
34
32
|
|
|
35
33
|
[project.optional-dependencies]
|
|
36
|
-
docling = ["docling
|
|
34
|
+
docling = ["docling", "Pillow", "pandas", "asciidoc"]
|
|
37
35
|
|
|
38
36
|
[project.scripts]
|
|
39
37
|
ccore = "content_core:ccore"
|
|
@@ -54,6 +52,7 @@ package-dir = {"content_core" = "src/content_core"}
|
|
|
54
52
|
dev = [
|
|
55
53
|
"ipykernel>=4.0.1",
|
|
56
54
|
"ipywidgets>=4.0.0",
|
|
55
|
+
"openai>=1.78.1",
|
|
57
56
|
"pyperclip>=1.9.0",
|
|
58
57
|
"pytest>=7.2.0",
|
|
59
58
|
"pytest-asyncio>=0.21.0",
|
|
@@ -15,10 +15,8 @@ from content_core.common import (
|
|
|
15
15
|
from content_core.config import CONFIG # type: ignore
|
|
16
16
|
from content_core.logging import logger
|
|
17
17
|
from content_core.processors.audio import extract_audio_data # type: ignore
|
|
18
|
-
from content_core.processors.docling import
|
|
19
|
-
|
|
20
|
-
extract_with_docling,
|
|
21
|
-
)
|
|
18
|
+
from content_core.processors.docling import DOCLING_SUPPORTED # type: ignore
|
|
19
|
+
from content_core.processors.docling import extract_with_docling
|
|
22
20
|
from content_core.processors.office import (
|
|
23
21
|
SUPPORTED_OFFICE_TYPES,
|
|
24
22
|
extract_office_content,
|
|
@@ -186,8 +184,3 @@ workflow.add_edge("download_remote_file", "file_type")
|
|
|
186
184
|
|
|
187
185
|
# Compile graph
|
|
188
186
|
graph = workflow.compile()
|
|
189
|
-
|
|
190
|
-
# Compile graph
|
|
191
|
-
graph = workflow.compile()
|
|
192
|
-
# Compile graph
|
|
193
|
-
graph = workflow.compile()
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import re
|
|
2
2
|
from urllib.parse import urlparse
|
|
3
|
+
from io import BytesIO
|
|
3
4
|
|
|
4
5
|
import aiohttp
|
|
6
|
+
import docx
|
|
5
7
|
from bs4 import BeautifulSoup, Comment
|
|
6
8
|
|
|
7
9
|
from content_core.common import ProcessSourceState
|
|
@@ -12,6 +14,49 @@ from content_core.processors.pdf import SUPPORTED_FITZ_TYPES
|
|
|
12
14
|
# https://github.com/buriy/python-readability
|
|
13
15
|
# also try readability: from readability import Document
|
|
14
16
|
|
|
17
|
+
DOCX_MIME_TYPE = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
|
|
18
|
+
|
|
19
|
+
async def _extract_docx_content(docx_bytes: bytes, url: str):
|
|
20
|
+
"""
|
|
21
|
+
Extract content from DOCX file bytes.
|
|
22
|
+
"""
|
|
23
|
+
try:
|
|
24
|
+
logger.debug(f"Attempting to parse DOCX from URL: {url} with python-docx")
|
|
25
|
+
doc = docx.Document(BytesIO(docx_bytes))
|
|
26
|
+
content_parts = [p.text for p in doc.paragraphs if p.text]
|
|
27
|
+
full_content = "\n\n".join(content_parts)
|
|
28
|
+
|
|
29
|
+
# Try to get a title from document properties or first heading
|
|
30
|
+
title = doc.core_properties.title
|
|
31
|
+
if not title and doc.paragraphs:
|
|
32
|
+
# Look for a potential title in the first few paragraphs (e.g., if styled as heading)
|
|
33
|
+
for p in doc.paragraphs[:5]: # Check first 5 paragraphs
|
|
34
|
+
if p.style.name.startswith('Heading'):
|
|
35
|
+
title = p.text
|
|
36
|
+
break
|
|
37
|
+
if not title: # Fallback to first line if no heading found
|
|
38
|
+
title = doc.paragraphs[0].text.strip() if doc.paragraphs[0].text.strip() else None
|
|
39
|
+
|
|
40
|
+
# If no title found, use filename from URL
|
|
41
|
+
if not title:
|
|
42
|
+
title = urlparse(url).path.split('/')[-1]
|
|
43
|
+
|
|
44
|
+
logger.info(f"Successfully extracted content from DOCX: {url}, Title: {title}")
|
|
45
|
+
return {
|
|
46
|
+
"title": title,
|
|
47
|
+
"content": full_content,
|
|
48
|
+
"domain": urlparse(url).netloc,
|
|
49
|
+
"url": url,
|
|
50
|
+
}
|
|
51
|
+
except Exception as e:
|
|
52
|
+
logger.error(f"Failed to process DOCX content from {url}: {e}")
|
|
53
|
+
# Fallback or re-raise, depending on desired error handling
|
|
54
|
+
return {
|
|
55
|
+
"title": f"Error Processing DOCX: {urlparse(url).path.split('/')[-1]}",
|
|
56
|
+
"content": f"Failed to extract content from DOCX: {e}",
|
|
57
|
+
"domain": urlparse(url).netloc,
|
|
58
|
+
"url": url,
|
|
59
|
+
}
|
|
15
60
|
|
|
16
61
|
async def url_provider(state: ProcessSourceState):
|
|
17
62
|
"""
|
|
@@ -54,6 +99,13 @@ async def extract_url_bs4(url: str):
|
|
|
54
99
|
async with aiohttp.ClientSession() as session:
|
|
55
100
|
async with session.get(url, headers=headers, timeout=10) as response:
|
|
56
101
|
response.raise_for_status()
|
|
102
|
+
# Check content type for DOCX
|
|
103
|
+
if response.content_type == DOCX_MIME_TYPE:
|
|
104
|
+
logger.debug(f"Detected DOCX content type for {url}")
|
|
105
|
+
docx_bytes = await response.read()
|
|
106
|
+
return await _extract_docx_content(docx_bytes, url)
|
|
107
|
+
|
|
108
|
+
# If not DOCX, proceed as HTML
|
|
57
109
|
html_content = await response.text()
|
|
58
110
|
|
|
59
111
|
soup = BeautifulSoup(html_content, "html.parser")
|
|
@@ -234,15 +234,6 @@ wheels = [
|
|
|
234
234
|
{ url = "https://files.pythonhosted.org/packages/51/bb/bf7aab772a159614954d84aa832c129624ba6c32faa559dfb200a534e50b/bs4-0.0.2-py2.py3-none-any.whl", hash = "sha256:abf8742c0805ef7f662dce4b51cca104cffe52b835238afc169142ab9b3fbccc", size = 1189 },
|
|
235
235
|
]
|
|
236
236
|
|
|
237
|
-
[[package]]
|
|
238
|
-
name = "cachetools"
|
|
239
|
-
version = "5.5.2"
|
|
240
|
-
source = { registry = "https://pypi.org/simple" }
|
|
241
|
-
sdist = { url = "https://files.pythonhosted.org/packages/6c/81/3747dad6b14fa2cf53fcf10548cf5aea6913e96fab41a3c198676f8948a5/cachetools-5.5.2.tar.gz", hash = "sha256:1a661caa9175d26759571b2e19580f9d6393969e5dfca11fdb1f947a23e640d4", size = 28380 }
|
|
242
|
-
wheels = [
|
|
243
|
-
{ url = "https://files.pythonhosted.org/packages/72/76/20fa66124dbe6be5cafeb312ece67de6b61dd91a0247d1ea13db4ebb33c2/cachetools-5.5.2-py3-none-any.whl", hash = "sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a", size = 10080 },
|
|
244
|
-
]
|
|
245
|
-
|
|
246
237
|
[[package]]
|
|
247
238
|
name = "certifi"
|
|
248
239
|
version = "2025.1.31"
|
|
@@ -405,21 +396,19 @@ wheels = [
|
|
|
405
396
|
|
|
406
397
|
[[package]]
|
|
407
398
|
name = "content-core"
|
|
408
|
-
version = "0.
|
|
399
|
+
version = "0.7.0"
|
|
409
400
|
source = { editable = "." }
|
|
410
401
|
dependencies = [
|
|
411
402
|
{ name = "ai-prompter" },
|
|
412
403
|
{ name = "aiohttp" },
|
|
413
404
|
{ name = "bs4" },
|
|
414
405
|
{ name = "dicttoxml" },
|
|
415
|
-
{ name = "esperanto" },
|
|
416
|
-
{ name = "google-genai" },
|
|
406
|
+
{ name = "esperanto", extra = ["openai"] },
|
|
417
407
|
{ name = "jinja2" },
|
|
418
408
|
{ name = "langdetect" },
|
|
419
409
|
{ name = "langgraph" },
|
|
420
410
|
{ name = "loguru" },
|
|
421
411
|
{ name = "moviepy" },
|
|
422
|
-
{ name = "openai" },
|
|
423
412
|
{ name = "openpyxl" },
|
|
424
413
|
{ name = "pandas" },
|
|
425
414
|
{ name = "pymupdf" },
|
|
@@ -443,6 +432,7 @@ docling = [
|
|
|
443
432
|
dev = [
|
|
444
433
|
{ name = "ipykernel" },
|
|
445
434
|
{ name = "ipywidgets" },
|
|
435
|
+
{ name = "openai" },
|
|
446
436
|
{ name = "pyperclip" },
|
|
447
437
|
{ name = "pytest" },
|
|
448
438
|
{ name = "pytest-asyncio" },
|
|
@@ -455,15 +445,13 @@ requires-dist = [
|
|
|
455
445
|
{ name = "asciidoc", marker = "extra == 'docling'" },
|
|
456
446
|
{ name = "bs4", specifier = ">=0.0.2" },
|
|
457
447
|
{ name = "dicttoxml", specifier = ">=1.7.16" },
|
|
458
|
-
{ name = "docling",
|
|
459
|
-
{ name = "esperanto", specifier = ">=1.2.0" },
|
|
460
|
-
{ name = "google-genai", specifier = ">=1.10.0" },
|
|
448
|
+
{ name = "docling", marker = "extra == 'docling'" },
|
|
449
|
+
{ name = "esperanto", extras = ["openai"], specifier = ">=1.2.0" },
|
|
461
450
|
{ name = "jinja2", specifier = ">=3.1.6" },
|
|
462
451
|
{ name = "langdetect", specifier = ">=1.0.9" },
|
|
463
452
|
{ name = "langgraph", specifier = ">=0.3.29" },
|
|
464
453
|
{ name = "loguru", specifier = ">=0.7.3" },
|
|
465
454
|
{ name = "moviepy", specifier = ">=2.1.2" },
|
|
466
|
-
{ name = "openai", specifier = ">=1.73.0" },
|
|
467
455
|
{ name = "openpyxl", specifier = ">=3.1.5" },
|
|
468
456
|
{ name = "pandas", specifier = ">=2.2.3" },
|
|
469
457
|
{ name = "pandas", marker = "extra == 'docling'" },
|
|
@@ -481,6 +469,7 @@ requires-dist = [
|
|
|
481
469
|
dev = [
|
|
482
470
|
{ name = "ipykernel", specifier = ">=4.0.1" },
|
|
483
471
|
{ name = "ipywidgets", specifier = ">=4.0.0" },
|
|
472
|
+
{ name = "openai", specifier = ">=1.78.1" },
|
|
484
473
|
{ name = "pyperclip", specifier = ">=1.9.0" },
|
|
485
474
|
{ name = "pytest", specifier = ">=7.2.0" },
|
|
486
475
|
{ name = "pytest-asyncio", specifier = ">=0.21.0" },
|
|
@@ -718,6 +707,11 @@ wheels = [
|
|
|
718
707
|
{ url = "https://files.pythonhosted.org/packages/f9/79/5d74f2b8f9d73da83bfe80a39ff11505a2a285c03a869750db98cd89ddfd/esperanto-1.2.1-py3-none-any.whl", hash = "sha256:2fa41e5e35c847b1fe58395906d8877035f7e55d6429870d897781f7c9f17c42", size = 57680 },
|
|
719
708
|
]
|
|
720
709
|
|
|
710
|
+
[package.optional-dependencies]
|
|
711
|
+
openai = [
|
|
712
|
+
{ name = "openai" },
|
|
713
|
+
]
|
|
714
|
+
|
|
721
715
|
[[package]]
|
|
722
716
|
name = "et-xmlfile"
|
|
723
717
|
version = "2.0.0"
|
|
@@ -841,38 +835,6 @@ wheels = [
|
|
|
841
835
|
{ url = "https://files.pythonhosted.org/packages/44/4b/e0cfc1a6f17e990f3e64b7d941ddc4acdc7b19d6edd51abf495f32b1a9e4/fsspec-2025.3.2-py3-none-any.whl", hash = "sha256:2daf8dc3d1dfa65b6aa37748d112773a7a08416f6c70d96b264c96476ecaf711", size = 194435 },
|
|
842
836
|
]
|
|
843
837
|
|
|
844
|
-
[[package]]
|
|
845
|
-
name = "google-auth"
|
|
846
|
-
version = "2.39.0"
|
|
847
|
-
source = { registry = "https://pypi.org/simple" }
|
|
848
|
-
dependencies = [
|
|
849
|
-
{ name = "cachetools" },
|
|
850
|
-
{ name = "pyasn1-modules" },
|
|
851
|
-
{ name = "rsa" },
|
|
852
|
-
]
|
|
853
|
-
sdist = { url = "https://files.pythonhosted.org/packages/cb/8e/8f45c9a32f73e786e954b8f9761c61422955d23c45d1e8c347f9b4b59e8e/google_auth-2.39.0.tar.gz", hash = "sha256:73222d43cdc35a3aeacbfdcaf73142a97839f10de930550d89ebfe1d0a00cde7", size = 274834 }
|
|
854
|
-
wheels = [
|
|
855
|
-
{ url = "https://files.pythonhosted.org/packages/ce/12/ad37a1ef86006d0a0117fc06a4a00bd461c775356b534b425f00dde208ea/google_auth-2.39.0-py2.py3-none-any.whl", hash = "sha256:0150b6711e97fb9f52fe599f55648950cc4540015565d8fbb31be2ad6e1548a2", size = 212319 },
|
|
856
|
-
]
|
|
857
|
-
|
|
858
|
-
[[package]]
|
|
859
|
-
name = "google-genai"
|
|
860
|
-
version = "1.10.0"
|
|
861
|
-
source = { registry = "https://pypi.org/simple" }
|
|
862
|
-
dependencies = [
|
|
863
|
-
{ name = "anyio" },
|
|
864
|
-
{ name = "google-auth" },
|
|
865
|
-
{ name = "httpx" },
|
|
866
|
-
{ name = "pydantic" },
|
|
867
|
-
{ name = "requests" },
|
|
868
|
-
{ name = "typing-extensions" },
|
|
869
|
-
{ name = "websockets" },
|
|
870
|
-
]
|
|
871
|
-
sdist = { url = "https://files.pythonhosted.org/packages/0e/7a/224e2f70c835202042969685ee3da00a6475508d1b64f0f1e90144f96beb/google_genai-1.10.0.tar.gz", hash = "sha256:f59423e0f155dc66b7792c8a0e6724c75c72dc699d1eb7907d4d0006d4f6186f", size = 156355 }
|
|
872
|
-
wheels = [
|
|
873
|
-
{ url = "https://files.pythonhosted.org/packages/ba/a0/56839a2e202d79c773edd1c1db124da8eb2a7b657267a888080b678d0369/google_genai-1.10.0-py3-none-any.whl", hash = "sha256:41b105a2fcf8a027fc45cc16694cd559b8cd1272eab7345ad58cfa2c353bf34f", size = 154705 },
|
|
874
|
-
]
|
|
875
|
-
|
|
876
838
|
[[package]]
|
|
877
839
|
name = "h11"
|
|
878
840
|
version = "0.14.0"
|
|
@@ -1983,7 +1945,7 @@ wheels = [
|
|
|
1983
1945
|
|
|
1984
1946
|
[[package]]
|
|
1985
1947
|
name = "openai"
|
|
1986
|
-
version = "1.
|
|
1948
|
+
version = "1.78.1"
|
|
1987
1949
|
source = { registry = "https://pypi.org/simple" }
|
|
1988
1950
|
dependencies = [
|
|
1989
1951
|
{ name = "anyio" },
|
|
@@ -1995,9 +1957,9 @@ dependencies = [
|
|
|
1995
1957
|
{ name = "tqdm" },
|
|
1996
1958
|
{ name = "typing-extensions" },
|
|
1997
1959
|
]
|
|
1998
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
1960
|
+
sdist = { url = "https://files.pythonhosted.org/packages/a4/3f/4e5e7b0548a15eabc4a755c93cd5f9564887e3d2fd45b6ff531352e5859d/openai-1.78.1.tar.gz", hash = "sha256:8b26b364531b100df1b961d03560042e5f5be11301d7d49a6cd1a2b9af824dca", size = 442985 }
|
|
1999
1961
|
wheels = [
|
|
2000
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
1962
|
+
{ url = "https://files.pythonhosted.org/packages/3c/4c/3889bc332a6c743751eb78a4bada5761e50a8a847ff0e46c1bd23ce12362/openai-1.78.1-py3-none-any.whl", hash = "sha256:7368bf147ca499804cc408fe68cdb6866a060f38dec961bbc97b04f9d917907e", size = 680917 },
|
|
2001
1963
|
]
|
|
2002
1964
|
|
|
2003
1965
|
[[package]]
|
|
@@ -2443,27 +2405,6 @@ wheels = [
|
|
|
2443
2405
|
{ url = "https://files.pythonhosted.org/packages/8e/37/efad0257dc6e593a18957422533ff0f87ede7c9c6ea010a2177d738fb82f/pure_eval-0.2.3-py3-none-any.whl", hash = "sha256:1db8e35b67b3d218d818ae653e27f06c3aa420901fa7b081ca98cbedc874e0d0", size = 11842 },
|
|
2444
2406
|
]
|
|
2445
2407
|
|
|
2446
|
-
[[package]]
|
|
2447
|
-
name = "pyasn1"
|
|
2448
|
-
version = "0.6.1"
|
|
2449
|
-
source = { registry = "https://pypi.org/simple" }
|
|
2450
|
-
sdist = { url = "https://files.pythonhosted.org/packages/ba/e9/01f1a64245b89f039897cb0130016d79f77d52669aae6ee7b159a6c4c018/pyasn1-0.6.1.tar.gz", hash = "sha256:6f580d2bdd84365380830acf45550f2511469f673cb4a5ae3857a3170128b034", size = 145322 }
|
|
2451
|
-
wheels = [
|
|
2452
|
-
{ url = "https://files.pythonhosted.org/packages/c8/f1/d6a797abb14f6283c0ddff96bbdd46937f64122b8c925cab503dd37f8214/pyasn1-0.6.1-py3-none-any.whl", hash = "sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629", size = 83135 },
|
|
2453
|
-
]
|
|
2454
|
-
|
|
2455
|
-
[[package]]
|
|
2456
|
-
name = "pyasn1-modules"
|
|
2457
|
-
version = "0.4.2"
|
|
2458
|
-
source = { registry = "https://pypi.org/simple" }
|
|
2459
|
-
dependencies = [
|
|
2460
|
-
{ name = "pyasn1" },
|
|
2461
|
-
]
|
|
2462
|
-
sdist = { url = "https://files.pythonhosted.org/packages/e9/e6/78ebbb10a8c8e4b61a59249394a4a594c1a7af95593dc933a349c8d00964/pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6", size = 307892 }
|
|
2463
|
-
wheels = [
|
|
2464
|
-
{ url = "https://files.pythonhosted.org/packages/47/8d/d529b5d697919ba8c11ad626e835d4039be708a35b0d22de83a269a6682c/pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a", size = 181259 },
|
|
2465
|
-
]
|
|
2466
|
-
|
|
2467
2408
|
[[package]]
|
|
2468
2409
|
name = "pyclipper"
|
|
2469
2410
|
version = "1.3.0.post6"
|
|
@@ -3205,18 +3146,6 @@ wheels = [
|
|
|
3205
3146
|
{ url = "https://files.pythonhosted.org/packages/b3/14/c492b9c7d5dd133e13f211ddea6bb9870f99e4f73932f11aa00bc09a9be9/rpds_py-0.24.0-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:6a727fd083009bc83eb83d6950f0c32b3c94c8b80a9b667c87f4bd1274ca30ba", size = 560885 },
|
|
3206
3147
|
]
|
|
3207
3148
|
|
|
3208
|
-
[[package]]
|
|
3209
|
-
name = "rsa"
|
|
3210
|
-
version = "4.9"
|
|
3211
|
-
source = { registry = "https://pypi.org/simple" }
|
|
3212
|
-
dependencies = [
|
|
3213
|
-
{ name = "pyasn1" },
|
|
3214
|
-
]
|
|
3215
|
-
sdist = { url = "https://files.pythonhosted.org/packages/aa/65/7d973b89c4d2351d7fb232c2e452547ddfa243e93131e7cfa766da627b52/rsa-4.9.tar.gz", hash = "sha256:e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21", size = 29711 }
|
|
3216
|
-
wheels = [
|
|
3217
|
-
{ url = "https://files.pythonhosted.org/packages/49/97/fa78e3d2f65c02c8e1268b9aba606569fe97f6c8f7c2d74394553347c145/rsa-4.9-py3-none-any.whl", hash = "sha256:90260d9058e514786967344d0ef75fa8727eed8a7d2e43ce9f4bcf1b536174f7", size = 34315 },
|
|
3218
|
-
]
|
|
3219
|
-
|
|
3220
3149
|
[[package]]
|
|
3221
3150
|
name = "rtree"
|
|
3222
3151
|
version = "1.4.0"
|
|
@@ -3901,65 +3830,6 @@ wheels = [
|
|
|
3901
3830
|
{ url = "https://files.pythonhosted.org/packages/fd/84/fd2ba7aafacbad3c4201d395674fc6348826569da3c0937e75505ead3528/wcwidth-0.2.13-py2.py3-none-any.whl", hash = "sha256:3da69048e4540d84af32131829ff948f1e022c1c6bdb8d6102117aac784f6859", size = 34166 },
|
|
3902
3831
|
]
|
|
3903
3832
|
|
|
3904
|
-
[[package]]
|
|
3905
|
-
name = "websockets"
|
|
3906
|
-
version = "15.0.1"
|
|
3907
|
-
source = { registry = "https://pypi.org/simple" }
|
|
3908
|
-
sdist = { url = "https://files.pythonhosted.org/packages/21/e6/26d09fab466b7ca9c7737474c52be4f76a40301b08362eb2dbc19dcc16c1/websockets-15.0.1.tar.gz", hash = "sha256:82544de02076bafba038ce055ee6412d68da13ab47f0c60cab827346de828dee", size = 177016 }
|
|
3909
|
-
wheels = [
|
|
3910
|
-
{ url = "https://files.pythonhosted.org/packages/1e/da/6462a9f510c0c49837bbc9345aca92d767a56c1fb2939e1579df1e1cdcf7/websockets-15.0.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d63efaa0cd96cf0c5fe4d581521d9fa87744540d4bc999ae6e08595a1014b45b", size = 175423 },
|
|
3911
|
-
{ url = "https://files.pythonhosted.org/packages/1c/9f/9d11c1a4eb046a9e106483b9ff69bce7ac880443f00e5ce64261b47b07e7/websockets-15.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ac60e3b188ec7574cb761b08d50fcedf9d77f1530352db4eef1707fe9dee7205", size = 173080 },
|
|
3912
|
-
{ url = "https://files.pythonhosted.org/packages/d5/4f/b462242432d93ea45f297b6179c7333dd0402b855a912a04e7fc61c0d71f/websockets-15.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:5756779642579d902eed757b21b0164cd6fe338506a8083eb58af5c372e39d9a", size = 173329 },
|
|
3913
|
-
{ url = "https://files.pythonhosted.org/packages/6e/0c/6afa1f4644d7ed50284ac59cc70ef8abd44ccf7d45850d989ea7310538d0/websockets-15.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0fdfe3e2a29e4db3659dbd5bbf04560cea53dd9610273917799f1cde46aa725e", size = 182312 },
|
|
3914
|
-
{ url = "https://files.pythonhosted.org/packages/dd/d4/ffc8bd1350b229ca7a4db2a3e1c482cf87cea1baccd0ef3e72bc720caeec/websockets-15.0.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4c2529b320eb9e35af0fa3016c187dffb84a3ecc572bcee7c3ce302bfeba52bf", size = 181319 },
|
|
3915
|
-
{ url = "https://files.pythonhosted.org/packages/97/3a/5323a6bb94917af13bbb34009fac01e55c51dfde354f63692bf2533ffbc2/websockets-15.0.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ac1e5c9054fe23226fb11e05a6e630837f074174c4c2f0fe442996112a6de4fb", size = 181631 },
|
|
3916
|
-
{ url = "https://files.pythonhosted.org/packages/a6/cc/1aeb0f7cee59ef065724041bb7ed667b6ab1eeffe5141696cccec2687b66/websockets-15.0.1-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:5df592cd503496351d6dc14f7cdad49f268d8e618f80dce0cd5a36b93c3fc08d", size = 182016 },
|
|
3917
|
-
{ url = "https://files.pythonhosted.org/packages/79/f9/c86f8f7af208e4161a7f7e02774e9d0a81c632ae76db2ff22549e1718a51/websockets-15.0.1-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:0a34631031a8f05657e8e90903e656959234f3a04552259458aac0b0f9ae6fd9", size = 181426 },
|
|
3918
|
-
{ url = "https://files.pythonhosted.org/packages/c7/b9/828b0bc6753db905b91df6ae477c0b14a141090df64fb17f8a9d7e3516cf/websockets-15.0.1-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:3d00075aa65772e7ce9e990cab3ff1de702aa09be3940d1dc88d5abf1ab8a09c", size = 181360 },
|
|
3919
|
-
{ url = "https://files.pythonhosted.org/packages/89/fb/250f5533ec468ba6327055b7d98b9df056fb1ce623b8b6aaafb30b55d02e/websockets-15.0.1-cp310-cp310-win32.whl", hash = "sha256:1234d4ef35db82f5446dca8e35a7da7964d02c127b095e172e54397fb6a6c256", size = 176388 },
|
|
3920
|
-
{ url = "https://files.pythonhosted.org/packages/1c/46/aca7082012768bb98e5608f01658ff3ac8437e563eca41cf068bd5849a5e/websockets-15.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:39c1fec2c11dc8d89bba6b2bf1556af381611a173ac2b511cf7231622058af41", size = 176830 },
|
|
3921
|
-
{ url = "https://files.pythonhosted.org/packages/9f/32/18fcd5919c293a398db67443acd33fde142f283853076049824fc58e6f75/websockets-15.0.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:823c248b690b2fd9303ba00c4f66cd5e2d8c3ba4aa968b2779be9532a4dad431", size = 175423 },
|
|
3922
|
-
{ url = "https://files.pythonhosted.org/packages/76/70/ba1ad96b07869275ef42e2ce21f07a5b0148936688c2baf7e4a1f60d5058/websockets-15.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678999709e68425ae2593acf2e3ebcbcf2e69885a5ee78f9eb80e6e371f1bf57", size = 173082 },
|
|
3923
|
-
{ url = "https://files.pythonhosted.org/packages/86/f2/10b55821dd40eb696ce4704a87d57774696f9451108cff0d2824c97e0f97/websockets-15.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d50fd1ee42388dcfb2b3676132c78116490976f1300da28eb629272d5d93e905", size = 173330 },
|
|
3924
|
-
{ url = "https://files.pythonhosted.org/packages/a5/90/1c37ae8b8a113d3daf1065222b6af61cc44102da95388ac0018fcb7d93d9/websockets-15.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d99e5546bf73dbad5bf3547174cd6cb8ba7273062a23808ffea025ecb1cf8562", size = 182878 },
|
|
3925
|
-
{ url = "https://files.pythonhosted.org/packages/8e/8d/96e8e288b2a41dffafb78e8904ea7367ee4f891dafc2ab8d87e2124cb3d3/websockets-15.0.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:66dd88c918e3287efc22409d426c8f729688d89a0c587c88971a0faa2c2f3792", size = 181883 },
|
|
3926
|
-
{ url = "https://files.pythonhosted.org/packages/93/1f/5d6dbf551766308f6f50f8baf8e9860be6182911e8106da7a7f73785f4c4/websockets-15.0.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8dd8327c795b3e3f219760fa603dcae1dcc148172290a8ab15158cf85a953413", size = 182252 },
|
|
3927
|
-
{ url = "https://files.pythonhosted.org/packages/d4/78/2d4fed9123e6620cbf1706c0de8a1632e1a28e7774d94346d7de1bba2ca3/websockets-15.0.1-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:8fdc51055e6ff4adeb88d58a11042ec9a5eae317a0a53d12c062c8a8865909e8", size = 182521 },
|
|
3928
|
-
{ url = "https://files.pythonhosted.org/packages/e7/3b/66d4c1b444dd1a9823c4a81f50231b921bab54eee2f69e70319b4e21f1ca/websockets-15.0.1-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:693f0192126df6c2327cce3baa7c06f2a117575e32ab2308f7f8216c29d9e2e3", size = 181958 },
|
|
3929
|
-
{ url = "https://files.pythonhosted.org/packages/08/ff/e9eed2ee5fed6f76fdd6032ca5cd38c57ca9661430bb3d5fb2872dc8703c/websockets-15.0.1-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:54479983bd5fb469c38f2f5c7e3a24f9a4e70594cd68cd1fa6b9340dadaff7cf", size = 181918 },
|
|
3930
|
-
{ url = "https://files.pythonhosted.org/packages/d8/75/994634a49b7e12532be6a42103597b71098fd25900f7437d6055ed39930a/websockets-15.0.1-cp311-cp311-win32.whl", hash = "sha256:16b6c1b3e57799b9d38427dda63edcbe4926352c47cf88588c0be4ace18dac85", size = 176388 },
|
|
3931
|
-
{ url = "https://files.pythonhosted.org/packages/98/93/e36c73f78400a65f5e236cd376713c34182e6663f6889cd45a4a04d8f203/websockets-15.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:27ccee0071a0e75d22cb35849b1db43f2ecd3e161041ac1ee9d2352ddf72f065", size = 176828 },
|
|
3932
|
-
{ url = "https://files.pythonhosted.org/packages/51/6b/4545a0d843594f5d0771e86463606a3988b5a09ca5123136f8a76580dd63/websockets-15.0.1-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:3e90baa811a5d73f3ca0bcbf32064d663ed81318ab225ee4f427ad4e26e5aff3", size = 175437 },
|
|
3933
|
-
{ url = "https://files.pythonhosted.org/packages/f4/71/809a0f5f6a06522af902e0f2ea2757f71ead94610010cf570ab5c98e99ed/websockets-15.0.1-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:592f1a9fe869c778694f0aa806ba0374e97648ab57936f092fd9d87f8bc03665", size = 173096 },
|
|
3934
|
-
{ url = "https://files.pythonhosted.org/packages/3d/69/1a681dd6f02180916f116894181eab8b2e25b31e484c5d0eae637ec01f7c/websockets-15.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0701bc3cfcb9164d04a14b149fd74be7347a530ad3bbf15ab2c678a2cd3dd9a2", size = 173332 },
|
|
3935
|
-
{ url = "https://files.pythonhosted.org/packages/a6/02/0073b3952f5bce97eafbb35757f8d0d54812b6174ed8dd952aa08429bcc3/websockets-15.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e8b56bdcdb4505c8078cb6c7157d9811a85790f2f2b3632c7d1462ab5783d215", size = 183152 },
|
|
3936
|
-
{ url = "https://files.pythonhosted.org/packages/74/45/c205c8480eafd114b428284840da0b1be9ffd0e4f87338dc95dc6ff961a1/websockets-15.0.1-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0af68c55afbd5f07986df82831c7bff04846928ea8d1fd7f30052638788bc9b5", size = 182096 },
|
|
3937
|
-
{ url = "https://files.pythonhosted.org/packages/14/8f/aa61f528fba38578ec553c145857a181384c72b98156f858ca5c8e82d9d3/websockets-15.0.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:64dee438fed052b52e4f98f76c5790513235efaa1ef7f3f2192c392cd7c91b65", size = 182523 },
|
|
3938
|
-
{ url = "https://files.pythonhosted.org/packages/ec/6d/0267396610add5bc0d0d3e77f546d4cd287200804fe02323797de77dbce9/websockets-15.0.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d5f6b181bb38171a8ad1d6aa58a67a6aa9d4b38d0f8c5f496b9e42561dfc62fe", size = 182790 },
|
|
3939
|
-
{ url = "https://files.pythonhosted.org/packages/02/05/c68c5adbf679cf610ae2f74a9b871ae84564462955d991178f95a1ddb7dd/websockets-15.0.1-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5d54b09eba2bada6011aea5375542a157637b91029687eb4fdb2dab11059c1b4", size = 182165 },
|
|
3940
|
-
{ url = "https://files.pythonhosted.org/packages/29/93/bb672df7b2f5faac89761cb5fa34f5cec45a4026c383a4b5761c6cea5c16/websockets-15.0.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3be571a8b5afed347da347bfcf27ba12b069d9d7f42cb8c7028b5e98bbb12597", size = 182160 },
|
|
3941
|
-
{ url = "https://files.pythonhosted.org/packages/ff/83/de1f7709376dc3ca9b7eeb4b9a07b4526b14876b6d372a4dc62312bebee0/websockets-15.0.1-cp312-cp312-win32.whl", hash = "sha256:c338ffa0520bdb12fbc527265235639fb76e7bc7faafbb93f6ba80d9c06578a9", size = 176395 },
|
|
3942
|
-
{ url = "https://files.pythonhosted.org/packages/7d/71/abf2ebc3bbfa40f391ce1428c7168fb20582d0ff57019b69ea20fa698043/websockets-15.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:fcd5cf9e305d7b8338754470cf69cf81f420459dbae8a3b40cee57417f4614a7", size = 176841 },
|
|
3943
|
-
{ url = "https://files.pythonhosted.org/packages/cb/9f/51f0cf64471a9d2b4d0fc6c534f323b664e7095640c34562f5182e5a7195/websockets-15.0.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ee443ef070bb3b6ed74514f5efaa37a252af57c90eb33b956d35c8e9c10a1931", size = 175440 },
|
|
3944
|
-
{ url = "https://files.pythonhosted.org/packages/8a/05/aa116ec9943c718905997412c5989f7ed671bc0188ee2ba89520e8765d7b/websockets-15.0.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5a939de6b7b4e18ca683218320fc67ea886038265fd1ed30173f5ce3f8e85675", size = 173098 },
|
|
3945
|
-
{ url = "https://files.pythonhosted.org/packages/ff/0b/33cef55ff24f2d92924923c99926dcce78e7bd922d649467f0eda8368923/websockets-15.0.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:746ee8dba912cd6fc889a8147168991d50ed70447bf18bcda7039f7d2e3d9151", size = 173329 },
|
|
3946
|
-
{ url = "https://files.pythonhosted.org/packages/31/1d/063b25dcc01faa8fada1469bdf769de3768b7044eac9d41f734fd7b6ad6d/websockets-15.0.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:595b6c3969023ecf9041b2936ac3827e4623bfa3ccf007575f04c5a6aa318c22", size = 183111 },
|
|
3947
|
-
{ url = "https://files.pythonhosted.org/packages/93/53/9a87ee494a51bf63e4ec9241c1ccc4f7c2f45fff85d5bde2ff74fcb68b9e/websockets-15.0.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3c714d2fc58b5ca3e285461a4cc0c9a66bd0e24c5da9911e30158286c9b5be7f", size = 182054 },
|
|
3948
|
-
{ url = "https://files.pythonhosted.org/packages/ff/b2/83a6ddf56cdcbad4e3d841fcc55d6ba7d19aeb89c50f24dd7e859ec0805f/websockets-15.0.1-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0f3c1e2ab208db911594ae5b4f79addeb3501604a165019dd221c0bdcabe4db8", size = 182496 },
|
|
3949
|
-
{ url = "https://files.pythonhosted.org/packages/98/41/e7038944ed0abf34c45aa4635ba28136f06052e08fc2168520bb8b25149f/websockets-15.0.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:229cf1d3ca6c1804400b0a9790dc66528e08a6a1feec0d5040e8b9eb14422375", size = 182829 },
|
|
3950
|
-
{ url = "https://files.pythonhosted.org/packages/e0/17/de15b6158680c7623c6ef0db361da965ab25d813ae54fcfeae2e5b9ef910/websockets-15.0.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:756c56e867a90fb00177d530dca4b097dd753cde348448a1012ed6c5131f8b7d", size = 182217 },
|
|
3951
|
-
{ url = "https://files.pythonhosted.org/packages/33/2b/1f168cb6041853eef0362fb9554c3824367c5560cbdaad89ac40f8c2edfc/websockets-15.0.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:558d023b3df0bffe50a04e710bc87742de35060580a293c2a984299ed83bc4e4", size = 182195 },
|
|
3952
|
-
{ url = "https://files.pythonhosted.org/packages/86/eb/20b6cdf273913d0ad05a6a14aed4b9a85591c18a987a3d47f20fa13dcc47/websockets-15.0.1-cp313-cp313-win32.whl", hash = "sha256:ba9e56e8ceeeedb2e080147ba85ffcd5cd0711b89576b83784d8605a7df455fa", size = 176393 },
|
|
3953
|
-
{ url = "https://files.pythonhosted.org/packages/1b/6c/c65773d6cab416a64d191d6ee8a8b1c68a09970ea6909d16965d26bfed1e/websockets-15.0.1-cp313-cp313-win_amd64.whl", hash = "sha256:e09473f095a819042ecb2ab9465aee615bd9c2028e4ef7d933600a8401c79561", size = 176837 },
|
|
3954
|
-
{ url = "https://files.pythonhosted.org/packages/02/9e/d40f779fa16f74d3468357197af8d6ad07e7c5a27ea1ca74ceb38986f77a/websockets-15.0.1-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:0c9e74d766f2818bb95f84c25be4dea09841ac0f734d1966f415e4edfc4ef1c3", size = 173109 },
|
|
3955
|
-
{ url = "https://files.pythonhosted.org/packages/bc/cd/5b887b8585a593073fd92f7c23ecd3985cd2c3175025a91b0d69b0551372/websockets-15.0.1-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:1009ee0c7739c08a0cd59de430d6de452a55e42d6b522de7aa15e6f67db0b8e1", size = 173343 },
|
|
3956
|
-
{ url = "https://files.pythonhosted.org/packages/fe/ae/d34f7556890341e900a95acf4886833646306269f899d58ad62f588bf410/websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76d1f20b1c7a2fa82367e04982e708723ba0e7b8d43aa643d3dcd404d74f1475", size = 174599 },
|
|
3957
|
-
{ url = "https://files.pythonhosted.org/packages/71/e6/5fd43993a87db364ec60fc1d608273a1a465c0caba69176dd160e197ce42/websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f29d80eb9a9263b8d109135351caf568cc3f80b9928bccde535c235de55c22d9", size = 174207 },
|
|
3958
|
-
{ url = "https://files.pythonhosted.org/packages/2b/fb/c492d6daa5ec067c2988ac80c61359ace5c4c674c532985ac5a123436cec/websockets-15.0.1-pp310-pypy310_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b359ed09954d7c18bbc1680f380c7301f92c60bf924171629c5db97febb12f04", size = 174155 },
|
|
3959
|
-
{ url = "https://files.pythonhosted.org/packages/68/a1/dcb68430b1d00b698ae7a7e0194433bce4f07ded185f0ee5fb21e2a2e91e/websockets-15.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:cad21560da69f4ce7658ca2cb83138fb4cf695a2ba3e475e0559e05991aa8122", size = 176884 },
|
|
3960
|
-
{ url = "https://files.pythonhosted.org/packages/fa/a8/5b41e0da817d64113292ab1f8247140aac61cbf6cfd085d6a0fa77f4984f/websockets-15.0.1-py3-none-any.whl", hash = "sha256:f7a866fbc1e97b5c617ee4116daaa09b722101d4a3c170c787450ba409f9736f", size = 169743 },
|
|
3961
|
-
]
|
|
3962
|
-
|
|
3963
3833
|
[[package]]
|
|
3964
3834
|
name = "widgetsnbextension"
|
|
3965
3835
|
version = "4.0.14"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|