From 22faf72afda1cd85ea5442f5b00b0719666820ab Mon Sep 17 00:00:00 2001 From: Serge Smertin Date: Thu, 10 Aug 2023 13:27:59 +0200 Subject: [PATCH] Remove low-level fields from methods that return iterators Follow up to https://github.com/databricks/databricks-sdk-go/pull/569 and https://github.com/databricks/cli/issues/647 --- .codegen/service.py.tmpl | 30 +++++++---- databricks/sdk/service/catalog.py | 26 +++++++-- databricks/sdk/service/compute.py | 13 +++-- databricks/sdk/service/jobs.py | 33 ++++++++---- databricks/sdk/service/ml.py | 82 +++++++++++++++++++---------- databricks/sdk/service/pipelines.py | 27 +++++++--- databricks/sdk/service/sql.py | 48 ++++++++++------- databricks/sdk/service/workspace.py | 13 +++-- 8 files changed, 184 insertions(+), 88 deletions(-) diff --git a/.codegen/service.py.tmpl b/.codegen/service.py.tmpl index cba35f02..bf0a5bc3 100644 --- a/.codegen/service.py.tmpl +++ b/.codegen/service.py.tmpl @@ -152,12 +152,11 @@ class {{.Name}}API:{{if .Description}} {{end}} {{range .Methods}} - def {{.SnakeName}}{{if .IsNameReserved}}_{{end}}(self{{if .Request}} - {{range .Request.RequiredFields}}, {{.SnakeName}}: {{template "type-nq" .Entity}}{{end}} - {{if .Request.NonRequiredFields}}, * - {{range .Request.NonRequiredFields}}, {{.SnakeName}}: Optional[{{template "type-nq" .Entity}}] = None{{end}} - {{- end}} - {{- end}}){{template "method-return-type" .}}: + def {{.SnakeName}}{{if .IsNameReserved}}_{{end}}(self{{if .ListingRequest -}} + {{template "arguments-serialize" .ListingRequest}} + {{- else if .Request -}} + {{template "arguments-serialize" .Request}} + {{- end}}){{template "method-return-type" .}}: {{if .Description}}"""{{.Comment " " 110 | trimSuffix "\"" }} {{with .Request}}{{range .RequiredFields}} :param {{.SnakeName}}: {{template "type-doc" .Entity}}{{if .Description}} @@ -179,8 +178,10 @@ class {{.Name}}API:{{if .Description}} {{template "type-doc" .Response}} {{- end}}{{end}} """{{end}} - {{if .Request -}} - {{template "method-serialize" .}} + {{if .ListingRequest -}} + {{template "method-serialize" .ListingRequest}} + {{- else if .Request -}} + {{template "method-serialize" .Request}} {{- end}} {{template "method-call" .}} @@ -193,11 +194,18 @@ class {{.Name}}API:{{if .Description}} {{end -}} {{- end}} +{{define "arguments-serialize" -}} + {{range .RequiredFields}}, {{.SnakeName}}: {{template "type-nq" .Entity}}{{end}} + {{if .NonRequiredFields}}, * + {{range .NonRequiredFields}}, {{.SnakeName}}: Optional[{{template "type-nq" .Entity}}] = None{{end}} + {{- end}} +{{- end}} + {{define "method-serialize" -}} - {{if or .Request.HasJsonField .Request.HasQueryField -}} - {{if .Request.HasJsonField}}body = {}{{end}}{{if .Request.HasQueryField}} + {{if or .HasJsonField .HasQueryField -}} + {{if .HasJsonField}}body = {}{{end}}{{if .HasQueryField}} query = {}{{end}} - {{- range .Request.Fields}}{{if not .IsPath}} + {{- range .Fields}}{{if not .IsPath}} if {{.SnakeName}} is not None: {{if .IsQuery}}query{{else}}body{{end}}['{{.Name}}'] = {{template "method-param-bind" .}}{{end}}{{end}} {{- end}} {{- end}} diff --git a/databricks/sdk/service/catalog.py b/databricks/sdk/service/catalog.py index 65f1c887..4e20c960 100755 --- a/databricks/sdk/service/catalog.py +++ b/databricks/sdk/service/catalog.py @@ -1480,6 +1480,16 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListStorageCredentialsResponse': return cls(storage_credentials=_repeated(d, 'storage_credentials', StorageCredentialInfo)) +@dataclass +class ListSummariesRequest: + """List table summaries""" + + catalog_name: str + max_results: Optional[int] = None + schema_name_pattern: Optional[str] = None + table_name_pattern: Optional[str] = None + + @dataclass class ListSystemSchemasResponse: schemas: Optional['List[SystemSchemaInfo]'] = None @@ -1511,6 +1521,16 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListTableSummariesResponse': tables=_repeated(d, 'tables', TableSummary)) +@dataclass +class ListTablesRequest: + """List tables""" + + catalog_name: str + schema_name: str + include_delta_metadata: Optional[bool] = None + max_results: Optional[int] = None + + @dataclass class ListTablesResponse: next_page_token: Optional[str] = None @@ -4474,8 +4494,7 @@ def list(self, schema_name: str, *, include_delta_metadata: Optional[bool] = None, - max_results: Optional[int] = None, - page_token: Optional[str] = None) -> Iterator[TableInfo]: + max_results: Optional[int] = None) -> Iterator[TableInfo]: """List tables. Gets an array of all tables for the current metastore under the parent catalog and schema. The caller @@ -4506,7 +4525,6 @@ def list(self, if catalog_name is not None: query['catalog_name'] = catalog_name if include_delta_metadata is not None: query['include_delta_metadata'] = include_delta_metadata if max_results is not None: query['max_results'] = max_results - if page_token is not None: query['page_token'] = page_token if schema_name is not None: query['schema_name'] = schema_name while True: @@ -4523,7 +4541,6 @@ def list_summaries(self, catalog_name: str, *, max_results: Optional[int] = None, - page_token: Optional[str] = None, schema_name_pattern: Optional[str] = None, table_name_pattern: Optional[str] = None) -> Iterator[TableSummary]: """List table summaries. @@ -4556,7 +4573,6 @@ def list_summaries(self, query = {} if catalog_name is not None: query['catalog_name'] = catalog_name if max_results is not None: query['max_results'] = max_results - if page_token is not None: query['page_token'] = page_token if schema_name_pattern is not None: query['schema_name_pattern'] = schema_name_pattern if table_name_pattern is not None: query['table_name_pattern'] = table_name_pattern diff --git a/databricks/sdk/service/compute.py b/databricks/sdk/service/compute.py index a4250b81..579f7886 100755 --- a/databricks/sdk/service/compute.py +++ b/databricks/sdk/service/compute.py @@ -2792,6 +2792,13 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListPoliciesResponse': return cls(policies=_repeated(d, 'policies', Policy)) +@dataclass +class ListPolicyFamiliesRequest: + """List policy families""" + + max_results: Optional[int] = None + + @dataclass class ListPolicyFamiliesResponse: policy_families: 'List[PolicyFamily]' @@ -5735,10 +5742,7 @@ def get(self, policy_family_id: str) -> PolicyFamily: json = self._api.do('GET', f'/api/2.0/policy-families/{policy_family_id}') return PolicyFamily.from_dict(json) - def list(self, - *, - max_results: Optional[int] = None, - page_token: Optional[str] = None) -> Iterator[PolicyFamily]: + def list(self, *, max_results: Optional[int] = None) -> Iterator[PolicyFamily]: """List policy families. Retrieve a list of policy families. This API is paginated. @@ -5753,7 +5757,6 @@ def list(self, query = {} if max_results is not None: query['max_results'] = max_results - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/policy-families', query=query) diff --git a/databricks/sdk/service/jobs.py b/databricks/sdk/service/jobs.py index 14afc84e..a893c5d9 100755 --- a/databricks/sdk/service/jobs.py +++ b/databricks/sdk/service/jobs.py @@ -997,6 +997,15 @@ def from_dict(cls, d: Dict[str, any]) -> 'JobsHealthRules': return cls(rules=_repeated(d, 'rules', JobsHealthRule)) +@dataclass +class ListJobsRequest: + """List jobs""" + + expand_tasks: Optional[bool] = None + name: Optional[str] = None + offset: Optional[int] = None + + @dataclass class ListJobsResponse: has_more: Optional[bool] = None @@ -1020,6 +1029,20 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListJobsResponse': prev_page_token=d.get('prev_page_token', None)) +@dataclass +class ListRunsRequest: + """List job runs""" + + active_only: Optional[bool] = None + completed_only: Optional[bool] = None + expand_tasks: Optional[bool] = None + job_id: Optional[int] = None + offset: Optional[int] = None + run_type: Optional['ListRunsRunType'] = None + start_time_from: Optional[int] = None + start_time_to: Optional[int] = None + + @dataclass class ListRunsResponse: has_more: Optional[bool] = None @@ -3028,10 +3051,8 @@ def get_run_output(self, run_id: int) -> RunOutput: def list(self, *, expand_tasks: Optional[bool] = None, - limit: Optional[int] = None, name: Optional[str] = None, - offset: Optional[int] = None, - page_token: Optional[str] = None) -> Iterator[BaseJob]: + offset: Optional[int] = None) -> Iterator[BaseJob]: """List jobs. Retrieves a list of jobs. @@ -3056,10 +3077,8 @@ def list(self, query = {} if expand_tasks is not None: query['expand_tasks'] = expand_tasks - if limit is not None: query['limit'] = limit if name is not None: query['name'] = name if offset is not None: query['offset'] = offset - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.1/jobs/list', query=query) @@ -3077,9 +3096,7 @@ def list_runs(self, completed_only: Optional[bool] = None, expand_tasks: Optional[bool] = None, job_id: Optional[int] = None, - limit: Optional[int] = None, offset: Optional[int] = None, - page_token: Optional[str] = None, run_type: Optional[ListRunsRunType] = None, start_time_from: Optional[int] = None, start_time_to: Optional[int] = None) -> Iterator[BaseRun]: @@ -3125,9 +3142,7 @@ def list_runs(self, if completed_only is not None: query['completed_only'] = completed_only if expand_tasks is not None: query['expand_tasks'] = expand_tasks if job_id is not None: query['job_id'] = job_id - if limit is not None: query['limit'] = limit if offset is not None: query['offset'] = offset - if page_token is not None: query['page_token'] = page_token if run_type is not None: query['run_type'] = run_type.value if start_time_from is not None: query['start_time_from'] = start_time_from if start_time_to is not None: query['start_time_to'] = start_time_to diff --git a/databricks/sdk/service/ml.py b/databricks/sdk/service/ml.py index 23232b5c..587c839d 100755 --- a/databricks/sdk/service/ml.py +++ b/databricks/sdk/service/ml.py @@ -949,6 +949,15 @@ def from_dict(cls, d: Dict[str, any]) -> 'JobSpecWithoutSecret': return cls(job_id=d.get('job_id', None), workspace_url=d.get('workspace_url', None)) +@dataclass +class ListArtifactsRequest: + """Get all artifacts""" + + path: Optional[str] = None + run_id: Optional[str] = None + run_uuid: Optional[str] = None + + @dataclass class ListArtifactsResponse: files: Optional['List[FileInfo]'] = None @@ -969,6 +978,14 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListArtifactsResponse': root_uri=d.get('root_uri', None)) +@dataclass +class ListExperimentsRequest: + """List experiments""" + + max_results: Optional[int] = None + view_type: Optional[str] = None + + @dataclass class ListExperimentsResponse: experiments: Optional['List[Experiment]'] = None @@ -986,6 +1003,13 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListExperimentsResponse': next_page_token=d.get('next_page_token', None)) +@dataclass +class ListModelsRequest: + """List models""" + + max_results: Optional[int] = None + + @dataclass class ListModelsResponse: next_page_token: Optional[str] = None @@ -1034,6 +1058,14 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListTransitionRequestsResponse': return cls(requests=_repeated(d, 'requests', Activity)) +@dataclass +class ListWebhooksRequest: + """List registry webhooks""" + + events: Optional['List[RegistryWebhookEvent]'] = None + model_name: Optional[str] = None + + @dataclass class LogBatch: metrics: Optional['List[Metric]'] = None @@ -1828,7 +1860,6 @@ class SearchExperiments: filter: Optional[str] = None max_results: Optional[int] = None order_by: Optional['List[str]'] = None - page_token: Optional[str] = None view_type: Optional['SearchExperimentsViewType'] = None def as_dict(self) -> dict: @@ -1836,7 +1867,6 @@ def as_dict(self) -> dict: if self.filter is not None: body['filter'] = self.filter if self.max_results is not None: body['max_results'] = self.max_results if self.order_by: body['order_by'] = [v for v in self.order_by] - if self.page_token is not None: body['page_token'] = self.page_token if self.view_type is not None: body['view_type'] = self.view_type.value return body @@ -1845,7 +1875,6 @@ def from_dict(cls, d: Dict[str, any]) -> 'SearchExperiments': return cls(filter=d.get('filter', None), max_results=d.get('max_results', None), order_by=d.get('order_by', None), - page_token=d.get('page_token', None), view_type=_enum(d, 'view_type', SearchExperimentsViewType)) @@ -1875,6 +1904,15 @@ class SearchExperimentsViewType(Enum): DELETED_ONLY = 'DELETED_ONLY' +@dataclass +class SearchModelVersionsRequest: + """Searches model versions""" + + filter: Optional[str] = None + max_results: Optional[int] = None + order_by: Optional['List[str]'] = None + + @dataclass class SearchModelVersionsResponse: model_versions: Optional['List[ModelVersion]'] = None @@ -1892,6 +1930,15 @@ def from_dict(cls, d: Dict[str, any]) -> 'SearchModelVersionsResponse': next_page_token=d.get('next_page_token', None)) +@dataclass +class SearchModelsRequest: + """Search models""" + + filter: Optional[str] = None + max_results: Optional[int] = None + order_by: Optional['List[str]'] = None + + @dataclass class SearchModelsResponse: next_page_token: Optional[str] = None @@ -1915,7 +1962,6 @@ class SearchRuns: filter: Optional[str] = None max_results: Optional[int] = None order_by: Optional['List[str]'] = None - page_token: Optional[str] = None run_view_type: Optional['SearchRunsRunViewType'] = None def as_dict(self) -> dict: @@ -1924,7 +1970,6 @@ def as_dict(self) -> dict: if self.filter is not None: body['filter'] = self.filter if self.max_results is not None: body['max_results'] = self.max_results if self.order_by: body['order_by'] = [v for v in self.order_by] - if self.page_token is not None: body['page_token'] = self.page_token if self.run_view_type is not None: body['run_view_type'] = self.run_view_type.value return body @@ -1934,7 +1979,6 @@ def from_dict(cls, d: Dict[str, any]) -> 'SearchRuns': filter=d.get('filter', None), max_results=d.get('max_results', None), order_by=d.get('order_by', None), - page_token=d.get('page_token', None), run_view_type=_enum(d, 'run_view_type', SearchRunsRunViewType)) @@ -2594,7 +2638,6 @@ def get_run(self, run_id: str, *, run_uuid: Optional[str] = None) -> GetRunRespo def list_artifacts(self, *, - page_token: Optional[str] = None, path: Optional[str] = None, run_id: Optional[str] = None, run_uuid: Optional[str] = None) -> Iterator[FileInfo]: @@ -2617,7 +2660,6 @@ def list_artifacts(self, """ query = {} - if page_token is not None: query['page_token'] = page_token if path is not None: query['path'] = path if run_id is not None: query['run_id'] = run_id if run_uuid is not None: query['run_uuid'] = run_uuid @@ -2635,7 +2677,6 @@ def list_artifacts(self, def list_experiments(self, *, max_results: Optional[int] = None, - page_token: Optional[str] = None, view_type: Optional[str] = None) -> Iterator[Experiment]: """List experiments. @@ -2655,7 +2696,6 @@ def list_experiments(self, query = {} if max_results is not None: query['max_results'] = max_results - if page_token is not None: query['page_token'] = page_token if view_type is not None: query['view_type'] = view_type while True: @@ -2873,7 +2913,6 @@ def search_experiments(self, filter: Optional[str] = None, max_results: Optional[int] = None, order_by: Optional[List[str]] = None, - page_token: Optional[str] = None, view_type: Optional[SearchExperimentsViewType] = None) -> Iterator[Experiment]: """Search experiments. @@ -2898,7 +2937,6 @@ def search_experiments(self, if filter is not None: body['filter'] = filter if max_results is not None: body['max_results'] = max_results if order_by is not None: body['order_by'] = [v for v in order_by] - if page_token is not None: body['page_token'] = page_token if view_type is not None: body['view_type'] = view_type.value while True: @@ -2917,7 +2955,6 @@ def search_runs(self, filter: Optional[str] = None, max_results: Optional[int] = None, order_by: Optional[List[str]] = None, - page_token: Optional[str] = None, run_view_type: Optional[SearchRunsRunViewType] = None) -> Iterator[Run]: """Search for runs. @@ -2958,7 +2995,6 @@ def search_runs(self, if filter is not None: body['filter'] = filter if max_results is not None: body['max_results'] = max_results if order_by is not None: body['order_by'] = [v for v in order_by] - if page_token is not None: body['page_token'] = page_token if run_view_type is not None: body['run_view_type'] = run_view_type.value while True: @@ -3616,10 +3652,7 @@ def get_registered_model_permissions(self, registered_model_id: str) -> Register json = self._api.do('GET', f'/api/2.0/permissions/registered-models/{registered_model_id}') return RegisteredModelPermissions.from_dict(json) - def list_models(self, - *, - max_results: Optional[int] = None, - page_token: Optional[str] = None) -> Iterator[Model]: + def list_models(self, *, max_results: Optional[int] = None) -> Iterator[Model]: """List models. Lists all available registered models, up to the limit specified in __max_results__. @@ -3634,7 +3667,6 @@ def list_models(self, query = {} if max_results is not None: query['max_results'] = max_results - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/mlflow/registered-models/list', query=query) @@ -3669,8 +3701,7 @@ def list_transition_requests(self, name: str, version: str) -> Iterator[Activity def list_webhooks(self, *, events: Optional[List[RegistryWebhookEvent]] = None, - model_name: Optional[str] = None, - page_token: Optional[str] = None) -> Iterator[RegistryWebhook]: + model_name: Optional[str] = None) -> Iterator[RegistryWebhook]: """List registry webhooks. **NOTE:** This endpoint is in Public Preview. @@ -3692,7 +3723,6 @@ def list_webhooks(self, query = {} if events is not None: query['events'] = [v.value for v in events] if model_name is not None: query['model_name'] = model_name - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/mlflow/registry-webhooks/list', query=query) @@ -3765,8 +3795,7 @@ def search_model_versions(self, *, filter: Optional[str] = None, max_results: Optional[int] = None, - order_by: Optional[List[str]] = None, - page_token: Optional[str] = None) -> Iterator[ModelVersion]: + order_by: Optional[List[str]] = None) -> Iterator[ModelVersion]: """Searches model versions. Searches for specific model versions based on the supplied __filter__. @@ -3790,7 +3819,6 @@ def search_model_versions(self, if filter is not None: query['filter'] = filter if max_results is not None: query['max_results'] = max_results if order_by is not None: query['order_by'] = [v for v in order_by] - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/mlflow/model-versions/search', query=query) @@ -3806,8 +3834,7 @@ def search_models(self, *, filter: Optional[str] = None, max_results: Optional[int] = None, - order_by: Optional[List[str]] = None, - page_token: Optional[str] = None) -> Iterator[Model]: + order_by: Optional[List[str]] = None) -> Iterator[Model]: """Search models. Search for registered models based on the specified __filter__. @@ -3832,7 +3859,6 @@ def search_models(self, if filter is not None: query['filter'] = filter if max_results is not None: query['max_results'] = max_results if order_by is not None: query['order_by'] = [v for v in order_by] - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/mlflow/registered-models/search', query=query) diff --git a/databricks/sdk/service/pipelines.py b/databricks/sdk/service/pipelines.py index 59e64afb..c3c85abd 100755 --- a/databricks/sdk/service/pipelines.py +++ b/databricks/sdk/service/pipelines.py @@ -336,6 +336,16 @@ def from_dict(cls, d: Dict[str, any]) -> 'GetUpdateResponse': return cls(update=_from_dict(d, 'update', UpdateInfo)) +@dataclass +class ListPipelineEventsRequest: + """List pipeline events""" + + pipeline_id: str + filter: Optional[str] = None + max_results: Optional[int] = None + order_by: Optional['List[str]'] = None + + @dataclass class ListPipelineEventsResponse: events: Optional['List[PipelineEvent]'] = None @@ -356,6 +366,15 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListPipelineEventsResponse': prev_page_token=d.get('prev_page_token', None)) +@dataclass +class ListPipelinesRequest: + """List pipelines""" + + filter: Optional[str] = None + max_results: Optional[int] = None + order_by: Optional['List[str]'] = None + + @dataclass class ListPipelinesResponse: next_page_token: Optional[str] = None @@ -1312,8 +1331,7 @@ def list_pipeline_events(self, *, filter: Optional[str] = None, max_results: Optional[int] = None, - order_by: Optional[List[str]] = None, - page_token: Optional[str] = None) -> Iterator[PipelineEvent]: + order_by: Optional[List[str]] = None) -> Iterator[PipelineEvent]: """List pipeline events. Retrieves events for a pipeline. @@ -1345,7 +1363,6 @@ def list_pipeline_events(self, if filter is not None: query['filter'] = filter if max_results is not None: query['max_results'] = max_results if order_by is not None: query['order_by'] = [v for v in order_by] - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', f'/api/2.0/pipelines/{pipeline_id}/events', query=query) @@ -1361,8 +1378,7 @@ def list_pipelines(self, *, filter: Optional[str] = None, max_results: Optional[int] = None, - order_by: Optional[List[str]] = None, - page_token: Optional[str] = None) -> Iterator[PipelineStateInfo]: + order_by: Optional[List[str]] = None) -> Iterator[PipelineStateInfo]: """List pipelines. Lists pipelines defined in the Delta Live Tables system. @@ -1393,7 +1409,6 @@ def list_pipelines(self, if filter is not None: query['filter'] = filter if max_results is not None: query['max_results'] = max_results if order_by is not None: query['order_by'] = [v for v in order_by] - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/pipelines', query=query) diff --git a/databricks/sdk/service/sql.py b/databricks/sdk/service/sql.py index d1f36f0a..658f24ae 100755 --- a/databricks/sdk/service/sql.py +++ b/databricks/sdk/service/sql.py @@ -205,6 +205,7 @@ def from_dict(cls, d: Dict[str, any]) -> 'ChannelInfo': class ChannelName(Enum): + """Name of the channel""" CHANNEL_NAME_CURRENT = 'CHANNEL_NAME_CURRENT' CHANNEL_NAME_CUSTOM = 'CHANNEL_NAME_CUSTOM' @@ -1122,12 +1123,28 @@ class GetWorkspaceWarehouseConfigResponseSecurityPolicy(Enum): PASSTHROUGH = 'PASSTHROUGH' +@dataclass +class ListDashboardsRequest: + """Get dashboard objects""" + + order: Optional['ListOrder'] = None + q: Optional[str] = None + + class ListOrder(Enum): CREATED_AT = 'created_at' NAME = 'name' +@dataclass +class ListQueriesRequest: + """Get a list of queries""" + + order: Optional[str] = None + q: Optional[str] = None + + @dataclass class ListQueriesResponse: has_next_page: Optional[bool] = None @@ -1148,6 +1165,15 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListQueriesResponse': res=_repeated(d, 'res', QueryInfo)) +@dataclass +class ListQueryHistoryRequest: + """List Queries""" + + filter_by: Optional['QueryFilter'] = None + include_metrics: Optional[bool] = None + max_results: Optional[int] = None + + @dataclass class ListResponse: count: Optional[int] = None @@ -2599,12 +2625,7 @@ def get(self, dashboard_id: str) -> Dashboard: json = self._api.do('GET', f'/api/2.0/preview/sql/dashboards/{dashboard_id}') return Dashboard.from_dict(json) - def list(self, - *, - order: Optional[ListOrder] = None, - page: Optional[int] = None, - page_size: Optional[int] = None, - q: Optional[str] = None) -> Iterator[Dashboard]: + def list(self, *, order: Optional[ListOrder] = None, q: Optional[str] = None) -> Iterator[Dashboard]: """Get dashboard objects. Fetch a paginated list of dashboard objects. @@ -2623,8 +2644,6 @@ def list(self, query = {} if order is not None: query['order'] = order.value - if page is not None: query['page'] = page - if page_size is not None: query['page_size'] = page_size if q is not None: query['q'] = q # deduplicate items that may have been added during iteration @@ -2849,12 +2868,7 @@ def get(self, query_id: str) -> Query: json = self._api.do('GET', f'/api/2.0/preview/sql/queries/{query_id}') return Query.from_dict(json) - def list(self, - *, - order: Optional[str] = None, - page: Optional[int] = None, - page_size: Optional[int] = None, - q: Optional[str] = None) -> Iterator[Query]: + def list(self, *, order: Optional[str] = None, q: Optional[str] = None) -> Iterator[Query]: """Get a list of queries. Gets a list of queries. Optionally, this list can be filtered by a search term. @@ -2885,8 +2899,6 @@ def list(self, query = {} if order is not None: query['order'] = order - if page is not None: query['page'] = page - if page_size is not None: query['page_size'] = page_size if q is not None: query['q'] = q # deduplicate items that may have been added during iteration @@ -2968,8 +2980,7 @@ def list(self, *, filter_by: Optional[QueryFilter] = None, include_metrics: Optional[bool] = None, - max_results: Optional[int] = None, - page_token: Optional[str] = None) -> Iterator[QueryInfo]: + max_results: Optional[int] = None) -> Iterator[QueryInfo]: """List Queries. List the history of queries through SQL warehouses. @@ -2992,7 +3003,6 @@ def list(self, if filter_by is not None: query['filter_by'] = filter_by.as_dict() if include_metrics is not None: query['include_metrics'] = include_metrics if max_results is not None: query['max_results'] = max_results - if page_token is not None: query['page_token'] = page_token while True: json = self._api.do('GET', '/api/2.0/sql/history/queries', query=query) diff --git a/databricks/sdk/service/workspace.py b/databricks/sdk/service/workspace.py index 5c45d80e..7875ad39 100755 --- a/databricks/sdk/service/workspace.py +++ b/databricks/sdk/service/workspace.py @@ -355,6 +355,13 @@ def from_dict(cls, d: Dict[str, any]) -> 'ListAclsResponse': return cls(items=_repeated(d, 'items', AclItem)) +@dataclass +class ListReposRequest: + """Get repos""" + + path_prefix: Optional[str] = None + + @dataclass class ListReposResponse: next_page_token: Optional[str] = None @@ -1152,10 +1159,7 @@ def get_repo_permissions(self, repo_id: str) -> RepoPermissions: json = self._api.do('GET', f'/api/2.0/permissions/repos/{repo_id}') return RepoPermissions.from_dict(json) - def list(self, - *, - next_page_token: Optional[str] = None, - path_prefix: Optional[str] = None) -> Iterator[RepoInfo]: + def list(self, *, path_prefix: Optional[str] = None) -> Iterator[RepoInfo]: """Get repos. Returns repos that the calling user has Manage permissions on. Results are paginated with each page @@ -1171,7 +1175,6 @@ def list(self, """ query = {} - if next_page_token is not None: query['next_page_token'] = next_page_token if path_prefix is not None: query['path_prefix'] = path_prefix while True: