clarity-api-sdk-python 0.3.33__tar.gz → 0.3.35__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.
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/PKG-INFO +4 -3
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/pyproject.toml +7 -3
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/clarity_api_sdk_python.egg-info/PKG-INFO +4 -3
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/clarity_api_sdk_python.egg-info/SOURCES.txt +10 -1
- clarity_api_sdk_python-0.3.35/src/clarity_api_sdk_python.egg-info/entry_points.txt +2 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/clarity_api_sdk_python.egg-info/requires.txt +3 -2
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/api/async_client.py +18 -14
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/api/client.py +18 -14
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/api/sonar_wiz_api.py +302 -68
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/api/sonar_wiz_async_api.py +272 -7
- clarity_api_sdk_python-0.3.35/src/cti/cli/__init__.py +1 -0
- clarity_api_sdk_python-0.3.35/src/cti/cli/__main__.py +20 -0
- clarity_api_sdk_python-0.3.35/src/cti/cli/client.py +45 -0
- clarity_api_sdk_python-0.3.35/src/cti/cli/main.py +458 -0
- clarity_api_sdk_python-0.3.35/src/cti/model/processing_job.py +117 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/raw_file_device_mapping.py +12 -3
- clarity_api_sdk_python-0.3.35/tests/test_cli.py +497 -0
- clarity_api_sdk_python-0.3.35/tests/test_sdk_async_methods.py +194 -0
- clarity_api_sdk_python-0.3.35/tests/test_sdk_methods.py +242 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/README.md +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/setup.cfg +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/clarity_api_sdk_python.egg-info/dependency_links.txt +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/clarity_api_sdk_python.egg-info/top_level.txt +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/__init__.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/api/__init__.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/api/session.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/logger/__init__.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/logger/logger.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/main.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/main_api.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/__init__.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/altitude_source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/attitude_source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/deferred_object_deletion.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/depth_source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/device.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/device_type.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/final_product.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/hierarchy.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/layback_algorithm.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/layback_source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/layback_type.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/organization.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/platform.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/platform_type.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/position_source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/processing_log.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/project.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/projection_option.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/raw_file.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/raw_file_configuration.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/raw_file_state.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/s3.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/sidescan_ping_source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/source.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/survey.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/target.py +0 -0
- {clarity_api_sdk_python-0.3.33 → clarity_api_sdk_python-0.3.35}/src/cti/model/tow_system.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: clarity-api-sdk-python
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.35
|
|
4
4
|
Summary: A Python SDK to connect to the CTI Clarity API server.
|
|
5
5
|
Author-email: "Chesapeake Technology Inc." <support@chesapeaketech.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/chesapeake-tech/clarity-api-sdk-python
|
|
@@ -15,13 +15,14 @@ Requires-Dist: h2
|
|
|
15
15
|
Requires-Dist: httpx_auth>=0.23.1
|
|
16
16
|
Requires-Dist: httpx-retries>=0.4.5
|
|
17
17
|
Requires-Dist: pydantic==2.12.3
|
|
18
|
-
Requires-Dist: structlog
|
|
18
|
+
Requires-Dist: structlog==25.4.0
|
|
19
|
+
Requires-Dist: typer>=0.15
|
|
19
20
|
Provides-Extra: dev
|
|
20
21
|
Requires-Dist: black==25.9.0; extra == "dev"
|
|
21
22
|
Requires-Dist: build==1.3.0; extra == "dev"
|
|
22
23
|
Requires-Dist: mypy==1.18.2; extra == "dev"
|
|
23
24
|
Requires-Dist: pre-commit==4.3.0; extra == "dev"
|
|
24
|
-
Requires-Dist: pylint==
|
|
25
|
+
Requires-Dist: pylint==4.0.5; extra == "dev"
|
|
25
26
|
Requires-Dist: pytest==8.4.2; extra == "dev"
|
|
26
27
|
Requires-Dist: pytest-asyncio==1.3.0; extra == "dev"
|
|
27
28
|
Requires-Dist: pytest-md==0.2.0; extra == "dev"
|
|
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
|
|
|
5
5
|
|
|
6
6
|
[project]
|
|
7
7
|
name = "clarity-api-sdk-python"
|
|
8
|
-
version = "0.3.
|
|
8
|
+
version = "0.3.35"
|
|
9
9
|
authors = [
|
|
10
10
|
{ name="Chesapeake Technology Inc.", email="support@chesapeaketech.com" },
|
|
11
11
|
]
|
|
@@ -24,7 +24,8 @@ dependencies = [
|
|
|
24
24
|
"httpx_auth>=0.23.1",
|
|
25
25
|
"httpx-retries>=0.4.5",
|
|
26
26
|
"pydantic==2.12.3",
|
|
27
|
-
"structlog",
|
|
27
|
+
"structlog==25.4.0",
|
|
28
|
+
"typer>=0.15",
|
|
28
29
|
]
|
|
29
30
|
|
|
30
31
|
[project.optional-dependencies]
|
|
@@ -33,7 +34,7 @@ dev = [
|
|
|
33
34
|
"build==1.3.0",
|
|
34
35
|
"mypy==1.18.2",
|
|
35
36
|
"pre-commit==4.3.0",
|
|
36
|
-
"pylint==
|
|
37
|
+
"pylint==4.0.5",
|
|
37
38
|
"pytest==8.4.2",
|
|
38
39
|
"pytest-asyncio==1.3.0",
|
|
39
40
|
"pytest-md==0.2.0",
|
|
@@ -43,6 +44,9 @@ dev = [
|
|
|
43
44
|
brotli = ["httpx[brotli]>=0.28.1"]
|
|
44
45
|
http2 = ["httpx[http2]>=0.28.1"]
|
|
45
46
|
|
|
47
|
+
[project.scripts]
|
|
48
|
+
ftm = "cti.cli.__main__:main"
|
|
49
|
+
|
|
46
50
|
[project.urls]
|
|
47
51
|
"Homepage" = "https://github.com/chesapeake-tech/clarity-api-sdk-python"
|
|
48
52
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: clarity-api-sdk-python
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.35
|
|
4
4
|
Summary: A Python SDK to connect to the CTI Clarity API server.
|
|
5
5
|
Author-email: "Chesapeake Technology Inc." <support@chesapeaketech.com>
|
|
6
6
|
Project-URL: Homepage, https://github.com/chesapeake-tech/clarity-api-sdk-python
|
|
@@ -15,13 +15,14 @@ Requires-Dist: h2
|
|
|
15
15
|
Requires-Dist: httpx_auth>=0.23.1
|
|
16
16
|
Requires-Dist: httpx-retries>=0.4.5
|
|
17
17
|
Requires-Dist: pydantic==2.12.3
|
|
18
|
-
Requires-Dist: structlog
|
|
18
|
+
Requires-Dist: structlog==25.4.0
|
|
19
|
+
Requires-Dist: typer>=0.15
|
|
19
20
|
Provides-Extra: dev
|
|
20
21
|
Requires-Dist: black==25.9.0; extra == "dev"
|
|
21
22
|
Requires-Dist: build==1.3.0; extra == "dev"
|
|
22
23
|
Requires-Dist: mypy==1.18.2; extra == "dev"
|
|
23
24
|
Requires-Dist: pre-commit==4.3.0; extra == "dev"
|
|
24
|
-
Requires-Dist: pylint==
|
|
25
|
+
Requires-Dist: pylint==4.0.5; extra == "dev"
|
|
25
26
|
Requires-Dist: pytest==8.4.2; extra == "dev"
|
|
26
27
|
Requires-Dist: pytest-asyncio==1.3.0; extra == "dev"
|
|
27
28
|
Requires-Dist: pytest-md==0.2.0; extra == "dev"
|
|
@@ -3,6 +3,7 @@ pyproject.toml
|
|
|
3
3
|
src/clarity_api_sdk_python.egg-info/PKG-INFO
|
|
4
4
|
src/clarity_api_sdk_python.egg-info/SOURCES.txt
|
|
5
5
|
src/clarity_api_sdk_python.egg-info/dependency_links.txt
|
|
6
|
+
src/clarity_api_sdk_python.egg-info/entry_points.txt
|
|
6
7
|
src/clarity_api_sdk_python.egg-info/requires.txt
|
|
7
8
|
src/clarity_api_sdk_python.egg-info/top_level.txt
|
|
8
9
|
src/cti/__init__.py
|
|
@@ -14,6 +15,10 @@ src/cti/api/client.py
|
|
|
14
15
|
src/cti/api/session.py
|
|
15
16
|
src/cti/api/sonar_wiz_api.py
|
|
16
17
|
src/cti/api/sonar_wiz_async_api.py
|
|
18
|
+
src/cti/cli/__init__.py
|
|
19
|
+
src/cti/cli/__main__.py
|
|
20
|
+
src/cti/cli/client.py
|
|
21
|
+
src/cti/cli/main.py
|
|
17
22
|
src/cti/logger/__init__.py
|
|
18
23
|
src/cti/logger/logger.py
|
|
19
24
|
src/cti/model/__init__.py
|
|
@@ -32,6 +37,7 @@ src/cti/model/organization.py
|
|
|
32
37
|
src/cti/model/platform.py
|
|
33
38
|
src/cti/model/platform_type.py
|
|
34
39
|
src/cti/model/position_source.py
|
|
40
|
+
src/cti/model/processing_job.py
|
|
35
41
|
src/cti/model/processing_log.py
|
|
36
42
|
src/cti/model/project.py
|
|
37
43
|
src/cti/model/projection_option.py
|
|
@@ -44,4 +50,7 @@ src/cti/model/sidescan_ping_source.py
|
|
|
44
50
|
src/cti/model/source.py
|
|
45
51
|
src/cti/model/survey.py
|
|
46
52
|
src/cti/model/target.py
|
|
47
|
-
src/cti/model/tow_system.py
|
|
53
|
+
src/cti/model/tow_system.py
|
|
54
|
+
tests/test_cli.py
|
|
55
|
+
tests/test_sdk_async_methods.py
|
|
56
|
+
tests/test_sdk_methods.py
|
|
@@ -4,7 +4,8 @@ h2
|
|
|
4
4
|
httpx_auth>=0.23.1
|
|
5
5
|
httpx-retries>=0.4.5
|
|
6
6
|
pydantic==2.12.3
|
|
7
|
-
structlog
|
|
7
|
+
structlog==25.4.0
|
|
8
|
+
typer>=0.15
|
|
8
9
|
|
|
9
10
|
[brotli]
|
|
10
11
|
httpx[brotli]>=0.28.1
|
|
@@ -14,7 +15,7 @@ black==25.9.0
|
|
|
14
15
|
build==1.3.0
|
|
15
16
|
mypy==1.18.2
|
|
16
17
|
pre-commit==4.3.0
|
|
17
|
-
pylint==
|
|
18
|
+
pylint==4.0.5
|
|
18
19
|
pytest==8.4.2
|
|
19
20
|
pytest-asyncio==1.3.0
|
|
20
21
|
pytest-md==0.2.0
|
|
@@ -25,20 +25,24 @@ class ClarityApiAsyncClient(AsyncClient):
|
|
|
25
25
|
|
|
26
26
|
def __init__(self):
|
|
27
27
|
|
|
28
|
-
#
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
28
|
+
# In local dev mode, skip OAuth2 authentication — the server
|
|
29
|
+
# accepts unauthenticated requests when CLARITY_PLATFORM=local.
|
|
30
|
+
if os.environ.get("CLARITY_PLATFORM") == "local":
|
|
31
|
+
cti_credentials = None
|
|
32
|
+
else:
|
|
33
|
+
cti_credentials = OAuth2ClientCredentials(
|
|
34
|
+
token_url=(
|
|
35
|
+
f'{os.environ.get("KEYCLOAK_SERVER_URL", "missing KEYCLOAK_SERVER_URL")}/realms/'
|
|
36
|
+
f'{os.environ.get("KEYCLOAK_REALM", "missing KEYCLOAK_REALM")}'
|
|
37
|
+
"/protocol/openid-connect/token"
|
|
38
|
+
),
|
|
39
|
+
client_id=os.environ.get(
|
|
40
|
+
"KEYCLOAK_CLIENT_ID", "missing KEYCLOAK_CLIENT_ID"
|
|
41
|
+
),
|
|
42
|
+
client_secret=os.environ.get(
|
|
43
|
+
"KEYCLOAK_CLIENT_SECRET", "missing KEYCLOAK_CLIENT_SECRET"
|
|
44
|
+
),
|
|
45
|
+
)
|
|
42
46
|
|
|
43
47
|
# retry mechanism for API requests
|
|
44
48
|
retry = Retry(total=12, backoff_factor=0.5)
|
|
@@ -22,20 +22,24 @@ class ClarityApiClient(Client):
|
|
|
22
22
|
|
|
23
23
|
def __init__(self):
|
|
24
24
|
|
|
25
|
-
#
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
25
|
+
# In local dev mode, skip OAuth2 authentication — the server
|
|
26
|
+
# accepts unauthenticated requests when CLARITY_PLATFORM=local.
|
|
27
|
+
if os.environ.get("CLARITY_PLATFORM") == "local":
|
|
28
|
+
cti_credentials = None
|
|
29
|
+
else:
|
|
30
|
+
cti_credentials = OAuth2ClientCredentials(
|
|
31
|
+
token_url=(
|
|
32
|
+
f'{os.environ.get("KEYCLOAK_SERVER_URL", "missing KEYCLOAK_SERVER_URL")}/realms/'
|
|
33
|
+
f'{os.environ.get("KEYCLOAK_REALM", "missing KEYCLOAK_REALM")}'
|
|
34
|
+
"/protocol/openid-connect/token"
|
|
35
|
+
),
|
|
36
|
+
client_id=os.environ.get(
|
|
37
|
+
"KEYCLOAK_CLIENT_ID", "missing KEYCLOAK_CLIENT_ID"
|
|
38
|
+
),
|
|
39
|
+
client_secret=os.environ.get(
|
|
40
|
+
"KEYCLOAK_CLIENT_SECRET", "missing KEYCLOAK_CLIENT_SECRET"
|
|
41
|
+
),
|
|
42
|
+
)
|
|
39
43
|
|
|
40
44
|
# retry mechanism for API requests
|
|
41
45
|
retry = Retry(total=12, backoff_factor=0.5)
|