0
Fork 0
mirror of https://github.com/withastro/astro.git synced 2024-12-23 21:53:55 -05:00
Commit graph

5551 commits

Author SHA1 Message Date
Luiz Ferraz
819d20a89c
Fix dynamic prerender conflict (#10298)
* Reproduce issues

* Handle inconsistency between static, dynamic and rest routes

* Add extra test cases

* Add changeset

* Revert unrelated changes

* Update lockfile
2024-03-04 16:40:32 +00:00
Arsh
c99bbd09af [ci] format 2024-03-04 15:46:23 +00:00
Arsh
19ecccedaa
workaround(node ssr): cancellation support for renderToAsyncIterable (#10319)
* workaround(node ssr): cancellation support for renderToAsyncIterable

* add changeset

* Update .changeset/nice-pets-tie.md
2024-03-04 21:15:13 +05:30
Arsh
9076dc821c [ci] format 2024-03-04 14:56:42 +00:00
Arsh
9deb919ff9
fix(i18n): prevent overwriting 404.astro (#10281)
* fix(i18n): prevent overwriting 404.astro

* add changeset

* add tests

* adjust unit test
2024-03-04 20:25:41 +05:30
Ben Holmes
78ddfadbf9
fix: reference base types (#10315)
* fix: reference root types

* chore: changeset

* chore: stray console log
2024-03-04 09:14:56 -05:00
Arsh
6407897643 [ci] format 2024-03-04 11:45:33 +00:00
Arsh
9ba3e2605d
fix(build): skip only the configured redirects (#10279)
* fix(build): allow redirect responses to output files

* add changeset

* add test
2024-03-04 11:44:34 +00:00
Houston (Bot)
5afc8f2088
[ci] release (#10306)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-03-04 03:09:24 -08:00
Fred K. Schott
725f83fdb9
small fix to an incorrect check (#10300) 2024-03-04 03:01:20 -08:00
Fred K. Schott
cb00c8b692
fix package json types (#10313) 2024-03-04 02:59:41 -08:00
Fred K. Schott
51393a729b [ci] format 2024-03-04 10:51:57 +00:00
Fred K. Schott
93ec9e264a
add new migrations system (#10312) 2024-03-04 02:50:58 -08:00
Sandeep Dilip
718eed704a [ci] format 2024-03-03 16:00:18 +00:00
Sandeep Dilip
4bc360cd5f
fix(#8625): smooth scrolling in SPA mode on iOS (#10235)
* fix(#8625): smooth scrolling in SPA mode on iOS

* perf(router): run cb every 200ms only when scolling

* refactor(router): suggested changes and fixes

Suggested changes:
- change interval time from 200 to 50ms
- initialize `last*` vars together with the call to `setInterval()`
- clear interval when scroll positions stop changing, independent of
  history state

Additional changes:
- remove unused `throttle()` function
- move guarded block to inside `onScrollEnd()` since using history
  navigation will trigger our "popstate" callback and fire additional
  "scroll" and "scrollend" events, causing redundant expensive calls to
  `replaceState()`

* adds changeset

---------

Co-authored-by: Martin Trapp <94928215+martrapp@users.noreply.github.com>
2024-03-03 16:59:19 +01:00
Houston (Bot)
2db9031a9f
[ci] release (#10292)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-03-02 00:42:07 -08:00
Ben Holmes
25fe5bd040 [ci] format 2024-03-02 00:31:00 +00:00
Ben Holmes
3488be9b59
finalize WIP API (#10280)
* feat: no more readable / writable

* fix: table typegen

* wip: move data seeding

* chore: add scripts to basics

* feat: data() -> seed file

* refactor: ensure precedence of file name

* feat: db execute command

* fix: test imports

* chore: remove old readable error tests

* feat: support local db with `db execute`

* refactor: remove integrations from test for now

* chore: stray comment

* chore: remove `table` config object

* feat: `db.batch`!

* refactor: move migrations/ inside db/

* fix: move ticketing-example to seed file

* fix: disable foreign keys when recreating tables

* refactor: standardize migrations dir

* feat: move to db/config.ts

* feat: file watching for db/config.ts dependencies

* feat: remove unsafeDisableStudio

* chroe: remove bad import

* feat: parse config.ts from cli

* chore: remove async from localDatabaseClient

* fix: update recipes config and seed

* chore: update unit tests

* chore: update tests to dev server

* refactor: collectionToTable -> asDrizzleTable

* chore: tidy up collection -> table error states

* refactor: regexp -> endsWith

* feat: pretty error inserting into table

* refactor: try/catch -> catch()

* feat: expose utils for integration seed files

* fix: add config import to db client modules

* fix: just use generic "seeding database" error

* chore: remove unused link args

* fix: migration queries im,port

* chore: remove irrelevant glob/ example

* feat: format migration file path

* feat: support all config file names

* chore: remove db.batch() for now

* chore: remove `db` object

* core: remove unused integration file

* chore: changeset

* fix: foreign key empty error message

* chore: remove old TODO

* fix: bad context reference

* refactor: seedDev -> seedLocal

* wip: throw some console logs at github

* wip: avoid seeding astro:db imported by seed file

* wip: use anything in db/

* refactor: only seed when loaded within srcDir

* refactor: avoid resolution when not seeding

* chore: remove logs

* refactor: seed within create local db client

* refactor: use normalizePath

* wip: logs

* wip: logs

* refactor: early return

* chore: more logs

* refactor: no batch

* fix: use beforeAll

* refactor: move all tests to base block

* wip: log dev server starting

* chore: remove logs

* wip: demo ready

* chore: remove duplicate recreateTables() call

* Revert "wip: demo ready"

This reverts commit 37585ce5cb.

* refactor: beforeEach to isolate dev servers

* chore: remove useBundledDbUrl

* refactor: naming and seed scope

* chore: remove stray console logs

* wip: fix windows file import

* wip: try fileURLToPath

* Revert "wip: try fileURLToPath"

This reverts commit 46fd65d61a.

* Revert "wip: fix windows file import"

This reverts commit 1a669ea646.

* refactor: dir -> directory

* refactor: move execute file to cli

* refactor: remove seed.dev convention

* wip: attempt fileURLToPath

* wip: debug the file exists

* fix: use mjs??

* chore: remove duplicate seedLocal

* chore: remove log check

* refactor: use in memory db for tests

* chore: clean up test comment

* fix: avoid file writes for db setup on in memory db

* chore: bump db changeset to minor

---------

Co-authored-by: Nate Moore <nate@astro.build>
2024-03-01 19:29:55 -05:00
Erika
4b6e2fb69b [ci] format 2024-03-01 15:29:39 +00:00
Erika
a548a3a99c
fix(markdoc & mdx): Proxy crimes (#10278)
* fix(markdoc & mdx): Proxy cimes

* chore: changeset
2024-03-01 15:48:38 +01:00
Houston (Bot)
87a3d51f2c
[ci] release (#10286)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-03-01 12:10:51 +00:00
Erika
5e3e74b61d
fix(audits): Don't warn about loading on data URIs (#10275) 2024-03-01 11:41:43 +01:00
Erika
d5277df5a4
fix(node): Safely create requests (#10285)
* fix(node): Wrap request creation in try catch

* chore: changeset
2024-03-01 10:26:28 +00:00
Houston (Bot)
afd41cc28b
[ci] release (#10265)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-03-01 10:31:12 +01:00
Erika
a3ebfad0cc [ci] format 2024-03-01 09:24:22 +00:00
Erika
07f89429a1
fix(assets): Solidify Node endpoint (#10284)
* fix(assets): Solidify Node endpoint

* chore: changeset
2024-03-01 10:23:07 +01:00
Satanshu Mishra
df05138ebe [ci] format 2024-03-01 08:33:27 +00:00
Satanshu Mishra
b47dcaa259
fix(node): listen on 0.0.0.0 if server.host is set to true (#10282)
Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>
Co-authored-by: Kevin Zuniga Cuellar <46791833+kevinzunigacuellar@users.noreply.github.com>
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2024-03-01 09:32:22 +01:00
Arsh
560a593418 [ci] format 2024-02-29 18:39:09 +00:00
Arsh
e556151603
fix(dev): cosider base when special-casing /_image (#10274)
* fix(dev): cosider `base` when special-casing `/_image`

* add changeset

* adjust tests

* Apply suggestions from code review

* add test
2024-03-01 00:08:01 +05:30
Fred K. Schott
3757a212c0 [ci] format 2024-02-29 05:27:46 +00:00
Fred K. Schott
c2e7b9847e
update login flow to support Brave (#10258) 2024-02-28 21:26:19 -08:00
Fred K. Schott
e86b81a671 [ci] format 2024-02-29 05:26:11 +00:00
Fred K. Schott
2ecead463d
improve link command (#10257) 2024-02-28 21:25:02 -08:00
Martin Trapp
2af8e9621f [ci] format 2024-02-28 15:53:13 +00:00
Martin Trapp
9bdbed723e
Adds auto completion of astro: events when adding or removing event listeners on document (#10263) 2024-02-28 16:52:08 +01:00
Bjorn Lu
f6fc18cc61
Update Vite to latest (#10259) 2024-02-28 23:20:17 +08:00
Houston (Bot)
e56c428f3b
[ci] release (#10236)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-28 13:17:40 +00:00
Furkan Erdem
e252f5b2f3 [ci] format 2024-02-28 13:09:56 +00:00
Furkan Erdem
57655a99db
fix(i18n): localised index pages are overwritten (#10250)
* fix(i18n): localised index pages are overwritten

* chore: add changeset

* chore: add pnpm lock
2024-02-28 13:08:49 +00:00
Emanuele Stoppa
8ae5d99534
fix: change strategy for route caching (#10248)
* fix: change strategy for route caching

* use route and component as cache key
2024-02-28 11:59:50 +00:00
Ming-jun Lu
9b00de0a76
Fix TypeScript type definitions for Code component (#10251)
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2024-02-28 10:43:24 +08:00
Martin Trapp
fb773c9161
Removes morph animations when setting transition:animate=none (#10247)
* Removes morph animations when setting transition:animate=none

* Apply suggestions from code review

---------

Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>
2024-02-27 22:46:32 +05:30
Emanuele Stoppa
08cdd0919d
chore: import sort astro package (#10245)
* chore: import sort source code, exception for the `astro` package

* fix import sorting bug

* chore: import sorting for the `astro` package
2024-02-27 16:19:34 +00:00
Erika
dbb0d0bd28
Fix Svelte editor tooling not working under relaxed TypeScripts projects (#10244)
* fix(svelte): Add TypeScript as a peer dep

* Update .changeset/gold-baboons-drum.md
2024-02-27 16:25:59 +01:00
Emanuele Stoppa
6bf102aebe [ci] format 2024-02-27 11:16:47 +00:00
Emanuele Stoppa
2dd00a0024
chore: import sort source code, exception for the astro package (#10242)
* chore: import sort source code, exception for the `astro` package

* fix import sorting bug

* Update packages/integrations/lit/server.js

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

---------

Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
2024-02-27 11:15:27 +00:00
Ming-jun Lu
9c21a9df6b
Improve the message of MiddlewareCantBeLoaded for clarity (#10239)
* Improve the message of `MiddlewareCantBeLoaded` for clarity

* Add changeset
2024-02-27 07:17:51 +00:00
Martin Trapp
03242c6c22 [ci] format 2024-02-26 16:06:09 +00:00
Martin Trapp
ade9759cae
Warn when view transitions run on a prefer-reduced-motion device (#10222)
* Warn when view transitions run on a prefere-reduced-motion device

* ViewTransitions.astro aktualisieren

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

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-26 17:04:57 +01:00
Houston (Bot)
6012163d8f
[ci] release (#10218)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-26 15:33:39 +00:00
James Ross
e64bd0740b
fix: better assetsInlineLimit runtime type checking (#10154)
* fix: string assetsInlineLimit

* fix: better handle NaN values for `assetsInlineLimit`

* chore: prettier

* chore: simplify for requested changes

* chore: update changeset

* chore: remove tests

* chore: simplify function

* Apply suggestions from code review

---------

Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>
2024-02-26 20:12:42 +05:30
Ben Holmes
aa45eb9fa6
fix: correct remote url (#10223)
* fix: get correct url

* chore: changeset

* fix: respect runtime env
2024-02-26 08:44:43 -05:00
Erika
1eadb1c529
fix(toolbar): Make it so every built-in app can be closed by outside clicks (#10220)
* fix(toolbar): Make it so every built-in app can be closed by outside clicks

* chore: changeset

* test: add tests

* test: fix test

* ci: don't run bundle-size on dev-toolba
2024-02-26 13:38:19 +00:00
Ming-jun Lu
ae2a10e1a7
Fix an issue where Vercel adapter may create functions for prerendered routes (#10231)
* fix: fix an issue where Vercel adapter may create functions for prerendered routes

* test: update test cases in `split.test.js`

* chore: add changeset

* refactor: apply suggested changes from code review

* Apply suggestions from code review

---------

Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>
2024-02-26 18:58:49 +05:30
Matthew Phillips
bc2bf460ea [ci] format 2024-02-26 08:39:20 +00:00
Matthew Phillips
afcb9d3311
Fix hydration scripts missing from dynamic slot usage (#10219) 2024-02-26 08:38:11 +00:00
Matthew Phillips
fd7453bc0d [ci] format 2024-02-26 08:37:43 +00:00
Matthew Phillips
4db82d9c7d
Prevent errors in rendering from crashing server (#10221)
* Prevent errors in rendering from crashing server

* Add changeset

* Make the reject an error

* Simplify

* Update .changeset/breezy-pears-admire.md

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>

---------

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2024-02-26 08:36:43 +00:00
前端子鱼
84502b4190
fix: svelte 5 mount/hydrate api change. (#10224) 2024-02-26 16:10:47 +08:00
Arsh
8d5ea2df5d [ci] format 2024-02-24 11:36:15 +00:00
Arsh
8fb32f390d
prevent warning: Astro.request.headers is not available in "static" output mode (#10196) 2024-02-24 17:05:16 +05:30
Ben Holmes
5d4ff093a2
Improved error logging from config (#10207)
* fix: better error messaging on seed()

* chore: collection -> table for errors

* chore: changeset
2024-02-23 17:01:33 -05:00
Arsh
eb8bffe67a [ci] format 2024-02-23 15:27:44 +00:00
Arsh
6aa660ae7a
fix(dev): remove params for prerendered pages (#10199)
* fix(dev): remove params for prerendered pages

* add test

* add changset

* deduplicate param removal

* format

* adjust tests
2024-02-23 20:56:34 +05:30
Houston (Bot)
3de7b2c7ec
[ci] release (#10213)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-23 09:31:55 -05:00
Matthew Phillips
a013182d32
Fixes edge middleware calling nested routes (#10215) 2024-02-23 09:13:10 -05:00
Martin Trapp
459f74bc71
Adds an error message for non-string transition:name values (#10205) 2024-02-23 09:00:52 -05:00
Furkan Erdem
dddbb09fe0 [ci] format 2024-02-23 13:24:45 +00:00
Furkan Erdem
8cd38f0245
Fix(node): Custom headers are not present in responses from standalone Node server in preview mode (#10208)
* fix(node): add user specified headers to preview server responses

* docs: clarify comment

* style: new line

* test: remove test

* chore: add changeset
2024-02-23 08:23:33 -05:00
Nworm
903eace233
fix(core): build failure caused by read-only files (#10195)
* fix(core): build failure caused by read-only files

* test: fix fixtures/build-readonly-file

* other:  format code
2024-02-23 11:36:53 +00:00
Yan Thomas
7fe25158cd
Fix typo in @types/astro.ts (#10204) 2024-02-22 18:42:42 -06:00
Matthew Phillips
31a9f8469c
Introduce the db integration (prerelease) (#10201)
* Initial DB migration code

* chore: update package.json

* chore: update lockfile

* feat: add db as top-level config value

* Small package change

* Add a very basic test

* deps: remove unused

* chore: astro/db scripts, exports, deps

* chore: set tsconfig to monorepo defaults

* feat: MVP to use libsql in dev

* fix: test fixture paths

* fix: test file paths

* chore: remove CLI tests

* fix: add astro-scripts to db

* fix: package.json merge

* fix: load seed file separately for build

* feat: create db on filesystem for build

* fix: ul test. It passes now!

* Squashed commit of the following:

commit acdddd728c56f25e42975db7f367ab8a998e8c41
Author: Princesseuh <3019731+Princesseuh@users.noreply.github.com>
Date:   Wed Jan 10 14:06:16 2024 -0500

    fix: proper type augment for the config

commit b41ca9aacf291d1e5f0a27b6d6339ce4fc608ec3
Author: Nate Moore <nate@astro.build>
Date:   Tue Jan 9 14:33:42 2024 -0600

    wip: type augmentation

* feat: data() fn with basic type safety

* wip: update from seed file to data()

* fix: bad collectionSchema data type

* refactor: move dev to use filesystem to run seed at right time

* chore: remove seed file logic

* docs: add basic README

* CLI sync command

* Runtime checking of writable

* docs: add join example

* Implement defineWritableCollection

* feat: use studio connection for studio builds

* fix: add defineWritableCollection export

* refactor: use getTableName() util

* feat(db): add support for pass-through `astro db` command

* chore: add error map

* fix: add drizzle import

* refactor: studio -> db cli

* feat: add ticketing example

* fix: bad types in astro config

* fix: remove invalid `data()` on writable collection

* fix: vite warning on load-astro-config

* wip: add seeding for readable collections (nonstable ids!)

* merge migration work into branch

* cleanup migration commands

* migrate seed data to new db push command

* add migrations table to db

* fix remote db bugs

* fix: warn writable collections when studio false

* chore: delete README contents (now on Notion)

* chore: remove blank README

* chore: add dev dependency on db

* Removed unused deps

* 0.1.0

* Add config-augment.d.ts to published artifacts"

* Fixes merge issues with main

* fix: support promise response from data()

* feat: basic glob fixture

* Add a main field

* Give a help message when no db command is provided

* feat: `db push --token` for GitHub CI secrets

* fix getPackage for db package

* 0.1.2

* wip: build a table type

* chore: update lockfile

* chore: temporarily remove `Table` type

* feat: better Table object for type inference

* format

* add primaryKey support

* improve snapshot parsing support

* cleanup primary key support, db push

* add simple db shell

* cleanup old copy paste code

* feat: scrappy global data() prototype

* feat(test): recipes example

* fix: use Extract to narrow keyof to strings

* 0.1.3

* Create a runtime version of createRemoteDatabaseClient

* 0.1.4

* Grab the dbUrl from the environment

* 0.1.5

* Expose the database to the build output

* 0.1.6

* 0.1.7

* 0.1.15

* wip: data() -> set() concept

* fix: just infer insert keys for now

* refactor: rewrite to injected set() function

* deps: chokidar, drizzle

* feat: glob support with { db, table } signature

* chore: move basics to new data set

* refactor: set -> seed

* feat: expose Model.table

* refactor: clean up types

* feat: migrations now working!

* upgrade @libsql/client

* format

* expose relevant types

* 0.1.16

* feat: config design

* feat: add indexes from collectionToTable

* feat: add indexes to setupDbTables

* fix: remove unique constraint on recipeId

* Use an import statement to grab the database file

* 0.1.17

* Remove unused import

* Rename to ?fileurl

* 0.1.18

* feat: index migrations

* move migration logic to turso, add back sync support

* feat: add queries unit tests and fix related bugs

* refactor: move field queries to field-queries.test

* feat: index query tests

* refactor: reorganize the rats nest of files

* Make the DB_URL be root relative

* Upgrade to latest libsql

* 0.1.19

* 0.1.20

* Make work in webcontainer

* 0.1.22

* Remove content database from the static build

* 0.1.23

* chore: remove `optional: true` from pk

* chore: disable console linting for CLI

* fix: remove `id` column from Table type

* chore: remove `AstroId` type

* fix(ex): add `id` col to ticketing

* 0.2.0

* 0.2.1

* add keywords

* 0.2.2

* feat: API shape

* feat: FINALLY collection and name attached

* refactor: move to arrow function signature

* fix: foreignKeys references signature

* chore: unused imports

* feat: add foreignkeys to create table

* chore: lint

* chore: enable foreign keys in local mode only

* refactor: objShallowEqual -> deep diff

* fix: correct `hasDefault` inference

* fix: correct type Config reference

* fix: respect primaryKey from hasDefault

* fix: mark data keys as optional until we have type inference

* improve conflict and dataloss handling

- moved prompts to db push
- moved prompt logic out of lower-level functions
- improved logic overall
- improved user-facing prompt messages

* improve error messaging around studio config missing

* make it more clear when remove vs. local db is in use

* fix bug in prompt logic

* feat: better field.x() types

* feat: better seed() types

* chore: remove `as any` on seed values

* feat: good enough return type on seed :)

* feat: defineData()

* fix: add back promptResponse injection

* fix: use schema.parse to resolve dates

* fix: correctly respect primary key on INSERT INTO

* add short-lived db tokens

* add help output

* add better token error logging

* fix studio tests

* add shortcut link command from studio web ui

* Add support for SQL defaults

You can now use sql`CURRENT_TIMESTAMP`, `NOW`, and a couple of other
helpers, to set defaults.

* chore: todo

* feat: ignore `optional` and `default` when pk is present

* refactor: type `false` instead of type `never`

* feat: prevent `optional` on text pk

* fix db URL import for windows

* fix: add back textField multiline

* fix: remove explicit AUTOINCREMENT on int pk

* feat(db-cli): clean up CLI logging, support --json flag for `astro db verify`, extract shared logic to a utility

* prepare to run seed on all db push commands

* chore: expose setMeta for unit testing

* feat(test): reference add and remove tests

* feat: add references checks to migratiosn

* feat: remove useForeignKey checks

* feat: add pragma when pushing migrations

* feat(test): foreignKeys

* fix: transform collection config to be JSON serializable

* refactor: _setMeta -> preprocess for `table`

* refactor: reference tests

* chore: remove console log

* fix: handle serialized SQL object correctly

* refactor: store raw sql instead

* seed on every push

* Move field schema only a `schema` object

* Fix references test

* 0.3.0

* add default URLs to db package

* 0.3.1

* Fix input types

* fix: primaryKey type check

* 0.3.2

* fix: respect default in table types

* fix: avoid dropping tables on production seed

* fix: escape name on drop table

* feat: allow verify to mock migration file

* Handle unauthorized linking

* Fix verbiage of unauthorized link warning

* Add some color to the unauthorized message

* 0.3.3

* Improve the unauthorized error output

* 0.3.4

* fix: better error message

* Seed the Themes in build too

* Push skipped test

* chore: remove dead isJsonSerializable check

* fix: use `dateType` for dates (oops)

* refactor: clarify date coerce comment

* refactor: remove unused coerce

* chore: unskip date test

* feat: seed -> seedReturning

* refactor: throw when seeding writable in prod

* Add unsafeWritable option

* refactor: use FieldsConfig for Table generic

* chore: lint

* fix: use z.input for AstroConfigWithDB type

* fix: add defaults for boolean config options

* Support new CLI command structure

* Allow writable in the tests

* fix: handle defaults for safe type changes

* refactor: avoid selecting ['schema'] on input types

* 0.3.5

* Rename field->column, collection->table

* Rename collections->tables

* rename to defineReadableTable

* deps: upgrade ticketing-example

* fix: stray console.log

* deps: bump preact again

* chore: preact->react

* fix: parse params.event as number

* fix: correct event references

* Allow integrations to define schema

* fix: file-url plugin failure on repeated generateBundle() runs

* update url

* Cleanup

* Linting

* fix windows file permission issue

When runnng `astro dev`, the watcher would close trying to delete the `content.db` file due to a file permission error. This change makes the local DB client a disposable to allow cleanup after usage.

* Formatting

* "fix" Symbol.dispose usage

---------

Co-authored-by: Nate Moore <nate@astro.build>
Co-authored-by: bholmesdev <hey@bholmes.dev>
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
Co-authored-by: itsMapleLeaf <19603573+itsMapleLeaf@users.noreply.github.com>
2024-02-22 14:50:44 -05:00
Houston (Bot)
3411e05ee4
[ci] release (#10203)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-22 14:37:35 -05:00
Erika
c692d0c66a
fix: try the simple solution (#10200) 2024-02-22 14:21:31 -05:00
Houston (Bot)
0b4e5298d2
[ci] release (#10192)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-22 11:17:25 -05:00
Matthew Phillips
c32f0c1ab6 [ci] format 2024-02-22 16:12:42 +00:00
Matthew Phillips
3cc2010927
Fix cssesc from breaking browser code (#10194)
* Fix cssesc from breaking browser code

* Include specific thing instead

* Update .changeset/quick-bottles-march.md

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>

* Fix ISR

* Remove query stripping altogether

* Warn on client usage

* Fix build

* oops

---------

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2024-02-22 11:11:41 -05:00
Erika
c856c72940
fix(errors): Remove duplicate logging of errors (#10197)
* fix(errors): Remove duplicate logging of errors

* chore: changeset
2024-02-22 16:41:05 +01:00
Bjorn Lu
598f30c7cd
Improve Astro style HMR for imported styles (#10166) 2024-02-22 22:19:06 +08:00
Emanuele Stoppa
1e638c4019
chore: import sorting for test folder and e2e folder (#10190) 2024-02-22 13:58:10 +00:00
Bjorn Lu
7c5fcd2fa8
Improve optimizeDeps.entries to avoid server endpoints (#10143) 2024-02-22 18:36:06 +08:00
Houston (Bot)
2c2519204a
[ci] release (#10177)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-21 14:40:40 -06:00
Emanuele Stoppa
6343f6a438
Revert "Add option to prefix sitemap" (#10179)
* Revert "Add option to prefix sitemap (#9846)"

This reverts commit 9b78c99275.

* changeset

* feedabck

* fix incorrect merging
2024-02-21 14:27:00 +00:00
Emanuele Stoppa
062623438b
chore: use biome to sort imports - only test files (#10180)
* chore: use biome to sort imports

* do the sorting

* Update package.json

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

---------

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
2024-02-21 14:08:19 +00:00
Piotr Losiak
8e51bf9ea9 [ci] format 2024-02-21 07:44:29 +00:00
Piotr Losiak
ec7d2ebbd9
fix(sitemap): url when rest parameter is used in page file names (#9975)
* fix(sitemap): url when rest parameter is used in page file names

* Update .changeset/sour-ties-sparkle.md

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>

* Apply suggestions from code review

---------

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-21 07:43:22 +00:00
Emanuele Stoppa
a46249173e
fix(i18n): move transformation outside the user schema (#10169)
* fix(i18n): move transformation outside the user schema

* fix condition

* cleanup

* ops

* fix regression
2024-02-21 07:42:06 +00:00
Yan Thomas
aa5efd1bb2
Fix typo in errors-data.ts (#10172) 2024-02-20 17:21:03 +00:00
Houston (Bot)
052d3271d4
[ci] release (#10131)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-20 20:18:30 +05:30
Arsh
c1671dff22 [ci] format 2024-02-20 14:41:38 +00:00
Arsh
5acc3135ba
refactor: pipeline lifetime (#9795)
* Base Environment

* SSRRoutePipeline -> AppEnvironment

* BuildPipeline -> BuildEnvironment

* DevPipeline -> DevEnvironment

* per-request pipeline

* internal middleware: i18n

* delete callEndpoint

* pipeline access for internal middleware

* Address review comments

`environment.ts` is now lives directly in `src/core`, rather than `src/core/render`.

`environment.createPipeline` is removed. `Pipeline.create` is used instead.

Constructors with positional arguments are replaced by `Environment.create` with named arguments.

Clarifies the use of `HiddenPipeline`.

* migrate some of `RenderContext`'s responsibilities to `Pipeline`

* delete renderPage

* RenderContext.params -> Pipeline.params

* delete `RenderContext`

* `Pipeline` -> `RenderContext`

* `Environment` -> `Pipeline`

* `AppEnvironment` -> `AppPipeline`

* `BuildEnvironment` -> `BuildPipeline`

* `DevEnvironment` -> `DevPipeline`

* provide locals directly to renderContext

* add changeset
2024-02-20 20:10:13 +05:30
Erika
ea990a5614
fix: dev-toolbar test (#10167) 2024-02-20 15:15:54 +01:00
ktym4a
80f8996514
Fix to get Integration Data even when a page is transitioned by ViewTransition (#10079)
* Fix to get Integration Data even when a page is transitioned by ViewTransition.

* add test case

* add changeset

* fix test

* Fix typo
2024-02-20 14:09:20 +01:00
Ming-jun Lu
b92d35f102
Fix an issue where audit fails to initialize when encountered <a> inside <svg> (#10163)
* Fix an issue where audit fails to initialize when encountered `<a>` inside `<svg>`

* Add changeset
2024-02-20 11:22:05 +01:00
Emanuele Stoppa
d50dddb71d
fix(i18n): make i18n.routing fields optional (#10165)
* fix(i18n): make `i18n.routing` fields optional

* update user config

* Update packages/astro/src/core/config/schema.ts

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

---------

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2024-02-20 10:17:40 +00:00
ktym4a
9b78c99275
Add option to prefix sitemap (#9846)
* Add option to prefix sitemap

* Fix call resolve twice

* let to const

* Apply suggestions from code review

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

* change changeset patch to minor

* use node:test

* Update changeset

* Add regex validation for prefix

* Update .changeset/eighty-falcons-tease.md

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

* Update prefix regex in SitemapOptionsSchema

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2024-02-20 08:36:09 +00:00
Bjorn Lu
3c73441eb2
Fix Astro HMR style-only change detection (#10139) 2024-02-19 21:56:13 +08:00
Abid
43f87467c6
Implement test using using assert.fail and assert to check ENOENT. (#10156) 2024-02-19 09:36:53 +00:00
Reuben Tier
0c2ab5b155
Fix docs markdown link (#10155) 2024-02-18 20:41:18 +00:00
Emanuele Stoppa
ddf0f924b5
chore: move nodetest.js to test.js (#10142)
* chore: move `nodetest.js` to `test.js`

* chore: move `nodetest.js` to `test.js`

* remove script
2024-02-16 16:20:49 +00:00
Emanuele Stoppa
2351c5e5de
chore: fix failing tests and skip some (#10141) 2024-02-16 14:02:18 +00:00
Bjorn Lu
41a6baa080
Update Vite ws property to hot (#10138) 2024-02-16 21:15:46 +08:00
ktym4a
5ff288f61b
chore: Change strictEqual to equal (#10140) 2024-02-16 11:41:16 +00:00
Ming-jun Lu
7bdcfb750a
chore: migrate several tests to node:test (#10133)
* chore: migrate test files whose names start with `a` to `node:test`

* update assertion

* chore: remove mocha script

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-15 17:58:17 +00:00
ktym4a
4b62bfbe76
chore: move test to node (#10134) 2024-02-15 16:04:54 +00:00
Bjorn Lu
1da9c5f2f3
Remove server-destroy dependency (#10132) 2024-02-15 22:59:03 +08:00
Mohamed
1f598b3724
fix(cli): load polyfill before loading config during astro add (#10105)
* Adds crypto import to Vercel adapter

* Update the 'crypto' import to 'node:crypto'

* load polyfills before loading config

* add changeset

* load polyfills for `astro info`, `astro preferences` etc

* update changeset

* clarify impact

---------

Co-authored-by: lilnasy <69170106+lilnasy@users.noreply.github.com>
2024-02-15 07:42:03 -07:00
Emanuele Stoppa
4f6b0def42
chore: move tests that starts with i and j (#10129)
* chore: move tests that starts with i and j

* add missing `after`
2024-02-15 14:11:52 +00:00
Yan Thomas
d278e66ec6
Remove unhelpful message in errors-data.ts (#10128) 2024-02-15 14:33:56 +01:00
ktym4a
f134358bcf
chore: move test to node (#10125)
* chore: move test to node

* `strictEqual` to `strict`
2024-02-15 12:49:28 +00:00
Emanuele Stoppa
9eb37a31a7
chore: move tests to node (#10127)
* chore: move tests to node

* revert

* skip one test for now
2024-02-15 12:22:53 +00:00
Emanuele Stoppa
e845fb2eaa
chore: move tests to node (#10123)
* chore: move tests to node

* fix
2024-02-15 11:51:12 +00:00
Houston (Bot)
141f2fb757
[ci] release (#10109)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-15 12:00:03 +01:00
Marawan Mohamed
40a2e03ffb
chore: move tests to node (#10115) 2024-02-15 10:27:05 +00:00
Atharva
0f3d4ae30b [ci] format 2024-02-15 09:55:44 +00:00
Atharva
8701cfee23
chore: move css- related tests to node:test (#10114) 2024-02-15 09:54:45 +00:00
Oliver Speir
b386d2d7ae [ci] format 2024-02-15 09:25:15 +00:00
Oliver Speir
91f75afbc6
Add inferSize to getImage so width and height are optional for remote images (#9976)
* add remote image dimension probing, and param for getImage options, and new astro error

* add inferSize parameter to getImage, which probes remote image size, and respective types to picture and image component

* add fixture and tests

* add changeset

* attempt to fix pnpm-lock.yaml

* fix pnpm-lock.yaml again

* pnpm-lock spacing

* fix pnpm-lock AGAIN

* better description of error for docgen

* improve failed to probe error message and correct required dimensions error

* increase timeout for mdx tests

* increasing mdx timeout to 2min to see if it passes, will reduce if it does

* setting mdx timeout to 70 seconds

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

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

* refactor to move logic to getImage instead of validateOptions and  to not add a third type to image and picture

* fix broken link created by docs PR

* remove the probe-image-size library due to its use of node APIs

* undo all changes to service.ts that were left  after moving inferSize logic to getImage

* update error message

* remove probe-image-size library all together, update error message, add vendored version of complete image-size library instead of refactored version

* Update .changeset/tame-cameras-change.md

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

* Update .changeset/tame-cameras-change.md

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

* reword the error message based on Sarah's previous review

* remove probe-image-size from pnpmlock

* fix lockfile?

* update error message name

* move image-size into vendor folder

* add eslint ignore to a line in image-size

* test if change to mdx test timeout was needed

* Update .changeset/tame-cameras-change.md

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

* update changset syntax

* patch parse heif to account for filetype block being out of order

---------

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-15 10:24:03 +01:00
Bjorn Lu
787e6f5247
Update to Vite 5.1 (#10120) 2024-02-15 17:20:38 +08:00
Arsh
e9cedf0bbc [ci] format 2024-02-14 22:28:51 +00:00
Arsh
4bcc249a9f
fix(dev): preload matched routes sequentially (#10116)
* fix(dev): preload matched routes sequentially

* add changeset
2024-02-14 17:27:53 -05:00
Hippo
51b6ff7403
Fix invalid URLs being returned from getRegistry, synchronize all copies (#10117) 2024-02-14 17:27:18 -05:00
Emanuele Stoppa
ef080d5b93
chore: move tests to node (#10113)
* chore: move tests to node

* forgot to rename it

* Update packages/astro/test/solid-component.nodetest.js

Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>

* test hanging, let's skip it

---------

Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>
2024-02-14 17:09:30 +00:00
Erika
476b79a611
Rename Astro app to astro:home (#10112)
* Rename Astro app to astro:home

* Create silent-hotels-approve.md

---------

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
2024-02-14 16:37:37 +01:00
Matthew Phillips
e34eeb146e [ci] format 2024-02-14 15:15:02 +00:00
Matthew Phillips
d469bebd7b
Improve Node.js performance using an AsyncIterable (#9614)
* Improve Node.js performance using an AsyncIterable

* Oops

* Get rid of extra abstraction

* Update .changeset/hip-cherries-behave.md

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>

* Check if already resolved

* Resolve on done

* Get rid of unneeded "done"

* Done when length is zero

* Let errors resolve

* Update packages/astro/src/runtime/server/render/astro/render.ts

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

* Move doctype to top-level

* Document the new function

* Update .changeset/hip-cherries-behave.md

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

* Update .changeset/hip-cherries-behave.md

---------

Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-14 10:14:05 -05:00
Emanuele Stoppa
8c14143d06
chore: move tests to node (#10111) 2024-02-14 14:11:19 +00:00
Martin Trapp
50da330a95 [ci] format 2024-02-14 14:08:36 +00:00
Martin Trapp
b340f8fe3a
Re-encode view-transition-names (#10099)
* Fixes an issue with view transition names containing spaces or punctuation.

* reworked, more robust approach

* better readability and also escapes the escape character (_)

* update changeset

* add comemnts to describe the re-encoding

* updated changeset

* typos

* Apply suggestions from code review

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

* simplify decoding it ever required.

* better coverage and now also checks animation behavior

---------

Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-14 14:07:31 +00:00
Erika
7443929381
feat(audits): Add UI with list of audits (#10074)
* feat(audits): Add UI with list of audits

* style: slightly better UI

* requested design changes

* chore: changeset

* add test

* remove unwanted file
2024-02-14 14:46:36 +01:00
Erika
31de1ea8b8 [ci] format 2024-02-14 13:02:54 +00:00
Erika
6884b103c8
feat(audits): Add initial perf audits (#10015)
* feat(audits): Add initial perf audits

* feat(audits): Setup dev astro-island

* fix(audits): Don't take scroll into account when getting an element's position

* nit: lint

* Fix tests

* chore: changeset

* maybe: Move this.hydrator outside the perf check

* Update packages/astro/e2e/dev-toolbar.test.js

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

* address feedback

* address feedback

---------

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
2024-02-14 14:01:53 +01:00
Atharva
f9aebe74a1 [ci] format 2024-02-14 10:52:08 +00:00
Atharva
f7f20069c3
chore: migrate alias tests to node:test (#10108) 2024-02-14 10:51:03 +00:00
Ben Holmes
748b2e87cd
Refine content collection warnings (#10001)
* feat: remove nonexistent collection warning

* fix: remove markdown syntax from console.warn

* fix: respect configured collections in types when dir is missing

* chore: changeset

* chore: revert test schema

* docs: "Removes"

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

---------

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2024-02-14 10:09:31 +00:00
Luiz Ferraz
5759fd9947 [ci] format 2024-02-14 10:07:40 +00:00
Luiz Ferraz
227cd83a51
Fixes regression on routing priority for multi-layer index pages (#10096)
* Reproduce regression

* Simplify sorting algorithm

* Add changeset

* Fix changeset typo

* Rename assertion utility function

* Fix index detection

* Add changeset for index fix

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-14 10:06:38 +00:00
Houston (Bot)
e24db1d8a6
[ci] release (#10092)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-13 14:25:59 -07:00
Arsh
d851387a2d [ci] format 2024-02-13 17:29:30 +00:00
Arsh
71273edbb4
qol(islands): improve hydration errors (#10075)
* improve error messages for island hydration

* add changeset

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2024-02-13 10:28:28 -07:00
YS.Y
73bd900754
Fixes audit when multiple role values exist. (#9857)
* fix: Fixing the issue of errors caused by multiple values in the role, when multiple roles exist, check each role.

fix #9856

* Update .changeset/eight-flowers-remain.md

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2024-02-13 11:27:33 -06:00
Mohamed
2168635a6f
chore: Migrate some astro-*.test.js to node:test (#10078)
* chore: Migrate some astro-*.test.js to node:test

* revert astro-dev-headers and astro-client-only

* replace strictEqual with equal in astro-class-list

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-13 15:51:48 +00:00
Emanuele Stoppa
f13d897002
chore: remove some weird stuff (#10103) 2024-02-13 15:51:26 +00:00
Emanuele Stoppa
11639b120d
chore: fix test that was failing (#10101)
* chore: fix test that was failing

* change assertion
2024-02-13 15:28:38 +00:00
Atharva
b742646d4e [ci] format 2024-02-13 14:43:52 +00:00
Atharva
3387f75c99
chore: Migrate content-collection-**.test.js to node:test (#10098)
* test: move to node:test

* test: move content-collections-render to node:test

* chore: bring back isWindows

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-13 14:42:55 +00:00
Shoaib Khan
3007d24c98
chore: Migrate all packages/create-astro/test to node:test (#10084)
* chore: Migrate All packages/create-astro/test to node:test

* Some minor fix

* Requested Changes done

* Reopen

* Apply suggestions from code review

* let's test with concurrency

* chore: fix possible false positive tests

* todo test

* skip tests

* Apply suggestions from code review

---------

Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
2024-02-13 14:41:59 +00:00
Bjorn Lu
bd877d389a
Fix mocha run (#10100) 2024-02-13 22:25:30 +08:00
Ming-jun Lu
bcd9202228 [ci] format 2024-02-13 13:24:10 +00:00