corso/CHANGELOG.md
Keepers 129b96714b
fix url logging (#2617)
## Description

The `GetUri()` call contains side-effects which drain the builder of its constructed url data.  As a result, running a backup with CORSO_URL_LOGGING actually forces the bug to manifest unintentionally.

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

- [x]  Yes, it's included

## Type of change

- [x] 🐛 Bugfix

## Test Plan

- [x] 💪 Manual
2023-02-22 22:29:55 +00:00

9.8 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 (beta)

Added

  • Show owner information when doing backup list in json format

Known Issues

  • Folders and Calendars containing zero items or subfolders are not included in the backup.

v0.4.0 (beta) - 2023-2-20

Fixed

  • Support for item.Attachment:Mail restore
  • Errors from duplicate names in Exchange Calendars
  • Resolved an issue where progress bar displays could fail to exit, causing unbounded CPU consumption.
  • Fix Corso panic within Docker images
  • Debugging with the CORSO_URL_LOGGING env variable no longer causes accidental request failures.

Changed

  • When using Restore and Details on Exchange Calendars, the --event-calendar flag can now identify calendars by either a Display Name or a Microsoft 365 ID.
  • Exchange Calendars storage entries now construct their paths using container IDs instead of display names. This fixes cases where duplicate display names caused system failures.

Known Issues

  • Nested attachments are currently not restored due to an issue discovered in the Graph APIs
  • Breaking changes to Exchange Calendar backups.
  • The debugging env variable CORSO_URL_LOGGING causes exchange get requests to fail.

v0.3.0 (alpha) - 2023-2-07

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

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

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)