tableauserverclient 0.37__py3-none-any.whl → 0.38__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.
- tableauserverclient/__init__.py +4 -0
- tableauserverclient/bin/_version.py +3 -3
- tableauserverclient/helpers/strings.py +25 -1
- tableauserverclient/models/__init__.py +6 -1
- tableauserverclient/models/datasource_item.py +110 -2
- tableauserverclient/models/extract_item.py +82 -0
- tableauserverclient/models/flow_item.py +2 -2
- tableauserverclient/models/group_item.py +11 -0
- tableauserverclient/models/interval_item.py +40 -0
- tableauserverclient/models/location_item.py +53 -0
- tableauserverclient/models/project_item.py +138 -27
- tableauserverclient/models/schedule_item.py +57 -0
- tableauserverclient/models/site_item.py +28 -0
- tableauserverclient/models/table_item.py +7 -3
- tableauserverclient/models/tableau_types.py +13 -1
- tableauserverclient/models/user_item.py +101 -1
- tableauserverclient/models/view_item.py +79 -5
- tableauserverclient/models/workbook_item.py +151 -1
- tableauserverclient/server/endpoint/databases_endpoint.py +101 -18
- tableauserverclient/server/endpoint/datasources_endpoint.py +3 -3
- tableauserverclient/server/endpoint/dqw_endpoint.py +16 -6
- tableauserverclient/server/endpoint/endpoint.py +39 -0
- tableauserverclient/server/endpoint/schedules_endpoint.py +132 -2
- tableauserverclient/server/endpoint/sites_endpoint.py +18 -1
- tableauserverclient/server/endpoint/tables_endpoint.py +140 -17
- tableauserverclient/server/endpoint/users_endpoint.py +22 -5
- tableauserverclient/server/query.py +36 -0
- tableauserverclient/server/request_factory.py +5 -0
- tableauserverclient/server/request_options.py +128 -2
- tableauserverclient/server/server.py +42 -0
- {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/METADATA +1 -1
- {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/RECORD +36 -34
- {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/WHEEL +1 -1
- {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/licenses/LICENSE +0 -0
- {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/licenses/LICENSE.versioneer +0 -0
- {tableauserverclient-0.37.dist-info → tableauserverclient-0.38.dist-info}/top_level.txt +0 -0
|
@@ -913,6 +913,8 @@ class UserRequest:
|
|
|
913
913
|
user_element.attrib["authSetting"] = user_item.auth_setting
|
|
914
914
|
if password:
|
|
915
915
|
user_element.attrib["password"] = password
|
|
916
|
+
if user_item.idp_configuration_id is not None:
|
|
917
|
+
user_element.attrib["idpConfigurationId"] = user_item.idp_configuration_id
|
|
916
918
|
return ET.tostring(xml_request)
|
|
917
919
|
|
|
918
920
|
def add_req(self, user_item: UserItem) -> bytes:
|
|
@@ -929,6 +931,9 @@ class UserRequest:
|
|
|
929
931
|
|
|
930
932
|
if user_item.auth_setting:
|
|
931
933
|
user_element.attrib["authSetting"] = user_item.auth_setting
|
|
934
|
+
|
|
935
|
+
if user_item.idp_configuration_id is not None:
|
|
936
|
+
user_element.attrib["idpConfigurationId"] = user_item.idp_configuration_id
|
|
932
937
|
return ET.tostring(xml_request)
|
|
933
938
|
|
|
934
939
|
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import sys
|
|
2
2
|
from typing import Optional
|
|
3
|
+
import warnings
|
|
3
4
|
|
|
4
5
|
from typing_extensions import Self
|
|
5
6
|
|
|
@@ -62,8 +63,21 @@ class RequestOptions(RequestOptionsBase):
|
|
|
62
63
|
self.pagesize = pagesize or config.PAGE_SIZE
|
|
63
64
|
self.sort = set()
|
|
64
65
|
self.filter = set()
|
|
66
|
+
self.fields = set()
|
|
65
67
|
# This is private until we expand all of our parsers to handle the extra fields
|
|
66
|
-
self.
|
|
68
|
+
self.all_fields = False
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
def _all_fields(self) -> bool:
|
|
72
|
+
return self.all_fields
|
|
73
|
+
|
|
74
|
+
@_all_fields.setter
|
|
75
|
+
def _all_fields(self, value):
|
|
76
|
+
warnings.warn(
|
|
77
|
+
"Directly setting _all_fields is deprecated, please use the all_fields property instead.",
|
|
78
|
+
DeprecationWarning,
|
|
79
|
+
)
|
|
80
|
+
self.all_fields = value
|
|
67
81
|
|
|
68
82
|
def get_query_params(self) -> dict:
|
|
69
83
|
params = {}
|
|
@@ -75,12 +89,14 @@ class RequestOptions(RequestOptionsBase):
|
|
|
75
89
|
filter_options = (str(filter_item) for filter_item in self.filter)
|
|
76
90
|
ordered_filter_options = sorted(filter_options)
|
|
77
91
|
params["filter"] = ",".join(ordered_filter_options)
|
|
78
|
-
if self.
|
|
92
|
+
if self.all_fields:
|
|
79
93
|
params["fields"] = "_all_"
|
|
80
94
|
if self.pagenumber:
|
|
81
95
|
params["pageNumber"] = self.pagenumber
|
|
82
96
|
if self.pagesize:
|
|
83
97
|
params["pageSize"] = self.pagesize
|
|
98
|
+
if self.fields:
|
|
99
|
+
params["fields"] = ",".join(self.fields)
|
|
84
100
|
return params
|
|
85
101
|
|
|
86
102
|
def page_size(self, page_size):
|
|
@@ -181,6 +197,116 @@ class RequestOptions(RequestOptionsBase):
|
|
|
181
197
|
Desc = "desc"
|
|
182
198
|
Asc = "asc"
|
|
183
199
|
|
|
200
|
+
class SelectFields:
|
|
201
|
+
class Common:
|
|
202
|
+
All = "_all_"
|
|
203
|
+
Default = "_default_"
|
|
204
|
+
|
|
205
|
+
class ContentsCounts:
|
|
206
|
+
ProjectCount = "contentsCounts.projectCount"
|
|
207
|
+
ViewCount = "contentsCounts.viewCount"
|
|
208
|
+
DatasourceCount = "contentsCounts.datasourceCount"
|
|
209
|
+
WorkbookCount = "contentsCounts.workbookCount"
|
|
210
|
+
|
|
211
|
+
class Datasource:
|
|
212
|
+
ContentUrl = "datasource.contentUrl"
|
|
213
|
+
ID = "datasource.id"
|
|
214
|
+
Name = "datasource.name"
|
|
215
|
+
Type = "datasource.type"
|
|
216
|
+
Description = "datasource.description"
|
|
217
|
+
CreatedAt = "datasource.createdAt"
|
|
218
|
+
UpdatedAt = "datasource.updatedAt"
|
|
219
|
+
EncryptExtracts = "datasource.encryptExtracts"
|
|
220
|
+
IsCertified = "datasource.isCertified"
|
|
221
|
+
UseRemoteQueryAgent = "datasource.useRemoteQueryAgent"
|
|
222
|
+
WebPageURL = "datasource.webpageUrl"
|
|
223
|
+
Size = "datasource.size"
|
|
224
|
+
Tag = "datasource.tag"
|
|
225
|
+
FavoritesTotal = "datasource.favoritesTotal"
|
|
226
|
+
DatabaseName = "datasource.databaseName"
|
|
227
|
+
ConnectedWorkbooksCount = "datasource.connectedWorkbooksCount"
|
|
228
|
+
HasAlert = "datasource.hasAlert"
|
|
229
|
+
HasExtracts = "datasource.hasExtracts"
|
|
230
|
+
IsPublished = "datasource.isPublished"
|
|
231
|
+
ServerName = "datasource.serverName"
|
|
232
|
+
|
|
233
|
+
class Favorite:
|
|
234
|
+
Label = "favorite.label"
|
|
235
|
+
ParentProjectName = "favorite.parentProjectName"
|
|
236
|
+
TargetOwnerName = "favorite.targetOwnerName"
|
|
237
|
+
|
|
238
|
+
class Group:
|
|
239
|
+
ID = "group.id"
|
|
240
|
+
Name = "group.name"
|
|
241
|
+
DomainName = "group.domainName"
|
|
242
|
+
UserCount = "group.userCount"
|
|
243
|
+
MinimumSiteRole = "group.minimumSiteRole"
|
|
244
|
+
|
|
245
|
+
class Job:
|
|
246
|
+
ID = "job.id"
|
|
247
|
+
Status = "job.status"
|
|
248
|
+
CreatedAt = "job.createdAt"
|
|
249
|
+
StartedAt = "job.startedAt"
|
|
250
|
+
EndedAt = "job.endedAt"
|
|
251
|
+
Priority = "job.priority"
|
|
252
|
+
JobType = "job.jobType"
|
|
253
|
+
Title = "job.title"
|
|
254
|
+
Subtitle = "job.subtitle"
|
|
255
|
+
|
|
256
|
+
class Owner:
|
|
257
|
+
ID = "owner.id"
|
|
258
|
+
Name = "owner.name"
|
|
259
|
+
FullName = "owner.fullName"
|
|
260
|
+
SiteRole = "owner.siteRole"
|
|
261
|
+
LastLogin = "owner.lastLogin"
|
|
262
|
+
Email = "owner.email"
|
|
263
|
+
|
|
264
|
+
class Project:
|
|
265
|
+
ID = "project.id"
|
|
266
|
+
Name = "project.name"
|
|
267
|
+
Description = "project.description"
|
|
268
|
+
CreatedAt = "project.createdAt"
|
|
269
|
+
UpdatedAt = "project.updatedAt"
|
|
270
|
+
ContentPermissions = "project.contentPermissions"
|
|
271
|
+
ParentProjectID = "project.parentProjectId"
|
|
272
|
+
TopLevelProject = "project.topLevelProject"
|
|
273
|
+
Writeable = "project.writeable"
|
|
274
|
+
|
|
275
|
+
class User:
|
|
276
|
+
ExternalAuthUserId = "user.externalAuthUserId"
|
|
277
|
+
ID = "user.id"
|
|
278
|
+
Name = "user.name"
|
|
279
|
+
SiteRole = "user.siteRole"
|
|
280
|
+
LastLogin = "user.lastLogin"
|
|
281
|
+
FullName = "user.fullName"
|
|
282
|
+
Email = "user.email"
|
|
283
|
+
AuthSetting = "user.authSetting"
|
|
284
|
+
|
|
285
|
+
class View:
|
|
286
|
+
ID = "view.id"
|
|
287
|
+
Name = "view.name"
|
|
288
|
+
ContentUrl = "view.contentUrl"
|
|
289
|
+
CreatedAt = "view.createdAt"
|
|
290
|
+
UpdatedAt = "view.updatedAt"
|
|
291
|
+
Tags = "view.tags"
|
|
292
|
+
SheetType = "view.sheetType"
|
|
293
|
+
Usage = "view.usage"
|
|
294
|
+
|
|
295
|
+
class Workbook:
|
|
296
|
+
ID = "workbook.id"
|
|
297
|
+
Description = "workbook.description"
|
|
298
|
+
Name = "workbook.name"
|
|
299
|
+
ContentUrl = "workbook.contentUrl"
|
|
300
|
+
ShowTabs = "workbook.showTabs"
|
|
301
|
+
Size = "workbook.size"
|
|
302
|
+
CreatedAt = "workbook.createdAt"
|
|
303
|
+
UpdatedAt = "workbook.updatedAt"
|
|
304
|
+
SheetCount = "workbook.sheetCount"
|
|
305
|
+
HasExtracts = "workbook.hasExtracts"
|
|
306
|
+
Tags = "workbook.tags"
|
|
307
|
+
WebpageUrl = "workbook.webpageUrl"
|
|
308
|
+
DefaultViewId = "workbook.defaultViewId"
|
|
309
|
+
|
|
184
310
|
|
|
185
311
|
"""
|
|
186
312
|
These options can be used by methods that are fetching data exported from a specific content item
|
|
@@ -2,6 +2,7 @@ from tableauserverclient.helpers.logging import logger
|
|
|
2
2
|
|
|
3
3
|
import requests
|
|
4
4
|
import urllib3
|
|
5
|
+
import ssl
|
|
5
6
|
|
|
6
7
|
from defusedxml.ElementTree import fromstring, ParseError
|
|
7
8
|
from packaging.version import Version
|
|
@@ -91,6 +92,13 @@ class Server:
|
|
|
91
92
|
and a later version of the REST API. For more information, see REST API
|
|
92
93
|
Versions.
|
|
93
94
|
|
|
95
|
+
http_options : dict, optional
|
|
96
|
+
Additional options to pass to the requests library when making HTTP requests.
|
|
97
|
+
|
|
98
|
+
session_factory : callable, optional
|
|
99
|
+
A factory function that returns a requests.Session object. If not provided,
|
|
100
|
+
requests.session is used.
|
|
101
|
+
|
|
94
102
|
Examples
|
|
95
103
|
--------
|
|
96
104
|
>>> import tableauserverclient as TSC
|
|
@@ -107,6 +115,16 @@ class Server:
|
|
|
107
115
|
>>> # for example, 2.8
|
|
108
116
|
>>> # server.version = '2.8'
|
|
109
117
|
|
|
118
|
+
>>> # if connecting to an older Tableau Server with weak DH keys (Python 3.12+ only)
|
|
119
|
+
>>> server.configure_ssl(allow_weak_dh=True) # Note: reduces security
|
|
120
|
+
|
|
121
|
+
Notes
|
|
122
|
+
-----
|
|
123
|
+
When using Python 3.12 or later with older versions of Tableau Server, you may encounter
|
|
124
|
+
SSL errors related to weak Diffie-Hellman keys. This is because newer Python versions
|
|
125
|
+
enforce stronger security requirements. You can temporarily work around this using
|
|
126
|
+
configure_ssl(allow_weak_dh=True), but this reduces security and should only be used
|
|
127
|
+
as a temporary measure until the server can be upgraded.
|
|
110
128
|
"""
|
|
111
129
|
|
|
112
130
|
class PublishMode:
|
|
@@ -125,6 +143,7 @@ class Server:
|
|
|
125
143
|
self._auth_token = None
|
|
126
144
|
self._site_id = None
|
|
127
145
|
self._user_id = None
|
|
146
|
+
self._ssl_context = None
|
|
128
147
|
|
|
129
148
|
# TODO: this needs to change to default to https, but without breaking existing code
|
|
130
149
|
if not server_address.startswith("http://") and not server_address.startswith("https://"):
|
|
@@ -313,3 +332,26 @@ class Server:
|
|
|
313
332
|
|
|
314
333
|
def is_signed_in(self):
|
|
315
334
|
return self._auth_token is not None
|
|
335
|
+
|
|
336
|
+
def configure_ssl(self, *, allow_weak_dh=False):
|
|
337
|
+
"""Configure SSL/TLS settings for the server connection.
|
|
338
|
+
|
|
339
|
+
Parameters
|
|
340
|
+
----------
|
|
341
|
+
allow_weak_dh : bool, optional
|
|
342
|
+
If True, allows connections to servers with DH keys that are considered too small by modern Python versions.
|
|
343
|
+
WARNING: This reduces security and should only be used as a temporary workaround.
|
|
344
|
+
"""
|
|
345
|
+
if allow_weak_dh:
|
|
346
|
+
logger.warning(
|
|
347
|
+
"WARNING: Allowing weak Diffie-Hellman keys. This reduces security and should only be used temporarily."
|
|
348
|
+
)
|
|
349
|
+
self._ssl_context = ssl.create_default_context()
|
|
350
|
+
# Allow weak DH keys by setting minimum key size to 512 bits (default is 1024 in Python 3.12+)
|
|
351
|
+
self._ssl_context.set_dh_parameters(min_key_bits=512)
|
|
352
|
+
self.add_http_options({"verify": self._ssl_context})
|
|
353
|
+
else:
|
|
354
|
+
self._ssl_context = None
|
|
355
|
+
# Remove any custom SSL context if we're reverting to default settings
|
|
356
|
+
if "verify" in self._http_options:
|
|
357
|
+
del self._http_options["verify"]
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
tableauserverclient/__init__.py,sha256=
|
|
1
|
+
tableauserverclient/__init__.py,sha256=MF3FF8PVVTOMt6XisyADxGtHwT2ZGYqzD0QYbKL3Fo0,2958
|
|
2
2
|
tableauserverclient/config.py,sha256=LcWVmZjkYMh1cKCKZm3VZItgKOoSLz1ai4PnVgbAtDA,713
|
|
3
3
|
tableauserverclient/datetime_helpers.py,sha256=_-gWz5I2_KHT5AzW_boD8meH6loTTKdK-_62h1MA6ko,884
|
|
4
4
|
tableauserverclient/exponential_backoff.py,sha256=HtAfbbVnYtiOe2_ZzKqZmsml40EDZBaC3bttif5qeG8,1474
|
|
5
5
|
tableauserverclient/filesys_helpers.py,sha256=hosTm9fpc9B9_VCDcAuyHA0A-f-MWs9_2utyRweuZ5I,1667
|
|
6
6
|
tableauserverclient/namespace.py,sha256=Zh6QtxNmqPkjRMsefHHX-ycS4r-egnrJ4-hdHvldBHw,963
|
|
7
7
|
tableauserverclient/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
8
|
-
tableauserverclient/bin/_version.py,sha256=
|
|
8
|
+
tableauserverclient/bin/_version.py,sha256=E7k74Qr0m6ibFzFeSwltkPyK8dAWvX_lwhGIx-whZy4,496
|
|
9
9
|
tableauserverclient/helpers/__init__.py,sha256=llpqF9zV5dsP5hQt8dyop33Op5OzGmxW0BZibaSlCcM,23
|
|
10
10
|
tableauserverclient/helpers/headers.py,sha256=Pg-ZWSgV2Yp813BV1Tzo8F2Hn4P01zscla2RRM4yqNk,411
|
|
11
11
|
tableauserverclient/helpers/logging.py,sha256=5q_oR3wERHVXFXY6XDnLYML5-HdAPJTmqhH9IZg4VfY,113
|
|
12
|
-
tableauserverclient/helpers/strings.py,sha256=
|
|
13
|
-
tableauserverclient/models/__init__.py,sha256=
|
|
12
|
+
tableauserverclient/helpers/strings.py,sha256=7MvaS9haJ5hpdv4NPQ11gRj94zIgbDmujFPD_GnZPJI,2013
|
|
13
|
+
tableauserverclient/models/__init__.py,sha256=Udhoop0M75G6NMWyPzgH6Mr2PBH5H77jF359P5y4DUM,4272
|
|
14
14
|
tableauserverclient/models/column_item.py,sha256=yUFzXNcnUPVo2imrhEBS4fMVAR5j2ZzksOk5t9XYW5s,1964
|
|
15
15
|
tableauserverclient/models/connection_credentials.py,sha256=CQ8FkkHW9MeTw8uArNhrU5mowtryWUddgEgEliqh3ys,2066
|
|
16
16
|
tableauserverclient/models/connection_item.py,sha256=LwZza3I5Zwx04BcLGWQXRcuZq5X_X86DDse6RMmrcr8,6002
|
|
@@ -19,59 +19,61 @@ tableauserverclient/models/data_acceleration_report_item.py,sha256=HFZROetfOWh-h
|
|
|
19
19
|
tableauserverclient/models/data_alert_item.py,sha256=VZtRR-kqojq-mkrTgvay4WkPawj3-4jbSc0wBijmJhk,6444
|
|
20
20
|
tableauserverclient/models/data_freshness_policy_item.py,sha256=UdaEmwVL_q364Do_2dOnkCSX-oKnvjKfsYzGSaJIQFs,7618
|
|
21
21
|
tableauserverclient/models/database_item.py,sha256=lWxmmMpPeVxzizVAsVkc6Ps2I-j-0KJAJZto8qShrYU,8223
|
|
22
|
-
tableauserverclient/models/datasource_item.py,sha256=
|
|
22
|
+
tableauserverclient/models/datasource_item.py,sha256=1cQrn_Mm46aPq-RPJD5LRBq-gr2zbgXs5tLG8wG7oP8,19689
|
|
23
23
|
tableauserverclient/models/dqw_item.py,sha256=87oTc7icrQst_DSaTqoVR965YEckg5dk6osa51BrCAk,3710
|
|
24
24
|
tableauserverclient/models/exceptions.py,sha256=pQu5DS4jNMT9A0wEBWv2vANAQU1vgNpFatVr8sGE4zk,105
|
|
25
|
+
tableauserverclient/models/extract_item.py,sha256=2qDyNrAanbw1gK6qE2L7RwQFsIg_59unUx8rbLWrTmg,2691
|
|
25
26
|
tableauserverclient/models/favorites_item.py,sha256=JxHfy38xdRYol2KM_8_A7Ng59cZunkhTNcpxO670k08,3294
|
|
26
27
|
tableauserverclient/models/fileupload_item.py,sha256=N5M0jtlFj_PFh3jlp2AbcYOwCwdnBCk_L64xe3Z4ves,742
|
|
27
|
-
tableauserverclient/models/flow_item.py,sha256=
|
|
28
|
+
tableauserverclient/models/flow_item.py,sha256=aXAv7yIWdpISBWARBkc8aHUmMmtk4z2ZFhWvVT0gCkg,8664
|
|
28
29
|
tableauserverclient/models/flow_run_item.py,sha256=nf_b6KRwNevwZRsPoMh8dLzdONUMWY2wipWEMdY9SN4,3113
|
|
29
|
-
tableauserverclient/models/group_item.py,sha256=
|
|
30
|
+
tableauserverclient/models/group_item.py,sha256=qirnux5rrH_-Ih6ZyXceSz7ylXtRinY7FgN_Zmkhc7U,5241
|
|
30
31
|
tableauserverclient/models/groupset_item.py,sha256=gxxyzviE5B8zr2sKJteIDKtYTPYKsGd-qMcrjEY2uVU,1885
|
|
31
|
-
tableauserverclient/models/interval_item.py,sha256=
|
|
32
|
+
tableauserverclient/models/interval_item.py,sha256=zAP6gLjvFSKgEtuI2On_RRRSq240TJdCiRZaU4U2Kkg,10962
|
|
32
33
|
tableauserverclient/models/job_item.py,sha256=Q7tTKXEiW-5VJsLmnAq6auP0jvmbbImmqw_nx1kiXtM,11512
|
|
33
34
|
tableauserverclient/models/linked_tasks_item.py,sha256=TYkNvmJfKlZ30OST8w9GUobboFAH5ftFKjXdWWAtR24,3806
|
|
35
|
+
tableauserverclient/models/location_item.py,sha256=8pVxiSoySTAQOF9QDe0KiHMUp0aiFG-sZ2cB1u8oAEg,1287
|
|
34
36
|
tableauserverclient/models/metric_item.py,sha256=D3atzbr3jtQUsVsqYHfz-v3yRP3qruRN5jRsv_-yRQ0,5378
|
|
35
37
|
tableauserverclient/models/pagination_item.py,sha256=55Ap_9pJxq8plWQO1Js3Jp6KFidN3TQsL5LM2-yZGDo,1424
|
|
36
38
|
tableauserverclient/models/permissions_item.py,sha256=CWf1Q4x7U4QQWQ1VUWgDzaE7mhriHblG1MJAc6EKJHM,6149
|
|
37
|
-
tableauserverclient/models/project_item.py,sha256=
|
|
39
|
+
tableauserverclient/models/project_item.py,sha256=5xoKbLUhpQ21i0iRG1MVbYLa5wetwTAmZ2IkzwmFsO4,11687
|
|
38
40
|
tableauserverclient/models/property_decorators.py,sha256=v2cTqiW5iZXoOyu6RYg3X6Ly--8sozjWOcKCTLi99Nc,4645
|
|
39
41
|
tableauserverclient/models/reference_item.py,sha256=R4Tr7qfVdnGcq_ac4hr0yhAjBOkqFZEW-4NGMUYaf9w,733
|
|
40
42
|
tableauserverclient/models/revision_item.py,sha256=5ghmnwhUcCOWwZdApzgV_uM3sqdoG_gtsJwUQwfKITo,2773
|
|
41
|
-
tableauserverclient/models/schedule_item.py,sha256=
|
|
43
|
+
tableauserverclient/models/schedule_item.py,sha256=tiIkTj3JIsozCqIkMLzjM11FZMAWJ3vrNgySGPbuido,13490
|
|
42
44
|
tableauserverclient/models/server_info_item.py,sha256=55wTG_31o-WwqgBrbwpgMpq_by10iM6BXpmdAZ3TO90,2631
|
|
43
|
-
tableauserverclient/models/site_item.py,sha256=
|
|
45
|
+
tableauserverclient/models/site_item.py,sha256=UjSl413kYwNJEVrqH3Fb3Y63IiCXICGYuRQuXgTyS5E,46219
|
|
44
46
|
tableauserverclient/models/subscription_item.py,sha256=ujaQQIo_ln3pnm0Th2IdcGCp_cl6WxvEMPgeZbwZtFc,4724
|
|
45
|
-
tableauserverclient/models/table_item.py,sha256=
|
|
47
|
+
tableauserverclient/models/table_item.py,sha256=4CZ2R0asNz8iINn3FKKQzjpwt-5lBAvfm0fHKmz5gcw,4752
|
|
46
48
|
tableauserverclient/models/tableau_auth.py,sha256=atmXdAsA5LrrLHEzrHJQPLYETC1iKyxFqPSwIk-vacI,8218
|
|
47
|
-
tableauserverclient/models/tableau_types.py,sha256=
|
|
49
|
+
tableauserverclient/models/tableau_types.py,sha256=bukzI490GWpebGv9ZiCuSqioqIZm9ao9Yr2GGrmM8_A,1420
|
|
48
50
|
tableauserverclient/models/tag_item.py,sha256=K2EVEy1EDdr0yLr4wBvGr-p9gIAFVsOCv80b-AFPFLk,588
|
|
49
51
|
tableauserverclient/models/target.py,sha256=dVc1SHwo9ZASR8250MhAPODXX_G5UqA4BnK8hykRE6E,263
|
|
50
52
|
tableauserverclient/models/task_item.py,sha256=l4t4COw2LfdlYmJpzUSgwGven_NSZj2r3PUJZkqvCus,4555
|
|
51
|
-
tableauserverclient/models/user_item.py,sha256=
|
|
52
|
-
tableauserverclient/models/view_item.py,sha256
|
|
53
|
+
tableauserverclient/models/user_item.py,sha256=SsrbSA62oD99agQSzNv-q5Yjqd7UEQfmAD8j78bjrDU,19454
|
|
54
|
+
tableauserverclient/models/view_item.py,sha256=-JxiwRFqBo7DS3dvwk4rxRhc25WH-Pgf8rBaLyFQOzE,12451
|
|
53
55
|
tableauserverclient/models/virtual_connection_item.py,sha256=TvX7MId7WSg4IZE41XAMl1l3Ibu8kTUR1xr26Cqtyeo,3357
|
|
54
56
|
tableauserverclient/models/webhook_item.py,sha256=r37fHY3_uhDhxupHfMSvB4I2aUjy3qQ2FOLQjAcNUUk,3994
|
|
55
|
-
tableauserverclient/models/workbook_item.py,sha256=
|
|
57
|
+
tableauserverclient/models/workbook_item.py,sha256=8HMO7MGtclG4vsnP-rUCyZE5PczbXAm1fTG-9wRUlKI,22384
|
|
56
58
|
tableauserverclient/server/__init__.py,sha256=77E-3LseLd9gHeRgKPnpZTNMQySgYiwst33AsReol-k,1940
|
|
57
59
|
tableauserverclient/server/exceptions.py,sha256=l-O4lcoEeXJC7fLWUanIcZM_Mf8m54uK3NQuKNj3RCg,183
|
|
58
60
|
tableauserverclient/server/filter.py,sha256=Z7O6A175bBSmcponLs0Enh5R5Gp2puVRGfOMk-V395w,1096
|
|
59
61
|
tableauserverclient/server/pager.py,sha256=IESvCba7WZO3O9VBcKlJ6ricVDgro0gKuUQyJnOCUws,3497
|
|
60
|
-
tableauserverclient/server/query.py,sha256=
|
|
61
|
-
tableauserverclient/server/request_factory.py,sha256=
|
|
62
|
-
tableauserverclient/server/request_options.py,sha256=
|
|
63
|
-
tableauserverclient/server/server.py,sha256=
|
|
62
|
+
tableauserverclient/server/query.py,sha256=dY_y20DOBOFwydIpLcWLK39s1lVmDPxhX5x6hVxeoL0,10529
|
|
63
|
+
tableauserverclient/server/request_factory.py,sha256=O6jqmDXUN-TnyieSvANhHyLtNxV49SzWnHdACmDRCTY,72994
|
|
64
|
+
tableauserverclient/server/request_options.py,sha256=gSaVE0LVQNNDgJFB9_WNOjjdyAl_i0Y6cwyJhXHXYkc,19889
|
|
65
|
+
tableauserverclient/server/server.py,sha256=BemJ2L0gl34JpMZL43nPQj5rulYWA1MdaaUh8DiVhKI,13363
|
|
64
66
|
tableauserverclient/server/sort.py,sha256=wjnlt7rlmLvQjM_XpgD8N8Hlg0zVvLOV7k_dAs1DmHY,628
|
|
65
67
|
tableauserverclient/server/endpoint/__init__.py,sha256=MpttkNENWAiXS2QigwZMfWG6PnsB05QSFK4-OIR3CaQ,3101
|
|
66
68
|
tableauserverclient/server/endpoint/auth_endpoint.py,sha256=8N3_OUSwYm4KCvwDJHGmH9i2OqzH70PLP0-rT-sKYVo,7177
|
|
67
69
|
tableauserverclient/server/endpoint/custom_views_endpoint.py,sha256=se-CZ9BF8Cf_quT_3BbrO9lwK7E8hHbCoMYq-2IZMM8,14515
|
|
68
70
|
tableauserverclient/server/endpoint/data_acceleration_report_endpoint.py,sha256=he-MVqCvAQo8--icEKFoIV2KUP6Z1s_PJ2uZ8Xpj2f8,1130
|
|
69
71
|
tableauserverclient/server/endpoint/data_alert_endpoint.py,sha256=ZNotgG3hBpR7fo8eDTXx_gSppF2n25GQ3udwF3MKFLk,5203
|
|
70
|
-
tableauserverclient/server/endpoint/databases_endpoint.py,sha256=
|
|
71
|
-
tableauserverclient/server/endpoint/datasources_endpoint.py,sha256=
|
|
72
|
+
tableauserverclient/server/endpoint/databases_endpoint.py,sha256=vojSCB6DQ665Z0X7h5TQg5wflU_WUtd4pgcjsda7JdU,8689
|
|
73
|
+
tableauserverclient/server/endpoint/datasources_endpoint.py,sha256=n6R5Qdfyc_nOGzhG_zcVsEtaWKZ5dRTopBM36fVTYvg,41838
|
|
72
74
|
tableauserverclient/server/endpoint/default_permissions_endpoint.py,sha256=bZlhDqu6jFyC4vbrdC3Nn1cWRJWRz0mhxco9hRUouJA,4327
|
|
73
|
-
tableauserverclient/server/endpoint/dqw_endpoint.py,sha256=
|
|
74
|
-
tableauserverclient/server/endpoint/endpoint.py,sha256=
|
|
75
|
+
tableauserverclient/server/endpoint/dqw_endpoint.py,sha256=bfgA7sRGQajR67xcRS9mIF7yKlJmjjFyN-hBxwZ5wkU,2626
|
|
76
|
+
tableauserverclient/server/endpoint/endpoint.py,sha256=035rsaaUoQP0oYtaRhtIMHs9bwMeFCt2u-gn5asOK7o,15309
|
|
75
77
|
tableauserverclient/server/endpoint/exceptions.py,sha256=ifkRatvvqG5awY73BzwALlby3dYYKr_8leUOmpeZS0Y,2919
|
|
76
78
|
tableauserverclient/server/endpoint/favorites_endpoint.py,sha256=ZMui0KQCSGRBlUrem519Y5_gBpngN7wtDWo_EvEUMEk,6340
|
|
77
79
|
tableauserverclient/server/endpoint/fileuploads_endpoint.py,sha256=e3qIw6lJJG4Y8RHG26psMjjETovpfrBzmFjeYeJll8s,2410
|
|
@@ -87,20 +89,20 @@ tableauserverclient/server/endpoint/metrics_endpoint.py,sha256=p9F_tbUela1sb3i9n
|
|
|
87
89
|
tableauserverclient/server/endpoint/permissions_endpoint.py,sha256=tXX_KSanbxUeR-L4UdI_jphko8dD_fZsXVhQayQL3JA,3719
|
|
88
90
|
tableauserverclient/server/endpoint/projects_endpoint.py,sha256=aIYW2NWZnWgK2PXHcBgHJwGxv6Ak915J-1wmPD1FiFY,30603
|
|
89
91
|
tableauserverclient/server/endpoint/resource_tagger.py,sha256=eKekflXzLjx_zDOLgYkTIusRO8vsFus1LvLIf0LOwtQ,6661
|
|
90
|
-
tableauserverclient/server/endpoint/schedules_endpoint.py,sha256=
|
|
92
|
+
tableauserverclient/server/endpoint/schedules_endpoint.py,sha256=6CnlvC2OIMRTUM1JYYgg5WWVG68vnw2Cfui-O-vkYj4,11032
|
|
91
93
|
tableauserverclient/server/endpoint/server_info_endpoint.py,sha256=9UcYP3td22S_Kwabu-RWc-Pn3lFrIERVlzVpl4ErP_I,2649
|
|
92
|
-
tableauserverclient/server/endpoint/sites_endpoint.py,sha256=
|
|
94
|
+
tableauserverclient/server/endpoint/sites_endpoint.py,sha256=Fh8ppL00IVI1YpXyOXCCc5fIc_r_TC1o8GCgYD_gOV4,14778
|
|
93
95
|
tableauserverclient/server/endpoint/subscriptions_endpoint.py,sha256=21oZ6Q14AL8p2ZHyfREpbnPU6Vj4Xh97o1K9hmKRJ-I,3187
|
|
94
|
-
tableauserverclient/server/endpoint/tables_endpoint.py,sha256=
|
|
96
|
+
tableauserverclient/server/endpoint/tables_endpoint.py,sha256=PcNqk66aJ_rsFSHOJ1FCB_G5GlvGFIzr66G5aO2aIRo,9742
|
|
95
97
|
tableauserverclient/server/endpoint/tasks_endpoint.py,sha256=5VHGe2NSgr40BKPPOm9nVrdZGrG3Sf0ri_CNqsv0CpQ,6304
|
|
96
|
-
tableauserverclient/server/endpoint/users_endpoint.py,sha256=
|
|
98
|
+
tableauserverclient/server/endpoint/users_endpoint.py,sha256=M8rtc0UOgJTpOudZg9XhPWpSNX5HOrNGeYAdYTfzYrs,20414
|
|
97
99
|
tableauserverclient/server/endpoint/views_endpoint.py,sha256=4wTqjo1MyB6kkVB0W9QSajz8eqwO7vaZCcD2y6hN4Zo,17859
|
|
98
100
|
tableauserverclient/server/endpoint/virtual_connections_endpoint.py,sha256=K5R86aIm4hZeYw3OUOlKv-zTmsWa3np1iuV_h5iPvt0,8458
|
|
99
101
|
tableauserverclient/server/endpoint/webhooks_endpoint.py,sha256=nmEjKdbntwBg-0XAP2TluOv2v8usqxXg7sO8ogS5rDI,4923
|
|
100
102
|
tableauserverclient/server/endpoint/workbooks_endpoint.py,sha256=W6o64Rec7i3dBzyR8TYntgWzryXbxFAZ_xa37edyzqY,43910
|
|
101
|
-
tableauserverclient-0.
|
|
102
|
-
tableauserverclient-0.
|
|
103
|
-
tableauserverclient-0.
|
|
104
|
-
tableauserverclient-0.
|
|
105
|
-
tableauserverclient-0.
|
|
106
|
-
tableauserverclient-0.
|
|
103
|
+
tableauserverclient-0.38.dist-info/licenses/LICENSE,sha256=MMkY7MguOb4L-WCmmqrVcwg2iwSGaz-RfAMFvXRXwsQ,1074
|
|
104
|
+
tableauserverclient-0.38.dist-info/licenses/LICENSE.versioneer,sha256=OYaGozOXk7bUNSm1z577iDYpti8a40XIqqR4lyQ47D8,334
|
|
105
|
+
tableauserverclient-0.38.dist-info/METADATA,sha256=Mqmu3eGpJkEDtUCXPioiJvuo5yHjUv77jwF_xGm48go,4351
|
|
106
|
+
tableauserverclient-0.38.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
|
|
107
|
+
tableauserverclient-0.38.dist-info/top_level.txt,sha256=kBnL39G2RlGqxJSsShDBWG4WZ3NFcWJkv1EGiOfZh4Q,20
|
|
108
|
+
tableauserverclient-0.38.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|