Back to Backstage

Release v1.18.0

docs/releases/v1.18.0-changelog.md

1.51.0-next.2142.7 KB
Original Source

Release v1.18.0

@backstage/[email protected]

Minor Changes

  • 62f448edb0b5: Added a readDurationFromConfig function

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 9606ba0939e6: Deep visibility now also applies to values that are not covered by the configuration schema.

    For example, given the following configuration schema:

    ts
    // plugins/a/config.schema.ts
    export interface Config {
      /** @deepVisibility frontend */
      a?: unknown;
    }
    
    // plugins/a/config.schema.ts
    export interface Config {
      a?: {
        b?: string;
      };
    }
    

    All values under a are now visible to the frontend, while previously only a and a/b would've been visible.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 18619f793c94: Fixed two bugs in how the OAuth2Session type represents the underlying data. The expiresAt and backstageIdentity are now both optional, since that's what they are in practice. This is not considered a breaking change since it was effectively a bug in the modelling of the state that this type represents, and the type was not used in any other external contract.
  • 18619f793c94: The OAuth class which is used by all OAuth providers will now consider both the session expiration of both the Backstage identity as well as the upstream identity provider, and refresh the session with either of them is about to expire.
  • 6e30769cc627: Introduced experimental support for internationalization.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 18619f793c94: Added the optional expiresAt field that may now be part of a BackstageIdentityResponse.
  • 6e30769cc627: Introduced experimental support for internationalization.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 628ca7e458e4: Initial release

Patch Changes

@backstage/[email protected]

Minor Changes

  • 628ca7e458e4: Initial release

Patch Changes

@backstage/[email protected]

Minor Changes

  • 5f1a92b9f19f: Added AzureDevOpsCredentialsProvider to support multiple Azure DevOps organizations and deprecated AzureIntegrationConfig.credential and AzureIntegrationConfig.token in favour of AzureIntegrationConfig.credentials. You can now use specific credentials for different Azure DevOps (Server) organizations by specifying the organizations field on a credential:

    yaml
    integrations:
      azure:
        - host: dev.azure.com
          credentials:
            - organizations:
                - my-org
                - my-other-org
              clientId: ${AZURE_CLIENT_ID}
              clientSecret: ${AZURE_CLIENT_SECRET}
              tenantId: ${AZURE_TENANT_ID}
            - organizations:
                - yet-another-org
              personalAccessToken: ${PERSONAL_ACCESS_TOKEN}
    

    See the Azure integration documentation for more information.

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 2d2fc9d20ebb: Additional fix for Gitiles auth links
  • cb2e19d82d95: Gitiles: Fixed auth prefix issue
  • Updated dependencies

@techdocs/[email protected]

Minor Changes

  • 10a86bd4ae12: Add optional config and cli option for techdocs to specify default mkdocs plugins.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 8513cd7d00e3: New module for @backstage/plugin-auth-backend that adds a GCP IAP auth provider.

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 23af27f5ce79: New module for @backstage/plugin-auth-backend that adds a GitHub auth provider.

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 080cc7794700: New module for @backstage/plugin-auth-backend that adds a GitLab auth provider.

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 8513cd7d00e3: New module for @backstage/plugin-auth-backend that adds a Google auth provider.

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 101cf1d13b04: New module for @backstage/plugin-auth-backend that adds a oauth2 auth provider.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 8513cd7d00e3: Introduced a new system for building auth providers for @backstage/plugin-auth-backend, which both increases the amount of code re-use across providers, and also works better with the new backend system.

    Many existing types have been moved from @backstage/plugin-auth-backend in order to avoid a direct dependency on the plugin from modules.

    Auth provider integrations are now primarily implemented through a pattern of creating "authenticators", which are in turn specific to each kind of integrations. Initially there are two types: createOAuthAuthenticator and createProxyAuthenticator. These come paired with functions that let you create the corresponding route handlers, createOAuthRouteHandlers and createProxyAuthRouteHandlers, as well as provider factories, createOAuthProviderFactory and createProxyAuthProviderFactory. This new authenticator pattern allows the sign-in logic to be separated from the auth integration logic, allowing it to be completely re-used across all providers of the same kind.

    The new provider factories also implement a new declarative way to configure sign-in resolvers, rather than configuration through code. Sign-in resolvers can now be configured through the resolvers configuration key, where the first resolver that provides an identity will be used, for example:

    yaml
    auth:
      providers:
        google:
          development:
            clientId: ...
            clientSecret: ...
            signIn:
              resolvers:
                - resolver: emailMatchingUserEntityAnnotation
                - resolver: emailLocalPartMatchingUserEntityName
    

    These configurable resolvers are created with a new createSignInResolverFactory function, which creates a sign-in resolver factory, optionally with an options schema that will be used both when configuring the sign-in resolver through configuration and code.

    The internal helpers from @backstage/plugin-auth-backend that were used to implement auth providers using passport strategies have now also been made available as public API, through PassportHelpers and PassportOAuthAuthenticatorHelper.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • e44f45ac4515: This change allows a new annotation of backstage.io/techdocs-entity this ref allows you to reference another entity for its TechDocs. This allows you have a single TechDoc for all items in a system, for example you might have a frontend and a backend in the same repo. This would allow you to have TechDocs build under a System entity while referencing the system e.g.: backstage.io/techdocs-entity: system:default/example that will show the systems docs in both the TechDocs button and the TechDocs tab without needing to do duplicate builds and filling the TechDocs page with garbage.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 62f448edb0b5: Allow configuring the processing interval in your app-config, under the catalog.processingInterval key.
  • 09cfc3cf467d: set azure annotation dev.azure.com/project-repo in AnnotateScmSlugEntityProcessor to find the project and repo information for the repos that contains dev.azure.com in the url

Patch Changes

  • 149361e81622: Fix to the limit parameter on entity queries.

  • 1fd2109739c1: Changed the processing loop task pipeline implementation from recursive to iterative

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • 0f8a97777489: Update OpenAPI schema to relax the encoding validation of all request parameters.

  • 0198aa596fd9: Fixed a link to the frontend Backstage plugin that had pointed to itself.

  • 2d32d8a611e3: Fixed validation of the fullTextFilterFields query parameter.

  • acffa17027b6: Added some examples to the catalog OpenAPI definition

  • 45947d3b2759: Fixes an issue where order was not a recognized parameter for the /entities endpoint.

  • 41d1b2d628ea: Fix OpenAPI schema for the facets endpoint

  • 618257f3e413: Fix issue with catalogFileName not being a required property for /analyze-location

  • cfc3ca6ce060: Changes needed to support MySQL

  • 814feeed7343: Update to handle invalid luxon values

  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • fa7004d9722c: Added a catalogModuleGithubOrgEntityProvider for the new backend system

Patch Changes

@backstage/[email protected]

Minor Changes

  • 3d73bafd85c9: Fix Gitlab.com user ingestion by scoping GitlabOrgDiscoveryEntityProvider to a group.

    BREAKING The group parameter is now required Gitlab.com Org Data integrations and the backend will fail to start without this option configured.

    diff
    catalog:
      providers:
        gitlab:
          yourProviderId:
            host: gitlab.com
            orgEnabled: true
    +       group: org/teams
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • d5313ede3529: Added a dedicated module to collect the ScaffolderEntitiesProcessor and catalogModuleTemplateKind.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • c3c1fd3a1765: Slight change to the PreparePullRequestFormProps, because of an update to react-hook-form.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 0ad36158d980: Integrators can now bring their own auth strategies through the use of the addAuthStrategy method on KubernetesBuilder.

    BREAKING on the slight chance you were using the setAuthTranslatorMap method on KubernetesBuilder, it has been removed along with the entire KubernetesAuthTranslator interface. This notion has been replaced with the more focused concept of an AuthenticationStrategy. Converting a translator to a strategy should not be especially difficult.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 1380a689ab56: New OpenCost plugin provides an port of the latest OpenCost UI to Backstage with updated dependencies. The plugin's README covers installation and configuration

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 5f7b2153526b: Created package with policy permissionModuleAllowAllPolicy

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

  • 02ba0a2efd2a: Add the route name to an error message that appears when the backend proxy wasn't well configured. This will help users to understand the issue and fix the right configuration.
  • 03691f0f3270: Add back the legacy proxy config, to get secret redaction
  • Updated dependencies

@backstage/[email protected]

Minor Changes

  • 0119c326394a: adding a .zip download to dry run results page, including zip.js as dependency

Patch Changes

@backstage/[email protected]

Minor Changes

  • b5f239b50bcf: Improved the parseEntityRef Scaffolder filter by introducing the ability for users to provide default kind and/or namespace values. The filter now takes 2 arguments, similarly to the original parseEntityRef.

  • d5313ede3529: DEPRECATION: Deprecated ScaffolderEntitiesProcessor, which should now instead be imported from @backstage/plugin-catalog-backend-module-scaffolder-entity-model.

    catalogModuleTemplateKind was also moved to that package and renamed to catalogModuleScaffolderEntityModel, without any deprecation since it was an alpha export.

Patch Changes

@backstage/[email protected]

Minor Changes

  • b78f570f44d3: The SearchPage component can now be configured via app-config.yaml with default query parameters to define how it behaves when it is first loaded or reset. Check out the following example:

    yaml
    search:
      query:
        pageLimit: 50
    

    Acceptable values for pageLimit are 10, 25, 50 or 100.

Patch Changes

@backstage/[email protected]

Minor Changes

  • b78f570f44d3: The SearchPage component can now be configured via app-config.yaml with default query parameters to define how it behaves when it is first loaded or reset. Check out the following example:

    yaml
    search:
      query:
        pageLimit: 50
    

    Acceptable values for pageLimit are 10, 25, 50 or 100.

Patch Changes

@backstage/[email protected]

Minor Changes

  • e44f45ac4515: This change allows a new annotation of backstage.io/techdocs-entity this ref allows you to reference another entity for its TechDocs. This allows you have a single TechDoc for all items in a system, for example you might have a frontend and a backend in the same repo. This would allow you to have TechDocs build under a System entity while referencing the system e.g.: backstage.io/techdocs-entity: system:default/example that will show the systems docs in both the TechDocs button and the TechDocs tab without needing to do duplicate builds and filling the TechDocs page with garbage.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 5985d458ee30: Add a techdocs.publisher.azureBlobStorage.connectionString app-config setting, which can be leveraged for improved Azurite support.
  • 10a86bd4ae12: Add optional config and cli option for techdocs to specify default mkdocs plugins.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 86c19906fe4b: Enable zoom icon for techdocs images inside lightbox

Patch Changes

@backstage/[email protected]

Minor Changes

  • 5985d458ee30: Add a techdocs.publisher.azureBlobStorage.connectionString app-config setting, which can be leveraged for improved Azurite support.
  • 10a86bd4ae12: Add optional config and cli option for techdocs to specify default mkdocs plugins.

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Minor Changes

  • 71114ac50e02: BREAKING: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 154632d8753b: Add support for discovering additional service factories during startup.
  • 37a20c7f14aa: Adds include and exclude configuration to feature discovery of backend packages Adds alpha modules to feature discovery
  • cb7fc410ed99: The experimental backend feature discovery now only considers default exports from packages. It no longer filters packages to include based on the package role, except that 'cli' packages are ignored. However, the "backstage" field is still required in package.json.
  • 3fc64b9e2f8f: Extension points are now tracked via their ID rather than reference, in order to support package duplication.
  • 3b30b179cb38: Add support for installing features as package imports, for example backend.add(import('my-plugin')).
  • b219d097b3f4: Backend startup will now fail if any circular service dependencies are detected.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 6847cd6225d6: Avoid starting database keepalive loop in tests.
  • fd3fdd0e3338: The root logger is now initialized lazily, fixing a circular dependency issue with @backstage/backend-app-api that would result in Cannot read properties of undefined (reading 'redacter').
  • 5f1a92b9f19f: Use DefaultAzureDevOpsCredentialsProvider to retrieve credentials for Azure DevOps.
  • 19a140418cc8: Added retries for initial database creation, as well as set minimum connection pool size for the database creation client to 0 and lowered the connection acquisition timeout.
  • 05508a9757d2: Minor internal refactor
  • cfc3ca6ce060: Changes needed to support MySQL
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 8fd91547cd0b: When starting a task that existed before, with a faster schedule than it previously had, the task will now correctly obey the faster schedule immediately. Before this fix, the new schedule was only obeyed after the next pending (according to the old schedule) run had completed.
  • 62f448edb0b5: Use readDurationFromConfig from the config package
  • 74604806aae8: Avoid starting task janitor in tests.
  • cfc3ca6ce060: Changes needed to support MySQL
  • 814feeed7343: Update to handle invalid luxon values
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 58cb5e5cea7b: Introduced a new utility for testing service factories, ServiceFactoryTester.
  • 202e52c5e361: Add support for installing backend features via module imports, for example startTestBackend({ features: [import('my-plugin')] }).
  • 9fb3b5373c45: Extended mockService to also include mocked variants, for example mockServices.lifecycle.mock(). The returned mocked implementation will have a factory property which is a service factory for itself. You can also pass a partial implementation of the service to the mock function to use a mock implementation of specific methods.
  • eb1594da5812: Serialize test database shutdown, and add logging
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 04eabd21bee4: Added the ability to specify the listen address for the --inspect and --inspect-brk command. You can now set the ip and port of the inspect and inspectBrk by adding for example --inspect=0.0.0.0:9229
  • 278d9326eb40: Added the ability to create a plain backend module with the new command.
  • 4d5eeec52d80: Add ESM loader for the experimental backend start command.
  • 3494c502aba7: Added a new repo fix command that fixes auto-fixable problems in all packages. Initially the command fixes package export declarations, as well as marks all non-bundled frontend packages as side-effect free. Marking packages as free of side-effects can drastically reduce the Webpack bundle size.
  • f36113ca2305: Add experimental support for frontend package discovery.
  • a23fce763c6a: Fixed a bug where package exports entry points could not be .tsx files.
  • 8cec7664e146: Removed @types/node dependency
  • ea779492ad88: Updated dependency run-script-webpack-plugin to ^0.2.0.
  • 4af4defcc114: When running version:bump it will now log duplicates instead of throwing an error
  • 71d4368ae5cc: Added support for the dev/index entry point for backend plugins and modules.
  • 956d226eeeee: Add "sideEffects": false to package.json in frontend package templates. This can be added to existing packages using the new yarn fix command.
  • cd7331587eb3: Removed the experimental package fix command that was used to automatically add dependencies to package.json, but has since been replaced by the no-undeclared-imports rule from @backstage/eslint-plugin.
  • 219b46ae1a50: Include default alpha export during package detection
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 0c9907645aab: Fixed an issue causing StructuredMetadataTable to crash in case metadata contained null values.
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 9b74166d11a1: Added <AutoLogout> component which introduces an optional automatic logout mechanism on user inactivity
  • 117027636b10: Minor internal tweak to handle classnames update
  • 8cec7664e146: Removed @types/node dependency
  • db92d1244897: Updated dependency rc-progress to 3.5.1.
  • 47782f4bfa5b: Add loading indicator to Table
  • 3d63e60f3c36: Internal restructure to avoid circular imports
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 05508a9757d2: Updated the backend template to no longer create duplicate connection pools to plugins that use the task scheduler.

    To apply this change in your own repository, perform the following small update:

    diff
    // in packages/backend/src/index.ts
    -  const taskScheduler = TaskScheduler.fromConfig(config);
    +  const taskScheduler = TaskScheduler.fromConfig(config, { databaseManager });
    
  • a4c08241ad92: Switched the template to use TypeScript 5.2 by default.

  • f8c8e8de37b6: Bumped create-app version.

  • fc1a38bc5723: Bumped create-app version.

  • 4606e005df5d: Added a fix scripts that calls the new backstage-cli repo fix command.

    To apply this change to an existing app, make the following change to your root package.json:

    diff
         "test": "backstage-cli repo test",
         "test:all": "backstage-cli repo test --coverage",
    +    "fix": "backstage-cli repo fix",
         "lint": "backstage-cli repo lint --since origin/master",
    
  • 612594022245: Add a notification when yarn install is taking a long time.

  • 8db70ecbb325: Updated Dockerfile to include apt-get update when installing the SQLite dependency

  • 8cec7664e146: Removed @types/node dependency

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency

@backstage/[email protected]

Patch Changes

  • 0109d3f11159: The generate-catalog-info command now uses the first listed CODEOWNER as Component owner when initially creating the catalog-info.yaml file. It continues to allow any one listed CODEOWNER when updating entity metadata.
  • 6f874cdb04eb: Fixed a bug with the generate-catalog-info command that could cause metadata.description values to be overwritten by package.json description values only because unrelated attributes were being changed.
  • ec13d3e86028: Fixed a bug with the generate-catalog-info command that could cause the --dry-run flag to indicate changes to files when no changes would actually be made if the command were run without the flag.
  • db60a16e0a54: Added a --ci flag to the generate-catalog-info command. This flag behaves similarly to the same flag on api-reports: if catalog-info.yaml files would have been added or modified, then the process exits with status code 1, and instructions are printed.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • cfc3ca6ce060: Changes needed to support MySQL

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • 94f96508491d: Improve consistency of results from the AzureDevOpsEntityProvider.

  • 5f1a92b9f19f: Use DefaultAzureDevOpsCredentialsProvider to retrieve credentials for Azure DevOps.

  • 044b4f2fb1e3: Remove duplications from Azure search before committing the new locations to the catalog.

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 3f1367b956c6: Added support for LCOV coverage reports

  • df005d9932fb: Add text body parser for LCOV reports

  • 91ccb56fb418: Replace express-xml-bodyparser with body-parser-xml.

    express-xml-bodyparser was last updated 8 years ago and currently depends on a version of xml2js which contains a vulnerability.

    This change will swap it out in favor of body-parser-xml which is more maintained and depends on a more recent xml2js version without the vulnerability.

  • 33e606a797ef: Include auth token when fetching entity

  • d409ed988aed: Correct the line hits calculation for Cobertura reports

  • cfc3ca6ce060: Changes needed to support MySQL

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 12e644aa4eef: Show resource utilization in DevTools plugin
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • 814feeed7343: Update to handle invalid luxon values
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • b2fbeed5403b: Add support for using the FetchApi
  • cf950c3b6eab: Added experimental exports for the new frontend system under /alpha.
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 2bc96ce69eea: Fixed a bug where customizable home page cards would render missing their normal borders.
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 98bb77c1f0b8: Align zod dependency to align with other packages.
  • 8cec7664e146: Removed @types/node dependency
  • b16c341ced45: Updated dependency @rjsf/utils to 5.13.0. Updated dependency @rjsf/core-v5 to npm:@rjsf/[email protected]. Updated dependency @rjsf/material-ui-v5 to npm:@rjsf/[email protected]. Updated dependency @rjsf/validator-ajv8 to 5.13.0.
  • 1853ffa09b50: Allow specifying static widgets to custom home page
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • b16c341ced45: Updated dependency @rjsf/utils to 5.13.0. Updated dependency @rjsf/core-v5 to npm:@rjsf/[email protected]. Updated dependency @rjsf/material-ui-v5 to npm:@rjsf/[email protected]. Updated dependency @rjsf/validator-ajv8 to 5.13.0.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 0ad36158d980: Loosened the type of the auth field in the body of requests to the retrieveObjectsByServiceId endpoint. Now any JSON object is allowed, which should make it easier for integrators to write their own custom auth strategies for Kubernetes.
  • 7032c214f3b4: Add pod exec terminal to Container Card
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 6ddeade58b4c: Avoid eager use of TextEncoder in order not to break tests.
  • 6a5e04e20e6e: fix logs dialog min height
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 0ad36158d980: Loosened the type of the auth field in the body of requests to the retrieveObjectsByServiceId endpoint. Now any JSON object is allowed, which should make it easier for integrators to write their own custom auth strategies for Kubernetes.
  • ccf00accb408: Add AWS Annotations to Kubernetes Cluster Resource
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • 814feeed7343: Update to handle invalid luxon values
  • Updated dependencies

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 55cb7061e072: Fixed bug in NewRelicComponent component where table would not sort correctly for numerical values.
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 43a2137bb829: Ensure direct relations are shown for User entities while keeping support for aggregating closest parent group ownership
  • dd9329caea1c: Entity relations toggle should by default be aggregated for User entities
  • 8cec7664e146: Removed @types/node dependency
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • a8a614ba0d07: Minor package.json update.

  • 84ad6fccd4d5: Moved permissionModuleAllowAllPolicy to @backstage/plugin-permission-backend-module-allow-all-policy

  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 4ccf9204bc95: Added indexerBatchSize option to be able to control the size of the batches being indexed. Also added a debug log entry to list out all the entities in the batch

  • 71114ac50e02: The export for the new backend system has been moved to be the default export.

    For example, if you are currently importing the plugin using the following pattern:

    ts
    import { examplePlugin } from '@backstage/plugin-example-backend';
    
    backend.add(examplePlugin);
    

    It should be migrated to this:

    ts
    backend.add(import('@backstage/plugin-example-backend'));
    
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • b45d0ac68191: Add names to blip entry links in the radar to improve accessibility
  • 80b4d0b34f14: Fixed the width of the tech radar dialog so that the content fits
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 6d35e9ea2afa: Add description property for Rings which will be shown in the footer.
  • 8cec7664e146: Removed @types/node dependency
  • c357f62052af: Fixed RadarTimeline text formatting.
  • Updated dependencies

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

  • 482bb5c0bbf8: Moved @types/react to be a regular dependency
  • 406b786a2a2c: Mark package as being free of side effects, allowing more optimized Webpack builds.
  • 8cec7664e146: Removed @types/node dependency
  • 814feeed7343: Update to handle invalid luxon values
  • Updated dependencies

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

@backstage/[email protected]

Patch Changes

[email protected]

Patch Changes

[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes

@internal/[email protected]

Patch Changes