0
Fork 0
mirror of https://github.com/withastro/astro.git synced 2025-02-03 22:29:08 -05:00
Commit graph

66 commits

Author SHA1 Message Date
Bjorn Lu
21aa25c85d
Fix biome correctness checks (#12929) 2025-01-08 21:15:18 +08:00
Florian Lefebvre
51ced3dba8 [ci] format 2024-12-11 15:02:16 +00:00
Emanuele Stoppa
2da81e53c3 Merge branch 'main' into next 2024-11-27 14:31:09 +00:00
Emanuele Stoppa
8b0e36ca91
chore: fix linting warnings (#12526) 2024-11-26 13:06:04 +00:00
Houston (Bot)
a9ce785146
[ci] release (beta) (#12430)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-11-21 12:45:51 +00:00
bluwy
a393154906 Merge branch 'main' into next 2024-10-15 16:19:58 +08:00
Bjorn Lu
64bb796c0f
Use real filesystem for unit testing (#12172) 2024-10-15 15:34:42 +08:00
Erika
cfa6a47ac7
feat: remove the squoosh image service (#11770)
* feat: remove the squoosh image service

* fix: build

* chore: changeset
2024-08-20 15:12:48 +02:00
Bjorn Lu
1fd84b6bbc
Remove unused code in internal scripts (#11769) 2024-08-20 18:25:04 +08:00
Bjorn Lu
849e4c6c23
Use node parseArgs instead of yargs-parser and arg (#11645)
* wip

* done

* Add changeset

* Format

* Update

* Fix houston

* Fix test

* Fix test
2024-08-14 11:05:50 +01:00
Viktor Szépe
a146cf1012
Fix typos (#10923) 2024-05-01 13:56:38 +08:00
Bjorn Lu
237e17c8fe
Update major deps (#10823) 2024-04-20 00:11:20 +08:00
Emanuele Stoppa
440681e7b7
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>
2024-04-10 15:38:17 +01:00
Nate Moore
123f6f8551 [ci] format 2024-03-07 18:16:14 +00:00
Nate Moore
2aec2cdc21
Adds create-astro fallback values for package versions (#10255)
* fix(create-astro): add fallback when registry fails to return the current package version

* feat(create-astro): inline most current package versions as fallback

* test(create-astro): update typescript tests to check for undefined

* test(create-astro): properly reset fixtures

* refactor: read dependencies from workspace root

* refactor: error on missing values
2024-03-07 12:14:48 -06: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
Emanuele Stoppa
a006d44993
ci: increase node timeout (#10089) 2024-02-12 13:52:29 +00:00
Erika
31e2a777b2
test: increase timeout (#10054) 2024-02-08 11:32:59 +01:00
Bjorn Lu
432c170554
Exit code 1 if node:test fail (#9928) 2024-02-01 23:47:13 +08:00
Emanuele Stoppa
fc21a3c306
chore(@astrojs/node): use Node.js for testing (#9758)
* chore(@astrojs/node): use Node.js for testing

* revert file

* address feedback

* feedback

* Run tests in a single process (#9823)

* Run tests in a single process

* Make test less flaky

* chore: remove module

---------

Co-authored-by: Bjorn Lu <bjornlu.dev@gmail.com>
2024-01-25 16:17:31 +00:00
Bjorn Lu
71db79e62a
Use node:test and node:assert/strict (#9649) 2024-01-12 15:53:00 +08:00
Luiz Ferraz
b34bd2b2d9
Enable source map on dev builds (#9465)
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-12-27 14:36:29 -05:00
Houston (Bot)
a171c22f37 [ci] format 2023-12-27 17:38:12 +00:00
Nate Moore
3e1239e42b
Content Collection cache (experimental) (#8854)
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2023-11-09 09:55:29 -06:00
Erika
d0679a666f Remove support for Node 16 (#7780) 2023-08-08 11:01:33 +01: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
Ben Holmes
7877a06d82
Fix up pnpm dev (#7424)
* feat: use persistent per turbo recs

* feat: preserve types yay

* fix: *actually* solve problem

* fix: type failures from content types template

* fix: bad JS doc comments

* fix: bad src/content/template path

* chore: changeset

---------

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2023-06-20 14:06:36 -04:00
Bjorn Lu
d72cfa7cad
Fix nested astro-island hydration race condition (#7197) 2023-06-06 17:39:25 +08:00
Bjorn Lu
73ec6f6c16
Implement custom client directives (#7074)
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-05-17 20:51:27 +08:00
bholmesdev
0344465dea [ci] format 2023-03-20 23:39:00 +00:00
Nate Moore
c9ad4a6b78
fix: refactor esbuild setup to support watch (#6608) 2023-03-20 19:36:18 -04: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
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
Nate Moore
8d2187d8b8
Refactor create-astro (#6082)
* refactor: new version of create-astro

* chore: update README

* fix(create-astro): update project name logic

* test(create-astro): fix test on windows

* test(create-astro): fix test on windows

* test(create-astro): remove unused import

* chore: remove log

* chore: increase test timeout

* fix: message when skipping

* fix: message for env.d.ts file

* fix: always hard exit

* fix: return from next-steps

* chore: add message

* refactor dependencies, bundle create-astro

* chore: disable create-astro typings

* chore: switch to arg

* chore: update message

* fix: split typescript into two steps, fix context test

* chore: update wording

* chore: update wording

* Update packages/create-astro/src/actions/dependencies.ts

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

* refactor: move tests back to mocha/chai

* chore: update cli-kit

* update test script

* chore: add comment about setStdout

* chore: update cli-kit

* Update packages/create-astro/src/messages.ts

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

* Update packages/create-astro/src/messages.ts

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

* chore: update lockfile

* fix(create-astro): support scoped package names, improve project-name tests

* better git initialization

* update cli-kit

---------

Co-authored-by: Nate Moore <nate@astro.build>
Co-authored-by: Yan Thomas <61414485+Yan-Thomas@users.noreply.github.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-02-06 10:19:37 -06:00
Michael Rienstra
7481ffda02
create-astro: always create tsconfig.json (#4810)
* `create-astro`: always create `tsconfig.json`

Currently, we only make sure `tsconfig.json` exists when `strict` or `strictest` is selected. Both `default` & `optout` are intended to correspond to `base` -- and will do so for all [23 official templates](https://github.com/withastro/astro/tree/main/examples), but not necessarily for third-party templates.

The [example command for installing a third-party template](https://github.com/withastro/astro/blob/a800bf7/packages/create-astro/README.md?plain=1#L31-L35) is (rather conveniently for the sake of this PR!) an example of a template without a `tsconfig.json` file, and installing it with the `default` ("Relaxed") Typescript option results in no `tsconfig.json` file, rather than a `tsconfig.json` file containing `{ "extends": "astro/tsconfigs/base" }` as would be expected.

This PR addresses this scenario. 

It also explicitly sets the `tsconfig.json` file to `{ "extends": "astro/tsconfigs/base" }` when `default` (which I renamed to `base`, still presented to the user as "Relaxed") or `optout` is selected (`optout` has always printed a warning about the importance of `tsconfig.json` & `src/env.d.ts` but otherwise behaved identically to `default`). This is necessary in two scenarios:

1. When the `tsconfig.json` file was created by this script.
2. When it either didn't already include `"extends"`, or it extended a different config by default. For example, some third-party templates might default to `strict`, in which case I'm guessing we'd want to respect the user's choice and change that to `base`.

* update `del` 6.1.1 --> 7.0.0

* test: prevent excess writes
(without this it triggers many times)

* test: create-astro typescript prompt

* changeset

* fix: recursive `mkdirSync`

* test: longer timeout for `windows-latest` OS
(see if this fixes failing tests)

* better glob path creation, don't hardcode `/`

* test: longer timeout for windows-latest OS
(since I'm about to trigger another CI run by pushing a commit, might as well try this too)

* create-astro test: show last CLI output on timeout

* drop variable timeout
Typescript tests are slower than directory tests, but they are all usually less than 5000 ms. Less complexity, easier to maintain.

* DRY new error output

* Update lockfile

* Sync lockfile with main

* Update lockfile

Co-authored-by: Princesseuh <princssdev@gmail.com>
2022-09-22 14:37:01 -04:00
Erika
f9ed77bb0d
Add editor integrations to language integrations (#3864) 2022-07-08 17:47:01 -04:00
Nate Moore
199fd91e8f
chore: escape template literals in prebuild script (#3745)
Co-authored-by: Nate Moore <nate@astro.build>
2022-06-28 10:54:59 -05:00
Ben Holmes
fb9ef4019b
Fix: prevent sourcemap warnings in monorepo "dev" mode (#3744)
* fix: avoid esbuild sourcemaps in astro-scripts dev

* chore: changeset
2022-06-28 10:20:21 -04:00
matthewp
f6cdf1202e [ci] format 2022-06-16 13:55:54 +00:00
Matthew Phillips
4916b733c2
Inline hydration directive scripts (#3605)
* Inline hydration scripts

* Adds a changeset

* Update directiveAstroKeys type
2022-06-16 09:54:09 -04:00
matthewp
f1f207839a [ci] format 2022-06-15 12:52:13 +00:00
Matthew Phillips
fc52321a88
Consolidate hydration scripts into just one (#3571)
* Remove redundant hydration scripts

* Prebuild the island JS

* Fix build

* Updates to tests

* Update more references

* Custom element test now has two classic scripts

* Account for non-default exports

* Restructure hydration directives

* Move nested logic into the island component

* Remove try/catch
2022-06-15 08:50:05 -04:00
Fred K. Schott
1335797903
update prettier width (#2968) 2022-04-02 14:15:41 -06:00
Fred K. Schott
6386c14d00
Astro Integration System (#2820)
* update examples

* add initial integrations

* update tests

* update astro

* update ci

* get final tests working

* update injectelement todo

* update ben code review

* respond to final code review feedback
2022-03-18 15:35:45 -07:00
Nate Moore
9e59ec921f
Disable sourcemaps for build (#2806)
* fix: disable sourcemaps for build

* chore: add changeset
2022-03-15 19:25:24 -05:00
Fred K. Schott
240d88aefe
fix format (#2736) 2022-03-08 15:20:04 -08:00
Ben Holmes
0ae96bb749
Fix/2177/log missing local network ip (#2732)
* feat: show "localhost" for local network IPs

* refactor: remove timestamps from addr logs

* fix: hide timestamp on null types

* feat: add emoji OS helper

* feat: make logs 100% nicer

* refactor: extract isLocalHost to util

* feat: update preview logs to match

* chore: add changeset

* fix: pull pkg version from package.json

* refactor: remove 👉 guys

* fix: devStart return type

* feat: inject process.env.PACKAGE_VERSION at build time

* feat: update unit test for hostname checks

Co-authored-by: Nate Moore <nate@skypack.dev>
2022-03-08 17:11:18 -05:00
Jonathan Neal
6ddd7678ff
Use accessible indentation (#2253) 2021-12-22 16:11:05 -05:00
Jonathan Neal
45cea6aec5
Support Node v14.15+ (#2202)
* Support Node v14.15+

* changeset

* Update .changeset/new-hats-design.md

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>

* Update .changeset/new-hats-design.md

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>

* Update .changeset/new-hats-design.md

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>

* ES2020

* update yarn.lock

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2021-12-16 18:53:22 -05:00
Jonathan Neal
c3db1eb4ef
Upgrade dependencies (#2085)
* yarn upgrade

* yarn upgrade --latest yargs-parser

* yarn upgrade --latest mime

* yarn upgrade --latest execa

* yarn upgrade --latest globby

* yarn upgrade --latest @docsearch/react

* yarn upgrade --latest es-module-lexer

* yarn upgrade --latest fast-xml-parser

* yarn upgrade --latest @astrojs/compiler @astrojs/language-server

* yarn upgrade --latest acorn

* clean yarn.lock

* chore: put `@docsearch/react` back to v1

* chore: remove unused @snowpack/plugin-dotenv

* Update yarn.lock

* Patch tests based on newer versions of tooling

* remove lerna

* Update yarn.lock

* Update yarn.lock

* Pin @sveltejs/vite-plugin-svelte

* update yarn.lock
2021-12-13 15:59:08 -05:00