Skip to content
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

Tree: Field kinds #11469

Merged
merged 35 commits into from Aug 17, 2022
Merged

Tree: Field kinds #11469

merged 35 commits into from Aug 17, 2022

Conversation

CraigMacomber
Copy link
Contributor

@CraigMacomber CraigMacomber commented Aug 9, 2022

Description

Refactor FieldKind (as part of field schema) to be an extension for the schema system rather than a close set via an enum.

For all the areas that this impacts are very much in the early proof of concept phase, so this abstraction is not really used, but longer term actual change handlers, edit builders, and even field reading APIs and encoding formats can be dictated by their FieldKind. This should allow for modularizing, versioning and upgrading the policy logic for various field types (such as sequence, value, optional, etc) in the future.

Reviewer Guidance

As this is half architectural work and half tweaking example and proof of concept code to work with it, it's a bit hard to review.

Main things I'd like feedback on are unclear/insufficient high-level documentation, and anything that seems like it could be an architectual mistake (ex: possible cyclic dep, something that will be hard to change later, things that won't be unit testable effectively)

@github-actions github-actions bot added area: dds Issues related to distributed data structures public api change Changes to a public API base: main PRs targeted against main branch labels Aug 9, 2022
@CraigMacomber CraigMacomber changed the title Tree: Filed kinds Tree: Field kinds Aug 15, 2022
@CraigMacomber CraigMacomber marked this pull request as ready for review August 16, 2022 00:19
@CraigMacomber CraigMacomber requested review from a team as code owners August 16, 2022 00:19
packages/dds/tree/src/feature-libraries/defaultSchema.ts Outdated Show resolved Hide resolved
packages/dds/tree/src/forest/forest.ts Show resolved Hide resolved
api-report/tree.api.md Show resolved Hide resolved
api-report/tree.api.md Show resolved Hide resolved
@CraigMacomber CraigMacomber merged commit f0a4ffc into microsoft:main Aug 17, 2022
@CraigMacomber CraigMacomber deleted the filed-kinds branch August 17, 2022 23:16
@github-actions
Copy link
Contributor

This commit is queued for merging with the next branch! Please ignore this PR for now. Contact @microsoft/fluid-cr-infra for help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: dds Issues related to distributed data structures base: main PRs targeted against main branch public api change Changes to a public API
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants