Skip to content

Releases: tableau/tableau-migration-sdk

v5.0.0

30 Oct 23:31
43205e9
Compare
Choose a tag to compare

What's Changed

Breaking Changes

  • Removed Python 3.8 support
  • Removing net6.0 and updated python to use net8.0

New Features

  • Basic Progress Tracking: Added totals to Manifest partitions. You can now write BatchMigrationCompleted hooks to track the progress of a migrated batch of items.
  • Bulk Permission migration: Permissions now use the new bulk update API methods. This functionality replaces the previous delete and create mechanism. The change results in significantly fewer REST API calls and hence improved performance.

Fixes

  • Fixed migration error when Extract Refresh tasks in Personal Spaces were found.
  • Fixed Manifest Entry status when populated from a previous migration.
  • Server to Cloud schedule improvements.

Documentation

  • Removed Most Python.NET Interop Usage in Python Example Application

Other Changes

  • Test app and logging updates
  • Add correlation id to all http request/responses

Known Issues

  • Unlike other content types, Custom Views cannot be filtered based on the Content Location of the base view.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Progress tracking in Python is limited out of the box compared to the one in C#.

Full Changelog: tableau/migration-sdk@release/4.3.0...release/5.0.0

v4.3.1

13 Sep 15:09
587b9dc
Compare
Choose a tag to compare

What's Changed

Fixes

  • Fixed migration error when Extract Refresh Tasks in Personal Spaces were found.
  • Fixed Extract Refresh listing when tasks of unknown content type exist

Known Issues

  • Unlike other content types, Custom Views cannot be filtered based on the Content Location of the base view.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.

v4.3.0

03 Sep 20:08
ca234f6
Compare
Choose a tag to compare

What's Changed

New Features

  • Migration of Custom Views ⭐
  • Earlier configuration validation so the failures are earlier and faster.
  • User Agent string changes to put distinguishing info in the comment field of the user agent instead of a different product field using suffixes (Mozilla docs). The User Agent Comment is configurable.

Fixes

  • Fix to the Workbook View publish functionality involving views. This fixes the XML CommitWorkbookPublishRequest so views are properly published.
  • Some Python Example App fixes.
  • Some Python code snippet fixes.
  • Fix to encrypt extracts if the server requires it.
  • Fix HTML Error Responses not being Included in Exception.
  • Minor fix to Python requirements.txt.

Documentation

  • Example 'Getting Started' code samples are now also in the Migration SDK intro page.
  • Information on how the Migration SDK is versioned

Known Issues

  • Unlike other content types, Custom Views cannot be filtered based on the Content Location of the base view.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.

v4.2.0

16 Jul 18:53
7fdba58
Compare
Choose a tag to compare

What's Changed

New Features

  • Support extract-value boolean flag for Datasources
  • Manifest can now be serialized and deserialized

Documentation

  • Python Environment Config Doc improvements

Known Issues

  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.

v4.1.0

28 Jun 19:17
a1d6836
Compare
Choose a tag to compare

What's Changed

New Features

  • Migration of Schedules for Extract Refresh Tasks

Fixes

  • Fixed bug in sample
  • Fix release docs and license

Documentation

  • Normalize Cancellation Token Documentation
  • Docs: Navigation, CSS and images

Other

  • Update 3rd party package and library versions

Known Issues

  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.

v4.0.0

05 Jun 19:48
353414e
Compare
Choose a tag to compare

What's Changed

  • Python hooks received a major update in version 4 of the Tableau Migration SDK.
    • This change brings full autocomplete support in your favorite Python IDE!
    • We have also added many Python hook samples to our documentation and reorganized to make it easier to use!
  • In version 3, all Python hooks were thin wrappers around C# code, and the actual object manipulated by the hook was a C# object. In version 4 and beyond, everything is still a wrapper around C#, but the class itself and the context object passed to be manipulated are now fully in Python with no more C# required.
  • The combination of making hook writing in Python completely pythonic and updated documentation with samples means that it has never been easier to write your own custom hooks in Python! See the Documentation section for more details
  • These Python updates are BREAKING changes from previous versions.

Breaking Changes

  • Python Hook Wrappers

New Features

  • Python Hook Wrappers

Fixes

  • Adjust content finder to cache the full list just one time
  • Fixed Groups flaky tests
  • Fixed for left nav menu of the Python Wrapper section
  • Fixed incorrect license in packages

Documentation

  • Python Hook Wrapper Samples

Known Issues

  • Hook context objects do not have Python wrapper objects. Context objects should be access through Python.NET interop.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.

v3.0.1

14 May 19:21
197e2cd
Compare
Choose a tag to compare

What's Changed

Breaking Changes

  • Removing .net 7 support

Fixes

  • Fix IsZipFile null tests
  • Fix the stream is too short test

Documentation

  • Fixed an error in the Python example application
  • Docs: Navigation improvements

Other Changes

  • Publish Pypi artifact from public dry-run pipeline

Known Issues

  • Hook context objects do not have Python wrapper objects. Context objects should be access through Python.NET interop.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.

v2.1.1

16 Apr 21:07
91aa62b
Compare
Choose a tag to compare

Tableau Migration SDK v2.1.1

Fixes

  • Fixed an error in the Python example application
  • Flaky Test - StreamExtensionsTest+IsZipFile.False_when_stream_length_is_too_short randomly returns True

Known Issues

  • Hook context objects do not have Python wrapper objects. Context objects should be access through Python.NET interop.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.

v2.1.0

02 Apr 20:39
e5f506d
Compare
Choose a tag to compare

Tableau Migration SDK v2.1.0

New Features

  • Added ability to modify workbook published hidden views.

Fixes

  • Fixed log noise from failed default permissions updates.
  • Fixed list paging log noise.

Documentation

  • Python API reference docs display improvements.
  • Added plan validation documentation.
  • Fixes to Python example application.
  • SDK version information and cleaner style for code snippets.

Known Issues

  • Hook context objects do not have Python wrapper objects. Context objects should be access through Python.NET interop.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.

v2.0.0

29 Feb 23:17
d82a71c
Compare
Choose a tag to compare

Tableau Migration SDK v2.0.0

Migration SDK 2.0.0 is our first release with breaking changes, and named according for semantic versioning. Simple migration applications are not impacted by these breaking changes and should not require updates. Refer to the change list below for details.

Breaking Changes

  • Batch size is now configured per-content type. Existing batchSize configuration values should be moved to the contentTypes configuration section.
  • Replaced Polly v7 dependency with Microsoft.Extensions.Http.Resilience. Custom Polly network policies should be ported to Polly v8 (see Polly v8 migration guide). maxBurstReadRequests and maxBurstPublishRequests configuration values are removed.
  • API Client refactoring. Code interacting with API clients directly may need minor updates.

New Features

  • User cache content finder now falls back to individual search.
  • Added a warning for unfound content projects/owners.
  • Added option to publish users through individual calls instead of in bulk.

Fixes

  • Fixed errors processing files larger than 2GB.
  • Fixed documentation site CSS
  • Fixed test application Tableau Cloud username mapping.

Documentation

  • Updated configuration documentation and defaults.

Known Issues

  • Hook context objects do not have Python wrapper objects. Context objects should be access through Python.NET interop.
  • Python wrapper objects cannot be accessed through dependency injection. .NET object can be injected and python wrappers built from them.
  • Some sample hooks in documentation only include C# sample code.