Commit graph

42 commits

Author SHA1 Message Date
Jacob Lamb
d2f2a11cdb
Improve Package Detection (#8306) 2023-09-06 17:15:10 +08:00
natemoo-re
e0d1439f2a [ci] format 2023-08-16 19:39:52 +00:00
Nate Moore
e6e1de4f08
[create-astro] verify connectivity and --template (#8102)
* feat(create-astro): verify that --template exists

* feat: verify internet connectivity

* chore: skip connectivity check on --dry-run

* chore: fix lint
2023-08-16 14:37:43 -05:00
natemoo-re
1e9902177d [ci] format 2023-08-14 19:25:29 +00:00
Nate Moore
44cf30a252
chore: slim create-astro deps (#8077) 2023-08-14 14:23:14 -05: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
Bjorn Lu
de5a25f4e9
Fix changeset publish (#6923) 2023-04-27 22:55:48 +08:00
Bjorn Lu
465a1a5efe
Fix changeset version run (#6917) 2023-04-27 17:15:58 +08:00
natemoo-re
6a59531ff9 [ci] format 2023-02-06 16:21:48 +00: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
Le Minh Tri
21a55b3276
test(create-astro): correct wrong argument (#5812) 2023-01-11 00:57:16 +08:00
natemoo-re
814327f409 [ci] format 2022-10-26 15:16:54 +00:00
Nate Moore
0408376281
[Create Astro] Improved prompts, template handling, Houston (#5088)
* feat(create-astro): add houston, improve prompts

* refactor(create-astro): move to giget

* chore: add changeset

* chore: update lockfile

* test(create-astro): update tests to match new output

* chore: prefer named functions

* fix: update template prompt

* fix: update typescript message

* chore: add explicit --skip-houston flag

* test(create-astro): skip flaky typescript test

Co-authored-by: Nate Moore <nate@astro.build>
2022-10-26 10:13:56 -05:00
matthewp
6ce8ae261f [ci] format 2022-09-22 18:39:14 +00: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
HiDeoo
c84d85ba4d
Add support for running create-astro in cloned empty git repository (#4805) 2022-09-20 08:30:13 -04: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
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. Schott
4d6d8644e6
SImplify "astro add" by removing confusing multi-select (#3715)
* wip

* update create-astro for new astro add

* update copy

* update git prompt

* Update packages/astro/src/core/logger/node.ts

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

* Update packages/create-astro/test/install-step.test.js

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

* update git prompt

* update test

Co-authored-by: Chris Swithinbank <swithinbank@gmail.com>
2022-06-27 14:15:51 -07:00
Tony Sullivan
b8c6dabfb7
Enables eslint on the full repo and adds a rule for no only() tests (#3659)
* enabling eslint on the all packages and tests

* enabling for all packages

* TEMP: adding an only() test to verify it fails CI

* using our eslint config and ignore in CI

* removing the temporary .only() test

* update lock file

* lint: fixing new test with a no-shadow warning

* chore: update lock file
2022-06-22 15:59:49 +00:00
Ben Holmes
c8f5fa35c4
Feat: [create astro] git step (#3227)
* 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
2022-04-29 11:45:43 -04:00
bholmesdev
e2f7ef8b44 [ci] format 2022-04-28 00:59:36 +00:00
Ben Holmes
b7cd695884
Feat: [create astro] replace component selector with "astro add" (#3223)
* feat: remove component framework selector

* feat: update templates to use "basics"

* feat: add "astro add" cli step

* tests: astro add step

* fix: reset env for pnpm tests

* fix: update install step test

* chore: remove "frameworks" step from tests

* deps: remove node-fetch from create-astro

* chore: changeset

* fix: use "preferLocal" for astro add command

* refactor: remove POSTPROCESS_FILES

* feat: add --yes flag to simplify astro add

* feat: bring back minimal option as "completely empty"
2022-04-27 20:58:18 -04:00
Ben Holmes
00fc1326ed
Refactor/clean create astro logs (#3212)
* refactor: simplify dir error log to avoid wrapped text

* refactor: remove redundant "issue" callout

* chore: changeset

* chore: update tests for new dir log
2022-04-26 20:38:31 -04:00
bholmesdev
9927e0f120 [ci] format 2022-04-26 15:25:23 +00:00
Ben Holmes
38e5e9e982
Feat: create astro add install step (#3190)
* feat: add instlal step with pkg manager detection

* feat: add package emoji for style points

* feat: update next steps to match pkg manager

* refactor: extract some create-astro test utils

* refactor: extract promp msgs to utils

* chore: add install step tests

* chore: changeset

* fix: remove directory test skip

* fix: unset env variables after install step test

* deps: add execa to create-astro

* refactor: use execa for install step

* chore: remove old comment

* fix: rework install step test for node 14?

* chore: remove "politely stolen" footnote

* temp: show stdout dialog

* feat: remove debugging logs, add dryrun flag for testing

* chore: more stray logs

* fix: remove rmdir
2022-04-26 11:24:24 -04:00
natemoo-re
84b863df6a [ci] format 2022-04-21 20:38:07 +00:00
Ben Holmes
7c49194ca2
Feat: [create astro] add directory prompt (#3168)
* 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
2022-04-21 16:36:48 -04:00
Fred K. Schott
1335797903
update prettier width (#2968) 2022-04-02 14:15:41 -06:00
Nate Moore
d08ddaf5b9
Move from yarn to pnpm (#2455)
* chore: `yarn` => `pnpm`

* docs: `yarn` => `pnpm`

* chore(ci): yarn => pnpm

* chore(ci): update pnpm cache path

* fix: add missing deps

* fix: add missing deps

* test: add package.json to all test fixtures

* chore: improve hoisting behavior

* chore: move turbo into package.json

* chore: update npmrc

* fix: add missing `debug` dependency

* chore: remove prepare script

* test: fix new tests

* fix: fully resolve renderer paths and `astro/internal` path

* chore: update lockfile

* chore: remove log

* fix: resolve renderers in vite-plugin-jsx

* fix: prefer public-hoist-pattern to shamefully-hoist

* chore: ignore @babel/core peer warning

* chore: update dependencies

* test: add autoprefixer as explicit dep

* chore: update `.npmrc` file in examples

* chore: update dependencies

* fix: resolve renderer dependencies in static build

* fix: static build renderer resolution

* chore: fix smoke tests

* chore: hoist autoprefixer

* chore: update lockfile

* attempt: use full file:// path on Windows

* attempt: use astro/internal

* attempt: optimize astro/internal

* attempt: expose ./internal.js

* chore: add missing package.json files

* attempt: resolve astro/internal path

* chore: tidy package.json

* chore: update lockfile

* chore: update deps

* chore: update deps

* chore: yarn -> pnpm

* attempt: explicit /@fs urls

* attempt: explicit /@fs urls

* chore: update all examples for pnpm

* chore: fix hoisting for with-vite-plugin-pwa

* chore(ci): fix sharp install

* chore: update with-vite-plugin-pwa example

* fix: pin vite-plugin-pwa to 0.11.11

* fix: add workbox-window to vite-plugin-pwa deps

* refactor: use pnpm update --recursive

Co-authored-by: JuanM04 <me@juanm04.com>

* chore: yarn => pnpm

* chore: yarn => pnpm

* fix: update smoke test to skip examples which don't work in static build

* update lockfile

* chore: update .npmrc files

* chore: update lockfile

* fix: smoke script

* chore: update .npmrc file

* fix: return to shamefully-hoist (shamefully)

* chore: update lockfile

* fix(smoke): ignore scripts for smoke tests

* fix: update example to disable renderers

* chore: bump version

* chore(ci): fix smoke tests

* attempt: disable --frozen-lockfile for smoke tests

* chore: update smoke test

* chore: fix rebase issue

* chore: update lockfile

* fix: smoke tests

* fix(ci): run external smoke tests first

* fix(ci): run syntax

* chore: update lockfile

* fix(ci): ensure submodules are up-to-date

* fix(ci): ensure submodules are up-to-date

* chore: update lockfile

* chore: update for webapi

* chore: silence node:* warnings

* chore: update deps

* fix(ci): persist generated webapi assets

* fix(ci): webapi build script

* chore(ci): remove custom node caching

* chore: keep turbo.json

* chore: update turbo, ignore create-astro

* chore: update deps

* fix(ci): test command

* chore(ci): update test script

Co-authored-by: JuanM04 <me@juanm04.com>
2022-03-08 15:46:11 -06:00
Jonathan Neal
6ddd7678ff
Use accessible indentation (#2253) 2021-12-22 16:11:05 -05:00
Jonathan Neal
305ce4182f
Cleanup test debugging (#2250) 2021-12-22 14:25: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
natemoo-re
1bbe98ae54 [ci] yarn format 2021-07-07 20:10:09 +00:00
Matthew Phillips
d8ceff5fac
Implements templates from external repos (#603)
* Implements templates from external repos

* Adds a changeset
2021-07-06 15:14:22 -04:00
Drew Powers
9d3cd49410
Improve templates test (#377) 2021-06-11 15:07:30 -06:00
Drew Powers
a660e49f80
Add integration test for templates (#372) 2021-06-10 10:30:48 -06:00
matthewp
a7594cfcdf [ci] yarn format 2021-06-08 15:12:07 +00:00
Fred K. Schott
6bca7c83a7
redesign create-astro (#301)
* redesign create astro

* add changeset

* Use npm start

* Update the astro version

* Adds the changeset

Co-authored-by: Fred Schott <fks@Freds-MBP.attlocal.net>
Co-authored-by: Matthew Phillips <matthew@skypack.dev>
2021-06-08 11:10:56 -04:00
Drew Powers
a0055bd985
Create astro fixes (#267)
* Remove create-astro from workspace

* Improve contrast ratio

* Swap blank template for blog template

* Remove counter components from blog template

* Use `latest` astro version
2021-05-28 10:06:22 -06:00
木杉
760a7a5509
Support skip install deps (#242)
* Support skip install deps

* fmt

* Create new-hats-deliver.md

Co-authored-by: Nate Moore <natemoo-re@users.noreply.github.com>
2021-05-25 17:16:49 -05:00
Drew Powers
f5ecbee192
Add test for npm init astro (#238)
* Add test for npm init astro

* Use Lerna to run test
2021-05-24 16:18:56 -06:00