bump-cli 2.9.12 → 2.10.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/README.md CHANGED
@@ -9,15 +9,21 @@
9
9
  <a href="https://bump.sh/users/sign_up">Sign up</a>
10
10
  </p>
11
11
 
12
- The Bump.sh CLI is used to interact with API documentation and hubs hosted on Bump.sh from your choice of popular API description formats: OpenAPI, Swagger, or AsyncAPI.
12
+ The Bump.sh CLI is used to interact with API documentation, hubs and workflows hosted on Bump.sh from your choice of popular API description formats: OpenAPI, Swagger, or AsyncAPI for API documentation. Flower or Arazzo for API workflows.
13
13
 
14
14
  Using [OpenAPI](https://github.com/OAI/OpenAPI-Specification) (v3.x and v2.0) or [AsyncAPI](https://www.asyncapi.com/docs/reference/specification/latest) (2.x), you can do any of the following:
15
15
 
16
16
  - Validate an API document before publishing to your documentation.
17
- - Publish an API document to your Bump.sh documentation or hubs.
18
- - Compare two API documents to generate a human-readable diff from your API definition.
17
+ - [Publish an API document](#the-deploy-command) to your Bump.sh documentation or hubs.
18
+ - [Compare two API documents](#the-diff-command) to generate a human-readable diff from your API definition.
19
19
  Under the hood, it uses the API of [developers.bump.sh](https://developers.bump.sh). And is built with the [`oclif`](https://oclif.io) framework in Typescript.
20
20
 
21
+ Using [Flower](https://docs.bump.sh/help/mcp-servers/specification-support/flower-support/) or [Arazzo](https://docs.bump.sh/arazzo/v1.0/), you can:
22
+
23
+ - [Deploy a workflow document](#deploy-a-workflow-document-on-your-mcp-server) to your Bump.sh MCP server
24
+
25
+ Have fun designing APIs ✨.
26
+
21
27
  [![Version](https://img.shields.io/npm/v/bump-cli.svg)](https://npmjs.org/package/bump-cli)
22
28
  [![Tests](https://github.com/bump-sh/cli/actions/workflows/checks.yml/badge.svg)](https://github.com/bump-sh/cli/actions/workflows/checks.yml)
23
29
  [![License](https://img.shields.io/npm/l/bump-cli.svg)](https://github.com/bump-sh/cli/blob/master/package.json)
@@ -177,15 +183,25 @@ Please check `bump deploy --help` for more usage details.
177
183
 
178
184
  #### Deploy a workflow document on your MCP server
179
185
 
180
- Use the `bump deploy` command with the `--mcp-server` flag to push a workflow definition to your MCP server.
186
+ Use the `bump deploy` command with the `--mcp-server` flag to push a
187
+ workflow definition to your MCP server.
188
+
189
+ Documents following either [Arazzo](https://docs.bump.sh/arazzo/v1.0/)
190
+ or
191
+ [Flower](https://docs.bump.sh/help/mcp-servers/specification-support/flower-support/)
192
+ specification are supported.
193
+
181
194
 
182
195
  ```shell
183
- bump deploy path/to/flower-document.yml --mcp-server my-mcp-server-id-or-slug --token $BUMP_TOKEN
196
+ bump deploy path/to/flower-or-arazzo-document.yml --mcp-server my-mcp-server-id-or-slug --token $BUMP_TOKEN
184
197
  ```
185
198
 
186
199
  > [!NOTE]
187
200
  > You can find your own `mcp-server-id-or-slug` and `$BUMP_TOKEN` api key from your [MCP server settings](https://bump.sh/dashboard) at 'https://bump.sh/{your-organization}/workflow/set/{mcp-server-id}/tokens'.
188
201
 
202
+ More details about the MCP server feature are available on [this
203
+ dedicated help section](https://docs.bump.sh/help/mcp-servers/).
204
+
189
205
  This feature is currently in closed beta.
190
206
  Request an early access at hello@bump.sh
191
207
 
@@ -17,8 +17,9 @@ export interface PreviewRequest {
17
17
  references?: Reference[];
18
18
  }
19
19
  export interface Reference {
20
- content?: string;
21
- location?: string;
20
+ content: string;
21
+ location: string;
22
+ name?: string;
22
23
  }
23
24
  export interface VersionRequest {
24
25
  auto_create_documentation?: boolean;
@@ -69,6 +70,7 @@ export interface DiffItem {
69
70
  }
70
71
  export interface WorkflowVersionRequest {
71
72
  definition: string;
73
+ references?: Reference[];
72
74
  }
73
75
  export interface WorkflowVersionResponse {
74
76
  id: string;
@@ -119,7 +119,7 @@ export class Overlay {
119
119
  update(spec, parent, update, property_or_index) {
120
120
  try {
121
121
  // Deep merge objects using a module (built-in spread operator is only shallow)
122
- const merger = mergician({ appendArrays: true });
122
+ const merger = mergician({ appendArrays: true, dedupArrays: true });
123
123
  if (property_or_index === '$') {
124
124
  // You can't actually merge an update on a root object
125
125
  // target with the jsonpathly lib, this is just us merging
@@ -0,0 +1,7 @@
1
+ import type { JSONSchema7 } from 'json-schema';
2
+ declare const _default: {
3
+ schemas: {
4
+ '1.0': JSONSchema7;
5
+ };
6
+ };
7
+ export default _default;
@@ -0,0 +1,8 @@
1
+ // Spec definitions are copied from the official
2
+ // spec repo https://spec.openapis.org/arazzo/
3
+ import schemaV10 from './v1.0/schema.json' with { type: 'json' };
4
+ export default {
5
+ schemas: {
6
+ '1.0': schemaV10,
7
+ },
8
+ };