Skip to content

Comments

feat: begin integrating @netlify/dev#7950

Merged
eduardoboucas merged 11 commits intomainfrom
feat/programmatic-netlify-dev
Feb 19, 2026
Merged

feat: begin integrating @netlify/dev#7950
eduardoboucas merged 11 commits intomainfrom
feat/programmatic-netlify-dev

Conversation

@eduardoboucas
Copy link
Member

Sets the foundation for integrating @netlify/dev in the CLI. We start by disabling all features (except for db, which is enabled with an environment variable). Then we can gradually start enabling individual features and remove the corresponding code from the codebase.

As for the term "programmatic", I was looking for a way to distinguish the new @netlify/dev package (which offers a programmatic interface for the emulation of the Netlify platform) from the existing Netlify Dev command. Naming things is hard. Happy to go for another term if someone has a better idea.

@eduardoboucas eduardoboucas requested a review from a team as a code owner February 17, 2026 13:48
@github-actions
Copy link

github-actions bot commented Feb 17, 2026

📊 Benchmark results

Comparing with f876f57

  • Dependency count: 1,080 ⬆️ 0.65% increase vs. f876f57
  • Package size: 347 MB ⬆️ 6.31% increase vs. f876f57
  • Number of ts-expect-error directives: 364 (no change)

package.json Outdated
Comment on lines 162 to 163
"@netlify/db": "^0.1.0",
"@netlify/db-dev": "^0.2.0",
Copy link
Member

Choose a reason for hiding this comment

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

Are these used? 🤔

Copy link
Member Author

Choose a reason for hiding this comment

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

In tests, yes.

Copy link
Member

Choose a reason for hiding this comment

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

huh, test fixtures with a package.json don't get npm installed?

Copy link
Member Author

Choose a reason for hiding this comment

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

Ah, I see what you mean. Moved to the fixture deps in bd20f1c.

if (force === undefined) {
const existingValue = await store.get(key)

// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
Copy link
Member

Choose a reason for hiding this comment

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

Is there a wrong type we should be fixing?

Copy link
Member Author

Choose a reason for hiding this comment

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

Linting started failing for this, randomly. I haven't yet had the time to understand why, since I haven't touched this part of the code.

Copy link
Member Author

Choose a reason for hiding this comment

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

I'll look into this as a follow-up.


injectEnvVariables(env)

const programmaticNetlifyDev = await startProgrammaticNetlifyDev({
Copy link
Member

Choose a reason for hiding this comment

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

You may know this already, but for completeness: this would need to also be hooked up in the dev:exec, serve, and functions:serve commands.

Copy link
Member Author

Choose a reason for hiding this comment

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

Yeah, I'll do that in a follow up. Having this on dev for now is fine.

eduardoboucas and others added 3 commits February 18, 2026 18:30
Co-authored-by: Philippe Serhal <philippe.serhal@netlify.com>
@eduardoboucas eduardoboucas merged commit 03435e5 into main Feb 19, 2026
103 of 104 checks passed
@eduardoboucas eduardoboucas deleted the feat/programmatic-netlify-dev branch February 19, 2026 11:45
sarahetter pushed a commit that referenced this pull request Feb 23, 2026
* feat: begin integrating `@netlify/dev`

* chore: add deps

* fix(deps): bump netlify packages to dedupe with @netlify/dev

* chore: update deps

* chore: fix lint issue

* chore: add debug logging

* chore: add comment

Co-authored-by: Philippe Serhal <philippe.serhal@netlify.com>

* chore: cap site name length in tests

* chore: update snapshot

---------

Co-authored-by: Philippe Serhal <philippe.serhal@netlify.com>
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.

2 participants