Commit graph

1944 commits

Author SHA1 Message Date
Vincent Tavernier
e58a92527f
[@astrojs/image] Handle missing trailing slash in processStaticImage (#6421)
The code path changed by this commit isn't only taken when running using Vite. If the site is configured with a base url which is different from `/` but does **not** end with `/` (for example, because `trailingSlash` is set to `never`), the `- 1` results in an off-by-one error when truncating the URL.

By checking if the base url ends with `/`, we can determine the right length for the prefix to truncate.
2023-03-07 13:00:34 -05:00
Matthew Phillips
a206106098
Expose the ssr manifest (#6435)
* Expose the ssr manifest

* Add changeset

* Add types for virtual mod
2023-03-07 11:35:54 -05:00
Erika
694918a56b
Implement RFC "A core story for images" (#6344)
* feat(assets): Add Vite plugin

* feat(images): Set up Image component

* fix(types): Attempt to fix type generation

* Revert "fix(types): Attempt to fix type generation"

This reverts commit 063aa276e2.

* fix(image): Fix image types causing build to fail

* feat(image): Implement client side part

* feat(services): Allow arbitrary transforms parameters

* fix(image): Fix paths and types

* config(types): Update config types to provide completions for available services

* feat(image): Add serving in dev

* feat(image): Improve type error messages

* refactor(image): Move sharp's parseParams to baseService

* refactor(image): Skip work in dev for remote servies

* feat(image): Add support for remote images

* feat(image): Add squoosh service

* chore: update export map

* refactor(image): Abstract attributes handling by services

* config(vercel): Remove test image service

* feat(image): Support for relative images in Markdown (WIP)

* feat(images): Add support for relative images in Markdown

* feat(image): Update with RFC feedback

* fix(image): Fix alt error on getImage

* feat(image): Add support for assets validation through content collections

* feat(image): Remove validateTransform

* feat(image): Move to assets folder

* fix(image): Fix package exports

* feat(image): Add static imports references to virtual moduel

* fix(image): Fix images from content collections not working when embedded

* chore: lockfile

* fix(markdown): Fix type

* fix(images): Flag enhanced images behing an experimental flag

* config(example): Update images example conifg

* fix(image): Fix types

* fix(image): Fix asset type for strict, allow arbritary input and output formats

* chore: fix example check

* feat(image): Emit assets for ESM imported images

* Add initial core image tests (#6381)

* feat(images): Make frontmatter extraction more generic than images for future

* feat(image): Add support for building

* fix(image): Fix types

* fix(images): Fix compatibility with image integration

* feat(images): Cuter generation stats

* fix(images): Globals are unsafe, it turns out

* fix(images): Only generate images if flag is enabled

* fix(images): Only create `addStaticImage` in build

* feat(images): Add SSR endpoint

* fix(images): Only inject route in SSR

* Add tests for SSR

* Remove console.log

* Updated lockfile

* rename to satisfy the link gods

* skip build tests for now

* fix(images): Fix WASM files not being copied in dev

* feat(images): Add quality presets

* fix build tests running

* Remove console.log

* Add tests for getImage

* Test local services

* Test the content collections API

* Add tests for quality

* Skipping content collections test

* feat(image): Add support for `~/assets` alias

* test(image): Add tests for aliases in dev

* Fix windows + content collections

* test(image): Add tests for aliased images and images in Markdown

* Fix markdown images being built

* Should be posix join

* Use the optimized image

* fix test

* Fixes windows smoke

* fix(image): Nits

* feat(images): Add automatic update for `env.d.ts` when experimental images are enabled

* fix(images): Revert env.d.ts change if the user opted-out of the experimental image support

* chore: remove bad image example project

* feat(image): Rename `experimental.images` to `experimental.assets`

* fix(images): Remove unused code in MDX integration

* chore: Remove unrelated change

* fix(images): Remove export from astro/components

* Fix, esm import on Win

* test(images): Add test for format

* fix(images): Add `client-image.d.ts` to export map

* chore: changeset

* fix(images): Adjust with feedback, no more automatic refine, asset() -> image()

* fix(images): Fix types

* fix(images): Remove unnecessary spread

* fix(images): Better types for parseUrl and transform

* fix(images): Fix types

* fix(images): Adjust from feedback

* fix(images): Pass width and height through getHTMLAttributes even if they're not added by the uesr

* fix(images): Recusirsively extract frontmatter assets

* fix(images): Use a reduce instead

* feat(images): Add support for data: URIs

* chore: changeset

* docs(images): Misc docs fixes

* Update .changeset/gold-rocks-cry.md

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* Update .changeset/gold-rocks-cry.md

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>

* Update packages/astro/src/@types/astro.ts

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* Update packages/astro/src/assets/services/service.ts

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* Update packages/astro/src/assets/services/service.ts

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* Update packages/astro/src/assets/services/service.ts

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* Update packages/astro/src/assets/types.ts

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

* Update packages/astro/src/assets/types.ts

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>

---------

Co-authored-by: Matthew Phillips <matthew@skypack.dev>
Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-03-07 16:12:21 +01:00
Emanuele Stoppa
75921b3cd9
feat(cli): add --watch to astro check command (#6356)
* feat(cli): add `--watch` to `astro check` command

* chore: refactor in a leaner way, logic not changed

* chore: lint

* chore: revert changes in sync command

* chore: tweak server settings

* test: add one test case

* chore: increase timeout

* test: predictable testing

* chore: add changeset

* chore: code suggestions

* code suggestions

* chore: use directly `chokidar`

* chore: tweak code

* fix: open documents first

* chore: disable test

* chore: code suggestions

* chore: code suggestions

* Apply suggestions from code review

Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>

* code suggestions

* chore: rebase

---------

Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
2023-03-07 06:55:41 +00:00
Bjorn Lu
1291afc09d
Fix changeset run (#6442) 2023-03-07 14:50:34 +08:00
Bjorn Lu
00a0af7ed4
Move benchmark package and update changeset config (#6433) 2023-03-07 10:52:47 +08:00
Erika
afbbc4d5bf
Update compilation target for Node 16 (#6213)
* config(esbuild): Update esbuild target to node16

* config(package): Update root package.json node engine

* config(tsconfig): Update all the tsconfigs module and targets

* chore: changeset

* chore: remove unneeded file
2023-03-06 13:57:16 -05:00
Emanuele Stoppa
a4a74ab70c
feat(cli): add help flags to various commands (#6394)
Co-authored-by: Happydev <81974850+MoustaphaDev@users.noreply.github.com>
2023-03-06 16:58:56 +00:00
Dennis Morello
b087b83fe2
Add getStaticPaths type helpers to infer params and props (#6150)
* feat(astro): add InferGetStaticParamsType and InferGetStaticPropsType type helpers

* chore(astro): added changeset
2023-03-06 11:38:42 -05:00
Houston (Bot)
19fe4cb629
[ci] release (#6414)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-06 11:30:38 -05:00
Happydev
e0844852d3
Fix ?inline and ?raw css query suffixes inlined in style tags in development (#6426)
* test: add test cases

* test: add another expectation

* fix: don't crawl inline and raw css queries

* chore: changeset
2023-03-06 08:06:55 -05:00
李瑞丰
cd8469947b
Remove redundant comments when astro add update astro.config.mjs (#6412)
* Remove redundant comments when  update

* add \n

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-03-03 09:41:11 -06:00
Erika
0abd1d3e42
Use undici's FormData for polyfilling (#6413)
* fix(webapi): Use undici's FormData instead of a polyfill

* chore: changeset
2023-03-03 14:47:24 +01:00
Houston (Bot)
5c95f4f95a
[ci] release (#6377)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-03-02 14:32:38 -06:00
Bjorn Lu
45501c531b
Teardown compiler to improve rendering perf (#6391)
* Teardown compiler to improve rendering perf

* Upgrade compiler to minor

* Try hacky test guard

* Nicer teardown flow
2023-03-02 14:54:07 +00:00
Juan Martín Seery
0e378c3b87
fix(vercel): update getRequest to use undici (#6380)
* fix(vercel): update getRequest to use undici

* Changeset

* haha ts-expect-error is a double-edged sword

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-03-01 19:00:52 +00:00
Bjorn Lu
ee8b2a0672
Fix astro sync config merge (#6392)
* Fix astro sync config merge

* Fix getViteConfig type
2023-03-01 15:19:19 +00:00
Joaquín Sánchez
02a7266e3c
fix: don't mix Vite plugins when spawning temporary Vite server (#6368)
* fix: don't mix Vite plugins when spawning temporary Vite server

* chore: include command to `createVite` options

* chore: use `command` and exclude `preview`

* chore: add test

* fix(test): remove command check from apply fn

* chore: add hint about filtering vite plugins and command

* chore: apply suggestion

Co-authored-by: Ben Holmes <hey@bholmes.dev>

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Ben Holmes <hey@bholmes.dev>
2023-02-27 15:26:11 -06:00
Erika
95164bfdd2
Add a warning when using encoding in SSR and headers on objects in endpoints (#6358)
* fix(endpoints): Add a warning when trying to set encoding and headers in SSR

* fix(endpoint): Oops, it'd be great if it actually worked

* fix(endpoint): Fix import path

* fix(endpoint): Add link to docs

* Update packages/astro/src/core/endpoint/index.ts

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>

* fix: don't output encoding warning if endpoint is pre-rendered

* Update packages/astro/src/core/endpoint/index.ts

* Update packages/astro/src/core/endpoint/index.ts

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-02-27 12:07:13 -06:00
Nate Moore
754c5ca9aa
Respect original package.json indentation (#6375)
* fix(#6338): respect original indentation

* chore: add changeset
2023-02-27 10:09:54 -06:00
Houston (Bot)
71743aeca7
[ci] release (#6359)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-27 08:55:42 -05:00
Matthew Phillips
d94aae7765
Only apply head propagation in trees that need it (#6363) 2023-02-24 17:28:15 -05:00
Kacper Potyrała
c87c16cfad
Add missing flags to help action (#6352)
* add missing flags to help action

* add proper changeset

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-02-24 16:17:28 -06:00
Reece McDonald
26bf12ef3c
[Lit] render DSD attributes based on shadowRootOptions (#6351)
* [Lit] render DSD attributes based on `shadowRootOptions`

## Changes

- Update `@astrojs/lit`’s `server.js` to properly render elements with `delegatesFocus: false` set in their `shadowRootOptions`.
- Logic is based on `@lit-labs/ssr` [latest implementation as found here](b0c3f82ef0/packages/labs/ssr/src/lib/render-value.ts (L738))

## Testing

A test was added to ensure an element with `delegatesFocus` set to true has this attribute properly included in the rendered static markup.

* chore: add changeset
2023-02-24 12:10:56 -06:00
Emanuele Stoppa
5aa6580f77
fix: bump undici to v5.20.0 (#6355)
* fix: bump `undici` to v5.20.0

* fix(cookies): Hopefully the last time we mess with undici and cookies

* chore: add @astrojs/telemetry to changeset

---------

Co-authored-by: Princesseuh <princssdev@gmail.com>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-02-24 12:10:33 -06:00
Houston (Bot)
a848a723f6
[ci] release (#6287)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-23 14:50:11 -06:00
Nate Moore
504c7bacb8
Use getSetCookie, if available (#6347)
* fix: use getSetCookie, if available

* fix: explicitly use entries

* fix(image): be defensive on node@18.14.1

* chore: update changeset

* ci: skip test in 18.14.1
2023-02-23 13:41:00 -06:00
Raphael Bossek
075b87e8b7
Update MDX integration to es-module-lexer@1.1.1 (#6296)
* Update MDX integration to es-module-lexer@1.1.1

* Added missing pnpm-lock.yaml file

* Create lucky-flowers-wonder.md

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-02-23 09:20:06 -06:00
Happydev
f91a7f376c
fix(content): ensure underscore ignores only child paths of the content directory. (#6330)
* test: add test fixture

* test: add cc config file

* migrate to unit test instead

* fix: only include child folders in ignore list

* chore: changeset
2023-02-23 09:19:33 -06:00
Emanuele Stoppa
63dda6dedd
fix(astro): correctly change configuration when node adapter is added (#6333)
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-02-22 20:53:56 +00:00
wulinsheng123
ccd72e6bb4
fix #6020 (#6320) 2023-02-22 09:49:49 -05:00
Miles Pernicious
7f61e8fe36
[create-astro] Execute the 'git' step as the final interaction (#6314)
* [create-astro] Execute the 'git' step as the final interaction

This ensures the initialized repository has all configuration
changes commited in the first commit

* Add changeset
2023-02-21 10:48:06 -06:00
李瑞丰
d0dbee872f
create-astro help info add --typescript flag (#6294)
* create-astro help info add --typescript flag

* changeset

* changeset
2023-02-21 10:33:52 -06:00
Bjorn Lu
2eb73cb9d1
Use .mjs extension when building for netlify edge and vercel serverless (#6317) 2023-02-21 22:14:47 +08:00
Erika
5e26bc891c
fix(cookies): Update Undici to 5.20 and fix cookies behaviour (#6323)
* fix(cookies): Update Undici to 5.20 and fix cookies behaviour

* chore: changeset
2023-02-21 14:18:17 +01:00
Happydev
a156ecbb7f
fix(content-collections): warn about allowJs only when content directory exists (#6293)
* warn only when `content` directory exists

* chore: changeset
2023-02-18 09:24:33 -05:00
vic1707
4fcefa34f9
update ChangeFreq to support typescript configurations with string literal (#6262)
* update `ChangeFreq`

* `pnpm exec changeset`

* use @Princesseuh suggested change

* Revert "use @Princesseuh suggested change"

This reverts commit a1e5660c25.

* use @Princesseuh suggested change and an `as`
2023-02-17 12:46:00 -06:00
Houston (Bot)
2e4ca0370a
[ci] release (#6279)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-17 13:44:15 -05:00
Nate Moore
61113dd731
Fix prerendered page handling on Deno (#6284)
* fix(deno): handle prerendered pages

* test(deno): add prerender test

* fix: defensively access vite.build.rollupOptions.external

* fix(deno): support other formats of rollupOptions.external

* fix(deno): crawl prerendered files for match

* fix(deno): ignore deno error in server file

* fix(deno): cross-platform serve file
2023-02-17 13:19:19 -05:00
Nate Moore
933c651fb1
Backwards compatible fix for --camelCase css vars in style attribute (#6268)
* fix(#6264): backward-compat fix for camelCase css vars in style

* chore: add changeset
2023-02-17 11:04:08 -06:00
Matthew Phillips
bb18010137
Pin undici (#6282) 2023-02-17 11:46:10 -05:00
Matthew Phillips
609b249c8d
Revert "Deno fix #6131 (#6248)" (#6281)
* Revert "Deno fix #6131 (#6248)"

This reverts commit ef5cea4dc5.

* Create gold-months-live.md
2023-02-17 10:58:53 -05:00
Bjorn Lu
d9474d467e
Bump Vite to 4.1 (#6277) 2023-02-17 22:16:25 +08:00
Houston (Bot)
a486104692
[ci] release (#6269)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-17 14:48:21 +01:00
Erika
0f5d122cd5
fix(create-astro): Pin giget to 1.0.0 (#6278) 2023-02-17 14:45:47 +01:00
Julien Barbay
dbffee4e38
fix: add property name to rss errors (#6259)
* fix: add property name to rss errors

* Create good-snails-attend.md

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-02-16 15:33:12 -06:00
Houston (Bot)
17869bf749
[ci] release (#6267)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-16 15:15:51 -06:00
Nate Moore
066b4b4efc
Improve create-astro error handling (#6266)
* fix(create-astro): improve error handling for tasks that use spinner display

* refactor: timeout after 60s

* chore: remove unused file
2023-02-16 14:28:15 -06:00
Houston (Bot)
fb4e79bf1f
[ci] release (#6261)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-02-16 14:36:33 -05:00
Ben Holmes
2fec478487
Fix: recursive getCollection() hanging (#6257)
* fix: avoid trying to SSR md?astroPropagatedAssets

* test: layout prop with recursive getCollection

* chore: changeset
2023-02-16 12:32:50 -05:00