diff --git a/.changeset/modern-ghosts-dress.md b/.changeset/modern-ghosts-dress.md new file mode 100644 index 0000000000..6d3cdbfd3c --- /dev/null +++ b/.changeset/modern-ghosts-dress.md @@ -0,0 +1,25 @@ +--- +'@backstage/core-app-api': patch +'@backstage/core-components': patch +'@backstage/core-plugin-api': patch +'@backstage/dev-utils': patch +'@backstage/test-utils': patch +'@backstage/test-utils-core': patch +'@backstage/plugin-api-docs': patch +'@backstage/plugin-catalog': patch +'@backstage/plugin-catalog-import': patch +'@backstage/plugin-catalog-react': patch +'@backstage/plugin-cost-insights': patch +'@backstage/plugin-explore': patch +'@backstage/plugin-git-release-manager': patch +'@backstage/plugin-lighthouse': patch +'@backstage/plugin-pagerduty': patch +'@backstage/plugin-rollbar': patch +'@backstage/plugin-scaffolder': patch +'@backstage/plugin-search': patch +'@backstage/plugin-sentry': patch +'@backstage/plugin-tech-radar': patch +'@backstage/plugin-techdocs': patch +--- + +Switched `@types/react` dependency to request `*` rather than a specific version. diff --git a/.changeset/sharp-berries-fail.md b/.changeset/sharp-berries-fail.md new file mode 100644 index 0000000000..a713b3fdee --- /dev/null +++ b/.changeset/sharp-berries-fail.md @@ -0,0 +1,34 @@ +--- +'@backstage/create-app': patch +--- + +Add a complete prettier setup to the created project. Prettier used to only be added as a dependency to create apps, but there wasn't a complete setup included that makes it easy to run prettier. That has now changed, and the new `prettier:check` command can be used to check the formatting of the files in your created project. + +To apply this change to an existing app, a couple of changes need to be made. + +Create a `.prettierignore` file at the root of your repository with the following contents: + +``` +dist +dist-types +coverage +.vscode +``` + +Next update the root `package.json` by bumping the prettier version and adding the new `prettier:check` command: + +```diff + "scripts": { + ... ++ "prettier:check": "prettier --check .", + ... + }, + ... + "dependencies": { + ... +- "prettier": "^1.19.1" ++ "prettier": "^2.3.2" + } +``` + +Finally run `yarn prettier --write .` on your project to update the existing formatting. diff --git a/.changeset/small-actors-sing.md b/.changeset/small-actors-sing.md new file mode 100644 index 0000000000..40de0f363f --- /dev/null +++ b/.changeset/small-actors-sing.md @@ -0,0 +1,12 @@ +--- +'@backstage/create-app': patch +--- + +Switched `@types/react-dom` dependency to of the app package to request `*` rather than a specific version. + +To apply this change to an existing app, change the following in `packages/app/package.json`: + +```diff +- "@types/react-dom": "^16.9.8", ++ "@types/react-dom": "*", +``` diff --git a/.github/workflows/e2e-win.yml b/.github/workflows/e2e-win.yml index 1844700cea..3e2fbe0863 100644 --- a/.github/workflows/e2e-win.yml +++ b/.github/workflows/e2e-win.yml @@ -25,6 +25,13 @@ jobs: name: Node ${{ matrix.node-version }} on ${{ matrix.os }} steps: + # In order to have the create-app template function as if it was downloaded from NPM + # we need to make sure we checkout files with LF line endings only + - name: Set git to use LF + run: | + git config --global core.autocrlf false + git config --global core.eol lf + - uses: actions/checkout@v2 - name: use node.js ${{ matrix.node-version }} diff --git a/packages/app/package.json b/packages/app/package.json index 5fa6fe2198..1260deed1a 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -68,7 +68,7 @@ "@types/jest": "^26.0.7", "@types/jquery": "^3.3.34", "@types/node": "^14.14.32", - "@types/react-dom": "^16.9.8", + "@types/react-dom": "*", "@types/zen-observable": "^0.8.0", "cross-env": "^7.0.0", "cypress": "^7.3.0", diff --git a/packages/core-app-api/package.json b/packages/core-app-api/package.json index 476b7dc581..204550323c 100644 --- a/packages/core-app-api/package.json +++ b/packages/core-app-api/package.json @@ -35,7 +35,7 @@ "@backstage/theme": "^0.2.9", "@material-ui/core": "^4.12.2", "@material-ui/icons": "^4.9.1", - "@types/react": "^16.9", + "@types/react": "*", "@types/prop-types": "^15.7.3", "prop-types": "^15.7.2", "react": "^16.12.0", diff --git a/packages/core-components/package.json b/packages/core-components/package.json index 3ac868aa04..998af15f19 100644 --- a/packages/core-components/package.json +++ b/packages/core-components/package.json @@ -39,7 +39,7 @@ "@testing-library/react-hooks": "^3.4.2", "@types/dagre": "^0.7.44", "@types/prop-types": "^15.7.3", - "@types/react": "^16.9", + "@types/react": "*", "@types/react-sparklines": "^1.7.0", "@types/react-text-truncate": "^0.14.0", "classnames": "^2.2.6", diff --git a/packages/core-plugin-api/package.json b/packages/core-plugin-api/package.json index fd0268604f..a0057c1b0c 100644 --- a/packages/core-plugin-api/package.json +++ b/packages/core-plugin-api/package.json @@ -32,7 +32,7 @@ "@backstage/config": "^0.1.6", "@backstage/theme": "^0.2.9", "@material-ui/core": "^4.12.2", - "@types/react": "^16.9", + "@types/react": "*", "history": "^5.0.0", "prop-types": "^15.7.2", "react": "^16.12.0", diff --git a/packages/create-app/templates/default-app/.prettierignore b/packages/create-app/templates/default-app/.prettierignore new file mode 100644 index 0000000000..dfb0f1cd11 --- /dev/null +++ b/packages/create-app/templates/default-app/.prettierignore @@ -0,0 +1,4 @@ +dist +dist-types +coverage +.vscode diff --git a/packages/create-app/templates/default-app/README.md b/packages/create-app/templates/default-app/README.md index 07cf6fd136..8c7c4373fe 100644 --- a/packages/create-app/templates/default-app/README.md +++ b/packages/create-app/templates/default-app/README.md @@ -7,4 +7,4 @@ To start the app, run: ```sh yarn install yarn dev -``` \ No newline at end of file +``` diff --git a/packages/create-app/templates/default-app/app-config.yaml.hbs b/packages/create-app/templates/default-app/app-config.yaml.hbs index dc296e5e62..9c35c58c33 100644 --- a/packages/create-app/templates/default-app/app-config.yaml.hbs +++ b/packages/create-app/templates/default-app/app-config.yaml.hbs @@ -32,9 +32,9 @@ backend: user: ${POSTGRES_USER} password: ${POSTGRES_PASSWORD} # https://node-postgres.com/features/ssl - #ssl: require # see https://www.postgresql.org/docs/current/libpq-ssl.html Table 33.1. SSL Mode Descriptions (e.g. require) - #ca: # if you have a CA file and want to verify it you can uncomment this section - # $file: /ca/server.crt + # ssl: require # see https://www.postgresql.org/docs/current/libpq-ssl.html Table 33.1. SSL Mode Descriptions (e.g. require) + # ca: # if you have a CA file and want to verify it you can uncomment this section + # $file: /ca/server.crt {{/if}} cache: store: memory diff --git a/packages/create-app/templates/default-app/catalog-info.yaml.hbs b/packages/create-app/templates/default-app/catalog-info.yaml.hbs index 265864e235..e01ce8f756 100644 --- a/packages/create-app/templates/default-app/catalog-info.yaml.hbs +++ b/packages/create-app/templates/default-app/catalog-info.yaml.hbs @@ -5,8 +5,8 @@ metadata: description: An example of a Backstage application. # Example for optional annotations # annotations: - # github.com/project-slug: backstage/backstage - # backstage.io/techdocs-ref: dir:. + # github.com/project-slug: backstage/backstage + # backstage.io/techdocs-ref: dir:. spec: type: website owner: john@example.com diff --git a/packages/create-app/templates/default-app/package.json.hbs b/packages/create-app/templates/default-app/package.json.hbs index 7ae86c0fbc..3f913102cb 100644 --- a/packages/create-app/templates/default-app/package.json.hbs +++ b/packages/create-app/templates/default-app/package.json.hbs @@ -19,6 +19,7 @@ "test:all": "lerna run test -- --coverage", "lint": "lerna run lint --since origin/master --", "lint:all": "lerna run lint --", + "prettier:check": "prettier --check .", "create-plugin": "backstage-cli create-plugin --scope internal --no-private", "remove-plugin": "backstage-cli remove-plugin" }, @@ -37,7 +38,7 @@ "@spotify/prettier-config": "^7.0.0", "concurrently": "^6.0.0", "lerna": "^4.0.0", - "prettier": "^1.19.1" + "prettier": "^2.3.2" }, "prettier": "@spotify/prettier-config", "lint-staged": { diff --git a/packages/create-app/templates/default-app/packages/app/package.json.hbs b/packages/create-app/templates/default-app/packages/app/package.json.hbs index 219f503aa0..c443b45dc7 100644 --- a/packages/create-app/templates/default-app/packages/app/package.json.hbs +++ b/packages/create-app/templates/default-app/packages/app/package.json.hbs @@ -38,7 +38,7 @@ "@testing-library/user-event": "^12.0.7", "@types/jest": "^26.0.7", "@types/node": "^14.14.32", - "@types/react-dom": "^16.9.8", + "@types/react-dom": "*", "cross-env": "^7.0.0", "cypress": "^7.3.0", "eslint-plugin-cypress": "^2.10.3", diff --git a/packages/create-app/templates/default-app/packages/app/public/index.html b/packages/create-app/templates/default-app/packages/app/public/index.html index 5653173480..b93896c6da 100644 --- a/packages/create-app/templates/default-app/packages/app/public/index.html +++ b/packages/create-app/templates/default-app/packages/app/public/index.html @@ -65,7 +65,7 @@ <% } %> - +