Skip to content

Commit 2ee418e

Browse files
authored
Remove the Nelify Edge adapter (#8029)
1 parent 9cc4e48 commit 2ee418e

28 files changed

+27
-543
lines changed

.changeset/tame-files-glow.md

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
'@astrojs/netlify': major
3+
---
4+
5+
Remove the Netlify Edge adapter
6+
7+
`@astrojs/netlify/functions` now supports Edge middleware, so a separate adapter for Edge itself (deploying your entire app to the edge) is no longer necessary. Please update your Astro config to reflect this change:
8+
9+
```diff
10+
// astro.config.mjs
11+
import { defineConfig } from 'astro/config';
12+
- import netlify from '@astrojs/netlify/edge';
13+
+ import netlify from '@astrojs/netlify/functions';
14+
15+
export default defineConfig({
16+
output: 'server',
17+
adapter: netlify({
18+
+ edgeMiddleware: true
19+
}),
20+
});
21+
```
22+
23+
This adapter had several known limitations and compatibility issues that prevented many people from using it in production. To reduce maintenance costs and because we have a better story with Serveless + Edge Middleware, we are removing the Edge adapter.

packages/integrations/netlify/README.md

+4-22
Original file line numberDiff line numberDiff line change
@@ -55,28 +55,11 @@ If you prefer to install the adapter manually instead, complete the following tw
5555
});
5656
```
5757

58-
### Edge Functions
59-
60-
Netlify has two serverless platforms, [Netlify Functions](https://docs.netlify.com/functions/overview/) and [Netlify Edge Functions](https://docs.netlify.com/edge-functions/overview/). With Edge Functions your code is distributed closer to your users, lowering latency.
61-
62-
To deploy with Edge Functions, use `netlify/edge-functions` in the Astro config file instead of `netlify/functions`.
63-
64-
```js ins={3}
65-
// astro.config.mjs
66-
import { defineConfig } from 'astro/config';
67-
import netlify from '@astrojs/netlify/edge-functions';
68-
69-
export default defineConfig({
70-
output: 'server',
71-
adapter: netlify(),
72-
});
73-
```
74-
7558
### Run middleware in Edge Functions
7659

7760
When deploying to Netlify Functions, you can choose to use an Edge Function to run your Astro middleware.
7861

79-
To enable this, set the `build.excludeMiddleware` Astro config option to `true`:
62+
To enable this, set the `edgeMiddleware` config option to `true`:
8063

8164
```js ins={9}
8265
// astro.config.mjs
@@ -85,10 +68,9 @@ import netlify from '@astrojs/netlify/functions';
8568

8669
export default defineConfig({
8770
output: 'server',
88-
adapter: netlify(),
89-
build: {
90-
excludeMiddleware: true,
91-
},
71+
adapter: netlify({
72+
edgeMiddleware: true,
73+
}),
9274
});
9375
```
9476

Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
1-
export { netlifyEdgeFunctions } from './integration-edge-functions.js';
21
export { netlifyFunctions as default, netlifyFunctions } from './integration-functions.js';
32
export { netlifyStatic } from './integration-static.js';

packages/integrations/netlify/src/integration-edge-functions.ts

-98
This file was deleted.

packages/integrations/netlify/src/netlify-edge-functions.ts

-34
This file was deleted.

packages/integrations/netlify/test/edge-functions/deps.ts

-11
This file was deleted.

packages/integrations/netlify/test/edge-functions/dynamic-import.test.ts

-29
This file was deleted.

packages/integrations/netlify/test/edge-functions/edge-basic.test.ts

-36
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/dynimport/astro.config.mjs

-9
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/dynimport/package.json

-9
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/dynimport/prod.js

-11
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/dynimport/src/components/Thing.astro

-4
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/dynimport/src/pages/index.astro

-11
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/edge-basic/astro.config.mjs

-12
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/edge-basic/package.json

-10
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/edge-basic/src/pages/index.astro

-11
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/edge-basic/src/pages/three.md

-7
This file was deleted.

packages/integrations/netlify/test/edge-functions/fixtures/edge-basic/src/pages/two.astro

-6
This file was deleted.

0 commit comments

Comments
 (0)