8000 Release with security and functionality updates by jacalata · Pull Request #1021 · tableau/server-client-python · GitHub
[go: up one dir, main page]

Skip to content

Release with security and functionality updates #1021

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 44 commits into from
Apr 6, 2022
Merged

Conversation

jacalata
Copy link
Contributor
@jacalata jacalata commented Apr 5, 2022
  • Switched to using defused_xml for xml attack protection
  • added linting and type hints
  • improve experience with self-signed certificates/invalid ssl
  • updated samples
  • new item types: metrics, revisions for datasources and workbooks
  • features: support adding flows to schedules, exporting workbooks to powerpoint
  • fixes: delete extracts

jacalata and others added 30 commits March 29, 2022 21:30
* add publish-samples option to create/update project
Adds types to function signatures for Workbook and Data Source endpoints.
Co-authored-by: Jordan Woods <Jordan.Woods@mkcorp.com>
* Clean up hidden views and make it an attribute of workbookitem

* Pycodestyle error fix for one letter variable

Co-authored-by: Jac <jacalata@users.noreply.github.com>
Co-authored by: Stephen Mitchell https://github.com/scuml
* add support to datasource and workbook revisions (get all item revisions / downlad item by revision number)

* add type hints

* remove wrong type hints
Add type hints and tests for workbook and data source revisions
* Enable Black for CI and add as dependency

* Bulk reformat with Black, line length 120

Co-authored-by: Jac Fitzgerald <jac.fitzgerald@salesforce.com>
* Type hint data alerts

* Type hint DataAlertRequest

* Remove type annotations from Frequency namespace

* Update test_dataalert.py
* Type hint Favorites

* Type hint FavoriteRequest
* Type hint Flows

* Type hint request_factory for flows

* Add ConnectionItem type hints on to Flow publish request

* Clean up flows publish signature

* Fix flow update_permissions type hint

* Fix update_permissions type hint

* Add workbook.hidden_views type hint

* Update permissions only accepts an iterable

* Fix formatting
* Add type hints for schedules

* Squashed commit of the following:

commit b836f33
Author: Brian Cantoni <bcantoni@salesforce.com>
Date:   Thu Jan 27 19:29:50 2022 -0800

    WIP: Enable Black for CI and add as dependency (#935)

    * Enable Black for CI and add as dependency

    * Bulk reformat with Black, line length 120

* Update interval_item.py

fixing DailyInterval has no attribute 'interval'
* Type hint groups

* Type hint GroupRequest

Co-authored-by: Jac <jacalata@users.noreply.github.com>
* Type hint permissions

* Type hint default permissions

* Remove hints from enums

* Remove unused import

Co-authored-by: Jac <jacalata@users.noreply.github.com>
* Type hint projects

* Type hint ProjectRequest

* Re-add params to project create

* Update test_group.py

Co-authored-by: Jac <jacalata@users.noreply.github.com>
* Fix slack once and for all (#946)

The red X keeps coming back so I'd like to mark this as allowably fail-able -- that way the innards of Slack/OAuth/Tableau credentials don't keep polluting test run reports :)

(cherry picked from commit c8170ae)

* Type hint Flow run item

* Continue on error for slack step

* Fix formatting

Co-authored-by: Tyler Doyle <doyle.tyler@gmail.com>
Co-authored-by: Jac <jacalata@users.noreply.github.com>
* Type hint site

* Fix formatting

Co-authored-by: Jac <jacalata@users.noreply.github.com>
Co-authored-by: Jac <jacalata@users.noreply.github.com>
* Type hint Users

* Type hint UserRequest

* Remove type hints from Roles and Auth namespaces

* Update user_item.py

Co-authored-by: Jac <jacalata@users.noreply.github.com>
* Type hint views
…rsonalAccessTokenAuth` (#925)

* Accept `None` as parameter for the `site_id` of `TableauAuth` and `PersonalAccessTokenAuth`

As part of #889, I changed the default value for the `site` argument to be `None`
instead of an empty string. This accidentally broke auth, as `TableauAuth`
expected an empty string instead of `None` to signify an absent `site` argument.

This commit fixes the issue by now actually accepting `None` as `site_id` in
`TableauAuth` and `PersonalAccessTokenAuth`, thereby making our interface more
intuitive, at least in my opinion.

Fixes #924
* fix types for get-users-for-group

* make capability elements non-optional

* turn groups into reference_resources

* plus run black formatter

* remove untyped empty list assigned to iterator

and now mypy should run clean!
* Default to using server api version

* Skip using server ve
8000
rsion during tests

* Black formatting
 replace ET.fromstring with defusedxml.fromstring
* Null user_quota if tiered license levels exist
* fix types for get-users-for-group
* make capability elements non-optional
* turn groups into reference_resources
and now mypy should run clean!
* Add support for downloading excel crosstabs from views
* Add support for metric items and endpoints
* Automatically paginate in QuerySet endpoints
* Enable queryset operations for flows, groups, jobs, projects
* Keep only page_size in memory
* NULL result cache to ensure restarting from the first page
* Use modulus to simplify idx calculation
* Add support for slicing
* Minimum page number is 1
* Properly support negative steps
8000
jacalata and others added 12 commits March 29, 2022 21:31
* add back hidden_views to publish request as a deprecated option
* add defusedxml library, clean some imports
* fix sample downloading filtered data
* update pagination sample with query-set usage
* add get_by_id method and test that calls get_by_id and readsinterval from schedule returned
* split tests and style checks actions
* add http_options to server constructor, update samples to show it
* catch missing password with nice error
* Allow setting site user_quota to None if tiered licenses exist
* Type hinting on Datasources and Workbooks (#804)

Adds types to function signatures for Workbook and Data Source endpoints.
Co-authored-by: Jordan Woods <Jordan.Woods@mkcorp.com>

* add http_options to server constructor, update samples to show it

* update docs
* fix workbook.delete_extract
* add flow to schedule (operation available both acting on schedule and acting on flow)
@salesforce-cla
Copy link
salesforce-cla bot commented Apr 5, 2022

Thanks for the contribution! Before we can merge this, we need @scuml to sign the Salesforce.com Contributor License Agreement.

@jacalata
Copy link
Contributor Author
jacalata commented Apr 5, 2022

ignoring the cla-bot here - scuml signed the old Tableau CLA at the time of contribution

@jacalata jacalata requested a review from vogelsgesang April 5, 2022 20:34
vogelsgesang
vogelsgesang previously approved these changes Apr 5, 2022
Copy link
Collaborator
@vogelsgesang vogelsgesang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

didn't really look through the changes itself, as they were already reviewed as part of the individual change requests

Copy link
Contributor
@bcantoni bcantoni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me - let's add to CHANGELOG.md as well here

@jacalata jacalata merged commit 9ec60ac into master Apr 6, 2022
jacalata added a commit that referenced this pull request May 31, 2022
Switched to using defused_xml for xml attack protection
added linting and type hints
improve experience with self-signed certificates/invalid ssl
updated samples
new item types: metrics, revisions for datasources and workbooks
features: support adding flows to schedules, exporting workbooks to powerpoint
fixes: delete extracts
jacalata added a commit that referenced this pull request Jun 1, 2022
Switched to using defused_xml for xml attack protection
added linting and type hints
improve experience with self-signed certificates/invalid ssl
updated samples
new item types: metrics, revisions for datasources and workbooks
features: support adding flows to schedules, exporting workbooks to powerpoint
fixes: delete extracts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants
0