corso/CHANGELOG.md
Keepers 0ae904e9bc
fix user query filtering on null userType (#2399)
## Description

UserType can be null for users created before
2014.  In order to not filter them out with the
other guest users, we have to amend our user
query to only exclude guests, and retain all
other persons.

## Does this PR need a docs update or release note?

- [x]  Yes, it's included

## Type of change

- [x] 🐛 Bugfix

## Test Plan

- [x] 💪 Manual
- [x]  Unit test
- [x] 💚 E2E
2023-02-04 04:10:22 +00:00

8.5 KiB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased (alpha)

Added

  • Document Corso's fault-tolerance and restartability features
  • Add retries on timeouts and status code 500 for Exchange
  • Increase page size preference for delta requests for Exchange to reduce number of roundtrips
  • OneDrive file/folder permissions can now be backed up and restored
  • Add --restore-permissions flag to toggle restoration of OneDrive permissions
  • Add versions to backups so that we can understand/handle older backup formats

Fixed

  • Backing up a calendar that has the same name as the default calendar
  • Added additional backoff-retry to all OneDrive queries.
  • Users with null userType values are no longer excluded from user queries.

Known Issues

  • When the same user has permissions to a file and the containing folder, we only restore folder level permissions for the user and no separate file only permission is restored.
  • Link shares are not restored

v0.2.0 (alpha) - 2023-1-29

Fixed

  • Check if the user specified for an exchange backup operation has a mailbox.

Changed

  • Item.Attachments are disabled from being restored for the patching of (#2353)
  • BetaClient introduced. Enables Corso to be able to interact with SharePoint Page objects. Package located /internal/connector/graph/betasdk
  • Handle case where user's drive has not been initialized
  • Inline attachments (e.g. copy/paste ) are discovered and backed up correctly (#2163)
  • Guest and External users (for cloud accounts) and non-on-premise users (for systems that use on-prem AD syncs) are now excluded from backup and restore operations.
  • Remove the M365 license guid check in OneDrive backup which wasn't reliable.
  • Reduced extra socket consumption while downloading multiple drive files.
  • Extended timeout boundaries for exchange attachment downloads, reducing risk of cancellation on large files.
  • Identify all drives associated with a user or SharePoint site instead of just the results on the first page returned by Graph API.

v0.1.0 (alpha) - 2023-01-13

Added

  • Folder entries in backup details now indicate whether an item in the hierarchy was updated
  • Incremental backup support for exchange is now enabled by default.

Changed

  • The selectors Reduce() process will only include details that match the DiscreteOwner, if one is specified.
  • New selector constructors will automatically set the DiscreteOwner if given a single-item slice.
  • Write logs to disk by default (#2082)

Fixed

  • Issue where repository connect progress bar was clobbering backup/restore operation output.
  • Issue where a backup create exchange produced one backup record per data type.
  • Specifying multiple users in a onedrive backup (ex: --user a,b,c) now properly delimits the input along the commas.
  • Updated the list of M365 SKUs used to check if a user has a OneDrive license.

Known Issues

  • backup list will not display a resource owner for backups created prior to this release.

v0.0.4 (alpha) - 2022-12-23

Added

  • Incremental backup support for Exchange (#1777). This is currently enabled by specifying the --enable-incrementals
    with the backup create command. This functionality will be enabled by default in an upcoming release.
  • Folder entries in backup details now include size and modified time for the hierarchy (#1896)

Changed

  • Breaking Change: Changed how backup details are stored in the repository to improve memory usage (#1735)
  • Improve OneDrive backup speed (#1842)
  • Upgrade MS Graph SDK libraries (#1856)
  • Docs: Add Algolia docsearch to Corso docs (#1844)
  • Add an updated flag to backup details (#1813)
  • Docs: Speed up Windows Powershell download (#1798)
  • Switch to Go 1.19 (#1632)

Fixed

  • Fixed retry logic in the Graph SDK that would result in an 400 Empty Payload error when the request was retried (1778)(msgraph-sdk-go #341)
  • Don't error out if a folder was deleted during an exchange backup operation (#1849)
  • Docs: Fix CLI auto-generated docs headers (#1845)

v0.0.3 (alpha) - 2022-12-05

Added

  • Display backup size in backup list command (#1648) from meain
  • Improve OneDrive backup performance (#1607) from meain
  • Improve Exchange backup performance (#1608) from meain
  • Add flag to retain all progress bars (#1582) from ryanfkeepers
  • Fix resource owner display on backup list (#1580) from ryanfkeepers

Changed

  • Improve logging (#1642) from ryanfkeepers
  • Generate separate backup for each resource owner (#1609) from ashmrtn
  • Print version info to stdout instead of stderr (#1503) from meain

v0.0.2 (alpha) - 2022-11-14

Added

  • Added AWS X-Ray support for better observability (#1111) from ryanfkeepers
  • Allow disabling TLS and TLS verification (#1415) from vkamra
  • Add filtering based on path prefix/contains (#1224) from ryanfkeepers
  • Add info about doc owner for OneDrive files (#1366) from meain
  • Add end time for Exchange events from (#1366) meain

Changed

  • Export RepoAlreadyExists error for sdk users (#1136)from ryanfkeepers
  • RudderStack logger now respects corso logger settings (#1324) from ryanfkeepers

v0.0.1 (alpha) - 2022-10-24

New features

  • Supported M365 Services

    • Exchange - email, events, contacts (RM-8)
    • OneDrive - files (RM-12)
  • Backup workflows

    • Create a full backup (RM-19)
    • Create a backup for a specific service and all or some data types (RM-19)
    • Create a backup for all or a specific user (RM-20)
    • Delete a backup manually (RM-24)
  • Restore workflows

    • List, filter, and view backup content details (RM-23)
    • Restore one or more items or folders from backup (RM-28, RM-29)
    • Non-destructive restore to a new folder/calendar in the same account (RM-30)
  • Backup storage

    • Zero knowledge encrypted backups with user conrolled passphrase (RM-6)
    • Initialize and connect to an S3-compliant backup repository (RM-5)
  • Miscellaneous

    • Optional usage statistics reporting (RM-35)