Commit graph

5209 commits

Author SHA1 Message Date
Tony Sullivan
e8593e7ead
Adds an @astrojs/image integration for optimizing images (#3694)
* initial commit

* WIP: starting to define interfaces for images and transformers

* WIP: basic sharp service to test out the API setup

* adding a few tests for sharp.toImageSrc

* Adding tests for sharp.parseImageSrc

* hooking up basic SSR support

* updating image services to return width/height

* simplifying config setup for v1

* hooking up basic SSR + SSG support (dev & build)

* refactor: a bit of code cleanup and commenting

* WIP: migrating local files to ESM + vite plugin

* WIP: starting to hook up user-provided loaderEntryPoints

* chore: update lock file

* chore: update merged lockfile

* refactor: code cleanup and type docs

* pulling over the README template for first-party integrations

* moving metadata out to the loader

* updating the test for the refactored import

* revert: remove unrelated webapi formatting

* revert: remove unrelated change

* fixing up the existing sharp tests

* fix: vite plugin wasn't dynamically loading the image service properly

* refactor: minor API renaming, removing last hard-coded use of sharp loader

* don't manipulate src for hosted image services

* Adding support for automatically calculating dimensions by aspect ratio, if needed

* a few bug fixes + renaming the aspect ratio search param to "ar"

* Adding ETag support, removing need for loaders to parse file metadata

* using the battle tested `etag` package

* Adding support for dynamically calculating partial sizes

* refactor: moving to the packages/integrations dir, Astro Labs TBD later

* refactor: renaming parse/serialize functions

* Adding tests for SSG image optimizations

* refactor: clean up outdated names related to ImageProps

* nit: reusing cached SSG filename

* chore: update pnpm lock file

* handling file URLs when resolving local image imports

* updating image file resolution to use file URLs

* increasing test timeout for image build tests

* fixing eslint error in sharp test

* adding slash for windows compat in src URLs

* chore: update lockfile after merge

* Adding README content

* adding a readme call to action for configuration options

* review: A few of the quick updates from the PR review

* hack: adds a one-off check to allow query params for the _image route

* Adds support for src={import("...")}, and named component exports

* adding SSR tests

* nit: adding a bit more comments

* limiting the query params in SSG dev to the images integration
2022-07-01 15:47:48 +00:00
Fred K. Bot
0f73ece26b
[ci] release (#3783)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-07-01 03:09:17 +00:00
tony-sull
a2b385303c [ci] format 2022-07-01 02:32:07 +00:00
Tony Sullivan
976e1f175a
Adding an option to disable HTTP streaming (#3777)
* Adding a flag to disable HTTP streaming

* refactor: adding support for SSG builds

* handling string responses in the server runtime, adding tests

* removing streaming CLI flag

* removing import.meta.env.STREAMING

* include Content-Length header when streaming is disabled

* Verifying content-length header in dev

* fix: default streaming to enabled in the base App server

* TEMP: disabling the production test to investigate the test-adapter

* re-enabling the test with an adapter option to disable streaming for the test

* fix: use the existing TextEncoder to get the body's byte length

* moving config to build.streaming, ignoring it in `dev`

* fixing dev test to expect response streaming

* chore: add changsets

* removing the new config option all together 🎉

* remove temp debug log

* Updating astro changeset now that streaming isn't a config option
2022-07-01 02:29:59 +00:00
Nate Moore
f9290b328a
CI: Prefer per-job cache rather than artifact I/O (#3781)
* chore(ci): prefer per-job cache rather than artifact io

* chore: update cache step

* chore: fix cache key

* chore(ci): build on windows as well

* chore(ci): enable remote cache

* chore: run build on all three platforms

* chore: prefer turbo to custom caching logic

* chore: build AFTER install

* chore: build on node 14

* chore: remove build, parallelize tasks

* chore: update cache

* chore: prime build caches

* chore: fix indentation

* chore(ci): only build on ubuntu

* chore(ci): changelog needs build

* chore(ci): ignore updates to md files

* chore(ci): add 20 min timeout for e2e tests

* chore(ci): enable FORCE_COLOR

* chore: run turbo with `--output-logs=new-only`

Co-authored-by: Nate Moore <nate@astro.build>
2022-06-30 16:26:37 -05:00
Fred K. Bot
d07ad8a782
[ci] release (#3774)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-30 11:39:44 -07:00
Fred K. Schott
bf44b2ab88
Ci: improve times, reduce delay (#3780)
* improve CI times

* improve CI times
2022-06-30 11:21:41 -07:00
Fred K. Schott
192c4bcfd6
await error reporter (#3779) 2022-06-30 11:17:32 -07:00
natemoo-re
af23bdd515 [ci] format 2022-06-30 18:11:12 +00:00
Nate Moore
032ad1c047
MDX support (#3706)
* feat: first pass at MDX support

* fix: move built-in JSX renderer to come first

* chore: remove jsx example

* chore: update lockfile

* chore: cleanup example

* fix: missing deps

* refactor: move component render logic to `renderPage`

* chore: update HMR script

* chore: update MDX example

* refactor: prefer unshit

* refactor: remove TODO comment

* fix: remove duplicate identifier

* refactor: cleanup mdx entrypoint

* fix: better html handling

* fix: add tsconfig to mdx package

* chore: update lockfile

* fix: do not sort plugins unless mdx is enabled

* chore: update compiler

* fix(hmr): maybe render head for non-Astro pages

* fix: set initial pageExtensions

* refactor: cleanup addPageExtension

* refactor: remove addPageExtensions from types

* refactor: expose HookParameters type

* fix: only default to astro for MDX

* test: pick up jsx support in test fixtures

* refactor: simplify mdx entrypoint

* test: add basic MDX tests

* test(e2e): add mdx + framework tests

* chore: update lockfile

* test(e2e): fix preact mdx e2e test

* fix(mdx): disable .md support

* test(e2e): fix vue-component test missing mdx

* test(e2e): fix solid component needing import

* fix: allow `client:only="solid"` as an alias to `solid-js`

* chore: move to with-mdx example

* chore: update MDX readme

* chore: update example readme

* chore: bump astro version

* chore: update lockfile

* Update mod.d.ts

* feat: support `export const components` in MDX pages

* chore: update mdx example

* fix: update jsx-runtime with better slot support

* refactor: remove object style support

* chore: cleanup package exports

* chore: add todo comment

* refactor: improve isPage function, move to utils

* refactor: dry up manual HMR updates

* chore: add dev tests for MDX

* chore: prefer set to array

* chore: add changesets

* fix(hmr): flip public/private route

Co-authored-by: Nate Moore <nate@astro.build>
2022-06-30 13:09:09 -05:00
hippotastic
91635f05df
Fix integration name (prefetch instead of lit) (#3778) 2022-06-30 12:53:01 -05:00
Fred K. Bot
d137169b7b
[ci] update lockfile (#3771)
Co-authored-by: FredKSchott <FredKSchott@users.noreply.github.com>
2022-06-30 11:22:18 -05:00
Dan Jutan
8045c8ade1
Integration Docs Next Steps (#3677)
* sitemap readme skeleton + first sections

* Revert "sitemap readme skeleton + first sections"

This reverts commit cc55b312b6.

* sitemap readme skeleton + first sections

* remove canonicalURL option from sitemap

* add customPages option to readme

* sitemap examples

* partytown

* deno run command

* reference deno example

* node readme

* netlify & vercel readmes

* note that telemetry is installed

* telemetry is *enabled*, not installed

* Update packages/integrations/vercel/README.md

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

* Update packages/integrations/vercel/README.md

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

* readme -> README

* Update packages/integrations/deno/readme.md

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

* Update packages/integrations/deno/readme.md

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

* qualify they

* Update packages/integrations/sitemap/README.md

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

* Uppercase README names

* Update packages/integrations/partytown/README.md

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

* imports -> import typo

* update changeset

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2022-06-30 12:02:39 -04:00
tony-sull
75ffab7009 [ci] format 2022-06-30 14:18:38 +00:00
Fred K. Schott
913591d137
refactor to provide better cli error handling (#3768) 2022-06-30 14:16:39 +00:00
Fred K. Bot
8cbe92b74b
[ci] release (#3772)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-30 08:08:09 -05:00
Isaac McFadyen
3a13f7d428
Added Cloudflare adapter to README.md (#3773) 2022-06-30 08:07:39 -05:00
hippotastic
40fa87c274 [ci] format 2022-06-30 12:12:27 +00:00
hippotastic
b934ab5d86
Fix "Invalid hook call" warning (#3769)
* Fix "Invalid hook call" warning

* Fix eslint warnings

* Apply code review suggestions
2022-06-30 14:10:56 +02:00
Fred K. Bot
38f2fd7723
[ci] release (#3759)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-29 17:11:48 -05:00
FredKSchott
a99a54d344 [ci] format 2022-06-29 21:56:28 +00:00
Fred K. Schott
4bc6c7ceaa
manual lockfile update (#3751)
* lockfile update

* update lockfile gen script

* Update index.ts
2022-06-29 14:54:40 -07:00
Fred K. Schott
dd176ca58d
add error event to telemetry (#3750) 2022-06-29 14:54:33 -07:00
Tony Sullivan
1eab496e9d
adding missing changeset for #3766 (#3767) 2022-06-29 21:25:54 +00:00
tony-sull
2f7d918912 [ci] format 2022-06-29 20:58:19 +00:00
Tony Sullivan
51d5dc4789
Updates an error handler to expect updated @astrojs/lit behavior (#3766)
* fix: don't throw an error when the lit renderer doesn't provide a clientEntrypoint

* updating the framework-lit example to match new behavior

* fix: updating the playground example to latest lit syntax
2022-06-29 20:56:51 +00:00
delucis
e667477103 [ci] format 2022-06-29 15:48:55 +00:00
Chris Swithinbank
e3fdc9b403
Add preact/compat support to @astrojs/preact (#3712)
* Add preact/compat renderer (likely broken)

Based on the current Preact renderer and the old preact/compat implementation: f892aeb52f/packages/renderers/renderer-preact/compat/index.js

* Make sure name is consistent

* Switch to single integration with compat option

* fix: add module-resolver to alias react => preact/compat

* fix: preact/compat mode

* chore: remove client-compat entrypoint

* chore: add e2e test for preact/compat

* Try to fix frozen lock file error

* Add changeset

* Update README to new structure & document `compat`

* Fix changeset wording

* Fix README typo

* Tweak wording

Co-authored-by: Kevin Zuniga Cuellar <46791833+kevinzunigacuellar@users.noreply.github.com>

Co-authored-by: Nate Moore <nate@astro.build>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Kevin Zuniga Cuellar <46791833+kevinzunigacuellar@users.noreply.github.com>
2022-06-29 17:42:47 +02:00
Tony Sullivan
54cd6b8dd1
Fixes a bug in how injectRoute parses route patterns on Windows (#3763)
* always remove a leading slash in the `injectRoute` pattern

* chore: add changeset
2022-06-29 09:46:23 -05:00
Erika
40be96d7c8
Improve types for getStaticPaths, fixes dead links (#3755) 2022-06-29 09:43:52 -05:00
Sarah Rainsberger
aaf0cd8bfc
Added: reminder to also update docs if create-astro flow or wording is changed (#3760) 2022-06-29 11:10:20 -03:00
Ben Holmes
660abd3dee
Chore: remove memory test from CI (#3758)
* chore: remove memory test

* chore: remove memory test from ci

* chore: changeset

* Revert "chore: remove memory test"

This reverts commit 31b97c9df9.

* chore: update changeset to say "CI only"

Co-authored-by: bholmesdev <bholmesdev@gmail.com>
2022-06-28 15:47:21 -04:00
Fred K. Bot
789dc1fabc
[ci] release (#3757)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-28 11:02:59 -07:00
Fred K. Bot
b0c1ed1513
[ci] release (#3754)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-28 10:49:15 -07:00
Ben Holmes
507cd5c868
Chore: remove complex install step test (#3756)
* chore: remove complex install step test

* chore: changeset
2022-06-28 13:46:54 -04:00
Fred K. Schott
cabd9dcc80
anonymize non-git project id (#3753) 2022-06-28 10:29:24 -07:00
Rychardt Rothwërkz
0cf0b2e2d0 improve performance by adding another preconnect (#3737)
* improve performance by adding another preconnect

This is the code Google Fonts officially provides.

The reason for adding a secound url is that the link:
https://fonts.googleapis.com/css2?family=Inter:wght@100&display=swap

lists src urls like this:
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v11/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyeAZ9hiA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

so for better performance both urls needs to be preconnected.

* Update examples/portfolio/src/components/MainHead.astro

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-06-28 10:13:06 -07:00
Fred K. Bot
be3c99316a
[ci] release (#3749)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-28 19:00:40 +02:00
Chris Swithinbank
012f093eeb
Add changeset to release create-astro (#3748) 2022-06-28 18:41:47 +02: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
Nate Moore
8829cc7ab6
Disable problematic create-astro test (#3746)
* chore(test): disable problematic create-astro test

* chore: fix skip

Co-authored-by: Nate Moore <nate@astro.build>
2022-06-28 10:24:54 -05:00
Fred K. Bot
a59a27eb0c
[ci] release (#3733)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2022-06-28 15:11:59 +00: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
bholmesdev
855b1daba9 Revert "chore: remove memory test from ci"
This reverts commit 3f79a6e73f.
2022-06-28 10:06:02 -04:00
bholmesdev
3f79a6e73f chore: remove memory test from ci 2022-06-28 10:00:33 -04:00
natemoo-re
27d8c351bb [ci] format 2022-06-28 13:40:53 +00:00
Nate Moore
53bf0be280
chore(lint): fix lint issues (#3743)
Co-authored-by: Nate Moore <nate@astro.build>
2022-06-28 08:39:10 -05:00
Fred K. Bot
768c8ed21d
[ci] update lockfile (#3740)
Co-authored-by: FredKSchott <FredKSchott@users.noreply.github.com>
2022-06-28 08:33:13 -05:00
Victor
6360f474fb
Fix Tailwind integration Typescript warning (#3732)
* Make options optional

* chore: add changeset

Co-authored-by: Tony Sullivan <tony.f.sullivan@outlook.com>
2022-06-28 07:49:08 -05:00
bholmesdev
efd6548d49 [ci] format 2022-06-27 21:22:26 +00:00