Skip to content

Conversation

@pomfrida
Copy link
Collaborator

@pomfrida pomfrida self-assigned this Nov 21, 2025
@pomfrida pomfrida changed the title chore: add /next subpath + separate rollup config WIP chore: add /next subpath + release please for beta release WIP Nov 21, 2025
@pomfrida pomfrida changed the title chore: add /next subpath + release please for beta release WIP chore: add /next subpath + release please for beta WIP Nov 21, 2025
@pomfrida pomfrida changed the title chore: add /next subpath + release please for beta WIP chore: add /next subpath + (beta) release please for next components WIP Nov 21, 2025
@pomfrida pomfrida changed the title chore: add /next subpath + (beta) release please for next components WIP chore: add /next subpath + (beta) release please for next components Nov 25, 2025
@pomfrida pomfrida force-pushed the 216-implement-next-entry-point-for-eds-20-components-beta-release-flow branch from e4e1834 to 84cab00 Compare November 25, 2025 15:48
@pomfrida pomfrida marked this pull request as ready for review November 26, 2025 08:05
Copilot AI review requested due to automatic review settings November 26, 2025 08:05
Copilot finished reviewing on behalf of pomfrida November 26, 2025 08:10
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR establishes the infrastructure for releasing EDS 2.0 components as beta versions through a new /next subpath. The implementation enables a dual release strategy where stable (EDS 1.0) and beta (EDS 2.0) components coexist in the same package but are accessed through different entry points. The PR resolves the need for a controlled beta release process while components are under active development.

Key changes:

  • Added /next subpath export to enable importing beta components separately from stable ones
  • Configured Release Please to handle dual releases with separate changelogs (stable and beta)
  • Updated CI/CD workflows to detect and publish beta releases with the @beta npm dist-tag
  • Created comprehensive documentation for the beta release workflow and component graduation strategy

Reviewed changes

Copilot reviewed 16 out of 16 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
packages/eds-core-react/package.json Adds /next export path for beta components
packages/eds-core-react/rollup.config.js Adds separate build configuration for /next entry point
packages/eds-core-react/src/index.next.ts Creates entry point for beta components with documentation
packages/eds-core-react/src/components/next/index.ts Creates placeholder export file for future beta components
.github/workflows/trigger_publish.yml Adds beta release detection and separate publish triggers for stable/beta
.github/workflows/publish_core_react.yaml Updates deployment logic to handle beta releases and environment selection
.github/release-please-config.json Configures dual release strategy with beta prerelease support
.github/release-please-config.md Documents the dual release configuration approach
.github/release-please-manifest.json Adds initial beta version tracking
documentation/how-to/BETA_RELEASE_GUIDE.md Comprehensive guide for beta release workflow and graduation process
documentation/how-to/AUTOMATED_RELEASE.md Updates release documentation to include beta release instructions
packages/eds-core-react/README.md Adds beta installation and usage instructions
packages/eds-core-react/CHANGELOG.next.md Creates separate changelog for beta releases
packages/eds-core-react/stories/docs/EDS2.mdx Adds Storybook documentation page for EDS 2.0 beta components
packages/eds-core-react/.storybook/preview.mjs Adds EDS 2.0 section to Storybook navigation order
README.md Documents beta components section with installation and usage examples

You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

@pomfrida pomfrida requested a review from Copilot November 26, 2025 09:32
Copilot finished reviewing on behalf of pomfrida November 26, 2025 09:37
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 19 out of 19 changed files in this pull request and generated 3 comments.


You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

@pomfrida pomfrida requested a review from Copilot November 26, 2025 10:08
Copilot finished reviewing on behalf of pomfrida November 26, 2025 10:13
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 19 out of 19 changed files in this pull request and generated 4 comments.


You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

Copilot AI review requested due to automatic review settings November 27, 2025 09:45
Copilot finished reviewing on behalf of pomfrida November 27, 2025 09:50
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 19 out of 19 changed files in this pull request and generated 1 comment.


You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

@pomfrida pomfrida requested a review from Copilot November 27, 2025 09:59
@pomfrida pomfrida force-pushed the 216-implement-next-entry-point-for-eds-20-components-beta-release-flow branch from 070de03 to 943dec9 Compare November 27, 2025 10:00
Copilot finished reviewing on behalf of pomfrida November 27, 2025 10:02
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 20 out of 20 changed files in this pull request and generated 3 comments.


You can also share your feedback on Copilot code review for a chance to win a $100 gift card. Take the survey.

The EDS repository uses a **dual release strategy**:

- **Stable releases** (`latest` tag) -- All components EXCEPT those in `/next`
- **Beta releases** (`beta` tag) -- Only components in `src/components/next/`
Copy link

Copilot AI Nov 27, 2025

Choose a reason for hiding this comment

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

[nitpick] According to the markdown guidelines (CodingGuidelineID: 1000004), use endash (--) instead of double hyphen (--). The markdown already uses -- correctly, but note that in rendered markdown this should display as an em dash. Consider using the proper em dash character (—) or ensure the markdown renderer handles this appropriately.

Suggested change
- **Beta releases** (`beta` tag) -- Only components in `src/components/next/`
- **Beta releases** (`beta` tag) Only components in `src/components/next/`

Copilot uses AI. Check for mistakes.
export const Placeholder = ({
text = 'EDS 2.0 Placeholder',
}: PlaceholderProps) => {
return <div data-testid="eds-placeholder">{text}</div>
Copy link

Copilot AI Nov 27, 2025

Choose a reason for hiding this comment

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

The naming convention for CSS classes in this project uses BEM with lowercase and hyphens (per CodingGuidelineID: 1000006). While this placeholder component doesn't have a CSS class yet, when styling is added, ensure it follows the pattern .placeholder for the class name and placeholder.css for the CSS file.

Copilot uses AI. Check for mistakes.
Copy link
Contributor

Copilot AI commented Nov 27, 2025

@torleifhalseth I've opened a new pull request, #4273, to work on those changes. Once the pull request is ready, I'll request review from you.

"release-type": "simple",
"component": "eds-core-react-next",
"prerelease-type": "beta",
"include-component-in-tag": false
Copy link
Collaborator

Choose a reason for hiding this comment

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

What is the effect of this configuration @copilot ?

Copy link
Contributor

Copilot AI commented Nov 27, 2025

@torleifhalseth I've opened a new pull request, #4274, to work on those changes. Once the pull request is ready, I'll request review from you.

Copy link
Collaborator

Choose a reason for hiding this comment

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

This looks very nice. I just added some questions to better understand the configuration. Also tested to mention copilot to see if it can answer inline, but please answer them if you have the answer @pomfrida :D

Copy link
Collaborator

Choose a reason for hiding this comment

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

Do you know the effect of using different component value?

Copy link
Collaborator

@torleifhalseth torleifhalseth left a comment

Choose a reason for hiding this comment

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

Great work @pomfrida . I added some comments.

order: [
'Introduction',
'EdsProvider',
'EDS 2.0 (beta)',
Copy link
Collaborator

Choose a reason for hiding this comment

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

Should this be placed furter down? 🤔 I would suggest after everything else so that we don't add beta stuff in between.

Copy link
Collaborator Author

@pomfrida pomfrida Nov 27, 2025

Choose a reason for hiding this comment

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

Beta stuff will be on top under "EDS 2.0 (beta)" so it won't be in between other components, I thought it would be nice to have it on top to make it clear what we are working on and what's coming? 🤔

Copy link
Collaborator

Choose a reason for hiding this comment

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

Ok! Great. What about the EdsProvider?

@@ -0,0 +1,15 @@
'use client'
Copy link
Collaborator

Choose a reason for hiding this comment

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

Hopefully we don't need to limit the new components to client. We want to support SSR out of the box. This is a Next.js spesific directive that I hope we can exclude.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Good point! Removed 'use client' from the index file. For EDS 2.0, we'll add it per component that needs it (hooks/events), this way static components can remain server components

Comment on lines 44 to 49
For design tokens (required for CSS variables):

```bash
npm install @equinor/eds-tokens
```

Copy link
Collaborator

Choose a reason for hiding this comment

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

I don't think we should include this part. The tokens are included (dependency) to the eds-core-react package.

Comment on lines 58 to 96
{
input: ['./src/index.next.ts'],
external: [
/@babel\/runtime/,
'react/jsx-runtime',
...Object.keys({
...pkg.peerDependencies,
...pkg.dependencies,
}),
],
watch: {
clearScreen: true,
include: ['./src/**', './../tokens/**'],
},
plugins: [
preserveDirective(),
resolve({ extensions }),
commonjs(),
postcss({
extensions: ['.css'],
extract: false,
}),
babel({
babelHelpers: 'runtime',
extensions,
rootMode: 'upward',
}),
],
output: [
{
dir: 'dist/esm',
preserveModules: true,
preserveModulesRoot: 'src',
format: 'es',
sourcemap: isDevelopment,
},
{ file: './dist/index.next.cjs', format: 'cjs', interop: 'auto' },
],
},
Copy link
Collaborator

Choose a reason for hiding this comment

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

Are we duplicating the default (stable) configuration? Could parts of this be shared? @copilot

Copy link
Contributor

Copilot AI commented Nov 27, 2025

@torleifhalseth I've opened a new pull request, #4275, to work on those changes. Once the pull request is ready, I'll request review from you.

@pomfrida
Copy link
Collaborator Author

Great work @pomfrida . I added some comments.

Thanks for the thorough review @torleifhalseth 💯
I addressed your comments in my latest commit so should be ready again for a new review.

One thing I did not address was the menu order as I would like to make it clear what's new and what's coming. I think it makes sense to keep it on top

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.

3 participants