* feat(toolbar): Add a `astro:toolbar` module
* fix: use entrypoint
* feat: add new shape for defining toolbar apps
* fix: types
* feat(toolbar): Add helpers features (#10667)
* feat(toolbar): Add helpers features
* fix: consistent payloads and naming
* chore: changeset
* nit: rename eventTarget to app
* feat: add server-side helpers
* test: update test to use new APIs
* fix: types
* nit: erikaaaaa
* feat: add new event
* Update .changeset/khaki-pianos-burn.md
* test: use data to create text
* Apply suggestions from code review
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
* nit: use diff
* nit: documentation effort
* test: fix
---------
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
* nit: small changes to helpers
* nit: update changeset
* fix: move to astro/toolbar for building purposes
* feat(toolbar): Add a toolbar example (#10793)
* feat: add a toolbar starter
* test: skip examples that are not Astro projects
* nit: small changes
* feat: setup for build step
* fix: add to devdep
* docs: add commands to README
* fix: reorder classes to make more sense
* fix: add improvements from recipe
* Apply suggestions from code review
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* feat: add a new message telling the user that a new version of Astro is available
* chore: changeset
* fix: use gt
* fix: apply feednack
* fix: apply feedback
* nit: use private namespace
* fix: oops
* nit: apply feedback
* fix: build
* fix: don't check for updates in CI
* docs: update changeset
* Update sharp to 0.33 to fix issue with Alpine Linux
It was impossible for me to use the Astro image service in an Alpine Linux docker container. Even though I would install sharp `0.33.3` in my app, pnpm would download version `0.32.6`, which doesn't work in Alpine Linux container.
Currently, I have to override the downloaded version in my package.json. For more details see:
- https://github.com/lovell/sharp/issues/4054
- https://discord.com/channels/830184174198718474/1224861729792458803/1224861729792458803
This PR updates the version of the `sharp` dependency to `^0.33` and thus makes Astro compatible with Alpine Linux.
* update lock file
* add changelog
* Update packages/astro/package.json
* Update pnpm-lock.yaml
* ci: update check-merge.yml action (#10690)
* test(@astrojs/node) listen for server setup errors in test-utils (#10692)
* Add disableremoteplayback attribute to VideoHTMLAttributes interface (#10693)
* Add disableremoteplayback attribute to VideoHTMLAttributes interface
* Move disableremoteplayback from VideoHTMLAttributes to MediaHTMLAttributes
* Create olive-camels-greet.md
* Update packages/astro/astro-jsx.d.ts
---------
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
* test(@astrojs/node) wait for server listening in trailing-slash tests (#10694)
* test(@astrojs/node) wait for server listening in trailing-slash tests
* fix missing waitServerListen
* fix import statement
---------
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
* chore: add `test:citgm` command that would run tests without caching and `build:ci:no-cache` to skip caching for build as well (#10696)
* chore: add test:citgm command that would run tests without caching
* adding build ci with no cache
* chore: fix build:ci:no-cache test:citgm (#10698)
* Improve dev toolbar notification contrast on hover (#10657)
* fix(#10399, PLT-1786): improve notification contrast on hover
* chore: add changeset
* fix test:citgm --force flag not passed correctly (#10706)
* Skip prerender chunk in static output (#10695)
* Remove unused config in Vue JSX integration (#10687)
* Refactor MDX transformJSX handling (#10688)
* Fix vue-jsx change (#10716)
* Fix script inline with directRenderScript (#10686)
* Provide better messaging when renaming a table (#10600)
* Provide better messaging when renaming a table
* Update based on review
* [ci] format
* [ci] update lockfile (#10718)
Co-authored-by: matthewp <matthewp@users.noreply.github.com>
* Increase log severity when a page's `getStaticPaths` fails (#10707)
* [ci] release (#10680)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix: use just pnpm to run the build and tests in citgm (#10727)
* fix(devtool): do not trigger interaction check for `div` and `span` (#10719)
* fix(devtool): do not trigger interaction check for `div` and `span`
* add test
* add tests
* Rephrase changeset
* remove log
* add reference link
* Update .changeset/swift-coats-teach.md
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
---------
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
* fix: regression for astro attributes escaping (#10728)
* Fix db seeding when srcDir is root (#10720)
* ci: add ref when checking out the repository (#10733)
* fix(dev): break implicit rerouting loop (#10737)
* fix(dev): infinite implicit rerouting
* test adapter
* changeset
* [ci] format
* [ci] release (#10729)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix: Fixed errorOverlay theme toggle bug. (#10661)
* fix: save `localStorage.astroErrorOverlayTheme` when detected dark mode
* add changeset
* Fix theme toggle in ErrorOverlay
* update changeset
* [ci] format
* feat: add origin check for CSRF protection (#10678)
* feat: add origin check for CSRF protection
* add tests
* chore: documentation
* changeset and grammar
* chore: add casing check
* split function
* better naming
* make the whole object experimental
* remove unused type
* update changeset
* manually apply Sarah's suggestions
* Apply suggestions from code review
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* feat: upgrade the minimum Node.js maintainance LTS version (#10689)
* feat: upgrade the minimum Node.js maintainance LTS version
* chore: update minimum npm version
* chore: revert npm change
* chore: address Erika's feedback
* chore: apply further suggestions
* Update .changeset/empty-rules-type.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* [ci] format
* Accept common cookie attributes when deleting a cookie (#10671)
* Accept common cookie attributes when deleting a cookie
* Fix AstroCookieSetOptions IDE annotations
* Use AstroCookieSetOptions to construct AstroCookieDeleteOptions
* Update .changeset/shaggy-cats-film.md
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
---------
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
* feat(i18n): manual routing (#10193)
* feat(i18n): manual routing
* one more function
* different typing
* tests
* fix merge
* throw error for missing middleware
* rename function
* fix conflicts
* lock file update
* fix options, error thrown and added tests
* rebase
* add tests
* docs
* lock file black magic
* increase timeout?
* fix regression
* merge conflict
* add changeset
* chore: apply suggestions
* apply suggestion
* Update .changeset/little-hornets-give.md
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
* chore: address feedback
* fix regression of last commit
* update name
* add comments
* fix regression
* remove unused code
* Apply suggestions from code review
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* chore: update reference
* Update packages/astro/src/@types/astro.ts
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* chore: improve types
* fix regression in tests
* apply Sarah's suggestion
---------
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* [ci] format
* feat(toolbar): allow the user to change the placement (#10591)
* feat(toolbar): add `placement` to settings
* feat(toolbar): update `settings.placement` with `<select>`
* feat(toolbar): adjust position based on `settings.placement`
* test(toolbar): add a test case for `settings.placement`
* refactor(toolbar): extract select element from settings app
* feat(toolbar): allow select element to have colors
* test(toolbar): fix failed test case
* refactor(toolbar): add `placement` property to window element
* refactor(toolbar): notify apps when placement changes
* test(toolbar): fix failed test case
* refactor(toolbar): extract `synchronizePlacementOnUpdate` function
* chore: add changeset
* chore: update changeset
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Adds dataLanguage property to the replacement <pre> element. (#10538)
* Update highlight.ts
* Create cold-snakes-train.md
* Update Code.astro
Solution for use-case described in withastro/roadmap#276 (https://github.com/withastro/roadmap/discussions/276)
* roll-back initial fix
* new fix
* update changeset
* Update packages/markdown/remark/src/rehype-prism.ts
* Update .changeset/cold-snakes-train.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Update .changeset/cold-snakes-train.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Update .changeset/cold-snakes-train.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* Update .changeset/cold-snakes-train.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* [ci] format
* fix some i18n config docs (#10746)
* fix some i18n config docs
* Move manual option to last position
---------
Co-authored-by: = <otterlord.dev@gmail.com>
* [ci] format
* fix(rendering): remove render instructions from slot expressions (#10747)
* [ci] format
* Update a11y-no-noninteractive-tabindex rule for dev tool bar (#10750)
* fix: a11y-no-noninteractive-tabindex
* add changeset
* Update utils.ts: Optimize and simplify code (#10749)
Update utils.ts: Optimize and simplify code
* fix(cli): call path.replace only if it is a function (#10745)
* fix(cli): call `path.replace` only if it is a function
* add changeset
* fix: rewrite Node.js changeset (#10753)
* fix: rewrite Node.js changeset
* Update .changeset/empty-rules-type.md
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
* [ci] release (#10739)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix(i18n): fallback SSR (#10755)
* fix(i18n): fallback SSR
* Update .changeset/old-pugs-jog.md
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
---------
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
* [docs] config reference link fix (#10758)
* Limit imports in flight for `getCollection` (#10708)
* [ci] format
* Add useful links to `@astrojs/db` package.json (#10764)
Co-authored-by: Reuben Tier <64310361+TheOtterlord@users.noreply.github.com>
* Performance improvement in createAstro function (#10765)
* Fix typo in error message for IncorrectStrategyForI18n (#10768)
* fix(vercel): Fix srcset generation not working on Vercel (#10756)
* fix(vercel): Fix `srcset` generation not working on Vercel
* chore: changeset
* fix: remove densities and widths from the HTML attributes
* nit: better changeset
* nit: add formats
* [ci] format
* [ci] release (#10757)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix(add): Fixes astro add modifying baseUrl by accident (#10774)
* fix(add): Fixes `astro add` modifying `baseUrl` by accident
* chore: changeset
* test: add test
* fix: tsconfig not being a json maybe is a mistake, I don't know!
* test: fix
* Update packages/astro/test/fixtures/tsconfig-handling/baseUrl/tsconfig.json
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
---------
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* [ci] format
* Remove MDX processor on buildEnd (#10770)
* lint: upgrade eslint to version 9 (#10730)
* [ci] format
* fix: picture fallback check (#10783)
* Fix @types/cookie dependency (#10776)
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
* Make viewTransition.finished wait for animations triggered by viewTransition.ready (#10787)
* [ci] format
* fix(assets): Forward headers from the original request to the internal request to the image (#10775)
* [ci] format
* astro/cli/install-package.ts: whichPm may return null if ran in an empty directory (#10782)
* [ci] update lockfile (#10791)
Co-authored-by: matthewp <matthewp@users.noreply.github.com>
* Improve sitemap generate performance (#10795)
* Disable streaming for SSG (#10796)
* fix: use assetsDir in creating vite config (#10732)
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
* fix: MDX cannot find relative image path without leading ./ (#10754)
Co-authored-by: Oliver Speir <115520730+OliverSpeir@users.noreply.github.com>
* [ci] release (#10777)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* db: export 'alias' from drizzle-orm/sqlite-core (#10789)
* db: export 'alias' from drizzle-orm/sqlite-core
* chore: changeset
* fix: changeset target
---------
Co-authored-by: Ben Holmes <hey@bholmes.dev>
* chore: use Biome to format JS files (#10788)
* chore: configuration
* chore: update main commands
* chore: revert formatting package.json
* chore: rebase
* [ci] format
* Fixes an issue with persisted non-text input fields that have the focus during view transition navigation. (#10799)
* Fixes an issue with persisted non-text input fields that have the focus during view transition navigation.
* better check
* [ci] format
* test: fix regression upon import sorting (#10802)
* fix(sitemap): Trailing slashes on root url (#10772)
* add tests that reveal issue
* fix trailing slash root page issue
* add changeset
* [ci] format
* optimization(runtime): create smaller objects for each Astro global (#10773)
* optimization(runtime): create smaller objects for each Astro global
* add changeset
* Make slots lazy
---------
Co-authored-by: bluwy <bjornlu.dev@gmail.com>
* add/cli: update list of integrations (#10811)
* Invalidate CC cache manifest when lockfile or config changes (#10763)
* Invalidate CC cache manifest when lockfile or config changes
* Close the handle and increment manifest version
* debug info
* Provide a reason for cache busting
* Handle compile metadata missing
* Try it this way
* Copy over cached assets as well
* Only restore chunks when cache is valid
* Better handle invalid caches
* Explain when there is no content manifest
* Add tests
* debugging
* Remove debugging
* Update packages/astro/src/core/build/plugins/plugin-content.ts
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* Update packages/astro/src/core/build/plugins/plugin-content.ts
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* Review comments
* Add chunks path constant
---------
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* [ci] format
* [ci] release (#10798)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fixed the path to checkout existing blog posts on the home page of the blog starter template (#10814)
Currently the 4th point on home page says: "Check out the included blog posts in src/pages/blog/". It the path here should be "src/content/blog/".
* Update packages/astro/package.json
* Update pnpm-lock.yaml
* update sharp version in examples/starlog and update pnpm-lock.yaml
---------
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
Co-authored-by: Emanuele Stoppa <my.burning@gmail.com>
Co-authored-by: Raz Luvaton <16746759+rluvaton@users.noreply.github.com>
Co-authored-by: apetta <akshaypetta@gmail.com>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
Co-authored-by: Matthew Phillips <matthewp@users.noreply.github.com>
Co-authored-by: Houston (Bot) <108291165+astrobot-houston@users.noreply.github.com>
Co-authored-by: horo <143025439+horo-fox@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Florian Lefebvre <contact@florian-lefebvre.dev>
Co-authored-by: Arsh <69170106+lilnasy@users.noreply.github.com>
Co-authored-by: Arsh <lilnasy@users.noreply.github.com>
Co-authored-by: liruifengv <liruifeng1024@gmail.com>
Co-authored-by: liruifengv <ematipico@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Co-authored-by: Farzad <frzd.shafiee@gmail.com>
Co-authored-by: Ming-jun Lu <40516784+mingjunlu@users.noreply.github.com>
Co-authored-by: 604qgc <130194823+604qgc@users.noreply.github.com>
Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
Co-authored-by: = <otterlord.dev@gmail.com>
Co-authored-by: Sarah Rainsberger <TheOtterlord@users.noreply.github.com>
Co-authored-by: Oliver Speir <115520730+OliverSpeir@users.noreply.github.com>
Co-authored-by: aswind7 <854413241@qq.com>
Co-authored-by: horo <bluwy@users.noreply.github.com>
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
Co-authored-by: Reuben Tier <64310361+TheOtterlord@users.noreply.github.com>
Co-authored-by: Leander Gilles <leander.gilles@pm.me>
Co-authored-by: Erika <Princesseuh@users.noreply.github.com>
Co-authored-by: Jason <m.jason.liu@outlook.com>
Co-authored-by: Juraj Kapsz <github@jurajkapsz.sk>
Co-authored-by: Martin Trapp <94928215+martrapp@users.noreply.github.com>
Co-authored-by: Meghan Denny <hello@nektro.net>
Co-authored-by: Rishi Raj Jain <rishi18304@iiitd.ac.in>
Co-authored-by: Nick Dubelman <ndubelman@gmail.com>
Co-authored-by: Ben Holmes <hey@bholmes.dev>
Co-authored-by: Robin Gisler <63500142+gislerro@users.noreply.github.com>
Co-authored-by: Avinash Reddy <avinashreddy3108+github@gmail.com>
Co-authored-by: Damanjeet Singh <49544630+DamanjeetSingh1@users.noreply.github.com>
* Invalidate CC cache manifest when lockfile or config changes
* Close the handle and increment manifest version
* debug info
* Provide a reason for cache busting
* Handle compile metadata missing
* Try it this way
* Copy over cached assets as well
* Only restore chunks when cache is valid
* Better handle invalid caches
* Explain when there is no content manifest
* Add tests
* debugging
* Remove debugging
* Update packages/astro/src/core/build/plugins/plugin-content.ts
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* Update packages/astro/src/core/build/plugins/plugin-content.ts
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* Review comments
* Add chunks path constant
---------
Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
* optimization(runtime): create smaller objects for each Astro global
* add changeset
* Make slots lazy
---------
Co-authored-by: bluwy <bjornlu.dev@gmail.com>
* fix(add): Fixes `astro add` modifying `baseUrl` by accident
* chore: changeset
* test: add test
* fix: tsconfig not being a json maybe is a mistake, I don't know!
* test: fix
* Update packages/astro/test/fixtures/tsconfig-handling/baseUrl/tsconfig.json
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
---------
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* fix(vercel): Fix `srcset` generation not working on Vercel
* chore: changeset
* fix: remove densities and widths from the HTML attributes
* nit: better changeset
* nit: add formats
* feat(toolbar): add `placement` to settings
* feat(toolbar): update `settings.placement` with `<select>`
* feat(toolbar): adjust position based on `settings.placement`
* test(toolbar): add a test case for `settings.placement`
* refactor(toolbar): extract select element from settings app
* feat(toolbar): allow select element to have colors
* test(toolbar): fix failed test case
* refactor(toolbar): add `placement` property to window element
* refactor(toolbar): notify apps when placement changes
* test(toolbar): fix failed test case
* refactor(toolbar): extract `synchronizePlacementOnUpdate` function
* chore: add changeset
* chore: update changeset
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
---------
Co-authored-by: Erika <3019731+Princesseuh@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>