8000 parse_datetime() should gracefully handle invalid dates by paulvic · Pull Request #529 · tableau/server-client-python · GitHub
[go: up one dir, main page]

Skip to content

parse_datetime() should gracefully handle invalid dates #529

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 6 commits into from
Aug 14, 2020

Conversation

paulvic
Copy link
Contributor
@paulvic paulvic commented Nov 19, 2019

We've seen instances where enumerating workbooks on our server results in an exception in parse_datetime(). It appears that some workbooks contain invalid dates e.g. 2018-06-31T13:12:00Z for their created_at or updated_at times which causes the method to throw an exception, breaking enumeration.

This change simply catches the parsing failure and returns None in that scenario.

@paulvic paulvic marked this pull request as ready for review November 19, 2019 11:57
@t8y8 t8y8 changed the base branch from master to development November 21, 2019 08:39
@t8y8
Copy link
Collaborator
t8y8 commented Nov 21, 2019

Hey @paulvic! I’ve retargeted this against development, but could you rebase the PR? It looks like it picked up some changes around docs from master.

Can you confirm you’ve signed the CLA and sent it in?

Once I hear back I’ll take a look.

Side note, do you have any idea why there are invalid time stamps in the mix?

@t8y8 t8y8 self-assigned this Nov 21, 2019
@t8y8 t8y8 requested a review from graysonarts November 21, 2019 08:41
@paulvic
Copy link
Contributor Author
paulvic commented Nov 21, 2019

Hey @paulvic! I’ve retargeted this against development, but could you rebase the PR? It looks like it picked up some changes around docs from master.

Can you confirm you’ve signed the CLA and sent it in?

Once I hear back I’ll take a look.

Side note, do you have any idea why there are invalid time stamps in the mix?

I'll send a.signed CLA.today.

No, I have no idea how the invalid timestamps got there.

@james-baker
Copy link

CLA received and approved.

@bcantoni
Copy link
Contributor

Hi @paulvic we are getting caught up on some old contributions and realize this one was never merged. Would you be able to rebase your branch off the current development branch and do a force push? Then we should be able to wrap this one up.

We've seen instances where enumerating workbooks on our server results in an exception in parse_datetime(). It appears that some workbooks contain invalid dates e.g. `2018-06-31T13:12:00Z` for their created_at or updated_at times which causes the method to throw an exception, breaking enumeration.

This change simply catches the parsing failure and returns `None` in that scenario.
@paulvic
Copy link
Contributor Author
paulvic commented Aug 14, 2020

Hi @paulvic we are getting caught up on some old contributions and realize this one was never merged. Would you be able to rebase your branch off the current development branch and do a force push? Then we should be able to wrap this one up.

hi @bcantoni, that's all done now & tests passed 👍

@shinchris shinchris merged commit f8799ba into tableau:development Aug 14, 2020
shinchris pushed a commit that referenced this pull request Sep 1, 2020
* Added notes field to JobItem (#571)
* Added webpage_url field to WorkbookItem (#661)
* Added support for switching between sites (#655)
* Added support for querying favorites for a user (#656)
* Added support for Python 3.8 (#659)
* Added support for Data Alerts (#667)
* Added support for basic Extract operations - Create, Delete, en/re/decrypt for site (#672)
* Added support for creating and querying Active Directory groups (#674)
* Added support for asynchronously updating a group (#674)
* Improved handling of invalid dates (#529)
* Improved consistency of update_permission endpoints (#668)
* Documentation updates (#658, #669, #670, #673, #683)
shinchris pushed a commit that referenced this pull request Sep 2, 2020
[v0.13] Merge development into master

Added notes field to JobItem (#571)
Added webpage_url field to WorkbookItem (#661)
Added support for switching between sites (#655)
Added support for querying favorites for a user (#656)
Added support for Python 3.8 (#659)
Added support for Data Alerts (#667)
Added support for basic Extract operations - Create, Delete, en/re/decrypt for site (#672)
Added support for creating and querying Active Directory groups (#674)
Added support for asynchronously updating a group (#674)
Improved handling of invalid dates (#529)
Improved consistency of update_permission endpoints (#668)
Documentation updates (#658, #669, #670, #673, #683)
jorwoods added a commit to jorwoods/server-client-python that referenced this pull request Feb 18, 2021
commit 2609e27
Merge: d107c48 3a8ec6c
Author: Chris Shin <cshin@tableau.com>
Date:   Wed Feb 17 16:00:42 2021 -0800

    Merge pull request tableau#803 from tableau/release-0.15

    syncing development branch with v0.15 changelog

commit d107c48
Author: Tyler Doyle <doyle.tyler@gmail.com>
Date:   Wed Feb 17 15:38:14 2021 -0800

    Add Mypy to CI runs (tableau#802)

    Add mypy runs to CI, but skip misc errors, so we only see the important stuff. For now these are non blocking.

commit 3a8ec6c
Merge: 004ab31 a5b9252
Author: Chris Shin <cshin@tableau.com>
Date:   Tue Feb 16 16:51:37 2021 -0800

    Merge branch 'master' into release-0.15

commit 004ab31
Author: Chris Shin <cshin@tableau.com>
Date:   Tue Feb 16 16:49:19 2021 -0800

    Updates changelog and contributors list for v0.15

commit 6c7a87b
Author: Chris Shin <cshin@tableau.com>
Date:   Tue Feb 16 15:09:45 2021 -0800

    Removes travis and adds linting/testing into github action (tableau#798)

    * Removes travis and adds github workflow

    * Addressing code review feedback

commit 9179637
Author: Lee Boynton <lee@lboynton.com>
Date:   Tue Feb 16 23:09:22 2021 +0000

    Add support for getting groups that a user belongs to (tableau#799)

    * Add support for getting groups that a user belongs to

    * Use more descriptive name for pager function

commit fe992ee
Author: Chris Shin <cshin@tableau.com>
Date:   Tue Feb 16 14:33:59 2021 -0800

    [Tasks] Translate task type from server to TSC enum (tableau#796)

    * Adds task type mapping to translate server response

    * Updates tests to match server response for task type

    * Fixes pycodestyle error

commit f64fcf9
Author: John Vandenberg <jayvdb@gmail.com>
Date:   Wed Feb 17 01:21:46 2021 +0800

    MANIFEST.in: Add docs and test data (tableau#780)

    * Update publish_workbook.py (tableau#694)

    * Update publish_workbook.py

    Added below arguments, without this there is a sign-in error on publishing a test file to Tableau Online

    parser.add_argument('--sitename', '-S', default='', help='sitename required')
    tableau_auth = TSC.TableauAuth(args.username, password,site_id=args.sitename)

    * Update publish_workbook.py

    Edits (as requested) to publish workbooks on Tableau Online which removes the Sign-in Error.

    * Update publish_workbook.py

    * Merge pull request tableau#745 from tableau/fix_732

    Server versions before 2020.1 do not accept encoded query param delimiters

    * Merge pull request tableau#757 from tableau/fix_754

    Fixes issue tableau#754 by moving file read logic inside generator

    * Updates changelog for v0.14.1

    * MANIFEST.in: Add docs and test data

    Closes tableau#779

    Co-authored-by: Chris Shin <cshin@tableau.com>
    Co-authored-by: Madhura Selvarajan <MADHURA0910@GMAIL.COM>

commit 88a0188
Author: Chris Shin <cshin@tableau.com>
Date:   Tue Feb 16 09:17:35 2021 -0800

    [Subscriptions] Add new fields and ability to update (tableau#794)

    * Add fields and parsing logic

    * Update subscription create request

    * Adds update request to subscriptions

    * Changes subscription change request creation to use tsrequest annotation

    * Update tests for parsing new fields

    * Fixes codestyle issues

    * Removes user and schedule name

    * Fixes test failure

commit 026bca8
Author: Chris Shin <cshin@tableau.com>
Date:   Thu Feb 11 15:34:08 2021 -0800

    Adds skipConnectionCheck to publish workbook (tableau#791)

    * Adds skipConnectionCheck flag to publish workbook

    * Removes unnecessary lines

    * Fixes style error

commit 857199b
Author: tjones-commits <70481977+tjones-commits@users.noreply.github.com>
Date:   Fri Feb 5 17:09:32 2021 -0500

    Update site properties and functions (tableau#777)

    * Update publish_workbook.py (tableau#694)

    * Update publish_workbook.py

    Added below arguments, without this there is a sign-in error on publishing a test file to Tableau Online

    parser.add_argument('--sitename', '-S', default='', help='sitename required')
    tableau_auth = TSC.TableauAuth(args.username, password,site_id=args.sitename)

    * Update publish_workbook.py

    Edits (as requested) to publish workbooks on Tableau Online which removes the Sign-in Error.

    * Update publish_workbook.py

    * Merge pull request tableau#745 from tableau/fix_732

    Server versions before 2020.1 do not accept encoded query param delimiters

    * Merge pull request tableau#757 from tableau/fix_754

    Fixes issue tableau#754 by moving file read logic inside generator

    * Updates changelog for v0.14.1

    * update the site item to reflect api response

    * update test model

    * remove extra test assets

    * trimming line length

    * unit test all properties. fix some properties. Remove extra code

    * make requested changes

    * make requested changes

    Co-authored-by: Chris Shin <cshin@tableau.com>
    Co-authored-by: Madhura Selvarajan <MADHURA0910@GMAIL.COM>
    Co-authored-by: Terrence Jones <tjones@arkatechture.com>

commit a5b9252
Merge: bcb881c 1fc349c
Author: Chris Shin <cshin@tableau.com>
Date:   Thu Dec 10 09:29:42 2020 -0800

    Merge pull request tableau#759 from tableau/0.14.0-patch

    v0.14.1 patch release
    * Fixed filter query issue for server version below 2020.1 (tableau#745)
    * Fixed large workbook/datasource publish issue (tableau#757)

commit 1fc349c
Author: Chris Shin <cshin@tableau.com>
Date:   Wed Dec 9 16:30:03 2020 -0800

    Updates changelog for v0.14.1

commit 41fd8f2
Author: Chris Shin <cshin@tableau.com>
Date:   Wed Dec 9 15:49:48 2020 -0800

    Merge pull request tableau#757 from tableau/fix_754

    Fixes issue tableau#754 by moving file read logic inside generator

commit 138476f
Author: Chris Shin <cshin@tableau.com>
Date:   Wed Dec 9 15:49:23 2020 -0800

    Merge pull request tableau#745 from tableau/fix_732

    Server versions before 2020.1 do not accept encoded query param delimiters

commit bcb881c
Merge: 8d51355 1e089b4
Author: Chris Shin <cshin@tableau.com>
Date:   Mon Nov 9 09:19:23 2020 -0800

    Merge pull request tableau#725 from tableau/development

    Syncing master with v0.14.0 changes from development.

commit 8d51355
Author: Madhura Selvarajan <MADHURA0910@GMAIL.COM>
Date:   Wed Sep 23 10:45:27 2020 -0400

    Update publish_workbook.py (tableau#694)

    * Update publish_workbook.py

    Added below arguments, without this there is a sign-in error on publishing a test file to Tableau Online

    parser.add_argument('--sitename', '-S', default='', help='sitename required')
    tableau_auth = TSC.TableauAuth(args.username, password,site_id=args.sitename)

    * Update publish_workbook.py

    Edits (as requested) to publish workbooks on Tableau Online which removes the Sign-in Error.

    * Update publish_workbook.py

commit 273af7a
Merge: 43e1b06 168489c
Author: Chris Shin <cshin@tableau.com>
Date:   Wed Sep 2 14:39:13 2020 -0700

    Merge pull request tableau#685 from tableau/development

    [v0.13] Merge development into master

    Added notes field to JobItem (tableau#571)
    Added webpage_url field to WorkbookItem (tableau#661)
    Added support for switching between sites (tableau#655)
    Added support for querying favorites for a user (tableau#656)
    Added support for Python 3.8 (tableau#659)
    Added support for Data Alerts (tableau#667)
    Added support for basic Extract operations - Create, Delete, en/re/decrypt for site (tableau#672)
    Added support for creating and querying Active Directory groups (tableau#674)
    Added support for asynchronously updating a group (tableau#674)
    Improved handling of invalid dates (tableau#529)
    Improved consistency of update_permission endpoints (tableau#668)
    Documentation updates (tableau#658, tableau#669, tableau#670, tableau#673, tableau#683)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants
0