Skip to content

Releases: alcionai/corso

v0.19.0

06 Feb 13:12
fb64a2f
Compare
Choose a tag to compare

Added

  • Events can now be exported from Exchange backups as .ics files.
  • Update repo init configuration to reduce the total number of GET requests sent
    to the object store when using corso. This affects repos that have many
    backups created in them per day the most.
  • Feature Preview: Corso now supports backup, export & restore of SharePoint lists. Lists backup can be initiated using corso backup create sharepoint --site <site-url> --data lists.
  • Group mailbox(aka conversations) backup and export support is now officially available. Group mailbox posts can be exported as .eml files.

Fixed

  • Retry transient 400 "invalidRequest" errors during onedrive & sharepoint backup.
  • Backup attachments associated with group mailbox items.
  • Groups and Teams backups no longer fail when a resource has no display name.
  • Contacts in-place restore failed if the restore destination was empty.
  • Link shares with external users are now backed up and restored as expected
  • Ensure persistent repo config is populated on repo init if repo init failed partway through during the previous init attempt.

Changed

  • When running backup details on an empty backup returns a more helpful error message.
  • Backup List additionally shows the data category for each backup.
  • Remove hidden --succeed-if-exists flag for repo init. Repo init will now succeed without error if run on an existing repo with the same passphrase.

Known issues

  • Backing up a group mailbox item may fail if it has a very large number of attachments (500+).
  • Event description for exchange exports might look slightly different for certain events.
  • Exchange in-place restore may restore items in well-known folders to different folders if the user has well-known folder names change based on locale and has updated the locale since the backup was created.
  • In-place Exchange contacts restore will merge items in folders named "Contacts" or "contacts" into the default folder.
  • External users with access through shared links will not receive these links as they are not sent via email during restore.
  • Graph API has limited support for certain column types such as location, hyperlink/picture, and metadata. Restoring SharePoint list items containing these columns will result in differences compared to the original items.
  • SharePoint list item attachments are not available due to graph API limitations.
  • Group mailbox restore is not supported due to limited Graph API support for creating mailbox items.
  • Due to Graph API limitations, any group mailbox items present in subfolders other than Inbox aren't backed up.

v0.18.0

02 Jan 20:52
4224a98
Compare
Choose a tag to compare

Fixed

  • Handle the case where an email cannot be retrieved from Exchange due to an ErrorInvalidRecipients error. In
    this case, Corso will skip over the item but report this in the backup summary.
  • Fix ErrorItemNotFound errors when restoring emails with multiple attachments.
  • Avoid Graph SDK Requests must contain extension changes exclusively errors by removing server-populated field from restored event items.
  • Improve Group mailbox(conversations) backup performance by only downloading new items or items with modified content.
  • Handle cases where Exchange backup stored invalid JSON blobs if there were special characters in the user content. These would result in errors during restore.

Known issues

  • Restoring OneDrive, SharePoint, or Teams & Groups items shared with external users while the tenant or site is configured to not allow sharing with external users will not restore permissions.

v0.17.0

12 Dec 02:28
9e36267
Compare
Choose a tag to compare

Changed

  • Memory optimizations for large scale OneDrive and Sharepoint backups.

Fixed

  • Resolved a possible deadlock when backing up Teams Channel Messages.
  • Fixed an attachment download failure(ErrorTooManyObjectsOpened) during exchange backup.

v0.16.0

28 Nov 17:36
d366362
Compare
Choose a tag to compare

Added

  • Export support for emails in exchange backups as .eml files.
  • More colorful and informational cli display.

Changed

  • The file extension in Teams messages exports has switched to json to match the content type.
  • SDK consumption of the /services/m365 package has shifted from independent functions to a client-based api.
  • SDK consumers can now configure the /services/m365 graph api client configuration when constructing a new m365 client.
  • Dynamic api rate limiting allows small-scale Exchange backups to complete more quickly.
  • Kopia's local config files now uses unique filenames that match Corso configurations. This can protect concurrent Corso operations from mistakenly clobbering storage configs during runtime.

Fixed

  • Handle OneDrive folders being deleted and recreated midway through a backup.
  • Automatically re-run a full delta query on incremental if the prior backup is found to have malformed prior-state information.
  • Retry drive item permission downloads during long-running backups after the jwt token expires and refreshes.
  • Retry item downloads during connection timeouts.

v0.15.0

01 Nov 00:50
0cfb84b
Compare
Choose a tag to compare

Added

  • Added corso repo update-passphrase command to update the passphrase of an existing Corso repository
  • Added Subject and Message preview to channel messages detail entries

Fixed

  • SharePoint backup would fail if any site had an empty display name
  • Fix a bug with exports hanging post completion
  • Handle 503 errors in nested OneDrive packages

Changed

  • Item Details formatting in Groups and Teams backups

v0.14.2

17 Oct 21:26
f3dfa1e
Compare
Choose a tag to compare

Patch Notes

v0.14.2 supersedes the previous v0.14.x releases and addresses the issues below.

Fixed

  • Fix a case where missing item LastModifiedTimes could cause incremental backups to fail.
  • Improve check to skip OneNote files that cannot be downloaded.
  • Fix Groups backup for non Team groups
  • Fix performance regression in OneNote backup for large Drives

v0.14.1

13 Oct 16:55
796e9df
Compare
Choose a tag to compare

Patch Notes

Backups on v0.14.0 that fail with the error "incomplete migration of backup details" may be subject to the missing LastModifiedTime bug. At this time the resolution is to manually re-run affected backups using v0.14.1 or later with the flags --disable-incrementals --force-item-data-download.

Fixed

  • Fix a case where missing item LastModifiedTimes could cause incremental backups to fail.
  • Catch and report cases where a protected resource is locked out of access. SDK consumers have a new errs sentinel that allows them to check for this case.
  • Email size metadata was incorrectly set to the size of the last attachment. Emails will now correctly report the size of the mail content plus the size of all attachments.

v0.13.0

19 Sep 04:01
6355cb7
Compare
Choose a tag to compare

Added

  • Groups and Teams service support available as a feature preview! Channel messages and Files are now available for backup and restore in the CLI: corso backup create groups --group '*'
    • The cli commands for "groups" and "teams" can be used interchangably, and will operate on the same backup data.
    • New permissions are required to backup Channel messages. See the Corso Documentation for complete details.
      Even though Channel message restoration is not available, message write permissions are included to cover future integration.
    • This is a feature preview, and may be subject to breaking changes based on feedback and testing.

Changed

  • Switched to Go 1.21
  • SharePoint exported libraries are now exported with a Libraries prefix.

Fixed

  • Contacts backups no longer slices root-folder data if outlook is set to languages other than english.
  • Failed backups if the --disable-incrementals flag was passed when there was a valid merge base under some conditions.

v0.12.0

30 Aug 03:04
7409148
Compare
Choose a tag to compare

Added

  • Added export command to export data from OneDrive and SharePoint backups as individual files or as a single zip file.
  • Restore commands now accept an optional resource override with the --to-resource flag. This allows restores to recreate backup data within different mailboxes, sites, and users.
  • Improve --mask-sensitive-data logging mode.
  • Reliability: Handle connection cancellation and resets observed when backing up or restoring large data sets.
  • Reliability: Recover from Graph SDK panics when the Graph API returns incomplete responses.
  • Performance: Improve backup delete performance by batching multiple storage operations into a single operation.

Fixed

  • SharePoint document libraries deleted after the last backup can now be restored.
  • Restore requires the protected resource to have access to the service being restored.
  • SharePoint data from multiple document libraries are not merged in exports
  • corso backup delete was not removing the backup details data associated with that snapshot
  • Fix OneDrive restores could fail with a concurrent map write error
  • Fix backup list displaying backups that had errors
  • Fix OneDrive backup could fail if item was deleted during backup
  • Exchange backups would fail attempting to use delta tokens even if the user was over quota

v0.11.1

20 Jul 07:14
fa79cd5
Compare
Choose a tag to compare

Fixed

  • Allow repo connect to succeed when a corso.toml file was not provided but configuration is specified using environment variables and flags.