@backstage/plugin-catalog-backend 0.24.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,103 @@
1
1
  # @backstage/plugin-catalog-backend
2
2
 
3
+ ## 1.0.0
4
+
5
+ ### Major Changes
6
+
7
+ - b58c70c223: This package has been promoted to v1.0! To understand how this change affects the package, please check out our [versioning policy](https://backstage.io/docs/overview/versioning-policy).
8
+
9
+ ### Minor Changes
10
+
11
+ - 6145ca7189: **BREAKING**: A number of types and classes have been removed, without a prior deprecation period. These were all very internal, essentially unused by the vast majority of users, and their being exposed was leading to excessive breaking of public interfaces for little-to-zero benefit. So for the 1.0 release of the catalog, the following interface changes have been made (but should have no effect on most users):
12
+
13
+ - The return type of `CatalogBuilder.build()` now only has the fields `processingEngine` and `router` which is what most users actually consume; the other three fields (`entitiesCatalog`, `locationAnalyzer`, `locationService`) that see very little use have been removed. If you were relying on the presence of either of these in any way, please [open an issue](https://github.com/backstage/backstage/issues/new/choose) that describes your use case, and we'll see how we could fill the gap.
14
+
15
+ - The function `createRouter` is removed; use `CatalogBuilder` as follows instead:
16
+
17
+ ```ts
18
+ const builder = await CatalogBuilder.create(env);
19
+ // add things as needed, e.g builder.addProcessor(new ScaffolderEntitiesProcessor());
20
+ const { processingEngine, router } = await builder.build();
21
+ await processingEngine.start();
22
+ return router;
23
+ ```
24
+
25
+ - The following types were removed:
26
+
27
+ - `CatalogProcessingOrchestrator`
28
+ - `CatalogRule`
29
+ - `CatalogRulesEnforcer`
30
+ - `EntityAncestryResponse`
31
+ - `EntityFacetsRequest`
32
+ - `EntityFacetsResponse`
33
+ - `EntityPagination`
34
+ - `EntityProcessingRequest`
35
+ - `EntityProcessingResult`
36
+ - `EntitiesCatalog`
37
+ - `EntitiesRequest`
38
+ - `EntitiesResponse`
39
+ - `LocationService`
40
+ - `LocationInput`
41
+ - `LocationStore`
42
+ - `PageInfo`
43
+ - `RefreshOptions`
44
+ - `RefreshService`
45
+ - `RouterOptions`
46
+
47
+ - The following classes were removed:
48
+
49
+ - `DefaultCatalogProcessingOrchestrator`
50
+ - `DefaultCatalogRulesEnforcer`
51
+
52
+ - 02ad19d189: **BREAKING**: Removed the deprecated `metadata.generation` field entirely. It is no longer present in TS types, nor in the REST API output. Entities that have not yet been re-stitched may still have the field present for some time, but it will get phased out gradually by your catalog instance.
53
+ - 7250b6993d: **BREAKING**: Removed the previously deprecated `results` export. Please use `processingResult` instead.
54
+ - 077e7c132f: **BREAKING**: Removed the following deprecated symbols:
55
+
56
+ - `catalogBuilder.setRefreshInterval`, use `catalogBuilder.setProcessingInterval` instead.
57
+ - `catalogBuilder.setRefreshIntervalSeconds`, use `catalogBuilder.setProcessingIntervalSeconds` instead.
58
+ - `createRandomRefreshInterval`, use `createRandomProcessingInterval` instead.
59
+ - `RefreshIntervalFunction`, use `ProcessingIntervalFunction` instead.
60
+
61
+ - 74375be2c6: **BREAKING**: Removed the export of the `RecursivePartial` utility type. If you relied on this type it can be redefined like this:
62
+
63
+ ```ts
64
+ type RecursivePartial<T> = {
65
+ [P in keyof T]?: T[P] extends (infer U)[]
66
+ ? RecursivePartial<U>[]
67
+ : T[P] extends object
68
+ ? RecursivePartial<T[P]>
69
+ : T[P];
70
+ };
71
+ ```
72
+
73
+ - ced3016f2a: **BREAKING**: The deprecated `CatalogEntityDocument` export has been removed, it can be imported from `@backstage/plugin-catalog-common` instead.
74
+ - 0163c41be2: **BREAKING**: Removed the deprecated `presence` field from `LocationInput`.
75
+ - d3e9ec43b7: **BREAKING**: Removed the `target` property from `EntityRelation`. This field has been replaced by `targetRef`.
76
+ This means that `target: { name: 'team-a', kind: 'group', namespace: 'default' }` is now replaced with `targetRef: 'group:default/team-a'` in entity relations.
77
+
78
+ The entities API endpoint still return the old `target` field for to ease transitions, however the future removal of this field will be considered non breaking.
79
+
80
+ ### Patch Changes
81
+
82
+ - 89c7e47967: Minor README update
83
+ - 26fb159a30: Pass in auth token to ancestry endpoint
84
+ - efc73db10c: Use `better-sqlite3` instead of `@vscode/sqlite3`
85
+ - f24ef7864e: Minor typo fixes
86
+ - e949d68059: Made sure to move the catalog-related github and ldap config into their right places
87
+ - Updated dependencies
88
+ - @backstage/backend-common@0.13.1
89
+ - @backstage/catalog-model@1.0.0
90
+ - @backstage/plugin-scaffolder-common@1.0.0
91
+ - @backstage/integration@1.0.0
92
+ - @backstage/catalog-client@1.0.0
93
+ - @backstage/config@1.0.0
94
+ - @backstage/errors@1.0.0
95
+ - @backstage/types@1.0.0
96
+ - @backstage/plugin-catalog-common@1.0.0
97
+ - @backstage/plugin-permission-common@0.5.3
98
+ - @backstage/plugin-permission-node@0.5.5
99
+ - @backstage/plugin-search-common@0.3.2
100
+
3
101
  ## 0.24.0
4
102
 
5
103
  ### Minor Changes
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@backstage/plugin-catalog-backend",
3
- "version": "0.24.0",
3
+ "version": "1.0.0",
4
4
  "main": "../dist/index.cjs.js",
5
5
  "types": "../dist/index.alpha.d.ts"
6
6
  }
package/config.d.ts CHANGED
@@ -105,38 +105,5 @@ export interface Config {
105
105
  allow: Array<string>;
106
106
  }>;
107
107
  }>;
108
-
109
- /**
110
- * List of processor-specific options and attributes
111
- */
112
- processors?: {
113
- /**
114
- * GithubMultiOrgReaderProcessor configuration
115
- */
116
- githubMultiOrg?: {
117
- /**
118
- * The configuration parameters for each GitHub org to process.
119
- */
120
- orgs: Array<{
121
- /**
122
- * The name of the GitHub org to process.
123
- */
124
- name: string;
125
- /**
126
- * The namespace of the group created for this org.
127
- *
128
- * Defaults to org name if omitted.
129
- */
130
- groupNamespace?: string;
131
-
132
- /**
133
- * The namespace of the users created from this org.
134
- *
135
- * Defaults to empty string if omitted.
136
- */
137
- userNamespace?: string;
138
- }>;
139
- };
140
- };
141
108
  };
142
109
  }