Fixes for non-breaking typos and typos configuration

Signed-off-by: Andre Wanlin <awanlin@spotify.com>

More

Signed-off-by: Andre Wanlin <awanlin@spotify.com>
This commit is contained in:
Andre Wanlin
2026-04-29 16:53:20 -05:00
parent 84913005fd
commit 2f33a9f63f
41 changed files with 128 additions and 48 deletions
@@ -33,7 +33,7 @@ describe('Auth origin filtering', () => {
});
it('Will explode, invalid origin domain', () => {
const origin = 'https://test-1234.examplee.net';
const origin = 'https://test-1234.wrong-example.net';
expect(createOriginFilter(config)(origin)).toBeFalsy();
});
+1 -1
View File
@@ -37,7 +37,7 @@ export interface BackstageSignInResult {
/**
* Identity information to pass to the client rather than using the
* information that's embeeded in the token.
* information that's embedded in the token.
*/
identity?: BackstageUserIdentity;
}
@@ -1367,9 +1367,9 @@ export const all_groups_response: GitLabGroup[] = [
},
{
id: 8,
name: 'awsome-group',
name: 'awesome-group',
description: '',
full_path: 'awsome-group',
full_path: 'awesome-group',
},
];
@@ -476,12 +476,12 @@ export class GitlabDiscoveryEntityProvider implements EntityProvider {
);
// Modified files will be scheduled to a refresh
const addedEntities = this.createLocationSpecCommitedFiles(
const addedEntities = this.createLocationSpecCommittedFiles(
event.project,
added,
);
const removedEntities = this.createLocationSpecCommitedFiles(
const removedEntities = this.createLocationSpecCommittedFiles(
event.project,
removed,
);
@@ -563,7 +563,7 @@ export class GitlabDiscoveryEntityProvider implements EntityProvider {
* @param addedFiles - The array of added file paths.
* @returns An array of location specs.
*/
private createLocationSpecCommitedFiles(
private createLocationSpecCommittedFiles(
project: WebhookProjectSchema,
addedFiles: string[],
): LocationSpec[] {
@@ -402,7 +402,7 @@ describe('config', () => {
);
});
it('valid config with empyt topics', () => {
it('valid config with empty topics', () => {
const config = new ConfigReader({
catalog: {
providers: {
@@ -179,7 +179,7 @@ export class LdapClient {
}
}
// Check a shema for Google-specific patterns
// Check a schema for Google-specific patterns
private checkGoogleSchema(rootDSE: Entry): boolean {
try {
const objectClasses = this.parseSchemaValues(rootDSE.objectClasses);
@@ -137,7 +137,7 @@ describe('readLdapUsers', () => {
it('override default vendor configs', async () => {
const searchEntries: Entry[] = [
{
dn: 'dn-vaule',
dn: 'dn-value',
uid: 'uid-value',
description: 'description-value',
cn: 'cn-value',
@@ -256,7 +256,7 @@ export class DefaultCatalogProcessingEngine {
// non-catastrophic things such as due to validation errors, as well as if
// something fatal happens inside the processing for other reasons. In any
// case, this means we can't trust that anything in the output is okay. So
// just store the errors and trigger a stich so that they become visible to
// just store the errors and trigger a stitch so that they become visible to
// the outside.
if (!result.ok) {
// notify the error listener if the entity can not be processed.
@@ -260,7 +260,7 @@ export class DefaultEntitiesCatalog implements EntitiesCatalog {
// For performance reasons we invoke the count query only on the first
// request. The result is then embedded into the cursor for subsequent
// requests. Threfore this can be undefined here, but will then get
// requests. Therefore this can be undefined here, but will then get
// populated further down.
const shouldComputeTotalItems =
cursor.totalItems === undefined && !cursor.skipTotalItems;
@@ -57,7 +57,7 @@ describe('CatalogFilterBlueprint', () => {
`);
});
it('should allow overrding of inputs and config', async () => {
it('should allow overriding of inputs and config', async () => {
const extension = CatalogFilterBlueprint.makeWithOverrides({
name: 'test-name',
inputs: {
@@ -74,7 +74,7 @@ import { useApi } from '@backstage/core-plugin-api';
const catalogUnprocessedEntitiesApi = useApi(catalogUnprocessedEntitiesApiRef);
```
Note that if you are not rendering the `CatalogUnprocessedEntitiesPage` in the `App.tsx` tree, you will need to export the `catalogUnproccessedEntitiesPlugin` from your `plugins.ts` file to setup the plugin otherwise you will receive an error like `No implementation available for apiRef{plugin.catalog-unprocessed-entities.service}`
Note that if you are not rendering the `CatalogUnprocessedEntitiesPage` in the `App.tsx` tree, you will need to export the `catalogUnprocessedEntitiesPlugin` from your `plugins.ts` file to setup the plugin otherwise you will receive an error like `No implementation available for apiRef{plugin.catalog-unprocessed-entities.service}`
```typescript
// In packages/app/src/plugins.ts
+1 -1
View File
@@ -235,7 +235,7 @@ export const kubernetesPlugin = createBackendPlugin({
auth,
httpAuth,
}) {
// TODO: this could do with a cleanup and push some of this initalization somewhere else
// TODO: this could do with a cleanup and push some of this initialization somewhere else
if (config.has('kubernetes')) {
const initializer = KubernetesInitializer.create({
logger,
@@ -295,11 +295,11 @@ export class KubernetesProxy {
originalHeaders: IncomingHttpHeaders,
): KubernetesRequestAuth {
const obj: KubernetesRequestAuth = {};
const headerSplitted = header.split('-');
if (headerSplitted.length >= 4) {
const framework = headerSplitted[3].toLowerCase();
if (headerSplitted.length >= 5) {
const provider = headerSplitted.slice(4).join('-').toLowerCase();
const headerSplit = header.split('-');
if (headerSplit.length >= 4) {
const framework = headerSplit[3].toLowerCase();
if (headerSplit.length >= 5) {
const provider = headerSplit.slice(4).join('-').toLowerCase();
obj[framework] = { [provider]: originalHeaders[header] };
} else {
obj[framework] = originalHeaders[header];
@@ -189,7 +189,7 @@ describe('createGitLabMergeRequest', () => {
description: 'This is an important change',
removeSourceBranch: false,
targetPath: 'Subdirectory',
assingnee: 'John Doe',
assignee: 'John Doe',
};
mockDir.setContent({
[workspacePath]: {
@@ -465,7 +465,7 @@ describe('createGitLabMergeRequest', () => {
description: 'This is an important change',
removeSourceBranch: false,
targetPath: 'Subdirectory',
assingnee: 'John Doe',
assignee: 'John Doe',
};
mockDir.setContent({
[workspacePath]: {
@@ -804,7 +804,7 @@ function scaffoldingTracker(metrics: MetricsService) {
help: 'Duration of a task run',
labelNames: ['template', 'result'],
});
const promtStepCount = createCounterMetric({
const promStepCount = createCounterMetric({
name: 'scaffolder_step_count',
help: 'Count of step runs',
labelNames: ['template', 'step', 'result'],
@@ -942,7 +942,7 @@ function scaffoldingTracker(metrics: MetricsService) {
stepId: step.id,
status: 'completed',
});
promtStepCount.inc({
promStepCount.inc({
template,
step: step.name,
result: 'ok',
@@ -958,7 +958,7 @@ function scaffoldingTracker(metrics: MetricsService) {
}
async function markCancelled() {
promtStepCount.inc({
promStepCount.inc({
template,
step: step.name,
result: 'cancelled',
@@ -974,7 +974,7 @@ function scaffoldingTracker(metrics: MetricsService) {
}
async function markFailed() {
promtStepCount.inc({
promStepCount.inc({
template,
step: step.name,
result: 'failed',
@@ -141,7 +141,7 @@ export const isTaskOwner = createTaskPermissionRule({
createdBy: z
.array(z.string())
.describe(
'List of creater entity refs; only tasks created by these users will be viewable',
'List of creator entity refs; only tasks created by these users will be viewable',
),
}),
apply: (resource, { createdBy }) => {
@@ -35,7 +35,7 @@ describe('TemplateCategoryPicker', () => {
it('should post the error to errorApi if an errors is returned', async () => {
(useEntityTypeFilter as jest.Mock).mockReturnValue({
error: new Error('something broked'),
error: new Error('something broken'),
});
mockAlertApi.clearAlerts();
@@ -48,7 +48,7 @@ describe('TemplateCategoryPicker', () => {
expect(mockAlertApi.getAlerts().length).toBeGreaterThanOrEqual(1);
expect(mockAlertApi.getAlerts()[0]).toMatchObject({
message: expect.stringContaining('something broked'),
message: expect.stringContaining('something broken'),
severity: 'error',
});
});
@@ -54,7 +54,7 @@ const useStyles = makeStyles(
width: '100%',
},
}),
{ name: 'ScaffolderCustomFieldExtensionsPlaygroud' },
{ name: 'ScaffolderCustomFieldExtensionsPlayground' },
);
export const CustomFieldPlayground = ({
+1 -1
View File
@@ -68,7 +68,7 @@ export interface Config {
fuzziness?: 'AUTO' | number;
/**
* Minimum number of characters that must match exactly at the beginning of the qeury. Defaults to 0.
* Minimum number of characters that must match exactly at the beginning of the query. Defaults to 0.
*/
prefixLength?: number;
};
@@ -24,7 +24,7 @@ describe('HighlightedSearchResultText', () => {
<HighlightedSearchResultText
preTag="<tag>"
postTag="</tag>"
text="test <tag>highlighted</tag> restult <tag>text</tag>"
text="test <tag>highlighted</tag> result <tag>text</tag>"
/>,
);