forked from microsoft/FluidFramework
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changeset workflow permissions #4
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Description This has caused a few incidents from the e2e test pipeline. AB#6515 tracks fixing the test. Co-authored-by: Abram Sanderson <[email protected]>
Avoid 'import/no-internal-module' when importing from internal *.d.ts
## Description The IdCompressor needs to be enabled for SharedTree after microsoft#18775 goes in. Because that PR is so big, we're splitting as many non-tree changes out as possible.
Rename OldFieldKind -> FlexFieldKind OldAllowedTypes -> FlexAllowedTypes OldImplicitAllowedTypes -> FlexImplicitAllowedTypes
The tsc-multi task was not generating doneFile content correctly. This change corrects that bug and also adds some more debugging info to some traces. --------- Co-authored-by: Alex Villarreal <[email protected]>
## Description Using the compressor in the new SharedTree was causing the migration tests to fail. We added an API to the compressor to support the migration scenarios. As part of this PR we're enabling the compressor in migration tests that will need it when tree merges its use of the compressor.
Unblocks importing from "@fluidframework/*/internal"
## Description simple-tree contains a bunch of types which to schema aware typing using the flex-tree schema. As the simple-tree abstraction layer now has its own schema system, this is not very useful, and this change migrates some code off the flex-tree based simple-tree types. This also makes a few places not generic over the flex-schema where that caused less type safety (due to needing as casts) ad offered no little value. This brings class-tree and simple-tree's types closer together and is a step toward combining them.
## Description > Rendering multi API document version on FluidFramework public site. Retrieve API package content for dropdown selected version number. If the version number is not selected, it will show API overview page. ## Sample https://github.com/microsoft/FluidFramework/assets/114451900/6d4be4f2-2e67-48c2-9bed-3e92cacb7289 AB#6175 --------- Co-authored-by: Michael Zhen <[email protected]> Co-authored-by: Rishhi Balakrishnan <[email protected]> Co-authored-by: Rohan Dubal <[email protected]>
## Description simple-tree contains a bunch of types which to schema aware typing using the flex-tree schema. As the simple-tree abstraction layer now has its own schema system, this is not very useful, and this change migrates some code off the flex-tree based simple-tree types. This also removes the (not package exported) simple-tree factories from schema-builder, since there is a replacement for that using SchemaFactory and constructors. This brings class-tree and simple-tree's types closer together and is a step toward combining them.
Picks up the fixes from microsoft#18957 Updated the following: client (release group) Dependencies on build-tools updated: @fluid-tools/build-cli: 0.29.0-225750 @fluidframework/build-tools: 0.29.0-225750 @fluidframework/bundle-size-tools: 0.29.0-225750 @fluid-tools/version-tools: 0.29.0-225750
…#18964) ## Description Constrain numbers a bit. Move enum used in format into format file since changing it would impact the format.
…marization attempt due to retries (microsoft#18849) microsoft#18632 added GC sweep ops. As called out in the Todo section of that PR, if GC succeeds but a follow up step fails during summarization, the next GC run may generate an sweep op that contains the same deleted nodes id. This PR adds tests to validate these two scenarios: 1. GC succeeds but summary fails multiple times on summarization retries until the final summary attempt which is successful. A sweep op is sent during the first attempt which may get acked during the attempts. When it does, not further sweep ops are sent. 2. GC succeeds but summary fails multiple times on summarization retries until the final summary attempt which is successful. The sweep ops are not processed (inbound queue is paused) so every GC attempt ends up sending a sweep op with the same deleted node ids. Also, update `summarizeOnDemand` to support running with retries in case of failures. AB#6547
…ties (microsoft#18925) Refactor the change method to include the changeProperties functionality in addition to the regular change functionality. Also refactors the method signature to take in the id and an object containing the desired properties and/or endpoints to change.
## Description Minimal (without understanding the actual format's use) audit of modular change format. This just makes it more strict, and should not be a breaking change.
Remove esm exports from packages that only build commonjs
The logic in `calculateMaxWaitTime` seems to be using the wrong value when calculating the min
…geProperties" (microsoft#18976) Reverts microsoft#18925
Updates the example-utils project to build using node16 module resolution.
## Description Tweak tree shape format to be more concise in encoded field batches. Add snapshot tests for compressed and schema compressed chunked format. ## Breaking Changes Documents encoded with this new version will not load with older versions.
## Description Move "versioned" utils to codec so they can be used by detached field index. Use utilities from versioned. Move stringify to index instead of codec to align with how json coded (which it uses) works.
…ion.changeProperties"" (microsoft#18981) Reverts microsoft#18976
Fixing a couple of minor things that are interferring with my tools.
## Description Adds a lint rule which prevents static, non-type imports from `SharedMap` in test-end-to-end-tests, as well as prose in the README outlining the rationale for this rule existing. This lint rule will expand to include other bits of the Fluid public API which should come from the compat config in the future. AB#4655 --------- Co-authored-by: Abram Sanderson <[email protected]>
…e case (microsoft#18983) Adds an alternative format for the common case of a single node being detached in a revision
## Description SchemaBuilder provides a lot of default/abstractions that are not part of the flex-tree layer. This change migrates several tests to use SchemaBuilderBase instead, reducing implicit dependencies on concepts that are now simple-tree only.
## Description Adjusts the rule for `source-map-loader` to include `.mjs` files as well as `.js` files. This should fix some issues with source-mapping dependent packages while debugging our examples or setups running webpacked versions of our examples. Before: ![image](https://github.com/microsoft/FluidFramework/assets/5222607/c0fb8386-05bf-4dce-aed5-786beb408a33) After: ![image](https://github.com/microsoft/FluidFramework/assets/5222607/33d5c045-250f-44bb-9709-c3eca8899ef2) Co-authored-by: Abram Sanderson <[email protected]>
…mended` and fix violations (microsoft#19271) Now that we've published a beta version of this package, it seems the right time to tighten up eslint rules in this package. This PR upgrades the config from "minimal" to "recommended" and fixes the resulting violations.
[AB#6724](https://dev.azure.com/fluidframework/internal/_workitems/edit/6724) Previous change: microsoft#19167 We were still getting summary nacks from ODSP for tests that odsp loader compat. Did not realize that it was the loader that was causing the issue. This also makes it so for ODSP full back compat loader + driver tests we run only from the current version to version `2.0.0-internal.3.x.y`
Updates our dev dependencies on `@microsoft/api-extractor` from `7.38.3` to `7.39.1`. This update includes an updated dependency from `api-extractor` on `typescript`, removing our need for pnpm-overriding that dependency. This PR also updates our local pnpm patches for `7.39.1`.
…rosoft#19301) - adds a setConnected method to trees on `TestTreeProviderLite` to allow for disconnecting/reconnecting - adds tests for various combinations of edits on a removed tree where the last gets resubmitted - adds a test for editing a removed tree on a branch --------- Co-authored-by: Yann Achard <[email protected]>
## Description ADO:6510 - the test often times out
AB#6746 AB#6747 AB#6748 ## Description This PR fixes some styling issues in the OpLatency graph. - updates x-axis styling to avoid clashing with text below - update x-axis with label and formatting to be more readable instead of raw timestamp. ![Screenshot 2024-01-19 at 4 06 03 PM](https://github.com/microsoft/FluidFramework/assets/23732584/d0f7fc0c-87c7-4afe-bd02-bf0bd9ee9ad8)
There currently isn't an explicit failure telemetry event when a summarize fails all attempts, and as such dashboards are having to use the `"Summarize_cancel"` event. However, there are certain expected flows that will end up sending a `"Summarize_cancel"` telemetry event. This event is seen as a "failure" when it could be a totally normal flow. In my mind, summarizer success/failure events should help answer 2 questions for dashboards and metrics: 1. What percentage of summaries are failing completely (no successful retries) 2. How many retries are happening per success In a real-world scenario, if a summarizer failed on 2 retries and succeeded on the 3rd we would consider that a success. But our telemetry is counting each individual retry as a failure, leading to improper percentages of, for example, only succeeding 33% of the time. [AB#6717](https://dev.azure.com/fluidframework/internal/_workitems/edit/6717) **Note:** There currently exists the `"StoppingSummarizer"` event, but this happens every time the summarizer stops for normal reasons. Dashboards and metrics would need to be built off the [`"reason"` property](https://github.com/kian-thompson/FluidFramework/blob/main/packages/runtime/container-runtime/src/summary/summarizerTypes.ts#L379), which is subject to change and probably not the best way forward.
…long certain steps run (microsoft#19309) ## Bug The GC test "Trailing op [afterSweepTimeout] transitions data store from [ref -> unref] without deleting it" some times fails because the following error telemetry is logged - "fluid:telemetry:FluidDataStoreContext:GC_Deleted_DataStore_Unexpected_Delete". ## Root cause In the last summary in this test, a data store may be sweep ready depending on how much elapsed since the previous summary. The test used sweep timeout as 100 ms so if that much time has passed, a GC sweep op will be sent containing the id of the sweep ready data store. If this op is processed by the time the test completes, "fluid:telemetry:FluidDataStoreContext:GC_Deleted_DataStore_Unexpected_Delete" will be logged. Since the sweep timeout is low, it is possible that in certain cases, that times elapses between the last 2 summaries in the test resulting in the data store being deleted. ## Fix It's fine for the data store to be deleted in the scenario described above. However, the container that created the data store should be closed to emulate session expiry before sweep deletes it. The fix is to close this container before running the last summary. AB#6784
## Description Add groupId to ISnapshotTree, ISummaryTree, ITree. This groupId will be used to fetch the missing part of the snapsot from the service when they are required. When the server returns the snapshot to the client, and some tree is missing in that snapshot, then this groupId could be used to request the missing contents from the service. Base design is present in this doc: [Design Doc](https://microsoft.sharepoint.com/:w:/t/FluidFramework/ESJQvukxffJNiTZzbNCWky4B891mpOpWD7BHhbOznXsMZg?e=UsxB7J) This concept is talked here but missing in base design where "priority" is used. Will update the base doc with this info: [Doc Consisting info for the groupIdOrName concept](https://microsoft.sharepoint-df.com/:fl:/g/contentstorage/CSP_e47249b7-d3bf-4f0b-9113-302661c1cf90/EZ0vH8pnufROnyNoUCjZYdUBOXP3t-6wRJvDbRCxcjQh9g?e=3daO3i&nav=cz0lMkZjb250ZW50c3RvcmFnZSUyRkNTUF9lNDcyNDliNy1kM2JmLTRmMGItOTExMy0zMDI2NjFjMWNmOTAmZD1iJTIxdDBseTVMX1RDMC1SRXpBbVljSFBrSTJHYURvUTZnRkh2a0g4SmdoU0lqQ0Y1RnNwZGg5elNMSG5ZMktKaVRhZSZmPTAxNjY0RFNKNDVGNFA0VVo1WjZSSEo2STNJS0FVTlNZT1YmYz0lMkYmYT1Mb29wQXBwJnA9JTQwZmx1aWR4JTJGbG9vcC1wYWdlLWNvbnRhaW5lcg%3D%3D) --------- Co-authored-by: Jatin Garg <[email protected]>
## Description update server to consume proto-defn prerelease Co-authored-by: Jatin Garg <[email protected]>
As title, the next branch is no longer relevant right now.
Add inbound pausing/resuming for different containers to ensure the messages sequence ordering. [AB#6670](https://dev.azure.com/fluidframework/internal/_workitems/edit/6670) --------- Co-authored-by: Tony Murphy <[email protected]>
…ight ops (microsoft#19302) ## Description Reapplies the fix in microsoft#19211 with some changes to how strict we are with the queue of in-flight ops. Notably, it appears that `this.runtime.deltaManager.lastSequenceNumber` at op submit time sometimes trails behind the reference sequence number that actually gets submitted for that op, as evidenced by some e2e tests. This had something to do with client leave/join messages. Rather than assert equality on round-trip, I've converted the mismatch assert to verify `<=`, since that's all that's required for correctness of the scheme. The applyStashedOp codepath also happened to work before but in an unexpected way: `reSubmit` was calling `.shift()` on an empty queue. This PR adds enforcement to the reSubmit codepath and a corresponding unit test for that flow. The changes here are split naturally into commits for reviewers familiar with that PR. --------- Co-authored-by: Abram Sanderson <[email protected]>
## Description "NoCompat" is no longer a supported argument to `createCompatSuiteWithDefault`. This restores support for `describeCompat.noCompat` by passing the current package version as the min supported version. --------- Co-authored-by: Abram Sanderson <[email protected]>
github-actions
bot
added
base: main
area: build
area: contributor experience
area: dds: propertydds
area: examples
area: website
breaking change
documentation
Improvements or additions to documentation
public api change
labels
Jan 23, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area: build
area: contributor experience
area: dds: propertydds
area: examples
area: website
base: main
breaking change
documentation
Improvements or additions to documentation
public api change
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.