* Add new configKeys prop for telemetry
This property lets us known which AstroConfig keys are being used, for anonymous telemetry.
* Adds a changeset
* Restructure how the telemetry event is shaped
* Revert "Improvements to build and dev when building for subpaths (#3156)"
This reverts commit 637919c8b6.
* letting Vite handle base paths
* test updates to expect Astro.request.url to no longer include subpaths
* bringing back the fix for including subpaths in injects scripts and styles
* fixing the static-build test to handle subpaths for injected CSS
* fixing asset import URLs when using base subpaths
* chore: fixing typo in the comments
* Astro needs to manage base in dev to maintain Astro.request.url
* fix: reverting dev routing tests to expect existing behavior
* reverting Astro global test to verify existing behavior
* chore: adding changeset
* test: update static-build tests to verify the subpath is used in asset imports
* Conform to API route signature
* Rename to API route
* Update ssr test
* Update packages/astro/test/fixtures/ssr-dynamic/src/pages/api/products/[id].js
Co-authored-by: Ben Holmes <hey@bholmes.dev>
* Adds a changeset
* Make PR review changes
Co-authored-by: Ben Holmes <hey@bholmes.dev>
* feat: add @astrojs/telemetry
* feat: add telemetry events, add queueing system
* feat(telemetry): record CLI events
* chore: add note
* feat: support generic TELEMETRY_DISABLED env var
* Fix test script
* shim telemetry in tests
* Shim telemetry in other commands
* Stub telemetry in the memory leak test
* Disable telemetry in smoke tests
* Adds a changeset
* Run the formatter
* few updates
* Include config keys
* Add shallow viteKeys array:
:
* Add vite keys and tests
Co-authored-by: Nate Moore <nate@skypack.dev>
* Consolidate inline hydration scripts into one
* Adds changeset
* Update custom element test
* Provide a better name for tracking if we have added a hydration script
* Moved types arround
* Removed `rehype-slug` in favor of our own implementation
* Changeset
* Removed rehype-slug from examples
* Remove rehype-slug from tests
* Updated reference
* rehypeCollectHeaders is a function again
* Reverted rehype-slug removes
* Re-added rehype-slug to reference
* feat: add git init step
* fix: update unit tests
* feat: simplify next steps for copy pasteability
* docs: add clarifying comment on test stdin spoofing
* docs: remove "empty" from git repo message
* fix: update git step text for test
* fix: remove redundant --dryrun flag
* refactor: simplify next steps with &&
* chore: changeset
* refactor: simplify dir error log to avoid wrapped text
* refactor: remove redundant "issue" callout
* chore: changeset
* chore: update tests for new dir log
* fix(markdown): file.url fixes
* Added tests
* Changed the default of `base` from `./` to `/`
* Make the url work with subpath
* Changeset
* Forgot to change this comparison
* updating svelte integration to allow custom user config
* test: adding a test to verify that svelte options are piped through the integration
* updating the README with docs on overridding svelte options
* chore: adding changeset
* fix: copy/paste bug in test validation
* removing temporary debug scripts
* wip: add prompt for directory with validation
* feat: wire up dir response to cwd
* feat: improve error handling on non-empty dirs
* fix: update test helpers to execaSync
* chore: add .skipped to old tests for clarity
* deps: add mocha and chai to create-astro
* feat: add directory step test with fixture
* feat: update turbo to run create-astro tests again 🥳
* chore: changeset
* `astro build` should include the `base` provided in astro config
* test: updating build test to expect the base path in links/scripts
* ignore the default "base" value when building links/scripts
* fix: handling config that provides a base but no site
* fix: config.site was being ignored since it's a URL not a string
* hack: handle base path in dev for /public assets
* fix: dev redirect needs to ignore base default of ./
* fix: extra safety checks for the base path redirect
* refactor: simplifying it to remove the regex
* one last safety check - only redirect GET and use a 302 status
* fix: lost the leading slash when redirecting
* nit: adding comments to the test explaining how base is verified
* Remove extra console.log
* Adds a changeset
Co-authored-by: unknown <matthew@skypack.dev>
* adds support for passing options to @vitejs/plugin-vue
* updating vue integration README with options details
* adding a tests for custom vue compiler options
* chore: adding changeset
* fix: replace markdown path prefix with suffix flag
* fix: avoid non-encoded colons for flag
* fix: remove needless ?
* fix: dev server load order
* fix: production build crawl dynamic imports
* fix: remove unused virtual_module_id const
* fix: remove unsafe "!" on getmodbyid
* fix: remove needless @id path check
* fix: add list of SSR-able file extensions
* docs: virtual_mod_id change
* fix: support id prefix on resolved ids
* fix: switch to ?mdImport flag to resolve glob imports
* tests: imported md styles for dev and build
* chore: changeset
* Added schemas to markdown plugin
* Added new schemas to main package
* Changesets
* typeraw
* Explaination about the weird type hack
* Added markdown.mode to config
* Added comment
* Formatted
* Moved validation to `astro` and added RemarkPlugin ad RehypePlugin
* Removed the ability to have a custom markdown renderer internally
* Fixed plugin type
* Removed unused renderMarkdownWithFrontmatter
* Added missing dependency
* Dynamically import astro markdown
* Cache import
* Fix SSR static build public file copying
* chore: update lockfile
* remove dirname and use URL constructor
* Cleanup test and actually test what it says it tests
Co-authored-by: Nate Moore <nate@skypack.dev>
* fix(#2987): relative config handling with `--config` flag
* test: fix tests
* fix: improve config test for failure case
* fix: test on windows?
* fix: test on windows?
* So This works 😎
* need to add to the cli next
* Renamed Files and Export
Applied creditation to where I found the
'inspiration' for this application.
* applied `astro docs` to cli
* Trying to add to CLI,
Not working 🤷♂️
* Converted into async method,
* 🎆🎆 It works!!! 🥳🎉🥳
Embarrasing as it is I totally missed the part where logic was to be in.
* Moved `docs` cmd to `supportedCommands`
* refactor: cleanup docs command
* chore: add changeset
* chore: rename browser to open
Co-authored-by: Nate Moore <nate@skypack.dev>
* feat: human-readable error on bad site or base
* fix: human-readable error should have 1 config option
* docs: update README
* chore: changeset
* docs: mention localhost for testing via netlify CLI
* updating the default listed in config jsdocs
* chore: adding changeset
* outDir had the wrong default listed as well
* chore: updating changeset description
* Replaced `--experimental-ssr` with `isBuildingToSSR`
* changest
* Improved `isBuildingToSSR` a bit
* Added `isBuildingToSSR` to more places!!1!
* Added `@deprecated` tag
* Replaced missing experimentalSsr
* Added failing test
* Removed test
* Re-added experimental ssr flag
* Fixed typo
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
* Fixed deno tests
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
* First pass at supporting React 18 in @astrojs/react
* Try marking React 18’s `react-dom/client` as external
* Try a different approach to importing different React versions
* Allow resolving JSON modules
* Revert "Allow resolving JSON modules"
This reverts commit 5279b7249c.
* Try the separate client entrypoint approach from #2946
* Clean up diff
* Trying to see something
* Just keep swimming… 🐠
* update to support react 18
* add changeset
* add docs
Co-authored-by: delucis <swithinbank@gmail.com>
* Bundle everything, commit 1
* Get everything working
* Remove dependency on readable-stream
* Adds a changeset
* Fix ts errors
* Use the node logger in tests
* Callback the logger when done writing
* Fix test helper to await the callback
* Use serialize-javascript again
* Remove dead code
* Rename hook
* Oops
* Implement the Astro.request RFC
* Disable console warnings eslint
* Use our logger
* Adds a changeset
* Fix tests that depend on params, canonicalURL, URL
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
* clean up error logging in astro
* update from ben feedback
* Update packages/astro/src/core/build/generate.ts
Co-authored-by: Ben Holmes <hey@bholmes.dev>
Co-authored-by: Ben Holmes <hey@bholmes.dev>
* Fix type of `integrations` in config
As per [docs](https://docs.astro.build/en/reference/integrations-reference/#combining-plugins), an integration can return an array of `AstroIntegration` objects to support bundling a collection of integrations as a preset. This change reflects that usages in the typing for the user config object.
* Add changeset
* Prevent CSS from being added to pages not using it
* Adds a changeset
* Add clarification when the CSS is appended to the pageData
* Move addStyles up a level
* Netlify adapter
* Remove package.json export that doesnt exist
* Fix out path
* Make netlifyFunctions the default
* Make the dist configurable
* Add an export for the functions
* Append of the file exists
* Build to a single file
* Updates based on initial code review
* Adds a changeset
* Use the default export for cjs module
* Await generatePages
* Prevent timing from causing module to not import
* Fix shared CSS
* Properly handle windows ids
* Dont shadow
* Fix ts errors
* Remove console.log
* feat: log setup, vite, and route gen steps
* refactor: add back "build" + timestamp for consistency
* feat: improve ms increase logs to match old debug output
* feat: add log for server assets
* chore: remove redundant debug logs
* feat: add logs for ssr steps
* fix: hide per-page log for ssr builds
* fix: hide "index.html" from debug log in SSR
* feat: add log for "collecting page data" step
* feat: add timeout logs for longer data imports
* chore: add changeset
* remove (includes setup + teardown)
* refactor: add newline to separate ssr from client build
* fix: move "gen static routes" heading to pages
* fix: only show client build ms when triggered
* fix: remove dup render loop
* chore: remove unused static-build imports
* Adapter v0
* Finalizing adapters
* Update the lockfile
* Add the default adapter after config setup is called
* Create the default adapter in config:done
* Fix lint error
* Remove unused callConfigSetup
* remove unused export
* Use a test adapter to test SSR
* Adds a changeset
* Updated based on feedback
* Updated the lockfile
* Only throw if set to a different adapter
* Clean up outdated comments
* Move the adapter to an config option
* Make adapter optional
* Update the docs/changeset to reflect config API change
* Clarify regular Node usage
* Fix island deduplication ignoring props.
Re-resolves an issue initially patched in https://github.com/withastro/astro/pull/846 but seemingly lost in the 0.21.0 mega-merge (d84bfe719a).
This change makes the component render step account for all props, even if they don't affect the generated HTML, when deduplicating island mount.
* Fix React component test using different rendered props to test deduplication.
* fix: improve serialization support for non-JSON objects
Co-authored-by: Nate Moore <nate@skypack.dev>
* Implements redirects, headers for SSR
* Move away from an explicit Request
* Properly handle endpoint routes in the build
* chore(lint): ESLint fix
* Update based on review comments
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
* fix: missing style imports on initial load
* chore: changeset
* fix: update comment on using URL map
* fix: use getModulesByFile to match on ID properly
* refactor: use imperative loop for performance
* fix: update scan from each matching mod
* fix: update scan from importedMod loop
* fix: avoid scanning all related mods
* feat: update config to support bool --hostname
* fix: show localhost for --hostname=true
* feat: address logging feature parity w/ Vite
* chore: update type docs
* refactor: extract local, network prefs to variable
* feat: add --host to --help output
* feat: deprecate --hostname, add --host
* feat: add --host tests
* feat: update preview to support new flags
* fix: show --host in dev server log
* feat: update config tests for --host flag
* chore: test lint
* chore: update lock with new fixture
* chore: add changeset
* refactor: add more details to JSdocs
* fix: update path tests
* feat: only expose when --host is not local
* fix: make flag --help less verbose
* fix: address @types comments
* fix: lint
* chore: remove unused import
* fix: use host flag for config test
* fix: ensure local logs come before network
* refactor: switch up that network logging one last time!
* feat: update unit tests
* chore: remove debugging block
* fix: only parse network logs if network is present
* Unflag the static build (#2652)
* Unflag the static build
* Only set legacyBuild to false if experimentalSSR is true
* Use legacy build when we have to
* Put a few more tests into legacy mode
* Last two
* Make astro-basic use the legacy build
* Adds a changeset
* Mark the lit test as legacy
* Update yarn lock
* Update based on feedback
* Add --legacy-build flag
* Move astro-basic test to use static build (#2682)
* Move some tests over to the static build (#2677)
* Move some tests over to the static build
* Fix assets tests
* Fix the assets tests
* Fix for the client:only components
* Moves asset tests to the static build
* Move postcss test over to static build
* Bring back legacy build for astro-basic test
* Move astro-basic test to use static build
* Migrate more tests to the static build (#2693)
* fix: disable HMR during build (#2684)
* Migrate more tests to the static build
* Only prepend links in non-legacy mode
* Add the 0-css tests
* Convert all CSS tests to the static build
* Migrate Astro global tests
* Remove .only
* Fix static build tests
* Migrate a few more
* More tests
* Move the lit test back to legacy
* Increase the test timeout
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* Improve `head` injection behavior (#2436)
* feat: add renderHead util to server
* feat: remove `layouts` from config, Vite plugin
* fix: improve head injection during rendering
* chore: update compiler
* fix: do not escape links
* chore: enter `pre` mode
* Replace `send` with `sirv` (#2713)
* remove send
* Create thick-ravens-chew.md
* I feel like I'm going to screw something up
* working finally!
* rewrite req.url
* Add tiny bit of doc
* Update .gitignore
Co-authored-by: Evan Boehs <evan@boehs.org>
* Move remaining tests to the static build (#2712)
* Move lit test to the static build
* Migrate astro-env plugin to work in the static build
* Do not remove vite:define
* Adds a changeset
* Add a warning when passing the --experimental-static-build flag (#2718)
* Add a warning when passing the --experimental-static-build flag
* Disable the lint warning
* [ci] release (next) (#2721)
* [ci] release (next)
* chore: update changeset
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Nate Moore <nate@skypack.dev>
* 404 page (#2719)
* Fix: build to 404.html in the static build
* Adds a changeset
* fix pnpm install missing peer deps
* fix svelte version in workspace
* fix lockfile
* fix(webapi): add dev script
* improve preview reliability (#2739)
* improve preview reliability - fix broken tests
* shamefully hoist to unblock
* remove lit from test running
* chore: update lockfile
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
Co-authored-by: Evan Boehs <evan@boehs.org>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
* 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>
* Pass children to client components even if they do not render them
* Handle when no children are provided
* Adds a changeset
* Use roots directly i guess
* Use an attribute to signal that the template is needed
* Resolve relative imports from hoisted scripts
* Adds a changeset
* Windows fix
* Set a longer timeout for the Lit test
* blah
* Handle windows properly
* Only if the from is astro
* Windows debugging
* This might fix it
* another try
* use only
* More debugging
* Does this work
* Final cleanup
* Update the lockfile
* adds support for build non-html pages
* add non-html pages to the static build test suite
* adds getStaticPaths() test for non-html pages
* adds dev server tests for non-html pages
* ading a changeset
* updating changeset description
* testing for building non-html files with async data
* fixing typo in changeset docs
* Checkpoint, basics are working
* Add the `--experimental-ssr` flag
* Adds the changeset
* Fixes population of getStaticPaths results
* Pass through the imported module
* Route manifest test
* Fix remaining tests
* Fix remaining tests
* Copy server assets over
* Fix types
* Allowing passing in the request to the Node version of App
* Improve the example app
* Gets CI to pass
* Replaced `shikiTheme` with `shikiConfig`
* Code.astro now accepts custom themes/langs
* Updated docs
* Updated tests
* Fixed language loading
* Added customization examples
* Updated documentation
* Added more tests
* Changelogs
* Changed some spaces to tabs
* Fixed typo in changesets
* Moved tests fixtures
* Rolled back changes to with-markdown-shiki
* Removed lang example in docs
* Optimized Code component
* Try to fix windows errors
* Try to see if this new tests work
* [ci] yarn format
* Added shiki to markdown-remark
* Upgraded astro shiki
* Added minimal example
* Changed defaults to match <Code />
* Replace `shiki` with `astro` classes
* Added documentation
* Updated Astro code to use new `codeToHtml`
* Added changesets
* Added basic test
* Updated tests a bit
Co-authored-by: JuanM04 <JuanM04@users.noreply.github.com>
* standardize trailing subpath, and fix fetchcontent issue
* debug windows ci
* improve ci test
* fix windows test issue?
* fix only usage
* end debugging
* Handle project folders containing a space
* Adds a changeset
* Bump the test package version
* Use server relative paths as entries
* Fix windows
* A hoisted fix
* Correctly handle facadeIds on windows
* Fix HMR in static build + @import HMR
* Changeset
* Add a comment on what cleanUrl is doing
* Running prettier
* Improve comments on how the static build compilation
works differently.
* Allow pre-generated urls to be passed in rss feeds
* Fix variable name
* Add isValidURL helper function
* Remove scary RegEx and tidy up code
* add test for using pregenerated urls
* fix: allow rss to be called multiple times
* test: normalize rss feed in test
* chore: add changeset
Co-authored-by: Zade Viggers <74938858+zadeviggers@users.noreply.github.com>
Co-authored-by: zadeviggers <zade.viggers@gmail.com>
* Resolve sitemap URLs in relation to full site path
Fixes#2422
* Test generated sitemap contains base directory in URLs
* Add changeset
* test: Add `clean` helper to loaded fixture API
Adds a method that when called will remove the loaded fixture’s dist directory using `rimraf`.
* test: Clean up between sitemap/RSS tests
* See if letting rimraf retry more helps…
* Add logging to double check nothing’s running in parallel
* Remove logging & double check clean up actually succeeds
* Try using basic Node.js to clean up dist
* Remove logging/checks
* Remove stray unnecessary `async` keyword
* Supports hoisted scripts in the static build
* Adds a changeset
* Update packages/astro/src/core/build/internal.ts
Co-authored-by: Evan Boehs <evan@boehs.org>
* Update based on feedback
* Fix lint
* Fix getting hoist script for Windows
* Try with the pre compiler
* use compiler 0.8.2
* update compiler version
* update yarn.lock
Co-authored-by: Evan Boehs <evan@boehs.org>
* Add verbose logging to create-astro
* Tell user to use the verbose flag when encountering the MISSING_REF error
* Create changeset
* Add information in README
* Format
* Use switch statement instead of if and if else blocks
* Update packages/create-astro/src/logger.ts
Make if statement easier to read
Co-authored-by: Evan Boehs <evan@boehs.org>
Co-authored-by: Evan Boehs <evan@boehs.org>
* [ci] collect stats
* [ci] update lockfile (#2388)
Co-authored-by: FredKSchott <FredKSchott@users.noreply.github.com>
* Fixes for blog and docs examples (#2373)
* Fixes for blog and docs examples
* Adds a changeset
* Upgrade the compiler version
* Use a global style tag
* Skip on windows temporarily
* [ci] yarn format
* Fixes Lit support in the static build
* Adds a changeset
* test
* Upgrade lit-labs/ssr
* Conditional
* Testing again
* remove debugging code
* changeset
Co-authored-by: FredKSchott <FredKSchott@users.noreply.github.com>
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
* Fix use of frameworks in the static build
* Adding a changeset
* fix typescript
* Empty out the directory before running the builds
* Use a util to empty the directory
* Only empty the outdir if needed
* Move prepareOutDir to its own module
* Prepare outDir is actually sync
* Fix: static-build with .md pages
This fixes the `--experimental-static-build` flag to work with markdown
pages.
* Adds a changeset
* Account for difference in specifier on windows
* Fix issue with plugins running twice in dev and build
* nit: only patch plugins
* nit: only patch plugins
* nit: only solve for create-vite
* nit: only solve for create-vite
* Create seven-mice-do.md
Co-authored-by: Fred K. Schott <fkschott@gmail.com>
* Handle loading the Code package
Fixes#2329
* Use Code the normal way
* Adds a changeset
* Only resolve browser path if there is no common ancestor
* Update examples/fast-build/src/pages/index.astro
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
* Fix subpath support regressions
* Adds a changeset
* Update tests to reflect relative URL change
* Pick a different port and hopefully windows works
* Remove bad lint warning
* Better handling of relative paths
* or
* Fixes use with pageUrlFormat
* Update the pageDirectoryUrl test
* Update svelte version in renderer-svelte
I am having funny console logs saying that my svelte component `received an unexpected slot "default".`. This issue is described here: https://github.com/sveltejs/kit/issues/981
Supposedly, updating svelte to version 3.44.3 solves this issue. I couldn't test it, though.
* Update Svelte to 3.44.3 to get rid of console warning that component receives an unexpected slot "default".
* Revert "Revert "Implement hydrated components in the static build (#2260)""
This reverts commit 17ac18e88c.
* Only resolve specifiers in the static build
* Adding a changeset
* Fix the client-only test
* Don't overwrite the stack when using verbose logging
This makes it so that if the compiler panics and `--verbose` logging is
on (debug level), we don't replace the stack trace.
* Adds a changeset
* fix: inject `fetch` only if not declared
* test: improve fetch test
* chore(lint): Prettier fix
* chore: trigger ci
* fix: improve type narrowing
Co-authored-by: GitHub Action <github-action@users.noreply.github.com>
* Make aliases work on windows
Change all occurrences of path.posix to path.
* Remove console log statement
* Update index.ts
* Update index.ts
* Update index.ts
* Edit changeset
* Makes Astro.resolve return root-relative paths
* Adds a changeset
* Update the compiler version and PR review
* Fix linting
* [ci] Prettier fix
* Remove use of vitifyURL
Co-authored-by: GitHub Action <github-action@users.noreply.github.com>
* Adding check to make sure the hydration directive is valid
* remove temp debug logging
* Adding a check for media query with client:media + small refactor
* adding changeset
Co-authored-by: Tony Sullivan <tony.sullivan@hyperlab.se>
* Render void elements as self-closing tags
* changeset
* nit: only check void element names if there is no child content
* nit: only check void element names if there is no child content
* add tests
* Add a helpful message for the "could not find commit hash for ..." error. This error mostly shows when someone tries to initialize a new project but git is not installed on their system.
* 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
* 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>
* 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
* 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>
* Support for using a subpath
* Update the readme
* Fix the package name
* Adds a changeset
* Ensure that public/ must be loaded from the subpath
* Update preview to use the new paths
* Use exact compiler version
* Use the newest version
* Use range again
* Use newer range
* 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>
* Revert "Revert "feat: improve `astro.config` loading by support `.cjs`, `.js`, and `.ts` files""
This reverts commit a26f7a2088.
* fix: throw when filename is specified but not found
* chore: @proload/core@0.2.1
* refactor: simplify to use Proload's filePath option
* fix: move to @proload/plugin-tsm
* Update packages/astro/src/core/config.ts
Co-authored-by: Jonathan Neal <jonathantneal@hotmail.com>
Co-authored-by: Jonathan Neal <jonathantneal@hotmail.com>
* 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>
* Expose name on host component for Vue devtools
* Add changeset
* Update changeset to patch from minor
* [ci] collect stats
* [ci] collect stats
Co-authored-by: leviceccato <leviceccato@users.noreply.github.com>
Co-authored-by: Matthew Phillips <matthew@matthewphillips.info>
* Adds the `astro check` command.
This adds `astro check`, which runs type checking (and general error
checking) on Astro projects.
* print the number of errors found
* Adds a changeset
* Add cli docs
* Upgrade the language server version
* Prevent linting the console.logs
* 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
* 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
* create-astro: Format console logs and fix message about default renderers
Format the console log statements so the code is easier to read
Add a check to see if the renderers array is empty and only show the message about using the templates default renderers if it isn't
* Add changeset
* Implementation of hoisted scripts
* Use the facade id
* Adds docs on hoisted scripts
* Don't try to run rollup if there are no hoisted scripts
* Handle scripts possibly being undefined (client:only)
* Get rid of changes to the portfolio example
* Adds a changeset
* Remove a todo
* Fix lint errors
* Rename TransformResult property to hoistedScripts
* Move Hoisted Scripts docs to astro-components page
* Fixes lint errors
* Fix path join for windows