Compare commits

...

29 commits

Author SHA1 Message Date
Emanuele Stoppa
46974b64e7 feat: break down AstroErrorData in multiple objects 2023-08-03 16:40:16 +01:00
Houston (Bot)
93ad8b95e3
[ci] release (beta) (#7897)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-08-03 11:17:43 -04:00
Emanuele Stoppa
a4815d8153 chore: rebase 2023-08-03 16:08:14 +01:00
Emanuele Stoppa
7723c4cc93 feat: change compressHTML default value to true (#7918)
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-08-03 16:05:12 +01:00
Erika
c022a4217a feat: add noop service and make integrations that needs it use it (#7903)
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-08-03 16:05:12 +01:00
Erika
35f01df797 feat: use external @astrojs/check (#7892)
* feat: use @astrojs/check

* fix: what happened in my rebase??

* nit: adjust with feedback
2023-08-03 16:05:12 +01:00
Bjorn Lu
631b9c410d Refactor MDX components exports handling (#7904) 2023-08-03 16:05:12 +01:00
Erika
2f951cd403 feat: make Sharp the default image service (#7908)
* feat: make Sharp the default image service

* chore: lockfile
2023-08-03 16:05:12 +01:00
Emanuele Stoppa
fb5cd6b56d feat: change default port to 4321 (#7874)
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2023-08-03 16:05:12 +01:00
Emanuele Stoppa
8368447667 fix: update examples to use the new API of cookies (#7899) 2023-08-03 16:05:11 +01:00
Emanuele Stoppa
51b206e4c3 ci: change release tag name (#7898) 2023-08-03 16:05:11 +01:00
Emanuele Stoppa
d721a12cb9 chore: use workspace packages (#7896) 2023-08-03 16:05:11 +01:00
Emanuele Stoppa
1dfbe95108 chore: use workspace packages (#7894) 2023-08-03 16:05:10 +01:00
Matthew Phillips
59d6e569f6 Make Astro.cookies.get(key) return undefined (#7888) 2023-08-03 16:04:09 +01:00
Emanuele Stoppa
61806a6193 chore: remove deleted package 2023-08-03 16:04:09 +01:00
Emanuele Stoppa
88ea078be8 chore: enter pre release mode (#7883) 2023-08-03 16:04:09 +01:00
Bjorn Lu
dfc2d93e3c Move MDX plugin re-ordering hack to MDX integration (#7872) 2023-08-03 16:04:09 +01:00
Chris Swithinbank
dd3054d150 Tweak adapter config CHANGELOG (#7853) 2023-08-03 16:04:09 +01:00
Emanuele Stoppa
9b4f70a629 feat: astro features (#7815) 2023-08-03 16:04:09 +01:00
Emanuele Stoppa
3fdf509b27 feat: adapter features, deprecate astro configs (#7839) 2023-08-03 16:04:09 +01:00
Emanuele Stoppa
bc37331d81 feat: pass logger to integrations (#7816) 2023-08-03 16:04:09 +01:00
Erika
76ddef19cc feat: remove automatic flattening of getStaticPaths result (#7845)
* feat: remove automatic flattening of `getStaticPaths` result

* chore: changeset
2023-08-03 16:04:09 +01:00
Erika
3dc1ca2fac feat: remove webapi in favor of a smaller polyfill (#7840)
* feat: remove webapi in favor of a smaller polyfill

* test: remove old test

* test: 🤦‍♀️

* chore: changeset
2023-08-03 16:04:07 +01:00
Emanuele Stoppa
67becaa580 feat: remove support for old API routes syntax (#7822) 2023-08-03 16:03:48 +01:00
Emanuele Stoppa
5c2ee496ca Remove support for Node 16 (#7780) (#7820) 2023-08-03 16:03:48 +01:00
Erika
1be84dfee3 Update tsconfig.json presets for TS 5.0 (#7785) 2023-08-03 16:03:48 +01:00
Emanuele Stoppa
78de801f21 feat: upper case the name of the endpoints (#7783)
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
Co-authored-by: Yan Thomas <61414485+Yan-Thomas@users.noreply.github.com>
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2023-08-03 16:03:48 +01:00
Emanuele Stoppa
983411d5ae chore: fix rebase problems 2023-08-03 16:03:48 +01:00
Erika
1eae2e3f7d Remove support for Node 16 (#7780) 2023-08-03 16:03:48 +01:00
451 changed files with 4213 additions and 6657 deletions

View file

@ -0,0 +1,31 @@
---
'@astrojs/cloudflare': major
'@astrojs/partytown': major
'@astrojs/tailwind': major
'@astrojs/netlify': major
'@astrojs/sitemap': major
'@astrojs/preact': major
'@astrojs/svelte': major
'@astrojs/vercel': major
'@astrojs/react': major
'@astrojs/solid-js': major
'@astrojs/deno': major
'@astrojs/node': major
'@astrojs/lit': major
'@astrojs/vue': major
'create-astro': major
'@astrojs/prism': major
'@astrojs/rss': major
'@astrojs/telemetry': major
'astro': major
'@astrojs/turbolinks': minor
'@astrojs/alpinejs': minor
'@astrojs/prefetch': minor
'@astrojs/markdoc': minor
'@astrojs/underscore-redirects': minor
'@astrojs/image': minor
'@astrojs/mdx': minor
'@astrojs/internal-helpers': minor
---
Remove support for Node 16. The lowest supported version by Astro and all integrations is now v18.14.1. As a reminder, Node 16 will be deprecated on the 11th September 2023.

View file

@ -0,0 +1,5 @@
---
'astro': major
---
Removed automatic flattening of `getStaticPaths` result. `.flatMap` and `.flat` should now be used to ensure that you're returning a flat array.

View file

@ -0,0 +1,32 @@
---
'@astrojs/cloudflare': minor
'@astrojs/netlify': minor
'@astrojs/vercel': minor
'@astrojs/deno': minor
'@astrojs/node': minor
'astro': minor
---
Introduced the concept of feature map. A feature map is a list of features that are built-in in Astro, and an Adapter
can tell Astro if it can support it.
```ts
import {AstroIntegration} from "./astro";
function myIntegration(): AstroIntegration {
return {
name: 'astro-awesome-list',
// new feature map
supportedAstroFeatures: {
hybridOutput: 'experimental',
staticOutput: 'stable',
serverOutput: 'stable',
assets: {
supportKind: 'stable',
isSharpCompatible: false,
isSquooshCompatible: false,
},
}
}
}
```

View file

@ -0,0 +1,39 @@
---
'astro': major
'@astrojs/netlify': minor
---
The `build.split` and `build.excludeMiddleware` configuration options are deprecated and have been replaced by options in the adapter config.
If your config includes the `build.excludeMiddleware` option, replace it with `edgeMiddleware` in your adapter options:
```diff
import { defineConfig } from "astro/config";
import netlify from "@astrojs/netlify/functions";
export default defineConfig({
build: {
- excludeMiddleware: true
},
adapter: netlify({
+ edgeMiddleware: true
}),
});
```
If your config includes the `build.split` option, replace it with `functionPerRoute` in your adapter options:
```diff
import { defineConfig } from "astro/config";
import netlify from "@astrojs/netlify/functions";
export default defineConfig({
build: {
- split: true
},
adapter: netlify({
+ functionPerRoute: true
}),
});
```

View file

@ -0,0 +1,5 @@
---
'@astrojs/mdx': patch
---
Re-orders the MDX plugin to run before Astro's JSX plugin

View file

@ -0,0 +1,18 @@
---
'astro': major
---
Sharp is now the default image service used for `astro:assets`. If you would prefer to still use Squoosh, you can update your config with the following:
```ts
import { defineConfig, squooshImageService } from "astro/config";
// https://astro.build/config
export default defineConfig({
image: {
service: squooshImageService(),
}
})
```
However, not only do we recommend using Sharp as it is faster and more reliable, it is also highly likely that the Squoosh service will be removed in a future release.

View file

@ -0,0 +1,8 @@
---
'@astrojs/cloudflare': major
'@astrojs/netlify': major
'@astrojs/vercel': major
'astro': major
---
When using an adapter that supports neither Squoosh or Sharp, Astro will now automatically use an image service that does not support processing, but still provides the other benefits of `astro:assets` such as enforcing `alt`, no CLS etc to users

View file

@ -0,0 +1,5 @@
---
'@astrojs/mdx': patch
---
Handle `components` exports handling itself

View file

@ -0,0 +1,5 @@
---
'astro': major
---
Removed support for old syntax of the API routes.

View file

@ -0,0 +1,23 @@
---
'astro': minor
---
Integrations can now log messages using Astros built-in logger.
The logger is available to all hooks as an additional parameter:
```ts
import {AstroIntegration} from "./astro";
// integration.js
export function myIntegration(): AstroIntegration {
return {
name: "my-integration",
hooks: {
"astro:config:done": ({ logger }) => {
logger.info("Configure integration...");
}
}
}
}
```

58
.changeset/pre.json Normal file
View file

@ -0,0 +1,58 @@
{
"mode": "pre",
"tag": "beta",
"initialVersions": {
"astro": "2.9.6",
"@astrojs/prism": "2.1.2",
"@astrojs/rss": "2.4.3",
"create-astro": "3.1.10",
"@astrojs/alpinejs": "0.2.2",
"@astrojs/cloudflare": "6.6.2",
"@astrojs/deno": "4.3.0",
"@astrojs/image": "0.17.2",
"@astrojs/lit": "2.1.0",
"@astrojs/markdoc": "0.4.4",
"@astrojs/mdx": "0.19.7",
"@astrojs/netlify": "2.5.1",
"@astrojs/node": "5.3.0",
"@astrojs/partytown": "1.2.3",
"@astrojs/preact": "2.2.1",
"@astrojs/prefetch": "0.3.0",
"@astrojs/react": "2.2.1",
"@astrojs/sitemap": "2.0.1",
"@astrojs/solid-js": "2.2.0",
"@astrojs/svelte": "3.1.0",
"@astrojs/tailwind": "4.0.0",
"@astrojs/turbolinks": "0.2.2",
"@astrojs/vercel": "3.7.4",
"@astrojs/vue": "2.2.1",
"@astrojs/internal-helpers": "0.1.1",
"@astrojs/markdown-component": "1.0.5",
"@astrojs/markdown-remark": "2.2.1",
"@astrojs/telemetry": "2.1.1",
"@astrojs/underscore-redirects": "0.2.0"
},
"changesets": [
"afraid-dots-whisper",
"chilled-ducks-grin",
"dirty-lies-cover",
"fair-emus-divide",
"famous-queens-itch",
"four-houses-compete",
"heavy-walls-arrive",
"loud-candles-admire",
"mighty-dancers-lay",
"odd-books-live",
"rude-ears-play",
"spicy-eels-rush",
"three-adults-exist",
"three-onions-repeat",
"tricky-candles-suffer",
"twelve-coats-rush",
"twenty-cheetahs-deny",
"unlucky-hotels-try",
"unlucky-ravens-type",
"unlucky-sheep-build",
"young-roses-teach"
]
}

View file

@ -0,0 +1,5 @@
---
'astro': major
---
Remove MDX plugin re-ordering hack

View file

@ -0,0 +1,8 @@
---
'astro': major
'@astrojs/netlify': major
'@astrojs/vercel': major
'@astrojs/node': major
---
Reduced the amount of polyfills provided by Astro. Astro will no longer provide (no-op) polyfills for several web apis such as HTMLElement, Image or Document. If you need access to those APIs on the server, we recommend using more proper polyfills available on npm.

View file

@ -0,0 +1,5 @@
---
'astro': major
---
Update `tsconfig.json` presets with `moduleResolution: 'bundler'` and other new options from TypeScript 5.0. Astro now assumes that you use TypeScript 5.0 (March 2023), or that your editor includes it, ex: VS Code 1.77

View file

@ -0,0 +1,5 @@
---
'astro': major
---
The `astro check` command now requires an external package `@astrojs/check` and an install of `typescript` in your project. This was done in order to make the main `astro` package smaller and give more flexibility to users in regard to the version of TypeScript they use.

View file

@ -0,0 +1,39 @@
---
'astro': major
'@astrojs/vercel': minor
---
The `build.split` and `build.excludeMiddleware` configuration options are deprecated and have been replaced by options in the adapter config.
If your config includes the `build.excludeMiddleware` option, replace it with `edgeMiddleware` in your adapter options:
```diff
import { defineConfig } from "astro/config";
import vercel from "@astrojs/vercel/serverless";
export default defineConfig({
build: {
- excludeMiddleware: true
},
adapter: vercel({
+ edgeMiddleware: true
}),
});
```
If your config includes the `build.split` option, replace it with `functionPerRoute` in your adapter options:
```diff
import { defineConfig } from "astro/config";
import vercel from "@astrojs/vercel/serverless";
export default defineConfig({
build: {
- split: true
},
adapter: vercel({
+ functionPerRoute: true
}),
});
```

View file

@ -0,0 +1,35 @@
---
'astro': major
---
Lowercase names for endpoint functions are now deprecated.
Rename functions to their uppercase equivalent:
```diff
- export function get() {
+ export function GET() {
return new Response(JSON.stringify({ "title": "Bob's blog" }));
}
- export function post() {
+ export function POST() {
return new Response(JSON.stringify({ "title": "Bob's blog" }));
}
- export function put() {
+ export function PUT() {
return new Response(JSON.stringify({ "title": "Bob's blog" }));
}
- export function all() {
+ export function ALL() {
return new Response(JSON.stringify({ "title": "Bob's blog" }));
}
// you can use the whole word "DELETE"
- export function del() {
+ export function DELETE() {
return new Response(JSON.stringify({ "title": "Bob's blog" }));
}
```

View file

@ -0,0 +1,17 @@
---
'astro': major
---
Astro.cookies.get(key) returns undefined if cookie doesn't exist
With this change, Astro.cookies.get(key) no longer always returns a `AstroCookie` object. Instead it now returns `undefined` if the cookie does not exist.
You should update your code if you assume that all calls to `get()` return a value. When using with `has()` you still need to assert the value, like so:
```astro
---
if(Astro.cookies.has(id)) {
const id = Astro.cookies.get(id)!;
}
---
```

View file

@ -0,0 +1,5 @@
---
'@astrojs/mdx': minor
---
Add `astro` as peer dependency

View file

@ -0,0 +1,14 @@
---
'astro': major
---
The property `compressHTML` is now `true` by default. Setting this value to `true` is no longer required.
If you do not want to minify your HTML output, you must set this value to `false` in `astro.config.mjs`.
```diff
import {defineConfig} from "astro/config";
export default defineConfig({
+ compressHTML: false
})
```

View file

@ -0,0 +1,7 @@
---
'astro': major
---
Astro's default port when running the dev or preview server is now `4321`.
This will reduce conflicts with ports used by other tools.

View file

@ -0,0 +1,5 @@
---
'astro': major
---
Remove MDX special `components` export handling

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/basics",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/blog",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/deno",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/docs",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-alpine",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-lit",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-multiple",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-preact",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-react",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-solid",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-svelte",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/framework-vue",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/hackernews",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/minimal",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/non-html-pages",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/portfolio",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/ssr",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-markdown-plugins",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-markdown-shiki",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-mdx",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-nanostores",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-tailwindcss",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-vite-plugin-pwa",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -7,13 +7,13 @@
"workspaceFolder": "/workspaces/astro/examples/with-vitest",
"portsAttributes": {
"3000": {
"4321": {
"label": "Application",
"onAutoForward": "openPreview"
}
},
"forwardPorts": [3000],
"forwardPorts": [4321],
"postCreateCommand": "pnpm install && cd /workspaces/astro && pnpm run build",

View file

@ -2,7 +2,6 @@
packages/**/*.min.js
packages/**/dist/**/*
packages/**/fixtures/**/*
packages/webapi/**/*
packages/astro/vendor/vite/**/*
examples/**/*
scripts/**/*

View file

@ -10,7 +10,7 @@ body:
Thank you for taking the time to file a bug report! Please fill out this form as completely as possible.
✅ I am using the **latest version of Astro** and all plugins.
✅ I am using a version of Node that supports ESM (`v14.18.0+`, or `v16.12.0+`)
✅ I am using a version of Node that Astro supports (`>=18.14.1`)
- type: input
id: astro-version
attributes:

View file

@ -33,7 +33,7 @@ jobs:
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: "pnpm"
- name: Install dependencies

View file

@ -38,7 +38,7 @@ jobs:
strategy:
matrix:
OS: [ubuntu-latest, windows-latest]
NODE_VERSION: [16]
NODE_VERSION: [18]
fail-fast: true
steps:
# Disable crlf so all OS can share the same Turbo cache
@ -85,7 +85,7 @@ jobs:
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: "pnpm"
- name: Install dependencies
@ -108,12 +108,12 @@ jobs:
strategy:
matrix:
OS: [ubuntu-latest]
NODE_VERSION: [16, 18]
NODE_VERSION: [18, 20]
include:
- os: macos-latest
NODE_VERSION: 16
NODE_VERSION: 18
- os: windows-latest
NODE_VERSION: 16
NODE_VERSION: 18
fail-fast: false
env:
NODE_VERSION: ${{ matrix.NODE_VERSION }}
@ -155,7 +155,7 @@ jobs:
strategy:
matrix:
OS: [ubuntu-latest, windows-latest]
NODE_VERSION: [16]
NODE_VERSION: [18]
fail-fast: false
env:
NODE_VERSION: ${{ matrix.NODE_VERSION }}
@ -192,7 +192,7 @@ jobs:
strategy:
matrix:
OS: [ubuntu-latest, windows-latest]
NODE_VERSION: [16]
NODE_VERSION: [18]
env:
NODE_VERSION: ${{ matrix.NODE_VERSION }}
steps:

View file

@ -38,7 +38,7 @@ jobs:
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: "pnpm"
- name: Install dependencies

View file

@ -30,7 +30,7 @@ jobs:
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: "pnpm"
- name: Install dependencies

View file

@ -37,7 +37,7 @@ jobs:
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
cache: "pnpm"
- name: Install dependencies

View file

@ -58,7 +58,7 @@ jobs:
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 16
node-version: 18
registry-url: "https://registry.npmjs.org"
cache: "pnpm"

View file

@ -18,7 +18,7 @@ vscode:
- esbenp.prettier-vscode
- dbaeumer.vscode-eslint
ports:
- port: 3000
- port: 4321
onOpen: open-preview
github:
prebuilds:

2
.nvmrc
View file

@ -1 +1 @@
16.19.0
18.14.1

View file

@ -22,5 +22,4 @@ benchmark/results/
.changeset
# Files
packages/webapi/mod.d.ts
pnpm-lock.yaml

View file

@ -10,7 +10,7 @@ We welcome contributions of any size and skill level. As an open source project,
### Prerequisites
```shell
node: "^>=16.12.0"
node: "^>=18.14.1"
pnpm: "^8.6.2"
# otherwise, your build will fail
```

View file

@ -23,7 +23,6 @@
"dev": "astro-scripts dev \"src/**/*.ts\""
},
"dependencies": {
"@astrojs/webapi": "workspace:*",
"server-destroy": "^1.0.1"
},
"peerDependencies": {

View file

@ -1,11 +1,8 @@
import { polyfill } from '@astrojs/webapi';
import type { SSRManifest } from 'astro';
import { NodeApp } from 'astro/app/node';
import { NodeApp, applyPolyfills } from 'astro/app/node';
import type { IncomingMessage, ServerResponse } from 'node:http';
polyfill(globalThis, {
exclude: 'window document',
});
applyPolyfills();
export function createExports(manifest: SSRManifest) {
const app = new NodeApp(manifest);

View file

@ -3,8 +3,8 @@
"include": ["src"],
"compilerOptions": {
"allowJs": true,
"module": "ES2020",
"module": "ES2022",
"outDir": "./dist",
"target": "ES2020"
"target": "ES2022"
}
}

View file

@ -43,7 +43,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |

View file

@ -11,6 +11,6 @@
"astro": "astro"
},
"dependencies": {
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -53,7 +53,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |

View file

@ -11,9 +11,9 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/mdx": "^0.19.7",
"@astrojs/rss": "^2.4.3",
"@astrojs/sitemap": "^2.0.1",
"astro": "^2.10.0"
"@astrojs/mdx": "^1.0.0-beta.0",
"@astrojs/rss": "^3.0.0-beta.0",
"@astrojs/sitemap": "^3.0.0-beta.0",
"astro": "^3.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -1,5 +1,5 @@
---
import { CollectionEntry, getCollection } from 'astro:content';
import { type CollectionEntry, getCollection } from 'astro:content';
import BlogPost from '../../layouts/BlogPost.astro';
export async function getStaticPaths() {

View file

@ -15,7 +15,7 @@
],
"scripts": {},
"devDependencies": {
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
},
"peerDependencies": {
"astro": "^2.0.0-beta.0"

View file

@ -42,7 +42,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| | (preview uses Deno CLI) |

View file

@ -10,9 +10,9 @@
"astro": "astro"
},
"dependencies": {
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
},
"devDependencies": {
"@astrojs/deno": "^4.3.0"
"@astrojs/deno": "^5.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,9 +11,9 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/alpinejs": "^0.2.2",
"@astrojs/alpinejs": "^0.3.0-beta.0",
"@types/alpinejs": "^3.7.1",
"alpinejs": "^3.12.2",
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,9 +11,9 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/lit": "^2.1.0",
"@astrojs/lit": "^3.0.0-beta.0",
"@webcomponents/template-shadowroot": "^0.2.1",
"astro": "^2.10.0",
"astro": "^3.0.0-beta.0",
"lit": "^2.7.5"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,12 +11,12 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/preact": "^2.2.1",
"@astrojs/react": "^2.2.1",
"@astrojs/solid-js": "^2.2.0",
"@astrojs/svelte": "^3.1.0",
"@astrojs/vue": "^2.2.1",
"astro": "^2.10.0",
"@astrojs/preact": "^3.0.0-beta.0",
"@astrojs/react": "^3.0.0-beta.0",
"@astrojs/solid-js": "^3.0.0-beta.0",
"@astrojs/svelte": "^4.0.0-beta.0",
"@astrojs/vue": "^3.0.0-beta.0",
"astro": "^3.0.0-beta.0",
"preact": "^10.15.1",
"react": "^18.2.0",
"react-dom": "^18.2.0",

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,9 +11,9 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/preact": "^2.2.1",
"@astrojs/preact": "^3.0.0-beta.0",
"@preact/signals": "^1.1.3",
"astro": "^2.10.0",
"astro": "^3.0.0-beta.0",
"preact": "^10.15.1"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,10 +11,10 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/react": "^2.2.1",
"@astrojs/react": "^3.0.0-beta.0",
"@types/react": "^18.2.13",
"@types/react-dom": "^18.2.6",
"astro": "^2.10.0",
"astro": "^3.0.0-beta.0",
"react": "^18.2.0",
"react-dom": "^18.2.0"
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,8 +11,8 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/solid-js": "^2.2.0",
"astro": "^2.10.0",
"@astrojs/solid-js": "^3.0.0-beta.0",
"astro": "^3.0.0-beta.0",
"solid-js": "^1.7.6"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,8 +11,8 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/svelte": "^3.1.0",
"astro": "^2.10.0",
"@astrojs/svelte": "^4.0.0-beta.0",
"astro": "^3.0.0-beta.0",
"svelte": "^3.59.1"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -11,8 +11,8 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/vue": "^2.2.1",
"astro": "^2.10.0",
"@astrojs/vue": "^3.0.0-beta.0",
"astro": "^3.0.0-beta.0",
"vue": "^3.3.4"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -48,7 +48,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |

View file

@ -11,7 +11,7 @@
"astro": "astro"
},
"dependencies": {
"@astrojs/node": "^5.3.2",
"astro": "^2.10.0"
"@astrojs/node": "^6.0.0-beta.0",
"astro": "^3.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -15,7 +15,7 @@
],
"scripts": {},
"devDependencies": {
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
},
"peerDependencies": {
"astro": "^2.0.0-beta.0"

View file

@ -12,8 +12,8 @@
"server": "node dist/server/entry.mjs"
},
"dependencies": {
"@astrojs/node": "^5.3.2",
"astro": "^2.10.0",
"@astrojs/node": "^6.0.0-beta.0",
"astro": "^3.0.0-beta.0",
"html-minifier": "^4.0.0"
}
}

View file

@ -36,7 +36,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |

View file

@ -11,6 +11,6 @@
"astro": "astro"
},
"dependencies": {
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -41,7 +41,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |

View file

@ -11,6 +11,6 @@
"astro": "astro"
},
"dependencies": {
"astro": "^2.10.0"
"astro": "^3.0.0-beta.0"
}
}

View file

@ -4,7 +4,7 @@
"view": "browser",
"template": "node",
"container": {
"port": 3000,
"port": 4321,
"startScript": "start",
"node": "14"
}

View file

@ -19,7 +19,7 @@ All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:3000` |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |

Some files were not shown because too many files have changed in this diff Show more