Commit graph

97 commits

Author SHA1 Message Date
Bjorn Lu
77270cc2cd
Avoid removing leading slash for build.assetsPrefix (#6969)
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2023-05-02 14:13:44 -04:00
Bjorn Lu
ff04307863
Add build.assetsPrefix option for CDN support (#6714)
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2023-04-05 21:31:17 +08:00
Erika
46ecf46628
Remove unnecessary image-related .wasm files inside build output when possible (#6701)
* fix(image): Remove unnecessary .wasm files after build

* chore: changeset
2023-03-30 20:57:57 +02:00
Kilian Gosewisch
386336441a
Fix image regeneration after changing image service (#6680) 2023-03-28 14:59:01 +02:00
matthewp
0c8c5fc919 [ci] format 2023-03-23 16:03:49 +00:00
Matthew Phillips
4685f55549
Change how squoosh is loaded in the image integration (#6548)
* WIP fix image integration in Netlify

* Add a changeset

* Try another way

* Get the chunks folder

* try inlining

* deep sigh

* fix some things

* more

* Remove some stuff

* remove unused imports

* Add changeset

* remove unused --copy-wasm

* Remove unused post:build
2023-03-23 12:01:27 -04:00
Erika
1e7d6af412
feat(all): Migrate to TypeScript 5.0 (#6579) 2023-03-20 17:02:07 +01:00
Erika
c44aa15534
fix: Enforce the usage of type imports when possible (#6502) 2023-03-10 16:19:57 +01:00
Vincent Tavernier
e58a92527f
[@astrojs/image] Handle missing trailing slash in processStaticImage (#6421)
The code path changed by this commit isn't only taken when running using Vite. If the site is configured with a base url which is different from `/` but does **not** end with `/` (for example, because `trailingSlash` is set to `never`), the `- 1` results in an off-by-one error when truncating the URL.

By checking if the base url ends with `/`, we can determine the right length for the prefix to truncate.
2023-03-07 13:00:34 -05:00
ematipico
377530a810 [ci] format 2023-03-07 13:43:21 +00:00
Emanuele Stoppa
fe88f89512
chore: use directive @ts-expect-error instead of @ts-ignore (#6429) 2023-03-07 13:41:24 +00:00
Nate Moore
504c7bacb8
Use getSetCookie, if available (#6347)
* fix: use getSetCookie, if available

* fix: explicitly use entries

* fix(image): be defensive on node@18.14.1

* chore: update changeset

* ci: skip test in 18.14.1
2023-02-23 13:41:00 -06:00
Gérald Gounot
ac3649bb58
Add support for SVG images to  @astrojs/image (#6118)
* @astrojs/image: add support for SVG images

* @astrojs/image: add tests for SVG images

* @astrojs/image: update README.md with SVG format info

* Add minor changeset for @astrojs/image
2023-02-15 09:21:41 +01:00
matthewp
43ec7f374a [ci] format 2023-01-30 20:31:49 +00:00
Alexey Shmalko
b3e65991f7
fix(image): allow usage of image from any directory (#5932)
Currently, @astrojs/image allows *importing* images from srcDir
only. Importing images from outside srcDir fails miserably *in dev
mode* and produces incorrect src.

This happens because `path.relative(fileURLToPath(config.srcDir), id)`
resolves to "../something" and when joined with '/@astroimage' cancels
it out (`join('/@astroimage', '../../something')` => `'/something'`).

Rework /@astroimage URL scheme to be similar to "/@fs/" scheme—always
export absolute path to the target file.
2023-01-30 15:29:41 -05:00
Renato Lacerda
ca91976edb
Fix GetPictureResult interface (#5894) 2023-01-30 15:29:03 -05:00
Caleb Jasik
9c298aa5ae
@astrojs/image: Allow passing undefined to transform options (#6008)
* Allow passing `undefined` to transform options

This fixes #6001, allowing undefined passed as a variable in addition to not passing the property at all

* Create strange-olives-rest.md

* Improve error message for missing `widths` prop

* Add changeset
2023-01-27 18:05:00 +01:00
Erika
35b26f377f
Fix image integration crash on Netlify Functions due to import.meta.url (#5888)
* fix(image): Fix immediate crash on Netlify functions due to `import.meta.url`

* chore: changeset
2023-01-19 14:04:15 +01:00
Erika
1bd42c6b2a
Fix image integration not working on Node 18+ (#5871)
* fix(image): Remove unnecessary polyfill now that we dropped Node 14

* fix(squoosh): Remove fetch of local wasm binary since undici doesn't support that

* chore: changeset
2023-01-17 15:48:06 +01:00
natemoo-re
cb5dbcc51f [ci] format 2023-01-09 16:03:47 +00:00
Nate Moore
f8f4d49aba
Output assets to _astro directory (#5772)
* WIP: emit assets to _astro

* chore: better _astro handling

* refactor: emit server assets to `chunks/`

* chore: update /asset tests

* test: add explicit build output tests

* fix: update image to emit to configured asset path

* chore: update changeset

* chore: update image tests

* chore: update image tests

* test: update css test

* test: update bundling test

* test: update tests

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

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

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

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

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

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

* chore: add clarifying comment

Co-authored-by: Nate Moore <nate@astro.build>
Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2023-01-09 10:01:33 -06:00
wulinsheng123
9963c6e4d5
feat: change path into assets (#5584)
* feat: change path

* feat: fix bug #5502

* fix: astro fix to patch

* feat: change to major

* chore: update changelog

* fix: change entryFileNames into assets folder

* fix: fix error message in test

Co-authored-by: bluwy <bjornlu.dev@gmail.com>
2023-01-05 10:41:10 -06:00
Bjorn Lu
5eba34fcc6
Remove deprecated APIs (#5707)
* Remove deprecated Astro globals

* Remove deprecated hook param

* Fix test

* Add changeset

* Add TODO
2023-01-03 14:06:07 -05:00
Anders Kaseorg
53e0c98dae
Fix spelling mistakes found by codespell and mwic (#5627) 2022-12-19 12:00:00 +01:00
truesri
65d27666e1
Fix bug: pass alt from getPicture to getImage (#5521) 2022-12-06 17:17:08 +08:00
wulinsheng123
299ae9bb6a
fix bug: added a warning if the image was GIF (#5474)
Co-authored-by: wuls <linsheng.wu@beantechs.com>
2022-11-28 14:27:39 -05:00
matthewp
c18c618a09 [ci] format 2022-11-16 21:58:37 +00:00
wulinsheng123
e2fb0c4ff2
Log error if failed to fetch remote image (#5393)
* I cant catch an error in the loadRemoteImage function when the fetch function occurs error

* I cant catch an error in the loadRemoteImage function when the fetch function occurs error

* fix ssg file

Co-authored-by: wuls <linsheng.wu@beantechs.com>
Co-authored-by: Okiki Ojo <okikio.dev@gmail.com>
2022-11-16 16:55:48 -05:00
Matthew Phillips
40226dd14d
Use Vite to load non JS astro configs (#5377)
* Use Vite to load non JS astro configs

* Adding a changeset

* Allow config to not exist

* Use a file url

* Use proload as a fallback

* add missing peerdep

* fix lint mistakes

* Refactor the vite-load

* First check if the file exists

* Pass through fs

* Update packages/astro/src/core/config/vite-load.ts

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

* Also load astro.config.cjs

* Do search before trying to load

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2022-11-15 10:02:23 -05:00
Matthew Phillips
ee750087ce
Fix usage of the Image component with the Vercel adapter (#5361)
* Revert "Revert "Allow image-pool to be used as its own Worker (#5317)" (#5360)"

This reverts commit 20e60c6e08.

* Remove special image-pool.js moving around

* Merge in assetIncludes

* changeset

* Copy to chunk folder in SSR too

* Update tidy-shoes-yawn.md
2022-11-14 13:42:35 -05:00
Matthew Phillips
20e60c6e08
Revert "Allow image-pool to be used as its own Worker (#5317)" (#5360)
* Revert "Allow image-pool to be used as its own Worker (#5317)"

This reverts commit d701ae074a.

* Adding a changeset

* Remove diff

* Remove unused code
2022-11-10 16:07:22 -08:00
Bjorn Lu
dc00ca4648
Share picture fallback image with source (#5324) 2022-11-09 08:31:09 -05:00
matthewp
982e446e8d [ci] format 2022-11-08 16:16:50 +00:00
Matthew Phillips
d701ae074a
Allow image-pool to be used as its own Worker (#5317)
* Allow image-pool to be used as its own Worker

* Adding a changeset

* fix image tests

* update picture tests

* Pass the current URL
2022-11-08 11:14:51 -05:00
Bjorn Lu
3918787cb9
Support relative protocol image URL (#5072)
* Support relative protocol image URL

* Fix test

* Actually fix test
2022-10-13 11:59:38 -04:00
Bjorn Lu
93f72f90bc
Fix image external config in build (#5073) 2022-10-13 11:16:08 -04:00
matthewp
575bf9205e [ci] format 2022-10-12 21:27:56 +00:00
Matthew Phillips
e55af8a232
Node.js standalone mode + support for astro preview (#5056)
* wip

* Deprecate buildConfig and move to config.build

* Implement the standalone server

* Stay backwards compat

* Add changesets

* correctly merge URLs

* Get config earlier

* update node tests

* Return the preview server

* update remaining tests

* swap usage and config ordering

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

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

* Update .changeset/metal-pumas-walk.md

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

* Update .changeset/metal-pumas-walk.md

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

* Update .changeset/stupid-points-refuse.md

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

* Update .changeset/stupid-points-refuse.md

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

* Link to build.server config

Co-authored-by: Fred K. Schott <fkschott@gmail.com>
Co-authored-by: Sarah Rainsberger <sarah@rainsberger.ca>
2022-10-12 17:25:51 -04:00
Bjorn Lu
2d9d422167
Support strict dependency install for image integration (#5034) 2022-10-10 11:35:48 -04:00
Matthew Phillips
062335dbf7
Fix remote images in SSG mode (#5021) 2022-10-07 17:08:15 -04:00
Oskar Baumann
a2b66c7549
[@astrojs/image]: Fix <Picture /> component with query string (#4997)
* remove query params from file extension

* Revert changes to make change as small as possible

* moving the removeQueryParam check to basename()

* chore: adding a changeset

* adding SSR test coverage for new picture test cases

Co-authored-by: Tony Sullivan <tony.f.sullivan@outlook.com>
2022-10-06 15:53:11 +00:00
Tony Sullivan
64a1d712ef
[@astrojs/image] fixes a bug in dev when <Image /> is used with no transformation props (#4933)
* fix: return the original file in dev if no image transforms were used

* chore: add changeset
2022-09-30 17:27:56 +00:00
tony-sull
849fefd8b0 [ci] format 2022-09-29 21:22:49 +00:00
Tony Sullivan
9892989619
[@astrojs/image] adding caching support for SSG builds (#4909)
* adds a caching feature for SSG builds

* chore: add changeset

* nit: eslint fix

* chore: add readme docs for caching

* adding basic test coverage for cached images
2022-09-29 21:20:48 +00:00
matthewp
55a1b5bb58 [ci] format 2022-09-28 20:57:35 +00:00
Tony Sullivan
ec55745ae5
Fix: let Squoosh default image quality internally (#4906)
* removes our quality defaults, allowing Squoosh format-specific defaults to be used

* chore: add changeset
2022-09-28 20:55:09 +00:00
tony-sull
426f3bb40f [ci] format 2022-09-22 19:50:47 +00:00
Tony Sullivan
fad3867adb
Adding an optional image service based on Squoosh (#4738)
* WIP: adding a service built on @squoosh/lib

* WIP: investigating memory leaks in Squoosh

* WIP: vendoring Squoosh to work with our build

* chore: a bit of cleanup and a small perf gain

* removing a few unused deps

* fix: removing temp .only() in sharp test

* hooking up the last build steps to copy over .wasm files

* removing the duplicated lib/*.wasm files

* defaulting to Sharp for the initial @next release

* make sure pnpm always runs the postbuild script

* removing a few node dependencies

* refactor: move the copy .wasm build step out of the SSR bundle

* linter fixes

* fixing lock file

* chore: add TEMP changeset

* fix built wasm location for SSG builds

* Revert "defaulting to Sharp for the initial @next release"

This reverts commit 1a8d4f7f60.

* removing sharp dependency

* Revert "fix built wasm location for SSG builds"

This reverts commit 446b80bb53.

* chore: update lockfile

* fixing up image tests for the wasm loader

* updating the README for squoosh

* parallel wasm builds

* refactor: a bit of house keeping

* perf: allow a thread for each output encoding format

* fix: dev broke with the shift to wasm workers

* adds a new `astro:build:generated` hook for SSG builds

* fix: typo + calling cleanup methods in wasm codecs

* adding @astrojs/webapi for the TransformStream polyfill

* Revert "adding @astrojs/webapi for the TransformStream polyfill"

This reverts commit 39e5b845a5.

* perf: using sharp for most of the CI tests

* chore: update lockfile

* removing hard-coded squoosh imports

* fix: adding sharp to rollup externals

* test: using dev for the squoosh tests

* fix: updating the build output dir for wasm filles in SSG builds

* updating the changeset with migration details

* Revert "adds a new `astro:build:generated` hook for SSG builds"

This reverts commit 59b5fec7be.

* nit: adding comments for the wasm file copy

* chore: fix eslint warning
2022-09-22 19:48:14 +00:00
tony-sull
b2c9059ed8 [ci] format 2022-09-20 20:28:39 +00:00
Oussama Bennaci
ea37de86e4
[@astrojs/image] flatten background only if alpha channel isn't supported (#4800)
* Use sharp flatten only when format doesnt support alpha

* Allow rgba for background prop

* Add changeset

* Adjust doc

* Fix tests
2022-09-20 20:25:45 +00:00