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

FAST Project Re-alignment HLD #2476

Open
wants to merge 16 commits into
base: main
Choose a base branch
from
Open

Conversation

rajsite
Copy link
Member

@rajsite rajsite commented Nov 19, 2024

Pull Request

🤨 Rationale

HLD for how Nimble will address the FAST project re-alignment.

See #2207
See microsoft/fast#6955
AzDo Work Item 2842865

✅ Checklist

  • I have updated the project documentation to reflect my changes or determined no changes are needed.

@rajsite rajsite changed the title Fast foundation deprecation hld FAST Project Re-alignment HLD Nov 19, 2024
- [Microsoft vscode webui toolkit](https://github.com/microsoft/vscode-webview-ui-toolkit/issues/561) (sunset due to FAST re-alignment)
- [National General](https://components.nationalgeneral.com/ui/?path=/story/components-design-system-provider--branding) (does not appear to be open source)

#### Platform alignment gaps of archive packages
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If links to relevant issues / documentation are desired for specific items (or all items if really desired) in this section I can add them.

@rajsite rajsite marked this pull request as ready for review November 19, 2024 18:42
Copy link
Contributor

@jattasNI jattasNI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

High level direction seems great, you have my approval to start implementing if you want to. Gonna take one more look once my comments are addressed so not approving the PR just yet.

- Bug fixes or generic changes could be in `fast`.
- Signficant new feature development may require forking from fast and adopting nimble patterns.
- Notify teams directly leveraging `@microsoft/fast-*` to switch to `@ni/fast-*` (scope not evaluated).
- Consider repatriating some changes back to FAST where a fork was made for minimal bug fixes (scope not evaluated).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you add the step of adopting the new packages in the Nimble repo and any sub-steps that we can think of? For example:

  1. update package.json and TypeScript imports to point to the new packages. Do we expect any other breaking changes or since we're forking from the same versions we currently depend on it should be a drop-in replacement?
  2. update READMEs/CONTRIBUTINGs that refer to FAST to link to the fork either in addition to or instead of the original
  3. any expected client impact if clients don't depend on FAST directly?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Notes for me to add, azdo search for fast and codesearch. Looks like mostly Ozone, jupyter react wrapper, and I think stale TestInsights references.


Work that should be done imminently (over the next 1-3 months).

- Fork the `microsoft/fast` repo to `ni/fast` as a new top-level GitHub repository.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might mention that it'll be open source (I assume)

/specs
```

- Update npm dependencies to latest.
Copy link
Contributor

@jattasNI jattasNI Nov 19, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some other common repo things we should probably do:

  1. enable Renovate
  2. add CODEOWNERS (can happen after all the setup is done, but we want changes to be reviewed after that)
  3. update README to link back to the original repo and graciously acknowledge that we are standing on their shoulders
  4. ensure we are in compliance with their license and pick what license we will use for the fork
  5. update CONTRIBUTING to describe policies for beachball / owners (could be copied from Nimble or just link to Nimble's)

- FAST has stated that they are [unwilling to accept](https://github.com/microsoft/fast/pull/6960#issuecomment-2344299634) future bug fix contributions in archive branches. Made an [exception for the memory leak bug](https://github.com/microsoft/fast/issues/7022#issuecomment-2344312698).
- Bulk closed [~200 GitHub issues](https://github.com/microsoft/fast/issues?q=is%3Aissue%20label%3Aclosed%3Aobsolete%20closed%3A%3E2024-05-01%20%20) (bugs, new features, etc.) related to archive packages.

#### Users of archive packages
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This might be outside the scope of this HLD, but do you have thoughts on whether we'd encourage any community around this fork? Would we publicize it on FAST Discord? Welcome other projects to adopt it? Accept contributions from outside NI?

If it's an explicit non-goal we could mention it. If it's TBD I'm ok to leave it unaddressed or allude to it as possible future work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants