## Description
Sets the default run behavior for exchange to use
incremental backups. The cli feature flag for enabling exchange incrementals has been swapped for a toggle that disables incrementals, forcing a full backup
## Does this PR need a docs update or release note?
- [x] ✅ Yes, it's included
## Type of change
- [x] 🌻 Feature
## Issue(s)
* #1901
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
Ensure that each (resource owner, service, category) set of data is only sourced from a single base snapshot when doing an incremental backup. If not, fallback to doing a full backup.
Failure to error out or fallback to a full backup may result in repeated or zombie items in the resulting backup as multiple Point-In-Time backups will be used to source the same data
Incomplete manifests are ignored as they are currently only used for kopia-assisted incrementals, not sourcing items/backup details info when making a delta token-based incremental backup
## Does this PR need a docs update or release note?
- [ ] ✅ Yes, it's included
- [ ] 🕐 Yes, but in a later PR
- [x] ⛔ No
## Type of change
- [x] 🌻 Feature
- [x] 🐛 Bugfix
- [ ] 🗺️ Documentation
- [ ] 🤖 Test
- [ ] 💻 CI/Deployment
- [ ] 🧹 Tech Debt/Cleanup
## Issue(s)
* closes#1945
## Test Plan
- [ ] 💪 Manual
- [x] ⚡ Unit test
- [ ] 💚 E2E
## Description
In the event that a backup is completed but the details, somehow, isn't persisted, we want the next backup to do a full, instead of an incremental, backup. If we don't have this protection the following backups could end up in a bad state. Future changes will add better resilience so that the fallback isn't needed.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🌻 Feature
## Issue(s)
* #1878
## Test Plan
- [x] 💚 E2E
## Description
Now that we have a mocked api layer in place, we can test filterContainersAndFillCollections without
integration dependencies.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
## Description
Adds manual retry for drive retrieval <!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🐛 Bugfix
## Issue(s)
* closes Issue #2044<issue>
## Test Plan
- [x] ⚡ Unit test
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.173 to 1.44.174.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.174 (2023-01-05)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/amplifybackend</code>: Updates service API and documentation</li>
<li><code>service/apprunner</code>: Updates service API and documentation</li>
<li><code>service/connect</code>: Updates service API</li>
<li><code>service/emr-serverless</code>: Updates service API and documentation</li>
<li><code>service/lightsail</code>: Updates service documentation
<ul>
<li>Documentation updates for Amazon Lightsail.</li>
</ul>
</li>
<li><code>service/mwaa</code>: Updates service documentation</li>
<li><code>service/rds</code>: Updates service API, documentation, waiters, paginators, and examples
<ul>
<li>This release adds support for specifying which certificate authority (CA) to use for a DB instance's server certificate during DB instance creation, as well as other CA enhancements.</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="455e98093a"><code>455e980</code></a> Release v1.44.174 (2023-01-05) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4681">#4681</a>)</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.173...v1.44.174">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
## Description
Now that resource owners are identified via
the selector itself, rather than each scope, we
can remove the resource owner data from
scope production and data.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🌻 Feature
## Issue(s)
* #1617
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
replaces the new api client methods with interfaces, to prepare for testing funcions with mocks instead of integration.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
Bumps [golang.org/x/tools](https://github.com/golang/tools) from 0.4.0 to 0.5.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/golang/tools/releases">golang.org/x/tools's releases</a>.</em></p>
<blockquote>
<h2>gopls/v0.5.0</h2>
<p>A full list of issues closed can be found in the <a href="https://github.com/golang/go/milestone/138?closed=1">gopls/v0.5.0 milestone</a>.</p>
<h2>Memory usage</h2>
<ul>
<li>Rewrite of caching model, resulting in significant memory usage improvements (<a href="https://github.com/heschik"><code>@heschik</code></a>).</li>
</ul>
<h2>New features</h2>
<ul>
<li>Extract to function: Support for extracting code blocks that contain return statements (<a href="https://github.com/joshbaum"><code>@joshbaum</code></a>).</li>
<li>Workspace symbols: Support for <a href="https://github.com/junegunn/fzf#search-syntax">fzf-style search syntax</a> (<a href="https://github.com/findleyr"><code>@findleyr</code></a>). The following syntax is supported:
<ul>
<li><code>'</code> for exact matching</li>
<li><code>^</code> for prefix matching</li>
<li><code>$</code> for suffix matching</li>
</ul>
</li>
</ul>
<p><strong>Note</strong>: This feature does not yet work in VS Code. See <a href="https://github-redirect.dependabot.com/golang/vscode-go/issues/647">golang/vscode-go#647</a> and <a href="https://github-redirect.dependabot.com/microsoft/vscode/issues/106788">microsoft/vscode#106788</a>.</p>
<ul>
<li>An experimental new code lens to view GC optimization details (<a href="https://github.com/pjweinb"><code>@pjweinb</code></a>). Once the code lens is enabled, you will see a <code>Toggle gc details</code> annotation at the top of your file. Clicking it will show optimization diagnostics produced by the Go compiler, and clicking it once again will hide these diagnostics. Enable the code lens by adding the following to your settings:
<pre lang="json5"><code>"codelens": {
"gc_details": true
}
</code></pre>
</li>
<li><code>go mod tidy</code> and <code>go mod vendor</code> code lenses for <code>go.mod</code> files (<a href="https://github.com/dandua98"><code>@dandua98</code></a>).</li>
<li>Support for filling in matching in-scope variables instead of just empty values in fillstruct and fillreturns (<a href="https://github.com/joshbaum"><code>@joshbaum</code></a>).</li>
<li>Autocompletion within import statements (<a href="https://github.com/dandua98"><code>@dandua98</code></a>).</li>
<li>Autocompletion within package declarations (<a href="https://github.com/dandua98"><code>@dandua98</code></a>).</li>
</ul>
<h2>Improvements</h2>
<ul>
<li>Improvements to workspace symbols ranking and fuzzy matching (<a href="https://github.com/findleyr"><code>@findleyr</code></a>, <a href="https://github.com/myitcv"><code>@myitcv</code></a>).</li>
<li>Better completion suggestions in type switch case clauses and for calls to <code>append</code>, function literals, and unnamed types (<a href="https://github.com/muirdm"><code>@muirdm</code></a>).</li>
</ul>
<h2>Thank you</h2>
<p>Thank you to everyone who contributed to this release!</p>
<p><a href="https://github.com/heschik"><code>@heschik</code></a>
<a href="https://github.com/findleyr"><code>@findleyr</code></a>
<a href="https://github.com/pjweinb"><code>@pjweinb</code></a>
<a href="https://github.com/joshbaum"><code>@joshbaum</code></a>
<a href="https://github.com/mcjcloud"><code>@mcjcloud</code></a>
<a href="https://github.com/dandua98"><code>@dandua98</code></a>
<a href="https://github.com/muirdm"><code>@muirdm</code></a>
<a href="https://github.com/leitzler"><code>@leitzler</code></a>
<a href="https://github.com/myitcv"><code>@myitcv</code></a>
<a href="https://github.com/matloob"><code>@matloob</code></a>
<a href="https://github.com/tennashi"><code>@tennashi</code></a>
<a href="https://github.com/ainar-g"><code>@ainar-g</code></a>
<a href="https://github.com/hasheddan"><code>@hasheddan</code></a></p>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="7db99dd126"><code>7db99dd</code></a> go.mod: update golang.org/x dependencies</li>
<li><a href="1e0dff28f4"><code>1e0dff2</code></a> gopls/internal/regtest: avoid race in TestSwitchFromGOPATHToModuleMode</li>
<li><a href="0441b432ca"><code>0441b43</code></a> gopls/internal/lsp/cache: use specific mutexes for module data</li>
<li><a href="33071fbe1a"><code>33071fb</code></a> internal/robustio: move robustio</li>
<li><a href="b01e7a4e75"><code>b01e7a4</code></a> gopls/internal/regtest/watch: don't run TestSwitchFromGOPATHToModuleMode</li>
<li><a href="e417ea36ba"><code>e417ea3</code></a> gopls: remove dead analysis code</li>
<li><a href="1a08d01ac9"><code>1a08d01</code></a> gopls/internal/lsp: update replace directives in go.mod for package renaming</li>
<li><a href="eac36cb2ac"><code>eac36cb</code></a> gopls/internal/regtest: port experimental workspace tests to go.work</li>
<li><a href="224a61b354"><code>224a61b</code></a> gopls/internal/lsp/source: delete Snapshot.WriteEnv method</li>
<li><a href="81e741e32f"><code>81e741e</code></a> gopls/internal/lsp/safetoken: funnel more calls through this package</li>
<li>Additional commits viewable in <a href="https://github.com/golang/tools/compare/v0.4.0...v0.5.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.172 to 1.44.173.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.173 (2023-01-04)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/application-autoscaling</code>: Updates service API and documentation</li>
<li><code>service/logs</code>: Updates service documentation
<ul>
<li>Update to remove sequenceToken as a required field in PutLogEvents calls.</li>
</ul>
</li>
<li><code>service/ssm</code>: Updates service API and documentation
<ul>
<li>Adding support for QuickSetup Document Type in Systems Manager</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="67d3a1d0ad"><code>67d3a1d</code></a> Release v1.44.173 (2023-01-04) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4680">#4680</a>)</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.172...v1.44.173">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Bumps [github.com/microsoftgraph/msgraph-sdk-go](https://github.com/microsoftgraph/msgraph-sdk-go) from 0.49.0 to 0.50.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/microsoftgraph/msgraph-sdk-go/releases">github.com/microsoftgraph/msgraph-sdk-go's releases</a>.</em></p>
<blockquote>
<h2>v0.50.0</h2>
<h3>Changed</h3>
<ul>
<li>Weekly generation.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/microsoftgraph/msgraph-sdk-go/blob/main/CHANGELOG.md">github.com/microsoftgraph/msgraph-sdk-go's changelog</a>.</em></p>
<blockquote>
<h2>[0.50.0] - 2022-12-28</h2>
<h3>Changed</h3>
<ul>
<li>Weekly generation.</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="1c541cd79b"><code>1c541cd</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/microsoftgraph/msgraph-sdk-go/issues/348">#348</a> from microsoftgraph/v1.0/pipelinebuild/99126</li>
<li><a href="8b3605d818"><code>8b3605d</code></a> - adds changelog entry for weekly generation</li>
<li><a href="54b479b7d9"><code>54b479b</code></a> - adds reference to form serialization package</li>
<li><a href="0ce329f454"><code>0ce329f</code></a> Update generated files with build 99126</li>
<li><a href="61956276ad"><code>6195627</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/microsoftgraph/msgraph-sdk-go/issues/345">#345</a> from microsoftgraph/dependabot/go_modules/github.com/...</li>
<li><a href="0c594993ff"><code>0c59499</code></a> Bump github.com/microsoftgraph/msgraph-sdk-go-core from 0.31.0 to 0.31.1</li>
<li><a href="cf46e7cb46"><code>cf46e7c</code></a> Bump github.com/microsoft/kiota-abstractions-go from 0.15.0 to 0.15.1 (<a href="https://github-redirect.dependabot.com/microsoftgraph/msgraph-sdk-go/issues/342">#342</a>)</li>
<li>See full diff in <a href="https://github.com/microsoftgraph/msgraph-sdk-go/compare/v0.49.0...v0.50.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
## Description
Connects restore pipeline for List Category. CLI commands are not included, Documentation for List restore needs to be placed within the CLI PR
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🌻 Feature
## Issue(s)
* closes #1962<issue>
* closes#1978
* closes#1935
## Test Plan
- [x] ⚡ Unit test
## Description
Checks for resource owner matches in the top
of the reduce func using the selector owners,
instead of waiting until the path match check.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🌻 Feature
## Issue(s)
* #1617
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
DataCollections validation step was still using the full resourceOwner list in the selector to validate every backup, rather than checking only the DiscreteOwner.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🐛 Bugfix
## Issue(s)
* #1617
## Test Plan
- [x] ⚡ Unit test
## Description
The MS Graph's adapter contains a serialization writer within it. Create a framework to use this writer rather than creating the object within serialization workflows. The writer library was used separately when the package still had many bugs and the most current version was required. This does not change any of the writer instances within the package. Will change out the writer instances in follow-up PRs.
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🌻 Feature
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
*related to #2031 <issue>
## Test Plan
- [x] ⚡ Unit test
## Description
Previous changes held out on migrating the
resolver iterators into the api package because
they embedded function calls from the resolvers
themselves. This change migrates that code
into the api package, and accepts a callback
function to hook in the resolver updates. This
change sets up resolvers to better utilize an
interface in the next PR.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
Migrates code away from pulling the resource
owner from each scope, and instead usees the
selector as the canon identifier of the resource
owner.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🌻 Feature
## Issue(s)
* #1617
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
Don't return nil if we had an error getting metadata. This gives us the best chance possible of having enough metadata retrieved from the best-effort restore execution flow to actually enable incrementals for some data category.
## Does this PR need a docs update or release note?
- [ ] ✅ Yes, it's included
- [ ] 🕐 Yes, but in a later PR
- [x] ⛔ No
## Type of change
- [ ] 🌻 Feature
- [x] 🐛 Bugfix
- [ ] 🗺️ Documentation
- [ ] 🤖 Test
- [ ] 💻 CI/Deployment
- [ ] 🧹 Tech Debt/Cleanup
## Issue(s)
* #1777
## Test Plan
- [x] 💪 Manual
- [ ] ⚡ Unit test
- [ ] 💚 E2E
## Description
Adds the ability to create non-empty lists within mocks
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
- [x] 💻 CI/Deployment
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
*closes to #2018<issue>
## Test Plan
- [x] ⚡ Unit test
## Description
In order to use the api layer as an interface, we
need the functions therein to be methods, so
that callers can leverage local interfaces. This
change introduces the api.Client, and begins
to spread it throughout the exchange package,
largely in place of graph servicers.
No logic changes have occurred here. The only
modifications are what is required to utilize the
api client.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.171 to 1.44.172.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.172 (2023-01-03)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/securitylake</code>: Updates service API and documentation</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="2d87e1b7a9"><code>2d87e1b</code></a> Release v1.44.172 (2023-01-03) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4678">#4678</a>)</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.171...v1.44.172">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
## Description
Previously Github Actions was killing (probably because gorelease was using up quite a bit of resources) the process resulting in the Publish-Binary job failing with the following error message:
```
The runner has received a shutdown signal.
```
Related: https://github.com/actions/runner-images/issues/6709
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [ ] ✅ Yes, it's included
- [ ] 🕐 Yes, but in a later PR
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [ ] 🌻 Feature
- [ ] 🐛 Bugfix
- [ ] 🗺️ Documentation
- [ ] 🤖 Test
- [x] 💻 CI/Deployment
- [ ] 🐹 Trivial/Minor
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
* fixes https://github.com/alcionai/corso/issues/2014
## Test Plan
<!-- How will this be tested prior to merging.-->
- [x] 💪 Manual
- [ ] ⚡ Unit test
- [ ] 💚 E2E
## Description
In order to establish a standard api around our
graph client usage, and thus be able to mock
for testing, we need to migrate graph client
usage into another pacakge. This is the first
step in that process of refactoring.
All changes are code relocation importing and
exporting may change as needed. No logic
was altered.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
- [x] 🐹 Trivial/Minor
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
Incremental backups can display progress bars
with 0 items to add or remove. This can cause
end-user confusion when hte bar completes
with 0 items involved. We should instead keep
those bars hidden.
Also removes the "heuristics" progress step.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [ ] 🐹 Trivial/Minor
## Issue(s)
* #1984
## Test Plan
- [x] 💪 Manual
## Description
Switches the CLI from calling `DiscreteScopes` to `SplitByResourceOwner`
on the selector itself. This func will take the original selector and produce
a slice of selectors, each one with a DiscreteOwner (the single user involved
in usage of that selector) and all include/filter scopes in that selector re-rooted
to that discrete owner.
Does not yet solve the per-category tuple, since we are still pivoting on the
scopes inside the selector. That comes as a later change.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🌻 Feature
## Issue(s)
* #1617
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
the exchangeService struct is a vestigial prop
from before we had centralized around the
graph.Service, and is no longer needed. These
changes will cascade into the migration of
graph client usage into an api package for mocking.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🐹 Trivial/Minor
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
Functions for encapsulation of ListItem object for restore workflow. ListItems bytes cannot be uploaded with previous M365 IDs from the original ListItems. Upload functions remove `ETags`, `M365IDs`, and other fields that are not permitted upon ListItem creation.
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🌻 Feature
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
Related:
- #1935<issue>
## Test Plan
- [x] ⚡ Unit test
## Description
the exchange optionIdentifier performs almost
all the same functions as the path category. In
many cases, it is actually a translation of the
other value. This cleanup will cascade into
the creation of an api layer for the graph client.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🐹 Trivial/Minor
## Issue(s)
* #1967
## Test Plan
- [x] ⚡ Unit test
- [x] 💚 E2E
## Description
Functions for encapsulation of the base List object for restore workflow. List objects cannot be uploaded with previous M365 IDs from the original. Upload functions remove ETags, M365IDs, and other fields that are not permitted upon ListItem creation.
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🌻 Feature
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
* related to Issue #<issue>
## Test Plan
- [x] ⚡ Unit test
## Description
Adds a delta test case for exchange incremental
backups by moving one folder into another one.
Also sets up retrieving container IDs in the test
in preparation for other test control.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1966
## Test Plan
- [x] 💚 E2E
## Description
Adds the ability to delete a from a SharePoint Site for purge script
<!-- Insert PR description-->
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🌻 Feature
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
*related to #2016 <issue>
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.170 to 1.44.171.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.171 (2022-12-30)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/cloudfront</code>: Updates service API and documentation
<ul>
<li>Extend response headers policy to support removing headers from viewer responses</li>
</ul>
</li>
<li><code>service/iotfleetwise</code>: Updates service documentation</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="eb531b5a00"><code>eb531b5</code></a> Release v1.44.171 (2022-12-30) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4677">#4677</a>)</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.170...v1.44.171">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.169 to 1.44.170.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.170 (2022-12-29)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/apigateway</code>: Updates service documentation
<ul>
<li>Documentation updates for Amazon API Gateway</li>
</ul>
</li>
<li><code>service/elasticmapreduce</code>: Updates service API and documentation
<ul>
<li>Added GetClusterSessionCredentials API to allow Amazon SageMaker Studio to connect to EMR on EC2 clusters with runtime roles and AWS Lake Formation-based access control for Apache Spark, Apache Hive, and Presto queries.</li>
</ul>
</li>
<li><code>service/secretsmanager</code>: Updates service API and documentation
<ul>
<li>Added owning service filter, include planned deletion flag, and next rotation date response parameter in ListSecrets.</li>
</ul>
</li>
<li><code>service/wisdom</code>: Updates service API and documentation</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="3961b07ab7"><code>3961b07</code></a> Release v1.44.170 (2022-12-29) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4675">#4675</a>)</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.169...v1.44.170">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
## Description
Add a prefix `Alcion_Restore_` to the cleanup CI action.
## Does this PR need a docs update or release note?
- [X] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [X] 🐹 Trivial/Minor
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
* #1997
## Test Plan
<!-- How will this be tested prior to merging.-->
- [X] 💪 Manual
## Description
Return an error if a collection in a deleted state has a nil previousPath. This technically should
never occur, but we'll prefer an error over a panic.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🐛 Bugfix
## Issue(s)
* #1999
## Test Plan
- [x] 💚 E2E
## Description
If an item is updated, update the folder entries it belongs to.
Also contains a minor refactor - unexport `FolderEntry` to `folderEntry`
## Does this PR need a docs update or release note?
- [x] ✅ Yes, it's included
- [ ] 🕐 Yes, but in a later PR
- [ ] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [x] 🌻 Feature
- [ ] 🐛 Bugfix
- [ ] 🗺️ Documentation
- [ ] 🤖 Test
- [ ] 💻 CI/Deployment
- [ ] 🐹 Trivial/Minor
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
* #1812
## Test Plan
<!-- How will this be tested prior to merging.-->
- [ ] 💪 Manual
- [x] ⚡ Unit test
- [ ] 💚 E2E
## Description
The Backup/Restore operations ensure progress bars are completed before logging to stdout.
When a progress bar was added to repo connect - this is outside of that scope and ends up not getting
shutdown correctly.
This fixes that by adding a `observe.Complete()` in `Connect`.
## Does this PR need a docs update or release note?
- [x] ✅ Yes, it's included
- [ ] 🕐 Yes, but in a later PR
- [ ] ⛔ No
## Type of change
<!--- Please check the type of change your PR introduces: --->
- [ ] 🌻 Feature
- [x] 🐛 Bugfix
- [ ] 🗺️ Documentation
- [ ] 🤖 Test
- [ ] 💻 CI/Deployment
- [ ] 🐹 Trivial/Minor
## Issue(s)
<!-- Can reference multiple issues. Use one of the following "magic words" - "closes, fixes" to auto-close the Github issue. -->
* #1720
## Test Plan
<!-- How will this be tested prior to merging.-->
- [x] 💪 Manual
- [ ] ⚡ Unit test
- [ ] 💚 E2E
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.168 to 1.44.169.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.169 (2022-12-28)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/elasticache</code>: Updates service API and documentation
<ul>
<li>This release allows you to modify the encryption in transit setting, for existing Redis clusters. You can now change the TLS configuration of your Redis clusters without the need to re-build or re-provision the clusters or impact application availability.</li>
</ul>
</li>
<li><code>service/network-firewall</code>: Updates service API and documentation</li>
<li><code>service/rds</code>: Updates service API, documentation, waiters, paginators, and examples
<ul>
<li>This release adds support for Custom Engine Version (CEV) on RDS Custom SQL Server.</li>
</ul>
</li>
<li><code>service/route53-recovery-control-config</code>: Updates service documentation and paginators</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="00f5d7d597"><code>00f5d7d</code></a> Release v1.44.169 (2022-12-28) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4674">#4674</a>)</li>
<li><a href="698f054000"><code>698f054</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4597">#4597</a> from eddy-aws/main</li>
<li><a href="3f9c4f2f73"><code>3f9c4f2</code></a> add changelog file</li>
<li><a href="9adcdc0e96"><code>9adcdc0</code></a> Review comments</li>
<li><a href="ef33e605a1"><code>ef33e60</code></a> simplify generic errors</li>
<li><a href="85ca501b16"><code>85ca501</code></a> Rename code variable and type</li>
<li><a href="87493d8631"><code>87493d8</code></a> Preserve error type and response metadata</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.168...v1.44.169">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
## Description
Adds the base test framework for handling
incremental backups integration testing. Future
changes will add more tests to the table.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1966
## Test Plan
- [x] 💚 E2E
## Description
Add a simple happy-path integration test to
operations backups. This test only attemps to
assert the most basic expectations: that
incrementals are runnable, and that they involve
less data than the initial backup.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1966
## Test Plan
- [x] 💚 E2E
## Description
A little code consolidation in ops/backup integration
tests, to prepare testing incrementals.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🤖 Test
## Issue(s)
* #1966
## Test Plan
- [x] 💚 E2E
Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.44.167 to 1.44.168.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/aws/aws-sdk-go/releases">github.com/aws/aws-sdk-go's releases</a>.</em></p>
<blockquote>
<h1>Release v1.44.168 (2022-12-27)</h1>
<h3>Service Client Updates</h3>
<ul>
<li><code>service/memorydb</code>: Updates service API, documentation, and paginators</li>
<li><code>service/transfer</code>: Updates service API
<ul>
<li>Add additional operations to throw ThrottlingExceptions</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="5ce492c7b4"><code>5ce492c</code></a> Release v1.44.168 (2022-12-27) (<a href="https://github-redirect.dependabot.com/aws/aws-sdk-go/issues/4673">#4673</a>)</li>
<li>See full diff in <a href="https://github.com/aws/aws-sdk-go/compare/v1.44.167...v1.44.168">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
You can trigger a rebase of this PR by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
## Description
Adds thte odata error code SyncFolderNot-
Found to the ErrDeletedInFlight matcher set.
This further protects backups from failing out
if an item was deleted while the backup was
in process.
## Does this PR need a docs update or release note?
- [x] ⛔ No
## Type of change
- [x] 🐛 Bugfix
## Issue(s)
* #1957
## Test Plan
- [x] 💚 E2E