Revert "refactor: remove deprecated url reader service types"

This reverts commit c32b5f3467cf6d0bcd355fde0fb0e4bce77f1b38.

Signed-off-by: Johan Haals <johan.haals@gmail.com>
This commit is contained in:
Johan Haals
2024-08-14 14:26:53 +02:00
parent da4fde5cc2
commit bfdfac6230
11 changed files with 210 additions and 27 deletions
+36
View File
@@ -49,12 +49,21 @@ import { PluginMetadataService } from '@backstage/backend-plugin-api';
import { PushResult } from 'isomorphic-git';
import { Readable } from 'stream';
import { ReadCommitResult } from 'isomorphic-git';
import { ReadTreeOptions as ReadTreeOptions_2 } from '@backstage/backend-plugin-api';
import { ReadTreeResponse as ReadTreeResponse_2 } from '@backstage/backend-plugin-api';
import { ReadTreeResponseDirOptions as ReadTreeResponseDirOptions_2 } from '@backstage/backend-plugin-api';
import { ReadTreeResponseFile as ReadTreeResponseFile_2 } from '@backstage/backend-plugin-api';
import { ReadUrlOptions as ReadUrlOptions_2 } from '@backstage/backend-plugin-api';
import { ReadUrlResponse as ReadUrlResponse_2 } from '@backstage/backend-plugin-api';
import { RequestHandler } from 'express';
import { resolvePackagePath as resolvePackagePath_2 } from '@backstage/backend-plugin-api';
import { resolveSafeChildPath as resolveSafeChildPath_2 } from '@backstage/backend-plugin-api';
import { RootConfigService } from '@backstage/backend-plugin-api';
import { Router } from 'express';
import { SchedulerService } from '@backstage/backend-plugin-api';
import { SearchOptions as SearchOptions_2 } from '@backstage/backend-plugin-api';
import { SearchResponse as SearchResponse_2 } from '@backstage/backend-plugin-api';
import { SearchResponseFile as SearchResponseFile_2 } from '@backstage/backend-plugin-api';
import { Server } from 'http';
import { ServiceRef } from '@backstage/backend-plugin-api';
import { TokenManagerService } from '@backstage/backend-plugin-api';
@@ -502,6 +511,15 @@ export interface PullOptions {
// @public @deprecated (undocumented)
export type ReaderFactory = ReaderFactory_2;
// @public @deprecated (undocumented)
export type ReadTreeOptions = ReadTreeOptions_2;
// @public @deprecated (undocumented)
export type ReadTreeResponse = ReadTreeResponse_2;
// @public @deprecated (undocumented)
export type ReadTreeResponseDirOptions = ReadTreeResponseDirOptions_2;
// Warning: (ae-forgotten-export) The symbol "ReadTreeResponseFactory_2" needs to be exported by the entry point index.d.ts
//
// @public @deprecated (undocumented)
@@ -512,6 +530,15 @@ export type ReadTreeResponseFactory = ReadTreeResponseFactory_2;
// @public @deprecated (undocumented)
export type ReadTreeResponseFactoryOptions = ReadTreeResponseFactoryOptions_2;
// @public @deprecated (undocumented)
export type ReadTreeResponseFile = ReadTreeResponseFile_2;
// @public @deprecated (undocumented)
export type ReadUrlOptions = ReadUrlOptions_2;
// @public @deprecated (undocumented)
export type ReadUrlResponse = ReadUrlResponse_2;
// Warning: (ae-forgotten-export) The symbol "ReadUrlResponseFactory_2" needs to be exported by the entry point index.d.ts
//
// @public @deprecated (undocumented)
@@ -556,6 +583,15 @@ export type RunContainerOptions = {
pullOptions?: PullOptions;
};
// @public @deprecated (undocumented)
export type SearchOptions = SearchOptions_2;
// @public @deprecated (undocumented)
export type SearchResponse = SearchResponse_2;
// @public @deprecated (undocumented)
export type SearchResponseFile = SearchResponseFile_2;
// @public @deprecated
export class ServerTokenManager implements TokenManager {
// (undocumented)
@@ -85,6 +85,15 @@ import {
resolvePackagePath as _resolvePackagePath,
resolveSafeChildPath as _resolveSafeChildPath,
isChildPath as _isChildPath,
ReadTreeOptions as _ReadTreeOptions,
ReadTreeResponse as _ReadTreeResponse,
ReadTreeResponseFile as _ReadTreeResponseFile,
ReadTreeResponseDirOptions as _ReadTreeResponseDirOptions,
ReadUrlOptions as _ReadUrlOptions,
ReadUrlResponse as _ReadUrlResponse,
SearchOptions as _SearchOptions,
SearchResponse as _SearchResponse,
SearchResponseFile as _SearchResponseFile,
UrlReaderService as _UrlReaderService,
LifecycleService,
PluginMetadataService,
@@ -403,6 +412,60 @@ export type ReadUrlResponseFactoryFromStreamOptions =
*/
export type UrlReaderPredicateTuple = _UrlReaderPredicateTuple;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeOptions = _ReadTreeOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponse` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponse = _ReadTreeResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseFile` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponseFile = _ReadTreeResponseFile;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseDirOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadTreeResponseDirOptions = _ReadTreeResponseDirOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlOptions` from `@backstage/backend-plugin-api` instead
*/
export type ReadUrlOptions = _ReadUrlOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlResponse` from `@backstage/backend-plugin-api` instead
*/
export type ReadUrlResponse = _ReadUrlResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchOptions` from `@backstage/backend-plugin-api` instead
*/
export type SearchOptions = _SearchOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponse` from `@backstage/backend-plugin-api` instead
*/
export type SearchResponse = _SearchResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponseFile` from `@backstage/backend-plugin-api` instead
*/
export type SearchResponseFile = _SearchResponseFile;
/**
* @public
* @deprecated Use `UrlReaderService` from `@backstage/backend-plugin-api` instead
+28
View File
@@ -553,6 +553,25 @@ export function readSchedulerServiceTaskScheduleDefinitionFromConfig(
config: Config,
): SchedulerServiceTaskScheduleDefinition;
// @public @deprecated (undocumented)
export type ReadTreeOptions = UrlReaderServiceReadTreeOptions;
// @public @deprecated (undocumented)
export type ReadTreeResponse = UrlReaderServiceReadTreeResponse;
// @public @deprecated (undocumented)
export type ReadTreeResponseDirOptions =
UrlReaderServiceReadTreeResponseDirOptions;
// @public @deprecated (undocumented)
export type ReadTreeResponseFile = UrlReaderServiceReadTreeResponseFile;
// @public @deprecated (undocumented)
export type ReadUrlOptions = UrlReaderServiceReadUrlOptions;
// @public @deprecated (undocumented)
export type ReadUrlResponse = UrlReaderServiceReadUrlResponse;
// @public
export function resolvePackagePath(name: string, ...paths: string[]): string;
@@ -688,6 +707,15 @@ export interface SchedulerServiceTaskScheduleDefinitionConfig {
timeout: string | HumanDuration;
}
// @public @deprecated (undocumented)
export type SearchOptions = UrlReaderServiceSearchOptions;
// @public @deprecated (undocumented)
export type SearchResponse = UrlReaderServiceSearchResponse;
// @public @deprecated (undocumented)
export type SearchResponseFile = UrlReaderServiceSearchResponseFile;
// @public (undocumented)
export interface ServiceFactory<
TService = unknown,
@@ -368,3 +368,50 @@ export type UrlReaderServiceSearchResponseFile = {
*/
lastModifiedAt?: Date;
};
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeOptions` instead
*/
export type ReadTreeOptions = UrlReaderServiceReadTreeOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponse` instead
*/
export type ReadTreeResponse = UrlReaderServiceReadTreeResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseDirOptions` instead
*/
export type ReadTreeResponseDirOptions =
UrlReaderServiceReadTreeResponseDirOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceReadTreeResponseFile` instead
*/
export type ReadTreeResponseFile = UrlReaderServiceReadTreeResponseFile;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlResponse` instead
*/
export type ReadUrlResponse = UrlReaderServiceReadUrlResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceReadUrlOptions` instead
*/
export type ReadUrlOptions = UrlReaderServiceReadUrlOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchOptions` instead
*/
export type SearchOptions = UrlReaderServiceSearchOptions;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponse` instead
*/
export type SearchResponse = UrlReaderServiceSearchResponse;
/**
* @public
* @deprecated Use `UrlReaderServiceSearchResponseFile` instead
*/
export type SearchResponseFile = UrlReaderServiceSearchResponseFile;
@@ -66,6 +66,15 @@ export type {
} from './SchedulerService';
export type { TokenManagerService } from './TokenManagerService';
export type {
ReadTreeOptions,
ReadTreeResponse,
ReadTreeResponseDirOptions,
ReadTreeResponseFile,
ReadUrlResponse,
ReadUrlOptions,
SearchOptions,
SearchResponse,
SearchResponseFile,
UrlReaderServiceReadTreeOptions,
UrlReaderServiceReadTreeResponse,
UrlReaderServiceReadTreeResponseDirOptions,
+2 -2
View File
@@ -20,7 +20,7 @@ import { SearchQuery } from '@backstage/plugin-search-common';
import { TaskFunction } from '@backstage/backend-tasks';
import { TaskRunner } from '@backstage/backend-tasks';
import { Transform } from 'stream';
import { UrlReaderService } from '@backstage/backend-plugin-api';
import { UrlReader } from '@backstage/backend-common';
import { Writable } from 'stream';
// @public
@@ -138,7 +138,7 @@ export class NewlineDelimitedJsonCollatorFactory
export type NewlineDelimitedJsonCollatorFactoryOptions = {
type: string;
searchPattern: string;
reader: UrlReaderService;
reader: UrlReader;
logger: LoggerService;
visibilityPermission?: Permission;
};
+2 -1
View File
@@ -53,7 +53,7 @@
"test": "backstage-cli package test"
},
"dependencies": {
"@backstage/backend-defaults": "workspace:^",
"@backstage/backend-common": "workspace:^",
"@backstage/backend-plugin-api": "workspace:^",
"@backstage/backend-tasks": "workspace:^",
"@backstage/config": "workspace:^",
@@ -67,6 +67,7 @@
"uuid": "^9.0.0"
},
"devDependencies": {
"@backstage/backend-common": "workspace:^",
"@backstage/backend-test-utils": "workspace:^",
"@backstage/cli": "workspace:^",
"@types/ndjson": "^2.0.1"
@@ -14,16 +14,16 @@
* limitations under the License.
*/
import {
ReadUrlResponse,
UrlReader,
UrlReaders,
} from '@backstage/backend-common';
import { ConfigReader } from '@backstage/config';
import { Readable } from 'stream';
import { NewlineDelimitedJsonCollatorFactory } from './NewlineDelimitedJsonCollatorFactory';
import { TestPipeline } from '../test-utils';
import { mockServices } from '@backstage/backend-test-utils';
import {
UrlReaderService,
UrlReaderServiceReadUrlResponse,
} from '@backstage/backend-plugin-api';
import { UrlReaders } from '@backstage/backend-defaults/urlReader';
describe('DefaultCatalogCollatorFactory', () => {
const config = new ConfigReader({});
@@ -42,9 +42,7 @@ describe('DefaultCatalogCollatorFactory', () => {
describe('getCollator', () => {
let readable: Readable;
let reader: jest.Mocked<
UrlReaderService & {
readUrl: jest.Mock<Promise<UrlReaderServiceReadUrlResponse>>;
}
UrlReader & { readUrl: jest.Mock<Promise<ReadUrlResponse>> }
>;
let factory: NewlineDelimitedJsonCollatorFactory;
@@ -18,8 +18,9 @@ import { Config } from '@backstage/config';
import { DocumentCollatorFactory } from '@backstage/plugin-search-common';
import { Permission } from '@backstage/plugin-permission-common';
import { Readable } from 'stream';
import { UrlReader } from '@backstage/backend-common';
import { parse as parseNdjson } from 'ndjson';
import { LoggerService, UrlReaderService } from '@backstage/backend-plugin-api';
import { LoggerService } from '@backstage/backend-plugin-api';
/**
* Options for instantiate NewlineDelimitedJsonCollatorFactory
@@ -28,7 +29,7 @@ import { LoggerService, UrlReaderService } from '@backstage/backend-plugin-api';
export type NewlineDelimitedJsonCollatorFactoryOptions = {
type: string;
searchPattern: string;
reader: UrlReaderService;
reader: UrlReader;
logger: LoggerService;
visibilityPermission?: Permission;
};
@@ -72,7 +73,7 @@ export class NewlineDelimitedJsonCollatorFactory
private constructor(
type: string,
private readonly searchPattern: string,
private readonly reader: UrlReaderService,
private readonly reader: UrlReader,
private readonly logger: LoggerService,
visibilityPermission: Permission | undefined,
) {
+12 -12
View File
@@ -14,6 +14,13 @@
* limitations under the License.
*/
import {
ReadTreeResponse,
ReadUrlOptions,
ReadUrlResponse,
SearchResponse,
UrlReader,
} from '@backstage/backend-common';
import { Entity, getEntitySourceLocation } from '@backstage/catalog-model';
import { ConfigReader } from '@backstage/config';
import { ScmIntegrations } from '@backstage/integration';
@@ -27,13 +34,6 @@ import {
parseReferenceAnnotation,
transformDirLocation,
} from './helpers';
import {
UrlReaderService,
UrlReaderServiceReadTreeResponse,
UrlReaderServiceReadUrlOptions,
UrlReaderServiceReadUrlResponse,
UrlReaderServiceSearchResponse,
} from '@backstage/backend-plugin-api';
jest.mock('@backstage/catalog-model', () => ({
...jest.requireActual('@backstage/catalog-model'),
@@ -290,19 +290,19 @@ describe('getLocationForEntity', () => {
describe('getDocFilesFromRepository', () => {
it('should read a remote directory using UrlReader.readTree', async () => {
class MockUrlReader implements UrlReaderService {
class MockUrlReader implements UrlReader {
async read() {
return Buffer.from('mock');
}
async readUrl(
_url: string,
_options?: UrlReaderServiceReadUrlOptions | undefined,
): Promise<UrlReaderServiceReadUrlResponse> {
_options?: ReadUrlOptions | undefined,
): Promise<ReadUrlResponse> {
throw new Error('Method not implemented.');
}
async readTree(): Promise<UrlReaderServiceReadTreeResponse> {
async readTree(): Promise<ReadTreeResponse> {
return {
dir: async () => {
return '/tmp/testfolder';
@@ -317,7 +317,7 @@ describe('getDocFilesFromRepository', () => {
};
}
async search(): Promise<UrlReaderServiceSearchResponse> {
async search(): Promise<SearchResponse> {
return {
etag: '',
files: [],
+1 -1
View File
@@ -7554,7 +7554,7 @@ __metadata:
version: 0.0.0-use.local
resolution: "@backstage/plugin-search-backend-node@workspace:plugins/search-backend-node"
dependencies:
"@backstage/backend-defaults": "workspace:^"
"@backstage/backend-common": "workspace:^"
"@backstage/backend-plugin-api": "workspace:^"
"@backstage/backend-tasks": "workspace:^"
"@backstage/backend-test-utils": "workspace:^"