facebook / lexical

Lexical is an extensible text editor framework that provides excellent reliability, accessibility and performance.
https://lexical.dev
MIT License
17.5k stars 1.45k forks source link

feat(build): packagesManager and PackageMetadata abstractions & integration tests #5940

Closed etrepum closed 3 weeks ago

etrepum commented 3 weeks ago

Extracted from #5876 to hopefully land it in smaller chunks. Addresses the infrastructure needed for #5869 (without the associated changes to scripts).

This does not make any major changes to any of the other build infrastructure, I will push those PRs separately if this is reviewed & merged instead of #5876.

I've also removed lint changes and the additional build integration tests for astro, svelte and next.js to minimize this PR.

If you'd rather get this done in one go, review and merge #5876 instead which includes these changes.

vercel[bot] commented 3 weeks ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
lexical ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 23, 2024 7:21pm
lexical-playground ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 23, 2024 7:21pm
etrepum commented 3 weeks ago

@StyleT here's an attempt to break #5876 up. This is almost entirely an additive change (except for the small changes required for eslint rules and tsc compliance). I could move the build integration tests (basically just boilerplate projects to show that the build works with various frameworks) into their own PR if this needs to be even smaller.

StyleT commented 3 weeks ago

Glad to see this got smaller. I'll take another look today/tomorrow ;) Let's not forget main purpose of this: simplify new package addition. Hope these changes serve the purpose well ;)

etrepum commented 3 weeks ago

This is mostly just the infrastructure to make that possible. #5876 includes the actual work to make it easier to add a new package as it requires sweeping changes to all sorts of build and configuration so that new packages get picked up.

etrepum commented 3 weeks ago

A larger PR is preferable for me because as an external contributor I have no way to submit stacked diffs for review. Landing this work in pieces would take months and would not really help anyone add a new package in the meantime.

etrepum commented 3 weeks ago

Closing in favor of the larger #5876