Commit graph

212 commits

Author SHA1 Message Date
Matthew Phillips
fad6bd0936
Use of PUBLIC_ environment variables (#2044)
* Enable client-side JS to read env variables via PUBLIC_

* Fixes use of PUBLIC_ in client-JS
2021-11-29 14:22:46 -05:00
Drew Powers
7a7427e425
Use URLs for styles, add CSS dev tests (#1993)
#1973
2021-11-23 13:10:22 -07:00
Drew Powers
4cec1256a4
Add default TypeScript, Sass support to Svelte (#1982) 2021-11-23 09:45:24 -07:00
Drew Powers
d3476f24d4
Add Sass tests (#1919) 2021-11-22 14:24:42 -07:00
Matthew Phillips
8cb779594e
Bring back building of non-hoisted scripts (#1977)
* Bring back building of non-hoisted scripts

Scripts inside of src/, whether hoisted are not should be built. This
makes that so. If not hoisted they do *not* get bundled together, but
rather are their own standalone modules. This matches 0.20 behavior.

Closes #1968

* Adds a changeset

* Fix windows breakage

* Debug windows

* More debugging

* make it not be parallel

* More windows

* Might fix it

* ARG

* Simpler test

* Remove the debugging
2021-11-22 16:17:01 -05:00
natemoo-re
c0ad06c470 [ci] yarn format 2021-11-22 21:02:28 +00:00
Elliott Marquez
ec01d1b43f
fix(lit-renderer): certain reactive props not init correctly (#1874)
* fix(lit-renderer): reactive props not init correctly

* test(renderer-lit): implement testing suggestiosn

* chore(renderer-lit): upload changeset

* fix(renderer-lit): call connCallback on server

* fix(renderer-lit): do not set reserved JSX props

* fix(renderer-lit): do not check for reserved attributes

Co-authored-by: Nate Moore <nate@skypack.dev>
2021-11-22 15:01:32 -06:00
JuanM04
679d4395ec
Markdown package improvements (#1954)
* Re-add smartypants

* Updated packages

* Remove all the default plugins if there are either remark or rehype plugins

* Replace deperecated remark-slug with rehype-slug

* Added MarkdownParserResponse type

* Update documentation

* Removed type import from markdown package

* Updated remark-smartypants

* Changelog

* Missed one change

* Split changelogs

* Upgraded some MDX dependencies

* Fix typos in documentation

* Changed CHANGELOG.md package name

* Renamed smartypants
2021-11-22 14:48:00 -06:00
Nate Moore
e49452325c
chore: update compiler (#1975)
* chore: update compiler

* test: remove wasm-panic-error

* test: update syntax error to not check message

* chore: add changeset

* test: skip syntax error test

* chore: update changeset
2021-11-22 14:36:14 -06:00
Jonathan Neal
26de205b98
Warn on missing pages directory (#1902)
* Warn on missing pages directory

* skip hostname flag test

* kill process at end of config test

* fix hostname test

* cleanup console logs
2021-11-22 15:11:13 -05:00
Drew Powers
f7b23d5cf1
Allow search params (#1927)
Fixes #1795
2021-11-19 12:57:24 -07:00
Jonathan Neal
14d7031544
Fix RegExp#test in Config test (#1922) 2021-11-19 14:08:35 -05:00
Matthew Phillips
2e0c790b3a
Add polyfill scripts to result.scripts (#1920)
* Add polyfill scripts to result.scripts

* These scripts are bundled together now

* Adds changeset
2021-11-19 14:06:05 -05:00
matthewp
fb4eb080ec [ci] yarn format 2021-11-19 15:07:28 +00:00
Matthew Phillips
4682f8fdce
Add Debug tests (#1882)
* Make Debug use the Code component

* Use a random port so parallel testing works

* some debugging

* Skip these tests for now

* Dont run these tests on osx
2021-11-19 10:06:31 -05:00
Drew Powers
8986d33bfc
Improve error messages (#1875)
* Fix error handling in correct scope

Also improve Vite IDs for better module graph lookups

* Improve code frame

* Add changeset

* maybeLoc can be undefined

* Add tests

Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2021-11-18 17:42:07 -07:00
Drew Powers
36f2f5d33e
Fix styles-ssr timeout (#1891) 2021-11-18 15:18:59 -07:00
matthewp
637cf499fa [ci] yarn format 2021-11-18 16:15:09 +00:00
Matthew Phillips
53d9cf5ec6
Dev server routing tests (and fixes) (#1879)
* Dev server routing tests (and fixes)

* Adding a changeset

* Bump the style-ssr test timeout
2021-11-18 11:13:54 -05:00
matthewp
6abea78ecd [ci] yarn format 2021-11-17 20:59:04 +00:00
Matthew Phillips
0ce86dfdf3
Fix for built scoped Vue styles (#1868)
* Fixes #1844

* Adds a changeset

* Remove all special casing

* Add a clarifying comment
2021-11-17 15:57:47 -05:00
Nate Moore
06446d14a3
fix: enable node builtins (#1771)
* fix: enable node builtins

* fix: update bare node builtin test

* test: update fixture to support node@12
2021-11-17 14:25:45 -06:00
Drew Powers
3cd1458aa7
Fix Windows CSS bundling bug (#1840)
* Fix Windows CSS bundling bug

JS components’ styles accidentally left out of final build on Windows

* Review feedback
2021-11-16 13:59:41 -07:00
Nate Moore
824c1f2024
Implement client:only handling (#1716)
* WIP: improve `client:only` handling

* feat: implement `client:only` in renderer

* test: reenable client:only tests

* feat: improve SSR error messages

* fix: add `resolvePath` method to Metadata

* test: fix client-only test

* chore: fix custom-elements handling

* test: revert `custom-elements` test change

* fix: do not assign a default renderer even if there's only one configured

* chore: bump compiler

* chore: add changeset
2021-11-16 10:01:14 -06:00
Drew Powers
65216ef921
Fix PostCSS (and Autoprefixer) processing (#1837)
* Fix PostCSS processing

* Skip Windows tests

(for now)
2021-11-15 14:16:07 -07:00
Matthew Phillips
93cc4d361b
Start of fixing multiple CSS issue (#1838)
* Start of fixing multiple CSS issue

* Update tests to work with compiled output

* Fix linting
2021-11-15 15:05:36 -05:00
Drew Powers
3d7d63aa8a
Improve WASM panic error (#1782)
* Improve WASM panic error

* Add panic test
2021-11-11 13:04:57 -07:00
Matthew Phillips
65d17857ce
Uncomment hoisted scripts (#1743)
* Uncomment hoisted scripts

* Get hoisted scripts to pass

* Adds a changeset
2021-11-11 14:35:46 -05:00
Drew Powers
529486bfb0
Inject Doctype tag (#1783) 2021-11-11 12:28:14 -07:00
Matthew Phillips
b958088c3d
Add display: contents for hydrated components (#1794)
* Add display: contents for hydrated components

* Only serialize boolean attrs that are data attrs

* Adds a changeset
2021-11-11 11:55:50 -05:00
matthewp
8e3fd04dbd [ci] yarn format 2021-11-11 13:45:37 +00:00
Matthew Phillips
fd52bceea4
Build/bundle assets and CSS (#1786)
* Bundling CSS

* Current progress of building assets

* New build progress

* Its finally working

* Force css to go through the build

* Prettier filenames

* Split into separate CSS and HTML plugins

* Always have at least one input

* Bring back in sitemaps + output

* Bring back srcset support

* Bundle CSS

* Bring back minify

* Update dynamic tests

* Update remaining tests

* Linting

* Fix remaining broken test

* Use fs directly

* Adding a changeset

* Use path.posix

* Debugging windows

* More debugging

* Pass URLs into readFile

* Remove some debugging stuff

* Remove force flag from transformWithVite

* Update packages/astro/src/vite-plugin-build-css/index.ts

Co-authored-by: Drew Powers <1369770+drwpow@users.noreply.github.com>

Co-authored-by: Drew Powers <1369770+drwpow@users.noreply.github.com>
2021-11-11 08:44:11 -05:00
Yoshiaki Togami
7acf762c12
Fix/check content type (#1754)
* test: add test case

* fix: add type guard insted of content.trim().length > 0

* test: fix test
2021-11-09 11:46:01 -06:00
Drew Powers
f22a5c45d8
Enable tests (#1773) 2021-11-09 10:06:25 -07:00
Jonathan Neal
18172a6750
Support PUBLIC_ environment variables (#1750)
* Support PUBLIC_ environment variables

* Remove unnecessary Test component
2021-11-08 06:28:15 -05:00
natemoo-re
a5c6f922fa [ci] yarn format 2021-10-29 19:47:01 +00:00
Nate Moore
34e03cf912
do not format vite (#1710)
* Revert "[ci] yarn format"

This reverts commit 93489946cc.

* chore: ignore vendor
2021-10-29 14:45:32 -05:00
matthewp
93489946cc [ci] yarn format 2021-10-29 19:31:54 +00:00
Drew Powers
d84bfe719a
🚀 Astro Next (0.21.0) (#1406)
* make astro-root uids unique

* Move Astro to Vite

* Update tests

* More test improvements

* fred fixes

* Update compiler, improve tests

* Fix runtime, improve code frame

* Add Markdown support

* Tycho fixes

* Fred fixes part 2

* Throw Error for WIP Features

* Improve testing suite

* Allow users to pass config to Vite

* Fix npm install (#1407)

* Automate publish on merge (#1408)

* Add NPM_TOKEN to publish script (#1409)

* Create .npmrc

* Clean up astro deps (#1411)

* Use new renderers (#1412)

* feat: update compiler (#1421)

* Try mocha/chai test runners (#1418)

* Try mocha/chai test runners

* Disable failing smoke test for now

Will revert when next can build docs

* Enable mocha in parallel mode

* Remove warning

* Update docs

* Fix Windows bug

* Fix internal imports

* Fix styles

* Fix CI release on merge to next (#1427)

* Fix logger locale parsing (#1439)

* fix(logger): locale parsing
* Fixed issue of compiler crash when "c" locale was encountered
* Return default locale if parsed locale is less than 2 chars long

* chore: add changeset

* Apply changes from #1387

* Add back in support for children (#1486)

* Add back in support for children

* Be more careful

* Enables most slot tests (#1494)

* Enables most slot tests

* Use spreadAttributes

* Add hydration to Solid renderer (#1479) (#1495)

* feat: add hydration to Solid renderer

* fix: intersection observer, move script to the end

Co-authored-by: Ryan Carniato <ryansolid@gmail.com>

* [next] support Astro.slots API (#1516)

* [next] Support for custom elements (#1528)

* [next] Support for custom elements

* Fix eslint errors

* eslint again

* [next] Fix Astro.fetchContent (#1480)

* fix Astro.fetchContent

* fix(fetchContent): cast type

Co-authored-by: Nate Moore <nate@skypack.dev>

* Move hydration to the compiler (#1547)

* Move hydration to the compiler

* Move extracting url, export to util fn

* Brings back astro-dynamic tests (#1548)

* Implements top-level Astro + Astro.resolve (#1556)

* Implements top-level Astro + Astro.resolve

* Fix linting

* [next] Update renderers (#1509)

* chore: update vite

* fix(renderers): point renderers to resolved server/client entrypoints

* Chore: Enable more tests with new compiler changes (#1558)

* [Next] `fetch` support (#1563)

* fix: polyfill fetch in every ssr scenario

* test(fetch): update fetch tests

* docs: update data fetching guide to remove caveats about `fetch` and isomorphic usage

* refactor: update regex for clarity

* Restructure (#1569)

* Upgrade to @astrojs/compiler 0.2.0 (#1584)

* Use Vite fork (#1585)

* Use Vite fork

* Fix linting

* Move Vite to vendor/ and add a license

* Fix linting

* Include the dist folder

* Update files config

* Markdown compilation (#1593)

* Markdown compilation

* remove debugger

* Gets lit hydration working (#1595)

* Gets Astro.fetchContent compilation to work (#1596)

* Gets Astro.fetchContent compilation to work

This fixes Astro.fetchContent so that we handle esbuild transforming the
name of the nested Astro call.

* Remove debugging

* Update the tests

* Remove another debugger

* Update Vite to latest (#1597)

* Add Prism syntax highlighting (#1598)

* Scoped styles with markdown (#1599)

* Bugfix: fix getStaticPaths() cache miss (#1602)

* Fix build order (#1609)

* Bugfix: restore build to get all paths earlier, when build. Same as main.

* Also re-add timings

* [next] blog example fully working (#1610)

* Add environment variables docs (Closes #873) (#1587)

* Added environment variables docs (Closes #873)

* Fixed prefix

* Remove numbered comments (#1611)

* Chore: remove numbered comments

* Clean up block comments

* comment style fixes (#1614)

* [next] Upgrade compiler (#1619)

* [next] Upgrade compiler

* Upgrade to latest compiler

* Fix the path to global css

* Removed debugger

* feat: add fragment support to vite-plugin-astro (#1600)

* [next] fix `.tsx` handling (#1620)

* fix: support tsx in JSX plugin

* fix: preserve JSX via esbuild, only use Babel for JSX compilation

* fix: handle upcoming Vite API for `ssr` flag

* [next] Add CSS preprocessing  (#1589)

* Add concept for style support in Astro

* Update style preprocessor to use new compiler

* fix: massage preprocessStyle type

* fix: @astrojs/compiler types

Co-authored-by: Nate Moore <nate@skypack.dev>

* fix issues in blog-multiple-authors (#1621)

* Move Sass to deps (#1622)

* Update renderer API for Vite (#1623)

* Update renderer API for Vite

* Fix lit-element tests

* Clean up comments

* Throw friendly error if renderer provides viteConfig in a bad format

* Fix changesets (#1628)

* Remove cheerio scanning from build stats (#1629)

* Minor change to jsxTransformOptions, update Renderer API docs (#1630)

* [next] docs example fully working (#1627)

* [next] docs example fully working

* Upgrade compiler to unlock docs

* Add `class:list` directive (#1612)

* Add support for class:list directive

The `class:list` directive serializes an expression of css class names. For React components, `className:list` is also supported.

* Remove `className` support and React tests

* Add tests for the absence of omitted classes

* fix: `define:vars` scoping for styles (#1632)

* feat: fix Debug component (#1633)

* [next] Fix `<Markdown>` component (#1631)

* fix: cleanup issues with <Markdown> component

* fix: fix `content` usage with Markdown

* [next] Fix `<Code>` component (#1635)

* fix: enable Code component

* test: update expect to chai format

* Fixes solid (#1634)

* Fixes solid

* Rename the test

* Rebase with next

* Skip solid test for now

* Add support for markdown plugins (#1650)

* Fix broken next release (#1652)

* Prevent passing  to Svelte components

* Prevent passing class to Vue components

* Add CSS injection, fix portfolio example (#1648)

* Fix portfolio example

* Add .pcss extension

* Update load ssr opts

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

Co-authored-by: Jonathan Neal <jonathantneal@hotmail.com>

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

* Fixes external HMR (#1654)

* Upgrade compiler version (#1655)

Fixes docs and blog examples

* Resolve renderers relative to the projectRoot (#1659)

* Template fixes (#1656)

* fix: dedupe hashes for identical islands (#1660)

* fix: scope `define:vars` to `:root` for `<style global>` (#1663)

* chore: update compiler to latest (#1664)

* [next] fix island hydration inside of `<Markdown>` (#1665)

* fix: create rehype plugin to smooth over island hydration bugs

* refactor: remove debug code

* chore: explain need for `rehypeIslands`

* Bugfix: renderer-lit missing files on npm (#1669)

* Force Vite to rebuild dependencies (#1670)

* [next] Add `preact/compat` renderer (#1668)

* feat: add preact/compat entry for `@astrojs/renderer-preact`

* Update index.js

* Bugfix: plugin-astro-fetch tries to append node-fetch to node-fetch (#1671)

* Fix Vite race condition (#1674)

* Fix with-nanostore deps (#1675)

Adds missing Solid renderer

* [next] Fix `resolveDependency` on Windows (#1666)

* fix: Windows issue with resolveDependency util

* chore: add comment

* Update CONTRIBUTING.md (#1677)

* Prevent scanning a user's deps (#1678)

* Prevent scanning a user's deps

* Remove unused things

* remove unused util

* Adding a changeset for the remark plugin

* Config changes needed for stater template (#1680)

This does 2 things:

1. Adds prismjs as a dep.
2. Adds shiki as an external.

* Next bugs (#1681)

* fix(#1679): hoisted <script> rendering

* fix(#1679): do not print global for styles, but do for scripts

* fix: update ObjectSet implementation

* fix: dedupe elements in sets

* [next] update compiler (#1683)

* chore: update compiler

* chore: update compiler (again)

* Fix Astro HMR bottleneck (#1684)

* Bugfix: JSX renderers can be declared in any order (#1686)

* chore: update compiler (#1690)

* Exclude lit-server from being optimized (#1691)

This should get the lit example working from `npm`.

* fix: exclude all renderer server entrypoints (#1692)

* chore: update compiler (#1705)

* fix: do not crash when Markdown has no content (#1702)

* feat: improve support for third-party React packages (#1701)

* Remove prism warning when no language is provided (#1703)

* Remove prism warning when no language is provided

* Add the plaintext language instead

* retry deploy

* chore: enter prerelease mode under `next` (#1707)

* Updates to the changesets (#1708)

* Updates to the changesets

* Adds a changeset for astro-prism

Co-authored-by: Fred K. Schott <fkschott@gmail.com>
Co-authored-by: Nate Moore <nate@skypack.dev>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Pranav Karawale <52596591+obnoxiousnerd@users.noreply.github.com>
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
Co-authored-by: Ryan Carniato <ryansolid@gmail.com>
Co-authored-by: AsyncBanana <58297401+AsyncBanana@users.noreply.github.com>
Co-authored-by: Jonathan Neal <jonathantneal@hotmail.com>
2021-10-29 15:30:22 -04:00
Matthew Phillips
756e3769d3
Support PureComponent in the react renderer (#1467)
* Support PureComponent in the react renderer

* Adds a changeset
2021-10-01 11:25:17 -04:00
Matthew Phillips
82672e5c47
Updated srcset checking (#1462)
* Updated srcset checking

Improved functionality of `srcset` checking as original failed when URL contained a comma ( `,` ).
Utilised function from [srcset-parse](https://github.com/molefrog/srcset-parse) as couldn't find a way to integrate the package.
Added test to current assets test rather than create a separate one.

* Use srcset-parse

Co-authored-by: Coel May <82788995+coelmay@users.noreply.github.com>
2021-09-30 09:58:20 -04:00
AsyncBanana
3083563506
Fixed props shadowing (#1433)
* Fixed props shadowing

* Added changeset

* Added prop shadowing test
2021-09-27 11:52:57 -04:00
FredKSchott
d895d3c079 [ci] yarn format 2021-09-16 20:07:52 +00:00
Fred K. Schott
291f2ef537
fix bad benchmark (#1383) 2021-09-16 13:06:43 -07:00
Jonathan Neal
98d785af1d
Expose slots to components (#1368)
* Expose slots to components via Astro.slots

* test: Add Astro.slots API tests

* docs: Document Astro.slots API

* docs: Duplicate Astro.slots documentation to other api-reference markdown

* Update proposal to use booleans, based upon RFC feedback

* update implementation & tests based on request

* changeset
2021-09-15 11:27:59 -04:00
kelvinsjk
09b2f0e470
Fix passing Markdown content through props (#1259) (#1343)
Co-authored-by: Kelvin Soh <kelvinsoh@pop-os.localdomain>
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
2021-09-14 17:03:45 -07:00
(none)
d771dad669 Merge "Remove check for referenced files" (#1196)
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
2021-09-14 16:47:54 -07:00
FredKSchott
b5623ada16 [ci] yarn format 2021-09-13 18:12:51 +00:00
Bartek Igielski
dd92871fd7
Prevent removing CSS preloads during bundling (#1326)
* Prevent removing nodes, becasue styles preloading was detected earlier

* Add separate deduping for preloads and cover it with tests.

* Create quiet-horses-turn.md

* Test merging preload tags
2021-09-10 11:17:17 -06:00
jasikpark
6fc8202e60 [ci] yarn format 2021-09-07 20:23:50 +00:00