Commit graph

3026 commits

Author SHA1 Message Date
Nate Moore
298dbb89f2
Refactor 404 and 500 approach (#7754)
* fix(app): refactor 404 and 500 approach

* chore: refactor logic

* fix: always treat error as page

* test: migrate ssr-prerender-404 to node adapter

* feat: merge original response metadata with error response

* chore: update lockfile

* chore: trigger ci

* chore(lint): fix lint issue

* fix: ensure merged request has proper status

* fix(node): prerender test

* chore: update test label

* fix(node): improve 404 behavior in middleware mode

* fix(vercel): improve 404 behavior

* fix(netlify): improve 404 behavior

* chore: update test labels

* chore: force ci

* chore: fix lint

* fix: avoid infinite loops

* test: fix failing test in Node 18

* chore: remove volta
2023-08-01 09:52:16 -05:00
Bjorn Lu
0b8375fe82
Fix streaming Astro components (#7895) 2023-08-01 21:30:47 +08:00
Bjorn Lu
ebf7ebbf7a
Refactor and improve Astro config loading flow (#7879) 2023-08-01 17:11:26 +08:00
André Alves
9e22038472
Fix incorrect build path logging for 404.astro pages (#7885)
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-08-01 08:53:47 +01:00
ematipico
bd8a01ae1b [ci] format 2023-07-31 16:26:22 +00:00
Emanuele Stoppa
89d015db6c
fix: scan getStaticPaths only in .astro files (#7876) 2023-07-31 17:24:13 +01:00
Houston (Bot)
d2b6dabfb3
[ci] release (#7854)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-28 12:34:00 -04:00
matthewp
8867f3c99d [ci] format 2023-07-28 16:02:32 +00:00
Matthew Phillips
861f10eafd
Fix redirect in SSR (Node and dynamic) (#7856) 2023-07-28 12:00:26 -04:00
Houston (Bot)
98ca04f915
[ci] release (#7851)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-28 09:12:05 -04:00
matthewp
2f95a3e0ca [ci] format 2023-07-28 13:09:24 +00:00
Matthew Phillips
49a4b28202
Scroll position restoration (#7800)
* Scroll position restoration

* Adding a changeset

* Throttle state persistence

* very important change
2023-07-28 09:07:00 -04:00
bluwy
46f9848052 [ci] format 2023-07-28 10:03:02 +00:00
Bjorn Lu
e50f646758
Fix head propagation for MDX components (#7838) 2023-07-28 18:00:53 +08:00
ematipico
365701f491 [ci] format 2023-07-28 08:23:13 +00:00
Emanuele Stoppa
2275c7d56b
fix: dev server should redirect when a page doesn't exist (#7841) 2023-07-28 09:20:00 +01:00
Houston (Bot)
3b422272e6
[ci] release (#7813)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-27 15:33:13 -04:00
matthewp
fa6fc8ba4c [ci] format 2023-07-27 19:11:02 +00:00
Matthew Phillips
59b5562326
Allow the Image component to get transitions (#7836)
* Images and view transitions

* Upgrade compiler

* Adding a changeset
2023-07-27 15:08:45 -04:00
matthewp
9fe1089e3e [ci] format 2023-07-27 18:44:29 +00:00
Matthew Phillips
7dbcbc86b3
Track added links/styles/scripts to prevent duplicates (#7843)
* temporary change

* Track rendered styles and links to prevent duplicates

* Adding a changeset

* Fix names
2023-07-27 14:42:22 -04:00
matthewp
73eb4dfe2f [ci] format 2023-07-27 12:59:49 +00:00
Matthew Phillips
5161cf919c
Add astro:beforeload event (#7823)
* Add astro:beforeload event

* Adding a changeset

* Update .changeset/chilled-elephants-develop.md

Co-authored-by: Yan Thomas <61414485+Yan-Thomas@users.noreply.github.com>

---------

Co-authored-by: Yan Thomas <61414485+Yan-Thomas@users.noreply.github.com>
2023-07-27 08:57:37 -04:00
matthewp
30336bab94 [ci] format 2023-07-27 12:44:15 +00:00
Matthew Phillips
267487e63e
Prevent navigation on hash change (#7824) 2023-07-27 08:42:04 -04:00
Erika
b063a2d8ae
fix(assets): Fix endpoint not being injected when an integration would enable experimental.assets (#7829) 2023-07-27 11:37:27 +02:00
Arnav K
05ee09f9c2
fix: typo alpine -> alpinejs (#7825) 2023-07-27 17:31:23 +08:00
Erika
d5f526b339
test: add test in the Node adapter for astro:assets (#7734) 2023-07-26 23:58:47 +02:00
Erika
31c4031ba7
fix: squoosh not working on Windows in certain situations (#7826) 2023-07-26 21:38:37 +02:00
Houston (Bot)
db8c04002f
[ci] release (#7784)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-25 15:15:41 -04:00
bluwy
0d86457d64 [ci] format 2023-07-25 15:47:03 +00:00
Bjorn Lu
0f677c009d
Refactor Astro rendering to write results directly (#7782) 2023-07-25 23:44:25 +08:00
matthewp
0c1a26adc8 [ci] format 2023-07-25 12:38:25 +00:00
Matthew Phillips
188eeddd47
Execute scripts on page navigation (view transitions) (#7786)
* Execute scripts on page navigation (view transitions)

* Update .changeset/sharp-seas-smile.md

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

---------

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-07-25 08:35:47 -04:00
Houston (Bot)
e80896a67c
[ci] release (#7763)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-24 17:09:11 +08:00
Bjorn Lu
3567afac44
Fix rendering TextEncoder encoding error regression (#7777) 2023-07-24 16:22:05 +08:00
Birk Skyum
0c9959704f
Bump vite to 4.4.6 (#7746) 2023-07-24 16:21:17 +08:00
Bjorn Lu
baaf80b27d
Fix prerender getStaticPaths flaky test (#7745) 2023-07-24 15:49:29 +08:00
Erika
da7f1128bf
Fix missing referrerpolicy attribute on script tags (#7766)
* fix(astro-jsx): Add missing `referrerpolicy` attribute for script tags

* chore: changeset
2023-07-23 15:00:41 +02:00
Erika
1792737dae
Misc improvements for astro:assets (#7759) 2023-07-21 23:59:14 +02:00
Houston (Bot)
16a41528e4
[ci] release (#7737)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-21 16:37:17 -04:00
matthewp
c65da5f1cd [ci] format 2023-07-21 20:29:15 +00:00
Matthew Phillips
274e675328
Prevent FOUC with production links in ViewTransitions (#7756)
* Prevent FOUC with production links in ViewTransitions

* Adding changeset

* Move up so it works with fallback too
2023-07-21 16:26:42 -04:00
matthewp
f79ab0bdb3 [ci] format 2023-07-21 20:13:33 +00:00
Matthew Phillips
c2d6cfd0c2
Prevent animations with prefers-reduced-motion (#7757)
* Prevent animations with prefers-reduced-motion

* Also disable animations in the fallback

* Change select to target elements
2023-07-21 16:10:48 -04:00
matthewp
e5e5cc8e70 [ci] format 2023-07-21 14:43:17 +00:00
Matthew Phillips
201d32dcfc
Handle back navigation from page without VT (#7750)
* Handle back navigation from page without VT

* Adding a changeset
2023-07-21 10:40:36 -04:00
Bjorn Lu
bad65877a5
Refactor Astro page rendering (#7730) 2023-07-21 18:14:55 +08:00
Anders Kaseorg
e528526289
Fix parsing image assets from a Markdown line along with other markup (#7742)
Every regex that tries to match a substring with .* or .+ is
guaranteed to be wrong.  In this case, it was giving incorrect matches
straddling multiple quoted attributes:

    <img __ASTRO_IMAGE_="../assets/image.png"> and <a href="link">link</a>
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Fixes #7741.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2023-07-21 07:59:10 +02:00
Sarah Rainsberger
379981efdc
[docs] update to view transitions in config ref (#7738) 2023-07-20 18:04:33 -03:00
Houston (Bot)
92382ea1d4
[ci] release (#7714)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-20 12:09:38 -04:00
matthewp
b4090f8526 [ci] format 2023-07-20 16:06:34 +00:00
ottomated
3a6e42e190
Determine hoisted scripts via AST analysis (#7707)
* initial hacky

* plural importNames and exportNames

* extract into function

* Add test

* fix issue with another component importing our tracked component

* fix dynamic imports

* changeset

* add mdx to checklist

* mdx exports Content

* remove unused var

* Update packages/astro/test/hoisted-imports.test.js

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>

* Update packages/astro/src/core/build/plugins/plugin-analyzer.ts

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>

* Update packages/astro/src/core/build/plugins/plugin-analyzer.ts

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>

* Update real-drinks-melt.md

* Update .changeset/real-drinks-melt.md

Co-authored-by: Yan Thomas <61414485+Yan-Thomas@users.noreply.github.com>

* Update .changeset/real-drinks-melt.md

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

* Update .changeset/real-drinks-melt.md

* Update .changeset/real-drinks-melt.md

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

---------

Co-authored-by: Matthew Phillips <matthew@skypack.dev>
Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
Co-authored-by: Yan Thomas <61414485+Yan-Thomas@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-07-20 12:03:40 -04:00
ematipico
7a26a52e19 [ci] format 2023-07-20 14:47:18 +00:00
Emanuele Stoppa
c102c4a054
refactor: move dev rendering logic inside vite plugin (#7728) 2023-07-20 15:45:10 +01:00
Bjorn Lu
d8bae784b4
Fix organize-imports-cli with satisfies operator (#7727) 2023-07-20 20:47:36 +08:00
ematipico
47c698b08a [ci] format 2023-07-20 08:07:29 +00:00
Emanuele Stoppa
3043f98723
refactor: unify renderPage and callEndpoint in one single function (#7703)
* refactor: unify `renderPage` and `callEndpoint` in one single function

* chore: lint

* don't return the response

* chore: update error

* rebase
2023-07-20 09:04:53 +01:00
matthewp
30cdc28057 [ci] format 2023-07-20 00:04:07 +00:00
Matthew Phillips
464eb4f825
Import missing TransitionAnimationPair (#7726)
* Import missing TransitionAnimationPair

* Don't use satisfies
2023-07-19 20:01:15 -04:00
natemoo-re
5cc54bbd5a [ci] format 2023-07-19 22:13:44 +00:00
Nate Moore
b806452653
chore: fix ts error (#7723) (#7724) 2023-07-19 17:11:31 -05:00
natemoo-re
7a3f4efcd9 [ci] format 2023-07-19 22:01:10 +00:00
Nate Moore
e15f1e1cc9
chore: fix ts error (#7723) 2023-07-19 16:59:01 -05:00
matthewp
7a6ca236e8 [ci] format 2023-07-19 19:21:13 +00:00
Matthew Phillips
6a12fcecb0
Initial View Transition Support (#7511)
* Basic support

* Add the fade transition

* Move CSS into a separate file

* Add transition name

* View Transitions changeset

* Replace the boolean transition with 'morph'

* Update to use `transition:animate`

* Use head propagation

* Move CSS into a separate file

* Add builtin animations and namespaced module

* Misquote

* Remove unused code

* Add automatic prefetching to the View Transitions router

* Use a data attribute for back nav animations

* Use [data-astro-transition]

* Add view transitions to examples

* Wait on the HTML response before calling startViewTransition

* Updated stuff

* Update the compiler

* Fix

* Fallback support

* Properly do fallback

* Simplify the selectors

* Put viewTransitions support behind a flag

* Upgrade the compiler

* Remove unused import

* Add tests

* Use an explicit import instead of types

* Fix case where the click comes from within nested content

* Fix linting

* Add a test for the back button

* Prevent glitch in fallback

* Do not combine selectors

* Fallback to MPA nav if there is an issue fetching

* Fallback swap if there are no animations

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

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

* Update packages/astro/components/ViewTransitions.astro

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

* Update packages/astro/components/ViewTransitions.astro

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

* Update the changeset

* PR review changes

* Update more based on review comments.

* Update the updateDOM default

* Pass in transitions options to the compiler

* Update broken tests

* Update .changeset/silly-garlics-live.md

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

* Update .changeset/silly-garlics-live.md

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

* Update .changeset/silly-garlics-live.md

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

* Update .changeset/silly-garlics-live.md

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

* h2 -> h4

* Upgrade to stable compiler

* Remove exp redirects from sitemap

* Remove usage from examples

* Remove example updates

---------

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2023-07-19 15:18:41 -04:00
natemoo-re
eafe996b60 [ci] format 2023-07-19 14:36:35 +00:00
Nate Moore
d088351f54
Warn when getStaticPaths exists without a prerender statement (#7713)
* wip: warning on getStaticPaths without prerender

* refactor: move getStaticPaths warning to scanner plugin

* chore: do not add to test fixture

* chore: remove legacy getStaticPaths validation

* refactor: update warning message

* chore: typo

* chore: add changeset

* chore: remove unused variables

* refactor: make settings optional

* chore: fix lint

* chore: update message to include reason
2023-07-19 09:33:45 -05:00
matthewp
4eba967d2b [ci] format 2023-07-19 13:34:14 +00:00
Matthew Phillips
ec745d689a
Remove experimental flag for redirects config (#7686)
* Remove experimental flag for redirects config

* Remove experimental from tests

* Remove experimental CLI flag

* Add changeset

* Removing redirect test that is no longer relevant

* Remove experimental label"

* Update .changeset/dry-beers-grow.md

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

* Update .changeset/dry-beers-grow.md

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

* Remove old function

---------

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-07-19 09:31:07 -04:00
bluwy
659b2b034c [ci] format 2023-07-19 07:55:56 +00:00
Bjorn Lu
d78db48ac4
Fix absolute path handling for config validation in windows (#7704) 2023-07-19 15:53:24 +08:00
Bjorn Lu
019b797bf8
Fix redirects map object-form value validation (#7701) 2023-07-19 15:52:50 +08:00
Houston (Bot)
de65ad25ea
[ci] release (#7699)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-19 09:32:32 +02:00
Nate Moore
72bbfac976
Fix 404 status code in dev server (#7711)
* chore: update tests

* chore: update tests

* fix(#7516): set response status to 404 when rendering 404 page

* chore: add changeset

* chore: update dev container test

* refactor: improve status handling logic

* chore: remove unused import
2023-07-18 16:40:09 -05:00
Nate Moore
d401866f93
Fix 404 handling in dev server (#7693)
* fix(#7301): load 404 page in dev server when returning 404 status code

* chore: add changeset

* fix(404): expose exact pathname/URL when rendering 404

* test: add custom-404-server test
2023-07-18 12:09:18 -05:00
Erika
4f6b5ae2ba
Fix/markdoc assets (#7706) 2023-07-18 18:03:46 +02:00
ematipico
b3b9fc52b3 [ci] format 2023-07-18 09:39:12 +00:00
Nate Moore
06c255716a
Fix routing behavior when getStaticPaths params include hyphens (#7694) 2023-07-18 10:36:43 +01:00
Houston (Bot)
d80e5fcf8e
[ci] release (#7681)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-18 16:14:39 +08:00
Princesseuh
1c85b39d38 [ci] format 2023-07-18 00:20:47 +00:00
Erika
f14e48098a
nit: use node: prefix everywhere (#7692)
* nit: use `node:` prefix everywhere

* nit: fs/promises too

* test: workaround issue in node builtin detection
2023-07-18 02:17:59 +02:00
Erika
cc0f81c040
fix(assets): Remove Node deps from index of assets (#7691) 2023-07-17 22:32:23 +02:00
ematipico
5e26faa864 [ci] format 2023-07-17 16:25:39 +00:00
Emanuele Stoppa
ed20154a5c
refactor: move page rendering in one single function (#7684) 2023-07-17 17:22:53 +01:00
Emanuele Stoppa
cc8e9de881
fix: throw an error for incorrect configuration (#7680)
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
2023-07-17 14:35:29 +01:00
Bjorn Lu
1a6f833c40
Fix cloudflare runtime env var handling (#7679)
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2023-07-17 20:57:08 +08:00
Bjorn Lu
d69fe3a8d2
Handle flaky tests (#7651) 2023-07-17 20:30:02 +08:00
ematipico
6d6e0a80cd [ci] format 2023-07-14 15:00:51 +00:00
Emanuele Stoppa
1568cb4324
refactor: use SSR manifest in dev (#7587) 2023-07-14 15:58:35 +01:00
Houston (Bot)
1f2d52bd7b
[ci] release (#7645)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-07-14 10:44:25 -04:00
Erika
b3b640435b
nit: export props has been unnecessary.. forever (#7646) 2023-07-14 09:57:06 -04:00
Erika
7a6b48a1a4
fix(squoosh): Fix wrong file path in rotation check (#7650) 2023-07-14 15:52:14 +02:00
Bjorn Lu
bde08c4b14
Refactor merge server config (#7639) 2023-07-14 16:13:58 +08:00
matthewp
4ce2ba972a [ci] format 2023-07-13 20:12:07 +00:00
Matthew Phillips
213e10991a
Fixes for redirects config (#7644)
* Update redirects static generation based on recs

Got some great recommendations on how to handle our HTML written
redirect code based on SEO best practices.

See https://github.com/withastro/roadmap/issues/466#issuecomment-1595940678

This implements them all.

* Fix for using the root path / as a redirect

Fixes https://github.com/withastro/astro/issues/7478

* Fix static redirects prefer over dynamic page

Fixes https://github.com/withastro/astro/issues/7581
2023-07-13 16:09:44 -04:00
Erika
af5827d4f7
fix(assets): Fix images not following EXIF rotation (#7637) 2023-07-13 21:38:57 +02:00
Princesseuh
c90de81373 [ci] format 2023-07-13 19:25:34 +00:00
Alvin Bryan
4b82e55cf1
Allow SVGs when using Assets (#7643)
* Allow SVG files when using Assets

* Fixed TypeScript error

* fix: some small nits and add a test

* chore: changeset

---------

Co-authored-by: Princesseuh <princssdev@gmail.com>
2023-07-13 21:22:31 +02:00
Bjorn Lu
bdde6b9f6c
Convert CLI top-level imports as dynamic imports (#7635) 2023-07-13 22:34:59 +08:00