Skip to content

Commit

Permalink
Add new generated code + new generation script for 2024-10 RC (#283)
Browse files Browse the repository at this point in the history
This PR cuts a branch that holds the new generated code for the upcoming
`2024-10` release candidate. It also contains changes to the generation
script that reflect the new organization in the private `apis` repo.

## Type of Change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] This change requires a documentation update
- [ ] Infrastructure change (CI configs, etc)
- [ ] Non-code change (docs, etc)
- [ ] None of the above: (explain here)
  • Loading branch information
aulorbe committed Oct 23, 2024
1 parent 760a033 commit 8c1a209
Show file tree
Hide file tree
Showing 166 changed files with 7,279 additions and 6,164 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,4 @@ scratch

# Jetbrains
.idea
*.iml
10 changes: 6 additions & 4 deletions codegen/build-oas.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,19 @@
set -eux -o pipefail

version=$1 # e.g. 2024-07
modules=("control" "data")
modules=("db_control" "db_data" "inference")

destination="src/pinecone-generated-ts-fetch"
build_dir="build"

update_apis_repo() {
echo "Updating apis repo"
git submodule update --init --recursive
git submodule sync --recursive
pushd codegen/apis
git fetch
git pull
just build
git checkout main
git pull origin main
just build
popd
}

Expand Down
4 changes: 2 additions & 2 deletions src/control/__tests__/configureIndex.test.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { configureIndex } from '../configureIndex';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';
import type {
ConfigureIndexOperationRequest,
IndexModel,
} from '../../pinecone-generated-ts-fetch/control';
} from '../../pinecone-generated-ts-fetch/db_control';

describe('configureIndex', () => {
test('calls the openapi configure endpoint', async () => {
Expand Down
2 changes: 1 addition & 1 deletion src/control/__tests__/configureIndex.validation.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { configureIndex } from '../configureIndex';
import { PineconeArgumentError } from '../../errors';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';

describe('configureIndex argument validations', () => {
let MIA: jest.Mocked<ManageIndexesApi>;
Expand Down
4 changes: 2 additions & 2 deletions src/control/__tests__/createCollection.test.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { createCollection } from '../createCollection';
import { PineconeArgumentError } from '../../errors';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';
import type {
CollectionModel,
CreateCollectionOperationRequest,
IndexList,
} from '../../pinecone-generated-ts-fetch/control';
} from '../../pinecone-generated-ts-fetch/db_control';

const setOpenAPIResponse = (fakeCreateCollectionResponse) => {
const fakeCreateCollection: (
Expand Down
4 changes: 2 additions & 2 deletions src/control/__tests__/createIndex.test.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { createIndex } from '../createIndex';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';
import type {
CreateIndexOperationRequest,
DescribeIndexRequest,
IndexModel,
} from '../../pinecone-generated-ts-fetch/control';
} from '../../pinecone-generated-ts-fetch/db_control';
import { PineconeArgumentError } from '../../errors';

// describeIndexResponse can either be a single response, or an array of responses for testing polling scenarios
Expand Down
2 changes: 1 addition & 1 deletion src/control/__tests__/createIndex.validation.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { createIndex } from '../createIndex';
import { PineconeArgumentError } from '../../errors';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';

describe('createIndex argument validations', () => {
let MIA: jest.Mocked<ManageIndexesApi>;
Expand Down
4 changes: 2 additions & 2 deletions src/control/__tests__/deleteCollection.test.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { deleteCollection } from '../deleteCollection';
import { PineconeArgumentError } from '../../errors';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';
import type {
DeleteCollectionRequest,
CollectionList,
} from '../../pinecone-generated-ts-fetch/control';
} from '../../pinecone-generated-ts-fetch/db_control';

const setupMocks = (
deleteResponse,
Expand Down
4 changes: 2 additions & 2 deletions src/control/__tests__/describeCollection.test.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { describeCollection } from '../describeCollection';
import { PineconeArgumentError } from '../../errors';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../../pinecone-generated-ts-fetch/db_control';
import type {
DescribeCollectionRequest,
CollectionList,
CollectionModel,
} from '../../pinecone-generated-ts-fetch/control';
} from '../../pinecone-generated-ts-fetch/db_control';

const setupMocks = (
describeResponse,
Expand Down
6 changes: 3 additions & 3 deletions src/control/__tests__/indexOperationsBuilder.test.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { indexOperationsBuilder } from '../indexOperationsBuilder';
import { Configuration } from '../../pinecone-generated-ts-fetch/control';
import { Configuration } from '../../pinecone-generated-ts-fetch/db_control';

jest.mock('../../pinecone-generated-ts-fetch/control', () => ({
...jest.requireActual('../../pinecone-generated-ts-fetch/control'),
jest.mock('../../pinecone-generated-ts-fetch/db_control', () => ({
...jest.requireActual('../../pinecone-generated-ts-fetch/db_control'),
Configuration: jest.fn(),
}));

Expand Down
2 changes: 1 addition & 1 deletion src/control/configureIndex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {
ManageIndexesApi,
IndexModel,
ConfigureIndexRequest,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';
import { PineconeArgumentError } from '../errors';
import type { IndexName } from './types';
import { ValidateProperties } from '../utils/validateProperties';
Expand Down
2 changes: 1 addition & 1 deletion src/control/createCollection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {
CollectionModel,
CreateCollectionRequest,
ManageIndexesApi,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';
import { PineconeArgumentError } from '../errors';
import { ValidateProperties } from '../utils/validateProperties';

Expand Down
2 changes: 1 addition & 1 deletion src/control/createIndex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
ServerlessSpecCloudEnum,
PodSpecMetadataConfig,
IndexModelMetricEnum,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';
import { debugLog } from '../utils';
import { PodType, ValidPodTypes } from './types';
import { handleApiError, PineconeArgumentError } from '../errors';
Expand Down
2 changes: 1 addition & 1 deletion src/control/deleteCollection.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ManageIndexesApi } from '../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../pinecone-generated-ts-fetch/db_control';
import type { CollectionName } from './types';
import { PineconeArgumentError } from '../errors';

Expand Down
2 changes: 1 addition & 1 deletion src/control/deleteIndex.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { ManageIndexesApi } from '../pinecone-generated-ts-fetch/control';
import { ManageIndexesApi } from '../pinecone-generated-ts-fetch/db_control';
import { IndexName } from './types';
import { PineconeArgumentError } from '../errors';

Expand Down
2 changes: 1 addition & 1 deletion src/control/describeCollection.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {
ManageIndexesApi,
CollectionModel,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';
import type { CollectionName } from './types';
import { PineconeArgumentError } from '../errors';

Expand Down
2 changes: 1 addition & 1 deletion src/control/describeIndex.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {
IndexModel,
ManageIndexesApi,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';
import type { IndexName } from './types';
import { PineconeArgumentError } from '../errors';

Expand Down
4 changes: 2 additions & 2 deletions src/control/indexOperationsBuilder.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import {
ManageIndexesApi,
Configuration,
X_PINECONE_API_VERSION,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';
import {
queryParamsStringify,
buildUserAgent,
Expand All @@ -11,7 +11,7 @@ import {
} from '../utils';
import { middleware } from '../utils/middleware';
import type { PineconeConfiguration } from '../data/types';
import type { ConfigurationParameters as IndexOperationsApiConfigurationParameters } from '../pinecone-generated-ts-fetch/control';
import type { ConfigurationParameters as IndexOperationsApiConfigurationParameters } from '../pinecone-generated-ts-fetch/db_control';

export const indexOperationsBuilder = (
config: PineconeConfiguration
Expand Down
2 changes: 1 addition & 1 deletion src/control/listCollections.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {
ManageIndexesApi,
CollectionList,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';

export const listCollections = (api: ManageIndexesApi) => {
return async (): Promise<CollectionList> => {
Expand Down
2 changes: 1 addition & 1 deletion src/control/listIndexes.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {
ManageIndexesApi,
IndexList,
} from '../pinecone-generated-ts-fetch/control';
} from '../pinecone-generated-ts-fetch/db_control';

export const listIndexes = (api: ManageIndexesApi) => {
return async (): Promise<IndexList> => {
Expand Down
6 changes: 3 additions & 3 deletions src/data/__tests__/dataOperationsProvider.test.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { DataOperationsProvider } from '../dataOperationsProvider';
import { IndexHostSingleton } from '../indexHostSingleton';
import { Configuration } from '../../pinecone-generated-ts-fetch/data';
import { Configuration } from '../../pinecone-generated-ts-fetch/db_data';

jest.mock('../../pinecone-generated-ts-fetch/data', () => ({
...jest.requireActual('../../pinecone-generated-ts-fetch/data'),
jest.mock('../../pinecone-generated-ts-fetch/db_data', () => ({
...jest.requireActual('../../pinecone-generated-ts-fetch/db_data'),
Configuration: jest.fn(),
}));

Expand Down
4 changes: 2 additions & 2 deletions src/data/__tests__/deleteOne.test.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { deleteOne } from '../deleteOne';
import type {
DeleteOperationRequest,
DataPlaneApi,
} from '../../pinecone-generated-ts-fetch/data';
VectorOperationsApi as DataPlaneApi,
} from '../../pinecone-generated-ts-fetch/db_data';
import { DataOperationsProvider } from '../dataOperationsProvider';
import { PineconeArgumentError } from '../../errors';

Expand Down
4 changes: 2 additions & 2 deletions src/data/__tests__/describeIndexStats.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { describeIndexStats } from '../describeIndexStats';
import { DataPlaneApi } from '../../pinecone-generated-ts-fetch/data';
import { VectorOperationsApi as DataPlaneApi } from '../../pinecone-generated-ts-fetch/db_data';
import { DataOperationsProvider } from '../dataOperationsProvider';
import type { DescribeIndexStatsOperationRequest } from '../../pinecone-generated-ts-fetch/data';
import type { DescribeIndexStatsOperationRequest } from '../../pinecone-generated-ts-fetch/db_data';
import { PineconeArgumentError } from '../../errors';

const setupResponse = (response, isSuccess) => {
Expand Down
4 changes: 2 additions & 2 deletions src/data/__tests__/fetch.test.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { FetchCommand } from '../fetch';
import { DataPlaneApi } from '../../pinecone-generated-ts-fetch/data';
import { VectorOperationsApi as DataPlaneApi } from '../../pinecone-generated-ts-fetch/db_data';
import { DataOperationsProvider } from '../dataOperationsProvider';
import type {
FetchRequest,
FetchResponse,
} from '../../pinecone-generated-ts-fetch/data';
} from '../../pinecone-generated-ts-fetch/db_data';

const setupResponse = (response, isSuccess) => {
const fakeFetch: (req: FetchRequest) => Promise<FetchResponse> = jest
Expand Down
4 changes: 2 additions & 2 deletions src/data/__tests__/list.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ import { listPaginated } from '../list';
import type {
ListRequest,
ListResponse,
DataPlaneApi,
} from '../../pinecone-generated-ts-fetch/data';
VectorOperationsApi as DataPlaneApi,
} from '../../pinecone-generated-ts-fetch/db_data';
import { DataOperationsProvider } from '../dataOperationsProvider';

const setupListResponse = (response, isSuccess = true) => {
Expand Down
4 changes: 2 additions & 2 deletions src/data/__tests__/update.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { UpdateCommand } from '../update';
import { DataPlaneApi } from '../../pinecone-generated-ts-fetch/data';
import { VectorOperationsApi as DataPlaneApi } from '../../pinecone-generated-ts-fetch/db_data';
import { DataOperationsProvider } from '../dataOperationsProvider';
import type { UpdateOperationRequest } from '../../pinecone-generated-ts-fetch/data';
import type { UpdateOperationRequest } from '../../pinecone-generated-ts-fetch/db_data';

const setupResponse = (response, isSuccess) => {
const fakeUpdate: (req: UpdateOperationRequest) => Promise<object> = jest
Expand Down
4 changes: 2 additions & 2 deletions src/data/__tests__/upsert.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { UpsertCommand } from '../upsert';
import { DataPlaneApi } from '../../pinecone-generated-ts-fetch/data';
import type { UpsertOperationRequest } from '../../pinecone-generated-ts-fetch/data';
import { VectorOperationsApi as DataPlaneApi } from '../../pinecone-generated-ts-fetch/db_data';
import type { UpsertOperationRequest } from '../../pinecone-generated-ts-fetch/db_data';
import { DataOperationsProvider } from '../dataOperationsProvider';

const setupResponse = (response, isSuccess) => {
Expand Down
6 changes: 3 additions & 3 deletions src/data/dataOperationsProvider.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ import type { PineconeConfiguration } from './types';
import {
Configuration,
ConfigurationParameters,
DataPlaneApi,
VectorOperationsApi as DataPlaneApi,
X_PINECONE_API_VERSION,
} from '../pinecone-generated-ts-fetch/data';
import type { HTTPHeaders } from '../pinecone-generated-ts-fetch/data';
} from '../pinecone-generated-ts-fetch/db_data';
import type { HTTPHeaders } from '../pinecone-generated-ts-fetch/db_data';
import {
queryParamsStringify,
buildUserAgent,
Expand Down
2 changes: 1 addition & 1 deletion src/data/deleteMany.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DataOperationsProvider } from './dataOperationsProvider';
import type { DeleteRequest } from '../pinecone-generated-ts-fetch/data';
import type { DeleteRequest } from '../pinecone-generated-ts-fetch/db_data';
import type { RecordId } from './types';
import { PineconeArgumentError } from '../errors';

Expand Down
2 changes: 1 addition & 1 deletion src/data/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import { describeIndexStats } from './describeIndexStats';
import { DataOperationsProvider } from './dataOperationsProvider';
import { listPaginated } from './list';
import type { ListOptions } from './list';
import type { HTTPHeaders } from '../pinecone-generated-ts-fetch/data';
import type { HTTPHeaders } from '../pinecone-generated-ts-fetch/db_data';
import type {
PineconeConfiguration,
RecordMetadata,
Expand Down
2 changes: 1 addition & 1 deletion src/data/list.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { DataOperationsProvider } from './dataOperationsProvider';
import type {
ListRequest,
ListResponse,
} from '../pinecone-generated-ts-fetch/data';
} from '../pinecone-generated-ts-fetch/db_data';
import { ValidateProperties } from '../utils/validateProperties';

/**
Expand Down
2 changes: 1 addition & 1 deletion src/data/types.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import type {
FetchAPI,
HTTPHeaders,
} from '../pinecone-generated-ts-fetch/data';
} from '../pinecone-generated-ts-fetch/db_data';

/**
* @see [Understanding projects](https://docs.pinecone.io/docs/projects)
Expand Down
2 changes: 1 addition & 1 deletion src/data/upsert.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { DataOperationsProvider } from './dataOperationsProvider';
import type { Vector } from '../pinecone-generated-ts-fetch/data';
import type { Vector } from '../pinecone-generated-ts-fetch/db_data';
import {
PineconeRecord,
PineconeRecordsProperties,
Expand Down
2 changes: 1 addition & 1 deletion src/errors/handling.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { extractMessage } from './utils';
import { mapHttpStatusError } from './http';
import { PineconeConnectionError } from './request';
import type { ResponseError } from '../pinecone-generated-ts-fetch/control';
import type { ResponseError } from '../pinecone-generated-ts-fetch/db_control';

/** @internal */
export const handleApiError = async (
Expand Down
2 changes: 1 addition & 1 deletion src/errors/request.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { BasePineconeError } from './base';
import type { ErrorContext } from '../pinecone-generated-ts-fetch/control';
import type { ErrorContext } from '../pinecone-generated-ts-fetch/db_control';

/**
* This error is thrown when the client attempts to make a
Expand Down
2 changes: 1 addition & 1 deletion src/errors/utils.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import type { ResponseError } from '../pinecone-generated-ts-fetch/control';
import type { ResponseError } from '../pinecone-generated-ts-fetch/db_control';

/** @internal */
export const extractMessage = async (error: ResponseError): Promise<string> => {
Expand Down
5 changes: 2 additions & 3 deletions src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -52,13 +52,12 @@ export type {
DeletionProtection,
DescribeCollectionRequest,
DescribeIndexRequest,
Embedding,
FetchAPI,
IndexList,
IndexModel,
ServerlessSpec,
ServerlessSpecCloudEnum,
PodSpec,
PodSpecMetadataConfig,
} from './pinecone-generated-ts-fetch/control';
export type { ListResponse } from './pinecone-generated-ts-fetch/data';
} from './pinecone-generated-ts-fetch/db_control';
export type { ListResponse } from './pinecone-generated-ts-fetch/db_data';
1 change: 1 addition & 0 deletions src/inference/__tests__/inference.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ describe('Inference Class: embed', () => {
'Response from Inference API is missing required fields'
);
const embed = jest.spyOn(inference._inferenceApi, 'embed');
// @ts-ignore
embed.mockResolvedValue(mockedIncorrectResponse);

try {
Expand Down
Loading

0 comments on commit 8c1a209

Please sign in to comment.