Merge branch 'master' into stack-overflow-api

This commit is contained in:
Brian Fletcher
2022-08-25 08:59:46 +01:00
committed by GitHub
743 changed files with 10184 additions and 4168 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend-module-msgraph': patch
---
Fixed a bug in the `MicrosoftGraphEntityProvider` that ignored the `userExpand` and `groupExpand` configuration parameters
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/backend-common': patch
---
Workaround support for `swc` instead of `sucrase`
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-auth-node': patch
'@backstage/plugin-permission-node': patch
---
Minor update to tests
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-adr-backend': patch
---
Continue processing subsequent entities when an error occurs in collator
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-stack-overflow-backend': patch
---
Now requests all questions available using pagination. Default max page is set to 100, with a configurable `maxPage` option on the collator.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-scaffolder': patch
---
Fix bug with empty strings in `EntityPicker`
+8
View File
@@ -0,0 +1,8 @@
---
'@backstage/plugin-cloudbuild': patch
'@backstage/plugin-scaffolder': patch
'@backstage/plugin-tech-insights': patch
'@backstage/plugin-techdocs': patch
---
Internal refactor to use more type safe code when dealing with route parameters.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend': minor
---
Removed the previously deprecated class `AtlassianAuthProvider`. Please use `providers.atlassian.create(...)` instead.
+10
View File
@@ -0,0 +1,10 @@
---
'@backstage/plugin-airbrake-backend': patch
'@backstage/plugin-catalog-backend-module-bitbucket-server': patch
'@backstage/plugin-dynatrace': patch
'@backstage/plugin-periskop-backend': patch
'@backstage/plugin-stack-overflow-backend': patch
'@backstage/plugin-vault-backend': patch
---
Switched to using node-fetch instead of cross-fetch as is standard for our backend packages
+16
View File
@@ -0,0 +1,16 @@
---
'@backstage/plugin-tech-insights': minor
---
Added the possibility to display check results of different types on a single scorecard.
- **BREAKING** Removed the `getScorecardsDefinition` method from the `TechInsightsApi` interface. Added the `getCheckResultRenderers` method that returns rendering components for given types.
- **BREAKING** The `CheckResultRenderer` type now exposes the `component` factory method that creates a React component used to display a result of a provided check result.
- The `TechInsightsClient` constructor accepts now the optional `renderers` parameter that can be used to inject a custom renderer.
- **BREAKING** The `title` parameter in the `EntityTechInsightsScorecardContent` and `EntityTechInsightsScorecardCard` components is now mandatory.
- The `jsonRulesEngineCheckResultRenderer` used to render `json-rules-engine` check results is exported.
- The `BooleanCheck` component that can be used to render other check results types is also exported.
If you were overriding the `getScorecardsDefinition` method to adjust the rendering of check results, you should now provide a custom renderer using `renderers` parameter in the `TechInsightsClient` class.
See the [README](https://github.com/backstage/backstage/tree/master/plugins/tech-insights/README.md) for more details.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend': minor
---
Renamed the `RedirectInfo` type to `OAuthStartResponse`
+63
View File
@@ -0,0 +1,63 @@
---
'@backstage/cli': patch
---
Switch out `sucrase` for `swc` for transpilation.
`sucrase` is a little more relaxed when it comes to supporting the ways of mocking in `jest`. You might have to make some changes to your tests to meet the `jest` standard and spec if your tests seems to start failing.
Mocks that look like this are invalid, and they will throw a reference error in line with the `jest` documentation [here on example 3](https://jestjs.io/docs/es6-class-mocks#calling-jestmock-with-the-module-factory-parameter)
```ts
const mockCommandExists = jest.fn();
jest.mock('command-exists', () => mockCommandExists);
```
You might need to update these mocks to look a little like the following to defer the call to the `jest.fn()` spy until the mock is called.
```ts
const mockCommandExists = jest.fn();
jest.mock(
'command-exists',
() =>
(...args: any[]) =>
commandExists(...args),
);
```
Also, imports are immutable. So it means that you might get some errors when trying to use `jest.spyOn` with starred imports. You might see an error like this:
```log
TypeError: Cannot redefine property: executeFrameHandlerStrategy
at Function.defineProperty (<anonymous>)
20 | import { AuthResolverContext } from '../types';
21 |
> 22 | const mockFrameHandler = jest.spyOn(
| ^
23 | helpers,
24 | 'executeFrameHandlerStrategy',
25 | ) as unknown as jest.MockedFunction<
```
This happens when you try to do `import * as something from './something'` and then `jest.spyOn(something, 'test)`. You will need to add a `jest.mock` call to mock out the required starred import to return `jest.fn()` functions from the start. Something like this fixes the above test:
```ts
jest.mock('../../helpers', () => ({
executeFrameHandlerStrategy: jest.fn(),
}));
```
You can also remove any occurrence of `hot(App)` and any import of `react-hot-loader` if you're using the that package locally, as all this has now been replaced with [React Refresh](https://www.npmjs.com/package/react-refresh) which you will get out of the box with the new CLI.
**Note** If you're experiencing difficulties with running tests after the migration, please reach out to us on Discord to see if we can help, or raise an issue. But in the meantime you can switch back to the existing behaviour by using the following config in your root `package.json`.
```json
"jest": {
"transform": {
"\\.(js|jsx|ts|tsx|mjs|cjs)$": "@backstage/cli/config/jestSucraseTransform.js",
"\\.(bmp|gif|jpg|jpeg|png|frag|xml|svg|eot|woff|woff2|ttf)$": "@backstage/cli/config/jestFileTransform.js",
"\\.(yaml)$": "jest-transform-yaml"
}
}
```
+41 -1
View File
@@ -171,5 +171,45 @@
"@backstage/plugin-vault-backend": "0.2.1",
"@backstage/plugin-xcmetrics": "0.2.28"
},
"changesets": []
"changesets": [
"beige-monkeys-add",
"beige-pumas-tap",
"clever-beans-turn",
"cold-frogs-kiss",
"dry-games-end",
"eight-spies-protect",
"five-carrots-pay",
"fresh-rabbits-juggle",
"gorgeous-swans-kiss",
"happy-kiwis-look",
"hot-files-begin",
"hot-suits-glow",
"hungry-dogs-agree",
"lazy-snakes-film",
"light-beans-share",
"lucky-points-wash",
"nervous-rivers-sneeze",
"old-tables-joke",
"renovate-7d3b357",
"renovate-c98c336",
"rotten-books-crash",
"rude-books-rush",
"shaggy-chicken-behave",
"sharp-swans-suffer",
"shiny-lobsters-fix",
"silent-kings-live",
"slimy-zebras-reply",
"spicy-cherries-remember",
"strong-games-kiss",
"strong-planes-return",
"tame-papayas-protect",
"techdocs-jeans-wait",
"tiny-oranges-thank",
"tough-dolphins-smile",
"two-planets-provide",
"weak-yaks-learn",
"wild-sheep-roll",
"witty-cats-wink",
"young-trees-rescue"
]
}
+44
View File
@@ -0,0 +1,44 @@
---
'@backstage/plugin-allure': patch
'@backstage/plugin-apache-airflow': patch
'@backstage/plugin-app-backend': patch
'@backstage/plugin-auth-backend': patch
'@backstage/plugin-bitrise': patch
'@backstage/plugin-catalog': patch
'@backstage/plugin-catalog-graphql': patch
'@backstage/plugin-cicd-statistics': patch
'@backstage/plugin-circleci': patch
'@backstage/plugin-cloudbuild': patch
'@backstage/plugin-code-climate': patch
'@backstage/plugin-config-schema': patch
'@backstage/plugin-cost-insights': patch
'@backstage/plugin-dynatrace': patch
'@backstage/plugin-explore': patch
'@backstage/plugin-explore-react': patch
'@backstage/plugin-firehydrant': patch
'@backstage/plugin-gcalendar': patch
'@backstage/plugin-gcp-projects': patch
'@backstage/plugin-github-actions': patch
'@backstage/plugin-github-deployments': patch
'@backstage/plugin-github-pull-requests-board': patch
'@backstage/plugin-gitops-profiles': patch
'@backstage/plugin-graphql-backend': patch
'@backstage/plugin-home': patch
'@backstage/plugin-ilert': patch
'@backstage/plugin-jenkins-backend': patch
'@backstage/plugin-kubernetes-common': patch
'@backstage/plugin-newrelic': patch
'@backstage/plugin-newrelic-dashboard': patch
'@backstage/plugin-pagerduty': patch
'@backstage/plugin-rollbar': patch
'@backstage/plugin-rollbar-backend': patch
'@backstage/plugin-search-backend-module-pg': patch
'@backstage/plugin-sentry': patch
'@backstage/plugin-shortcuts': patch
'@backstage/plugin-splunk-on-call': patch
'@backstage/plugin-tech-radar': patch
'@backstage/plugin-user-settings': patch
'@backstage/plugin-xcmetrics': patch
---
Minor API signatures cleanup
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/cli': patch
---
Updated dependency `@types/minimatch` to `^5.0.0`.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-auth-backend': patch
---
Cloudflare Access Provider: Add JWT to CloudflareAccessResult
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-gcalendar': patch
---
Upgrade `react-query:3` to `@tanstack/react-query:4`
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/dev-utils': patch
---
Removed the dependency and setup of `react-hot-loader`, since the `@backstage/cli` now uses `swc` with `React Refresh` instead.
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-scaffolder-backend': minor
'@backstage/plugin-scaffolder-common': minor
---
add entity metadata to the template info type
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-catalog-backend': patch
---
Include entity ref into error message when catalog policies fail
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-tech-insights-backend': patch
---
Changed the description of the `techdocsAnnotationFactName` fact.
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/plugin-tech-insights-backend': patch
'@backstage/plugin-tech-insights-node': patch
---
Support for timeout in FactRetrieverRegistrationOptions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-stack-overflow': patch
---
Support showing HTML entity references from the API response before rendering the question title to the list component.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-tech-insights-backend': patch
---
Modify Tech insight initialization to expose FactRetrieverEngine. Enables users to trigger fact retrieval manually or reschedule retrievers on runtime.
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/plugin-adr': patch
---
Fix parsing of ADR location which includes a trailing slash
+24
View File
@@ -0,0 +1,24 @@
---
'@backstage/create-app': patch
---
Added `EntityLinksCard` to the system `EntityPage`.
For an existing installation where you want to display the links card for entity pages of kind `system` you should make the following adjustment to `packages/app/src/components/catalog/EntityPage.tsx`
```diff
const systemPage = (
...
<Grid item md={6} xs={12}>
<EntityCatalogGraphCard variant="gridItem" height={400} />
</Grid>
+ <Grid item md={4} xs={12}>
+ <EntityLinksCard />
+ </Grid>
- <Grid item md={6}>
+ <Grid item md={8}>
<EntityHasComponentsCard variant="gridItem" />
</Grid>
...
);
```