qi-compute-api-client 0.53.0__py3-none-any.whl → 0.54.1__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.

Potentially problematic release.


This version of qi-compute-api-client might be problematic. Click here for more details.

Files changed (188) hide show
  1. compute_api_client/__init__.py +194 -95
  2. compute_api_client/api/algorithms_api.py +75 -81
  3. compute_api_client/api/auth_config_api.py +16 -24
  4. compute_api_client/api/backend_api.py +70 -86
  5. compute_api_client/api/backend_types_api.py +43 -56
  6. compute_api_client/api/batch_jobs_api.py +102 -120
  7. compute_api_client/api/commits_api.py +85 -80
  8. compute_api_client/api/files_api.py +62 -67
  9. compute_api_client/api/final_results_api.py +42 -53
  10. compute_api_client/api/health_api.py +16 -25
  11. compute_api_client/api/jobs_api.py +76 -83
  12. compute_api_client/api/languages_api.py +30 -42
  13. compute_api_client/api/members_api.py +62 -67
  14. compute_api_client/api/permissions_api.py +56 -70
  15. compute_api_client/api/projects_api.py +89 -97
  16. compute_api_client/api/reservations_api.py +57 -72
  17. compute_api_client/api/results_api.py +76 -83
  18. compute_api_client/api/teams_api.py +30 -42
  19. compute_api_client/api/transactions_api.py +31 -44
  20. compute_api_client/api/users_api.py +62 -67
  21. compute_api_client/api_client.py +135 -75
  22. compute_api_client/api_response.py +3 -3
  23. compute_api_client/configuration.py +176 -36
  24. compute_api_client/docs/Algorithm.md +8 -7
  25. compute_api_client/docs/AlgorithmIn.md +7 -6
  26. compute_api_client/docs/AlgorithmType.md +5 -3
  27. compute_api_client/docs/AlgorithmsApi.md +15 -10
  28. compute_api_client/docs/AuthConfig.md +3 -2
  29. compute_api_client/docs/AuthConfigApi.md +3 -2
  30. compute_api_client/docs/Backend.md +9 -8
  31. compute_api_client/docs/BackendApi.md +15 -10
  32. compute_api_client/docs/BackendIn.md +8 -7
  33. compute_api_client/docs/BackendPatch.md +5 -4
  34. compute_api_client/docs/BackendStatus.md +9 -3
  35. compute_api_client/docs/BackendType.md +20 -19
  36. compute_api_client/docs/BackendTypePatch.md +3 -2
  37. compute_api_client/docs/BackendTypesApi.md +15 -8
  38. compute_api_client/docs/BackendWithAuthentication.md +10 -9
  39. compute_api_client/docs/BatchJob.md +10 -9
  40. compute_api_client/docs/BatchJobIn.md +4 -3
  41. compute_api_client/docs/BatchJobStatus.md +11 -3
  42. compute_api_client/docs/BatchJobsApi.md +23 -16
  43. compute_api_client/docs/Commit.md +8 -7
  44. compute_api_client/docs/CommitIn.md +5 -4
  45. compute_api_client/docs/CommitsApi.md +15 -10
  46. compute_api_client/docs/CompilePayload.md +4 -3
  47. compute_api_client/docs/CompileStage.md +11 -3
  48. compute_api_client/docs/Domain.md +7 -3
  49. compute_api_client/docs/File.md +10 -9
  50. compute_api_client/docs/FileIn.md +9 -8
  51. compute_api_client/docs/FilesApi.md +12 -8
  52. compute_api_client/docs/FinalResult.md +7 -6
  53. compute_api_client/docs/FinalResultIn.md +5 -4
  54. compute_api_client/docs/FinalResultsApi.md +9 -6
  55. compute_api_client/docs/HTTPBadRequestError.md +3 -2
  56. compute_api_client/docs/HTTPNotFoundError.md +3 -2
  57. compute_api_client/docs/HTTPValidationError.md +3 -2
  58. compute_api_client/docs/HealthApi.md +3 -2
  59. compute_api_client/docs/Job.md +13 -12
  60. compute_api_client/docs/JobIn.md +6 -5
  61. compute_api_client/docs/JobPatch.md +8 -7
  62. compute_api_client/docs/JobStatus.md +11 -3
  63. compute_api_client/docs/JobsApi.md +15 -10
  64. compute_api_client/docs/Language.md +6 -5
  65. compute_api_client/docs/LanguagesApi.md +6 -4
  66. compute_api_client/docs/Member.md +8 -7
  67. compute_api_client/docs/MemberId.md +28 -0
  68. compute_api_client/docs/MemberIn.md +7 -6
  69. compute_api_client/docs/MembersApi.md +12 -8
  70. compute_api_client/docs/PageAlgorithm.md +3 -2
  71. compute_api_client/docs/PageBackend.md +3 -2
  72. compute_api_client/docs/PageBackendType.md +3 -2
  73. compute_api_client/docs/PageBatchJob.md +3 -2
  74. compute_api_client/docs/PageCommit.md +3 -2
  75. compute_api_client/docs/PageFile.md +3 -2
  76. compute_api_client/docs/PageJob.md +3 -2
  77. compute_api_client/docs/PageLanguage.md +3 -2
  78. compute_api_client/docs/PageMember.md +3 -2
  79. compute_api_client/docs/PagePermission.md +3 -2
  80. compute_api_client/docs/PagePermissionGroup.md +3 -2
  81. compute_api_client/docs/PageProject.md +3 -2
  82. compute_api_client/docs/PageReservation.md +3 -2
  83. compute_api_client/docs/PageResult.md +3 -2
  84. compute_api_client/docs/PageTeam.md +3 -2
  85. compute_api_client/docs/PageTransaction.md +3 -2
  86. compute_api_client/docs/PageUser.md +3 -2
  87. compute_api_client/docs/Permission.md +6 -5
  88. compute_api_client/docs/PermissionGroup.md +5 -4
  89. compute_api_client/docs/PermissionsApi.md +12 -8
  90. compute_api_client/docs/Project.md +9 -8
  91. compute_api_client/docs/ProjectIn.md +7 -6
  92. compute_api_client/docs/ProjectPatch.md +3 -2
  93. compute_api_client/docs/ProjectsApi.md +23 -13
  94. compute_api_client/docs/Reservation.md +9 -8
  95. compute_api_client/docs/ReservationIn.md +7 -6
  96. compute_api_client/docs/ReservationsApi.md +12 -8
  97. compute_api_client/docs/Result.md +7 -6
  98. compute_api_client/docs/ResultIn.md +5 -4
  99. compute_api_client/docs/ResultsApi.md +15 -10
  100. compute_api_client/docs/Role.md +5 -3
  101. compute_api_client/docs/ShareType.md +7 -3
  102. compute_api_client/docs/Team.md +7 -6
  103. compute_api_client/docs/TeamsApi.md +6 -4
  104. compute_api_client/docs/Transaction.md +6 -5
  105. compute_api_client/docs/TransactionDomain.md +28 -0
  106. compute_api_client/docs/TransactionsApi.md +6 -4
  107. compute_api_client/docs/User.md +11 -10
  108. compute_api_client/docs/UserIn.md +10 -9
  109. compute_api_client/docs/UsersApi.md +12 -8
  110. compute_api_client/docs/ValidationError.md +4 -3
  111. compute_api_client/docs/ValidationErrorLocInner.md +28 -0
  112. compute_api_client/exceptions.py +74 -24
  113. compute_api_client/models/__init__.py +1 -1
  114. compute_api_client/models/algorithm.py +19 -20
  115. compute_api_client/models/algorithm_in.py +18 -19
  116. compute_api_client/models/algorithm_type.py +1 -9
  117. compute_api_client/models/auth_config.py +14 -14
  118. compute_api_client/models/backend.py +20 -20
  119. compute_api_client/models/backend_in.py +19 -19
  120. compute_api_client/models/backend_patch.py +16 -15
  121. compute_api_client/models/backend_status.py +1 -9
  122. compute_api_client/models/backend_type.py +31 -32
  123. compute_api_client/models/backend_type_patch.py +14 -15
  124. compute_api_client/models/backend_with_authentication.py +21 -21
  125. compute_api_client/models/batch_job.py +21 -20
  126. compute_api_client/models/batch_job_in.py +15 -15
  127. compute_api_client/models/batch_job_status.py +1 -9
  128. compute_api_client/models/commit.py +19 -19
  129. compute_api_client/models/commit_in.py +16 -16
  130. compute_api_client/models/compile_payload.py +15 -15
  131. compute_api_client/models/compile_stage.py +1 -9
  132. compute_api_client/models/domain.py +1 -9
  133. compute_api_client/models/file.py +21 -22
  134. compute_api_client/models/file_in.py +20 -21
  135. compute_api_client/models/final_result.py +18 -17
  136. compute_api_client/models/final_result_in.py +16 -16
  137. compute_api_client/models/http_bad_request_error.py +14 -14
  138. compute_api_client/models/http_not_found_error.py +14 -14
  139. compute_api_client/models/http_validation_error.py +18 -18
  140. compute_api_client/models/job.py +24 -24
  141. compute_api_client/models/job_in.py +17 -17
  142. compute_api_client/models/job_patch.py +19 -20
  143. compute_api_client/models/job_status.py +1 -9
  144. compute_api_client/models/language.py +17 -18
  145. compute_api_client/models/member.py +19 -19
  146. compute_api_client/models/member_id.py +144 -0
  147. compute_api_client/models/member_in.py +18 -18
  148. compute_api_client/models/page_algorithm.py +18 -19
  149. compute_api_client/models/page_backend.py +18 -19
  150. compute_api_client/models/page_backend_type.py +18 -19
  151. compute_api_client/models/page_batch_job.py +18 -19
  152. compute_api_client/models/page_commit.py +18 -19
  153. compute_api_client/models/page_file.py +18 -19
  154. compute_api_client/models/page_job.py +18 -19
  155. compute_api_client/models/page_language.py +18 -19
  156. compute_api_client/models/page_member.py +18 -19
  157. compute_api_client/models/page_permission.py +18 -19
  158. compute_api_client/models/page_permission_group.py +18 -19
  159. compute_api_client/models/page_project.py +18 -19
  160. compute_api_client/models/page_reservation.py +18 -19
  161. compute_api_client/models/page_result.py +18 -19
  162. compute_api_client/models/page_team.py +18 -19
  163. compute_api_client/models/page_transaction.py +18 -19
  164. compute_api_client/models/page_user.py +18 -19
  165. compute_api_client/models/permission.py +17 -18
  166. compute_api_client/models/permission_group.py +16 -17
  167. compute_api_client/models/project.py +20 -20
  168. compute_api_client/models/project_in.py +18 -19
  169. compute_api_client/models/project_patch.py +14 -15
  170. compute_api_client/models/reservation.py +20 -19
  171. compute_api_client/models/reservation_in.py +18 -17
  172. compute_api_client/models/result.py +18 -17
  173. compute_api_client/models/result_in.py +16 -16
  174. compute_api_client/models/role.py +1 -9
  175. compute_api_client/models/share_type.py +1 -9
  176. compute_api_client/models/team.py +18 -19
  177. compute_api_client/models/transaction.py +17 -17
  178. compute_api_client/models/transaction_domain.py +142 -0
  179. compute_api_client/models/user.py +22 -23
  180. compute_api_client/models/user_in.py +21 -22
  181. compute_api_client/models/validation_error.py +20 -20
  182. compute_api_client/models/validation_error_loc_inner.py +138 -0
  183. compute_api_client/rest.py +51 -26
  184. {qi_compute_api_client-0.53.0.dist-info → qi_compute_api_client-0.54.1.dist-info}/METADATA +12 -9
  185. qi_compute_api_client-0.54.1.dist-info/RECORD +203 -0
  186. qi_compute_api_client-0.53.0.dist-info/RECORD +0 -197
  187. {qi_compute_api_client-0.53.0.dist-info → qi_compute_api_client-0.54.1.dist-info}/WHEEL +0 -0
  188. {qi_compute_api_client-0.53.0.dist-info → qi_compute_api_client-0.54.1.dist-info}/licenses/LICENSE.md +0 -0
@@ -17,33 +17,30 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
-
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from pydantic import BaseModel, StrictInt
23
- from pydantic import Field
24
22
  from typing_extensions import Annotated
25
23
  from compute_api_client.models.algorithm_type import AlgorithmType
26
24
  from compute_api_client.models.share_type import ShareType
27
- try:
28
- from typing import Self
29
- except ImportError:
30
- from typing_extensions import Self
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
31
27
 
32
28
  class AlgorithmIn(BaseModel):
33
29
  """
34
30
  AlgorithmIn
35
31
  """ # noqa: E501
36
- project_id: StrictInt
37
- type: AlgorithmType
38
- shared: ShareType
32
+ project_id: StrictInt = Field(description="ID of the project")
33
+ type: AlgorithmType = Field(description="The type of algorithm i.e. hybrid or quantum")
34
+ shared: ShareType = Field(description="The sharing scope of the algorithm")
39
35
  link: Optional[Annotated[str, Field(strict=True, max_length=255)]] = None
40
- name: Annotated[str, Field(strict=True, max_length=255)]
36
+ name: Annotated[str, Field(strict=True, max_length=255)] = Field(description="The name of the algorithm")
41
37
  __properties: ClassVar[List[str]] = ["project_id", "type", "shared", "link", "name"]
42
38
 
43
- model_config = {
44
- "populate_by_name": True,
45
- "validate_assignment": True
46
- }
39
+ model_config = ConfigDict(
40
+ populate_by_name=True,
41
+ validate_assignment=True,
42
+ protected_namespaces=(),
43
+ )
47
44
 
48
45
 
49
46
  def to_str(self) -> str:
@@ -56,7 +53,7 @@ class AlgorithmIn(BaseModel):
56
53
  return json.dumps(self.to_dict())
57
54
 
58
55
  @classmethod
59
- def from_json(cls, json_str: str) -> Self:
56
+ def from_json(cls, json_str: str) -> Optional[Self]:
60
57
  """Create an instance of AlgorithmIn from a JSON string"""
61
58
  return cls.from_dict(json.loads(json_str))
62
59
 
@@ -70,10 +67,12 @@ class AlgorithmIn(BaseModel):
70
67
  were set at model initialization. Other fields with value `None`
71
68
  are ignored.
72
69
  """
70
+ excluded_fields: Set[str] = set([
71
+ ])
72
+
73
73
  _dict = self.model_dump(
74
74
  by_alias=True,
75
- exclude={
76
- },
75
+ exclude=excluded_fields,
77
76
  exclude_none=True,
78
77
  )
79
78
  # set to None if link (nullable) is None
@@ -84,7 +83,7 @@ class AlgorithmIn(BaseModel):
84
83
  return _dict
85
84
 
86
85
  @classmethod
87
- def from_dict(cls, obj: Dict) -> Self:
86
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
88
87
  """Create an instance of AlgorithmIn from a dict"""
89
88
  if obj is None:
90
89
  return None
@@ -14,16 +14,8 @@
14
14
 
15
15
  from __future__ import annotations
16
16
  import json
17
- import pprint
18
- import re # noqa: F401
19
17
  from enum import Enum
20
-
21
-
22
-
23
- try:
24
- from typing import Self
25
- except ImportError:
26
- from typing_extensions import Self
18
+ from typing_extensions import Self
27
19
 
28
20
 
29
21
  class AlgorithmType(str, Enum):
@@ -17,13 +17,10 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
-
20
+ from pydantic import BaseModel, ConfigDict, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List
22
- from pydantic import BaseModel, StrictStr
23
- try:
24
- from typing import Self
25
- except ImportError:
26
- from typing_extensions import Self
22
+ from typing import Optional, Set
23
+ from typing_extensions import Self
27
24
 
28
25
  class AuthConfig(BaseModel):
29
26
  """
@@ -34,10 +31,11 @@ class AuthConfig(BaseModel):
34
31
  well_known_endpoint: StrictStr
35
32
  __properties: ClassVar[List[str]] = ["client_id", "audience", "well_known_endpoint"]
36
33
 
37
- model_config = {
38
- "populate_by_name": True,
39
- "validate_assignment": True
40
- }
34
+ model_config = ConfigDict(
35
+ populate_by_name=True,
36
+ validate_assignment=True,
37
+ protected_namespaces=(),
38
+ )
41
39
 
42
40
 
43
41
  def to_str(self) -> str:
@@ -50,7 +48,7 @@ class AuthConfig(BaseModel):
50
48
  return json.dumps(self.to_dict())
51
49
 
52
50
  @classmethod
53
- def from_json(cls, json_str: str) -> Self:
51
+ def from_json(cls, json_str: str) -> Optional[Self]:
54
52
  """Create an instance of AuthConfig from a JSON string"""
55
53
  return cls.from_dict(json.loads(json_str))
56
54
 
@@ -64,16 +62,18 @@ class AuthConfig(BaseModel):
64
62
  were set at model initialization. Other fields with value `None`
65
63
  are ignored.
66
64
  """
65
+ excluded_fields: Set[str] = set([
66
+ ])
67
+
67
68
  _dict = self.model_dump(
68
69
  by_alias=True,
69
- exclude={
70
- },
70
+ exclude=excluded_fields,
71
71
  exclude_none=True,
72
72
  )
73
73
  return _dict
74
74
 
75
75
  @classmethod
76
- def from_dict(cls, obj: Dict) -> Self:
76
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
77
77
  """Create an instance of AuthConfig from a dict"""
78
78
  if obj is None:
79
79
  return None
@@ -18,32 +18,30 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
  from datetime import datetime
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
21
22
  from typing import Any, ClassVar, Dict, List
22
- from pydantic import BaseModel, StrictInt
23
- from pydantic import Field
24
23
  from typing_extensions import Annotated
25
24
  from compute_api_client.models.backend_status import BackendStatus
26
- try:
27
- from typing import Self
28
- except ImportError:
29
- from typing_extensions import Self
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
30
27
 
31
28
  class Backend(BaseModel):
32
29
  """
33
30
  Backend
34
31
  """ # noqa: E501
35
- id: StrictInt
36
- name: Annotated[str, Field(strict=True, max_length=32)]
37
- location: Annotated[str, Field(strict=True, max_length=32)]
38
- backend_type_id: StrictInt
39
- status: BackendStatus
40
- last_heartbeat: datetime
32
+ id: StrictInt = Field(description="The id of the backend")
33
+ name: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The name of the backend")
34
+ location: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The location of the backend")
35
+ backend_type_id: StrictInt = Field(description="The id of the backend type")
36
+ status: BackendStatus = Field(description="Status of the backend")
37
+ last_heartbeat: datetime = Field(description="Time of last heartbeat")
41
38
  __properties: ClassVar[List[str]] = ["id", "name", "location", "backend_type_id", "status", "last_heartbeat"]
42
39
 
43
- model_config = {
44
- "populate_by_name": True,
45
- "validate_assignment": True
46
- }
40
+ model_config = ConfigDict(
41
+ populate_by_name=True,
42
+ validate_assignment=True,
43
+ protected_namespaces=(),
44
+ )
47
45
 
48
46
 
49
47
  def to_str(self) -> str:
@@ -56,7 +54,7 @@ class Backend(BaseModel):
56
54
  return json.dumps(self.to_dict())
57
55
 
58
56
  @classmethod
59
- def from_json(cls, json_str: str) -> Self:
57
+ def from_json(cls, json_str: str) -> Optional[Self]:
60
58
  """Create an instance of Backend from a JSON string"""
61
59
  return cls.from_dict(json.loads(json_str))
62
60
 
@@ -70,16 +68,18 @@ class Backend(BaseModel):
70
68
  were set at model initialization. Other fields with value `None`
71
69
  are ignored.
72
70
  """
71
+ excluded_fields: Set[str] = set([
72
+ ])
73
+
73
74
  _dict = self.model_dump(
74
75
  by_alias=True,
75
- exclude={
76
- },
76
+ exclude=excluded_fields,
77
77
  exclude_none=True,
78
78
  )
79
79
  return _dict
80
80
 
81
81
  @classmethod
82
- def from_dict(cls, obj: Dict) -> Self:
82
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
83
83
  """Create an instance of Backend from a dict"""
84
84
  if obj is None:
85
85
  return None
@@ -18,31 +18,29 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
  from datetime import datetime
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
21
22
  from typing import Any, ClassVar, Dict, List
22
- from pydantic import BaseModel, StrictInt
23
- from pydantic import Field
24
23
  from typing_extensions import Annotated
25
24
  from compute_api_client.models.backend_status import BackendStatus
26
- try:
27
- from typing import Self
28
- except ImportError:
29
- from typing_extensions import Self
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
30
27
 
31
28
  class BackendIn(BaseModel):
32
29
  """
33
30
  BackendIn
34
31
  """ # noqa: E501
35
- name: Annotated[str, Field(strict=True, max_length=32)]
36
- location: Annotated[str, Field(strict=True, max_length=32)]
37
- backend_type_id: StrictInt
38
- status: BackendStatus
39
- last_heartbeat: datetime
32
+ name: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The name of the backend")
33
+ location: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The location of the backend")
34
+ backend_type_id: StrictInt = Field(description="The id of the backend type")
35
+ status: BackendStatus = Field(description="Status of the backend")
36
+ last_heartbeat: datetime = Field(description="Time of last heartbeat")
40
37
  __properties: ClassVar[List[str]] = ["name", "location", "backend_type_id", "status", "last_heartbeat"]
41
38
 
42
- model_config = {
43
- "populate_by_name": True,
44
- "validate_assignment": True
45
- }
39
+ model_config = ConfigDict(
40
+ populate_by_name=True,
41
+ validate_assignment=True,
42
+ protected_namespaces=(),
43
+ )
46
44
 
47
45
 
48
46
  def to_str(self) -> str:
@@ -55,7 +53,7 @@ class BackendIn(BaseModel):
55
53
  return json.dumps(self.to_dict())
56
54
 
57
55
  @classmethod
58
- def from_json(cls, json_str: str) -> Self:
56
+ def from_json(cls, json_str: str) -> Optional[Self]:
59
57
  """Create an instance of BackendIn from a JSON string"""
60
58
  return cls.from_dict(json.loads(json_str))
61
59
 
@@ -69,16 +67,18 @@ class BackendIn(BaseModel):
69
67
  were set at model initialization. Other fields with value `None`
70
68
  are ignored.
71
69
  """
70
+ excluded_fields: Set[str] = set([
71
+ ])
72
+
72
73
  _dict = self.model_dump(
73
74
  by_alias=True,
74
- exclude={
75
- },
75
+ exclude=excluded_fields,
76
76
  exclude_none=True,
77
77
  )
78
78
  return _dict
79
79
 
80
80
  @classmethod
81
- def from_dict(cls, obj: Dict) -> Self:
81
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
82
82
  """Create an instance of BackendIn from a dict"""
83
83
  if obj is None:
84
84
  return None
@@ -18,26 +18,25 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
  from datetime import datetime
21
+ from pydantic import BaseModel, ConfigDict, Field
21
22
  from typing import Any, ClassVar, Dict, List
22
- from pydantic import BaseModel
23
23
  from compute_api_client.models.backend_status import BackendStatus
24
- try:
25
- from typing import Self
26
- except ImportError:
27
- from typing_extensions import Self
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
28
26
 
29
27
  class BackendPatch(BaseModel):
30
28
  """
31
29
  BackendPatch
32
30
  """ # noqa: E501
33
- status: BackendStatus
34
- last_heartbeat: datetime
31
+ status: BackendStatus = Field(description="Status of the backend")
32
+ last_heartbeat: datetime = Field(description="Time of last heartbeat")
35
33
  __properties: ClassVar[List[str]] = ["status", "last_heartbeat"]
36
34
 
37
- model_config = {
38
- "populate_by_name": True,
39
- "validate_assignment": True
40
- }
35
+ model_config = ConfigDict(
36
+ populate_by_name=True,
37
+ validate_assignment=True,
38
+ protected_namespaces=(),
39
+ )
41
40
 
42
41
 
43
42
  def to_str(self) -> str:
@@ -50,7 +49,7 @@ class BackendPatch(BaseModel):
50
49
  return json.dumps(self.to_dict())
51
50
 
52
51
  @classmethod
53
- def from_json(cls, json_str: str) -> Self:
52
+ def from_json(cls, json_str: str) -> Optional[Self]:
54
53
  """Create an instance of BackendPatch from a JSON string"""
55
54
  return cls.from_dict(json.loads(json_str))
56
55
 
@@ -64,16 +63,18 @@ class BackendPatch(BaseModel):
64
63
  were set at model initialization. Other fields with value `None`
65
64
  are ignored.
66
65
  """
66
+ excluded_fields: Set[str] = set([
67
+ ])
68
+
67
69
  _dict = self.model_dump(
68
70
  by_alias=True,
69
- exclude={
70
- },
71
+ exclude=excluded_fields,
71
72
  exclude_none=True,
72
73
  )
73
74
  return _dict
74
75
 
75
76
  @classmethod
76
- def from_dict(cls, obj: Dict) -> Self:
77
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
77
78
  """Create an instance of BackendPatch from a dict"""
78
79
  if obj is None:
79
80
  return None
@@ -14,16 +14,8 @@
14
14
 
15
15
  from __future__ import annotations
16
16
  import json
17
- import pprint
18
- import re # noqa: F401
19
17
  from enum import Enum
20
-
21
-
22
-
23
- try:
24
- from typing import Self
25
- except ImportError:
26
- from typing_extensions import Self
18
+ from typing_extensions import Self
27
19
 
28
20
 
29
21
  class BackendStatus(str, Enum):
@@ -17,45 +17,42 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
-
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from pydantic import BaseModel, StrictBool, StrictInt, StrictStr
23
- from pydantic import Field
24
22
  from typing_extensions import Annotated
25
23
  from compute_api_client.models.backend_status import BackendStatus
26
- try:
27
- from typing import Self
28
- except ImportError:
29
- from typing_extensions import Self
24
+ from typing import Optional, Set
25
+ from typing_extensions import Self
30
26
 
31
27
  class BackendType(BaseModel):
32
28
  """
33
29
  BackendType
34
30
  """ # noqa: E501
35
- id: StrictInt
36
- name: Annotated[str, Field(strict=True, max_length=32)]
37
- infrastructure: Annotated[str, Field(strict=True, max_length=32)]
38
- description: StrictStr
39
- image_id: Annotated[str, Field(strict=True, max_length=16)]
40
- is_hardware: StrictBool
41
- supports_raw_data: StrictBool
42
- features: List[StrictStr]
43
- default_compiler_config: Dict[str, Any]
44
- gateset: List[StrictStr]
45
- topology: List[List[StrictInt]]
46
- nqubits: StrictInt
47
- status: BackendStatus
48
- default_number_of_shots: StrictInt
49
- max_number_of_shots: StrictInt
50
- enabled: StrictBool
51
- identifier: Annotated[str, Field(strict=True, max_length=32)]
31
+ id: StrictInt = Field(description="The id of the backend type")
32
+ name: Annotated[str, Field(strict=True, max_length=32)] = Field(description="Name of the backend type")
33
+ infrastructure: Annotated[str, Field(strict=True, max_length=32)] = Field(description="Name of the infrastructure")
34
+ description: StrictStr = Field(description="Description of the backendtype")
35
+ image_id: Annotated[str, Field(strict=True, max_length=16)] = Field(description="The id of the image")
36
+ is_hardware: StrictBool = Field(description="If it is hardware")
37
+ supports_raw_data: StrictBool = Field(description="If it supports raw data extraction")
38
+ features: List[Optional[StrictStr]] = Field(description="The features supported by backend type")
39
+ default_compiler_config: Dict[str, Any] = Field(description="The various passes for each stage")
40
+ gateset: List[Optional[StrictStr]] = Field(description="The primary gatesets supported by the backend")
41
+ topology: List[List[StrictInt]] = Field(description="The topology of the backend")
42
+ nqubits: StrictInt = Field(description="The number of qubits on the backend")
43
+ status: BackendStatus = Field(description="The status of the backend type")
44
+ default_number_of_shots: StrictInt = Field(description="The default shots")
45
+ max_number_of_shots: StrictInt = Field(description="The maximum number of shots")
46
+ enabled: StrictBool = Field(description="If it is enabled")
47
+ identifier: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The identifier of the backend")
52
48
  protocol_version: Optional[StrictInt] = None
53
49
  __properties: ClassVar[List[str]] = ["id", "name", "infrastructure", "description", "image_id", "is_hardware", "supports_raw_data", "features", "default_compiler_config", "gateset", "topology", "nqubits", "status", "default_number_of_shots", "max_number_of_shots", "enabled", "identifier", "protocol_version"]
54
50
 
55
- model_config = {
56
- "populate_by_name": True,
57
- "validate_assignment": True
58
- }
51
+ model_config = ConfigDict(
52
+ populate_by_name=True,
53
+ validate_assignment=True,
54
+ protected_namespaces=(),
55
+ )
59
56
 
60
57
 
61
58
  def to_str(self) -> str:
@@ -68,7 +65,7 @@ class BackendType(BaseModel):
68
65
  return json.dumps(self.to_dict())
69
66
 
70
67
  @classmethod
71
- def from_json(cls, json_str: str) -> Self:
68
+ def from_json(cls, json_str: str) -> Optional[Self]:
72
69
  """Create an instance of BackendType from a JSON string"""
73
70
  return cls.from_dict(json.loads(json_str))
74
71
 
@@ -82,10 +79,12 @@ class BackendType(BaseModel):
82
79
  were set at model initialization. Other fields with value `None`
83
80
  are ignored.
84
81
  """
82
+ excluded_fields: Set[str] = set([
83
+ ])
84
+
85
85
  _dict = self.model_dump(
86
86
  by_alias=True,
87
- exclude={
88
- },
87
+ exclude=excluded_fields,
89
88
  exclude_none=True,
90
89
  )
91
90
  # set to None if protocol_version (nullable) is None
@@ -96,7 +95,7 @@ class BackendType(BaseModel):
96
95
  return _dict
97
96
 
98
97
  @classmethod
99
- def from_dict(cls, obj: Dict) -> Self:
98
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
100
99
  """Create an instance of BackendType from a dict"""
101
100
  if obj is None:
102
101
  return None
@@ -17,15 +17,11 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
-
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
- from pydantic import BaseModel, StrictBool, StrictInt, StrictStr
23
- from pydantic import Field
24
22
  from typing_extensions import Annotated
25
- try:
26
- from typing import Self
27
- except ImportError:
28
- from typing_extensions import Self
23
+ from typing import Optional, Set
24
+ from typing_extensions import Self
29
25
 
30
26
  class BackendTypePatch(BaseModel):
31
27
  """
@@ -49,10 +45,11 @@ class BackendTypePatch(BaseModel):
49
45
  protocol_version: Optional[StrictInt] = None
50
46
  __properties: ClassVar[List[str]] = ["name", "infrastructure", "description", "image_id", "is_hardware", "supports_raw_data", "features", "default_compiler_config", "gateset", "topology", "nqubits", "default_number_of_shots", "max_number_of_shots", "enabled", "identifier", "protocol_version"]
51
47
 
52
- model_config = {
53
- "populate_by_name": True,
54
- "validate_assignment": True
55
- }
48
+ model_config = ConfigDict(
49
+ populate_by_name=True,
50
+ validate_assignment=True,
51
+ protected_namespaces=(),
52
+ )
56
53
 
57
54
 
58
55
  def to_str(self) -> str:
@@ -65,7 +62,7 @@ class BackendTypePatch(BaseModel):
65
62
  return json.dumps(self.to_dict())
66
63
 
67
64
  @classmethod
68
- def from_json(cls, json_str: str) -> Self:
65
+ def from_json(cls, json_str: str) -> Optional[Self]:
69
66
  """Create an instance of BackendTypePatch from a JSON string"""
70
67
  return cls.from_dict(json.loads(json_str))
71
68
 
@@ -79,10 +76,12 @@ class BackendTypePatch(BaseModel):
79
76
  were set at model initialization. Other fields with value `None`
80
77
  are ignored.
81
78
  """
79
+ excluded_fields: Set[str] = set([
80
+ ])
81
+
82
82
  _dict = self.model_dump(
83
83
  by_alias=True,
84
- exclude={
85
- },
84
+ exclude=excluded_fields,
86
85
  exclude_none=True,
87
86
  )
88
87
  # set to None if name (nullable) is None
@@ -168,7 +167,7 @@ class BackendTypePatch(BaseModel):
168
167
  return _dict
169
168
 
170
169
  @classmethod
171
- def from_dict(cls, obj: Dict) -> Self:
170
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
172
171
  """Create an instance of BackendTypePatch from a dict"""
173
172
  if obj is None:
174
173
  return None
@@ -18,33 +18,31 @@ import re # noqa: F401
18
18
  import json
19
19
 
20
20
  from datetime import datetime
21
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt
21
22
  from typing import Any, ClassVar, Dict, List
22
- from pydantic import BaseModel, StrictInt
23
- from pydantic import Field
24
23
  from typing_extensions import Annotated
25
24
  from compute_api_client.models.backend_status import BackendStatus
26
- try:
27
- from typing import Self
28
- except ImportError:
29
- from typing_extensions import Self
25
+ from typing import Optional, Set
26
+ from typing_extensions import Self
30
27
 
31
28
  class BackendWithAuthentication(BaseModel):
32
29
  """
33
30
  BackendWithAuthentication
34
31
  """ # noqa: E501
35
- id: StrictInt
36
- name: Annotated[str, Field(strict=True, max_length=32)]
37
- location: Annotated[str, Field(strict=True, max_length=32)]
38
- backend_type_id: StrictInt
39
- status: BackendStatus
40
- last_heartbeat: datetime
41
- authentication_hash: Annotated[str, Field(strict=True, max_length=32)]
32
+ id: StrictInt = Field(description="The id of the backend")
33
+ name: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The name of the backend")
34
+ location: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The location of the backend")
35
+ backend_type_id: StrictInt = Field(description="The id of the backend type")
36
+ status: BackendStatus = Field(description="Status of the backend")
37
+ last_heartbeat: datetime = Field(description="Time of last heartbeat")
38
+ authentication_hash: Annotated[str, Field(strict=True, max_length=32)] = Field(description="The authentication hash of the backend")
42
39
  __properties: ClassVar[List[str]] = ["id", "name", "location", "backend_type_id", "status", "last_heartbeat", "authentication_hash"]
43
40
 
44
- model_config = {
45
- "populate_by_name": True,
46
- "validate_assignment": True
47
- }
41
+ model_config = ConfigDict(
42
+ populate_by_name=True,
43
+ validate_assignment=True,
44
+ protected_namespaces=(),
45
+ )
48
46
 
49
47
 
50
48
  def to_str(self) -> str:
@@ -57,7 +55,7 @@ class BackendWithAuthentication(BaseModel):
57
55
  return json.dumps(self.to_dict())
58
56
 
59
57
  @classmethod
60
- def from_json(cls, json_str: str) -> Self:
58
+ def from_json(cls, json_str: str) -> Optional[Self]:
61
59
  """Create an instance of BackendWithAuthentication from a JSON string"""
62
60
  return cls.from_dict(json.loads(json_str))
63
61
 
@@ -71,16 +69,18 @@ class BackendWithAuthentication(BaseModel):
71
69
  were set at model initialization. Other fields with value `None`
72
70
  are ignored.
73
71
  """
72
+ excluded_fields: Set[str] = set([
73
+ ])
74
+
74
75
  _dict = self.model_dump(
75
76
  by_alias=True,
76
- exclude={
77
- },
77
+ exclude=excluded_fields,
78
78
  exclude_none=True,
79
79
  )
80
80
  return _dict
81
81
 
82
82
  @classmethod
83
- def from_dict(cls, obj: Dict) -> Self:
83
+ def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
84
84
  """Create an instance of BackendWithAuthentication from a dict"""
85
85
  if obj is None:
86
86
  return None