gpp-client 26.7.3.dev7__tar.gz → 26.7.3.dev9__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.
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/PKG-INFO +1 -1
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/client.py +8 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/base.py +3 -1
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/scheduler.py +5 -7
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/__init__.py +8 -2
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/client.py +3 -1
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/custom_fields.py +2476 -27
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/custom_mutations.py +111 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/custom_queries.py +57 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/custom_typing_fields.py +32 -2
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/enums.py +4 -2
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/input_types.py +2035 -10
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/rest/client.py +15 -2
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/rest/utils.py +6 -2
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/.gitignore +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/LICENSE +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/README.md +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/graphql/README.md +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/pyproject.toml +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/__init__.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/__init__.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/cli.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/__init__.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/attachment.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/goats.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/observation.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/program.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/scheduler.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/site_status.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/target.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/commands/workflow_state.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/console.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/output.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/cli/utils.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/constants.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/__init__.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/atom.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/attachment.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/goats.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/observation.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/program.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/site_status.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/target.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/domains/workflow_state.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/environment.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/exceptions.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/async_base_client.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/base_model.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/base_operation.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/clone_observation.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/clone_target.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/create_call_for_proposals.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/create_observation.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/create_program.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/create_target_by_program_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/create_target_by_program_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/create_target_by_proposal_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/delete_call_for_proposals_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/delete_observation_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/delete_observation_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/delete_program_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/delete_target_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/exceptions.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/fragments.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_call_for_proposals.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_calls_for_proposals.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_goats_observations.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_goats_programs.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_observation.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_observation_attachments_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_observation_attachments_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_observation_workflow_state_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_observation_workflow_state_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_observations.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_program_attachments_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_program_attachments_by_proposal_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_program_attachments_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_program_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_program_by_proposal_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_program_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_programs.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_scheduler_all_programs_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_scheduler_programs.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_target_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/get_targets.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/obs_calculation_update.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/observation_edit.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/package_environment.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/ping.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/program_edit.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/restore_call_for_proposals_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/restore_observation_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/restore_observation_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/restore_program_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/restore_target_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/scheduler_observations_updates.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/set_observation_workflow_state.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/target_edit.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_call_for_proposals_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_calls_for_proposals.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_observation_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_observation_by_reference.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_observations.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_program_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_programs.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_target_by_id.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/generated/update_targets.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/logging_utils.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/rest/__init__.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/rest/models.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/settings.py +0 -0
- {gpp_client-26.7.3.dev7 → gpp_client-26.7.3.dev9}/src/gpp_client/urls.py +0 -0
|
@@ -7,6 +7,7 @@ __all__ = ["GPPClient"]
|
|
|
7
7
|
import logging
|
|
8
8
|
from typing import Any, Optional
|
|
9
9
|
|
|
10
|
+
import httpx
|
|
10
11
|
from typing_extensions import Self
|
|
11
12
|
|
|
12
13
|
from gpp_client.domains import (
|
|
@@ -29,6 +30,10 @@ from gpp_client.urls import get_graphql_url, get_ws_url
|
|
|
29
30
|
|
|
30
31
|
logger = logging.getLogger(__name__)
|
|
31
32
|
|
|
33
|
+
# httpx defaults to 5 seconds, which is too aggressive for slow GPP operations
|
|
34
|
+
# such as cloning observations.
|
|
35
|
+
_HTTP_TIMEOUT = httpx.Timeout(60.0, connect=10.0)
|
|
36
|
+
|
|
32
37
|
|
|
33
38
|
class GPPClient:
|
|
34
39
|
"""
|
|
@@ -141,6 +146,9 @@ class GPPClient:
|
|
|
141
146
|
return GraphQLClient(
|
|
142
147
|
url=graphql_url,
|
|
143
148
|
headers=headers,
|
|
149
|
+
# The generated client only applies `headers` when it builds its own
|
|
150
|
+
# http client, so they must be set on the custom one as well.
|
|
151
|
+
http_client=httpx.AsyncClient(headers=headers, timeout=_HTTP_TIMEOUT),
|
|
144
152
|
ws_url=ws_url,
|
|
145
153
|
ws_headers=headers,
|
|
146
154
|
ws_connection_init_payload=headers,
|
|
@@ -67,7 +67,9 @@ class BaseDomain:
|
|
|
67
67
|
The raised exception of the specified type.
|
|
68
68
|
"""
|
|
69
69
|
class_name = self.__class__.__name__
|
|
70
|
-
|
|
70
|
+
# Fall back to the type name so an exception raised without a message
|
|
71
|
+
# does not end up as an empty error.
|
|
72
|
+
message = f"{class_name}: {str(exc) or type(exc).__name__}"
|
|
71
73
|
logger.error(message, exc_info=include_traceback)
|
|
72
74
|
|
|
73
75
|
if include_traceback:
|
|
@@ -269,10 +269,9 @@ class SchedulerDomain(BaseDomain):
|
|
|
269
269
|
|
|
270
270
|
# Get sequence
|
|
271
271
|
if observations:
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
).split("\n")
|
|
272
|
+
atom_digest_response = (
|
|
273
|
+
await self._rest.get_atom_digests(observations)
|
|
274
|
+
).split("\n")
|
|
276
275
|
obs_atoms_mapping = self._parse_atom_digest(atom_digest_response)
|
|
277
276
|
else:
|
|
278
277
|
obs_atoms_mapping = {}
|
|
@@ -332,9 +331,8 @@ class SchedulerDomain(BaseDomain):
|
|
|
332
331
|
aiohttp.ClientError
|
|
333
332
|
For HTTP errors, connection failures, or timeouts.
|
|
334
333
|
"""
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
return parse_visibility_changes(body)
|
|
334
|
+
body = await self._rest.get_visibility_changes(since)
|
|
335
|
+
return parse_visibility_changes(body)
|
|
338
336
|
|
|
339
337
|
async def subscribe_to_calculation_updates(
|
|
340
338
|
self,
|
|
@@ -105,7 +105,6 @@ from .enums import (
|
|
|
105
105
|
ExchangeObservingModeType,
|
|
106
106
|
ExchangePartner,
|
|
107
107
|
ExecutionEventType,
|
|
108
|
-
ExecutionRequirement,
|
|
109
108
|
ExecutionState,
|
|
110
109
|
Existence,
|
|
111
110
|
Flamingos2CustomSlitWidth,
|
|
@@ -197,6 +196,7 @@ from .enums import (
|
|
|
197
196
|
ProgramUserSupportRoleType,
|
|
198
197
|
ProposalStatus,
|
|
199
198
|
QuasarSpectrum,
|
|
199
|
+
SchedulingMode,
|
|
200
200
|
ScienceBand,
|
|
201
201
|
ScienceMode,
|
|
202
202
|
ScienceSubtype,
|
|
@@ -952,6 +952,8 @@ from .input_types import (
|
|
|
952
952
|
Flamingos2ImagingInput,
|
|
953
953
|
Flamingos2LongSlitAcquisitionInput,
|
|
954
954
|
Flamingos2LongSlitInput,
|
|
955
|
+
Flamingos2MosAcquisitionInput,
|
|
956
|
+
Flamingos2MosInput,
|
|
955
957
|
Flamingos2StaticInput,
|
|
956
958
|
Flamingos2StepInput,
|
|
957
959
|
FluxDensity,
|
|
@@ -1107,6 +1109,7 @@ from .input_types import (
|
|
|
1107
1109
|
TargetEditInput,
|
|
1108
1110
|
TargetEnvironmentInput,
|
|
1109
1111
|
TargetPropertiesInput,
|
|
1112
|
+
TargetResolutionInput,
|
|
1110
1113
|
TelescopeConfigAlongSlitInput,
|
|
1111
1114
|
TelescopeConfigGeneratorInput,
|
|
1112
1115
|
TelescopeConfigInput,
|
|
@@ -1570,7 +1573,6 @@ __all__ = [
|
|
|
1570
1573
|
"ExchangePartner",
|
|
1571
1574
|
"ExecutionEventAddedInput",
|
|
1572
1575
|
"ExecutionEventType",
|
|
1573
|
-
"ExecutionRequirement",
|
|
1574
1576
|
"ExecutionState",
|
|
1575
1577
|
"Existence",
|
|
1576
1578
|
"ExposureTimeModeInput",
|
|
@@ -1618,6 +1620,8 @@ __all__ = [
|
|
|
1618
1620
|
"Flamingos2LongSlitDetailsTelluricType",
|
|
1619
1621
|
"Flamingos2LongSlitInput",
|
|
1620
1622
|
"Flamingos2LyotWheel",
|
|
1623
|
+
"Flamingos2MosAcquisitionInput",
|
|
1624
|
+
"Flamingos2MosInput",
|
|
1621
1625
|
"Flamingos2ReadMode",
|
|
1622
1626
|
"Flamingos2ReadoutMode",
|
|
1623
1627
|
"Flamingos2Reads",
|
|
@@ -2479,6 +2483,7 @@ __all__ = [
|
|
|
2479
2483
|
"SchedulerProposalCallSubaru",
|
|
2480
2484
|
"SchedulerProposalGemini",
|
|
2481
2485
|
"SchedulingConstraintsInput",
|
|
2486
|
+
"SchedulingMode",
|
|
2482
2487
|
"ScienceBand",
|
|
2483
2488
|
"ScienceMode",
|
|
2484
2489
|
"ScienceRequirementsDetails",
|
|
@@ -2551,6 +2556,7 @@ __all__ = [
|
|
|
2551
2556
|
"TargetProgramSummary",
|
|
2552
2557
|
"TargetProgramSummaryProgram",
|
|
2553
2558
|
"TargetPropertiesInput",
|
|
2559
|
+
"TargetResolutionInput",
|
|
2554
2560
|
"TelescopeConfigAlongSlitInput",
|
|
2555
2561
|
"TelescopeConfigGeneratorInput",
|
|
2556
2562
|
"TelescopeConfigGeneratorType",
|
|
@@ -10303,7 +10303,9 @@ class GraphQLClient(AsyncBaseClient):
|
|
|
10303
10303
|
) -> AsyncIterator[SchedulerObservationsUpdates]:
|
|
10304
10304
|
query = gql("""
|
|
10305
10305
|
subscription SchedulerObservationsUpdates($executableOnly: Boolean) {
|
|
10306
|
-
obscalcUpdate(
|
|
10306
|
+
obscalcUpdate(
|
|
10307
|
+
input: {executableOnly: $executableOnly, newCalculationState: {EQ: READY}}
|
|
10308
|
+
) {
|
|
10307
10309
|
oldCalculationState
|
|
10308
10310
|
newCalculationState
|
|
10309
10311
|
editType
|