Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(openapi): adding a command to resolve circular and recursive references #1063

Open
wants to merge 63 commits into
base: v9
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
59bb8f2
Adding refs to the list of openapi commands
Nov 11, 2024
d82700a
Code to execute the openapi:refs command
Nov 11, 2024
099a6f1
style: apply Prettier formatting
Nov 11, 2024
95208cf
Add 'openapi:refs' command and update related test snapshots
Nov 11, 2024
6249347
docs(openapi) command description
Nov 14, 2024
0a5f141
fix(openapi) use of a premade solution for processing a file
Nov 14, 2024
03c092c
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 14, 2024
3660917
chore: update package-lock.json
Nov 19, 2024
7ca5197
Merge branch 'next' of https://github.com/readmeio/rdme into oleh/ope…
Nov 19, 2024
597ece5
refactor: align code with recent updates
Nov 19, 2024
0b87569
Merge branch 'oleh/openapi-adding-command-to-solve-circularity-and-re…
Nov 19, 2024
3039ea0
chore: minor correction
Nov 19, 2024
dca7b9f
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 19, 2024
349b9f8
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 19, 2024
88bd34e
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 19, 2024
0a3c4e0
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 19, 2024
0c0027e
test: openapi:refs
Nov 19, 2024
18f7b4e
Merge branch 'oleh/openapi-adding-command-to-solve-circularity-and-re…
Nov 19, 2024
8fcc065
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 20, 2024
9fa0ca3
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 20, 2024
a4b1fc0
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 21, 2024
c0aa486
Merge remote-tracking branch 'origin/next' into oleh/openapi-adding-c…
Nov 22, 2024
d938932
docs: updating documentation after merge
Nov 22, 2024
44571ae
chore: small text change
Nov 22, 2024
3f1795b
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Nov 25, 2024
b01b18a
refactor: align code with recent updates
Nov 25, 2024
1d1c7e2
feat: add check and display appropriate message for files that cannot…
Nov 25, 2024
1a25b65
test: unresolvable files
Nov 25, 2024
751c52a
chore: gaps
Nov 29, 2024
19875c1
feat: processing of circularity that cannot be processed
Nov 29, 2024
43f2c82
test: unprocessable files
Nov 29, 2024
37f4d5b
chore: correction
Nov 29, 2024
e8d2b9a
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 2, 2024
b293e72
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
Dec 2, 2024
e2a0948
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 2, 2024
87bdd5e
refactor: requested changes
Dec 2, 2024
91dbb5a
chore: deleting a file
Dec 2, 2024
6de2193
chore: oops
Dec 2, 2024
a55dd14
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
Dec 2, 2024
ce09500
refactor: requested changes
Dec 2, 2024
b224ec6
fix: `openapi:refs` touch ups (#1103)
kanadgupta Dec 5, 2024
9c037c9
test: schemes without properties
Dec 5, 2024
da5b0ad
Merge remote-tracking branch 'origin' into oleh/openapi-adding-comman…
Dec 6, 2024
9249d2a
chore: minor updates
Dec 6, 2024
dd02080
Revert "chore: minor updates"
Dec 6, 2024
4355f9c
chore: minor updates
Dec 6, 2024
a7d8555
chore: lint
Dec 6, 2024
f010a7d
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 6, 2024
f7e52bf
feat: processing schemas with only (beta)
Dec 7, 2024
8bcf655
Merge branch 'oleh/openapi-adding-command-to-solve-circularity-and-re…
Dec 7, 2024
2667d1b
chore: lint
Dec 7, 2024
1d119f2
chore: cleanup
Dec 8, 2024
e790dec
chore: cleanup
Dec 9, 2024
ae39d1e
test: complex case
Dec 9, 2024
6e65d9f
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 9, 2024
91958bd
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 9, 2024
09b8039
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 10, 2024
4011248
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 11, 2024
0400bae
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
olehshh Dec 12, 2024
5df03c2
Merge branch 'v9' into oleh/openapi-adding-command-to-solve-circulari…
olehshh Dec 13, 2024
3721546
Merge branch 'v9' into oleh/openapi-adding-command-to-solve-circulari…
olehshh Dec 17, 2024
304072d
chore: suggestion to contact support in case of certain errors
Dec 17, 2024
ec3768a
chore: cleanup
Dec 19, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Merge branch 'next' into oleh/openapi-adding-command-to-solve-circula…
…rity-and-recursiveness
Oleh Shumov committed Dec 2, 2024

Verified

This commit was signed with the committer’s verified signature.
GuySartorelli Guy Sartorelli
commit b293e724e2a483d0558645423711b1f92adbf697
6 changes: 3 additions & 3 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -33,10 +33,10 @@ updates:
prefix: chore(deps)
prefix-development: chore(deps-dev)
ignore:
# See https://github.com/sindresorhus/ora/issues/229
- dependency-name: ora
# Blocked on this until we can bump our shared ESLint config to support ESLint 9
- dependency-name: eslint
versions:
- '>= 7'
- '>= 8'
# There are ProxyAgent discrepancies between undici@6 and
# the Node.js fetch implementation (which uses undici@5).
# Until we use undici itself for fetch calls, we should
186 changes: 0 additions & 186 deletions __tests__/__snapshots__/index.test.ts.snap
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you delete this file?

Original file line number Diff line number Diff line change
@@ -1,186 +0,0 @@
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html

exports[`cli > --help > should not surface args that are designated as hidden 1`] = `
"
Upload, or resync, your OpenAPI/Swagger definition to ReadMe.

Usage

rdme openapi [file|url] [options]

Options

--key string Project API key
--id string Unique identifier for your API definition. Use
this if you're re-uploading an existing API
definition.
--version string Project version. If running command in a CI
environment and this option is not passed, the
main project version will be used.
--workingDirectory string Working directory (for usage with relative
external references)
--useSpecVersion Uses the version listed in the \`info.version\`
field in the API definition for the project
version parameter.
--raw Return the command results as a JSON object
instead of a pretty output.
--github Create a new GitHub Actions workflow for this
command.
--create Bypasses the create/update prompt and creates a
new API definition.
--update Automatically update an existing API definition
in ReadMe if it's the only one associated with
the current version.
--title string An override value for the \`info.title\` field in
the API definition
--dryRun Runs the command without creating/updating any
API Definitions in ReadMe. Useful for debugging.
-h, --help Display this usage guide

Related commands

$ rdme openapi:convert Convert an API definition to OpenAPI and bundle any
external references.
$ rdme openapi:inspect Analyze an OpenAPI/Swagger definition for various
OpenAPI and ReadMe feature usage.
$ rdme openapi:reduce Reduce an OpenAPI definition into a smaller subset.
$ rdme openapi:refs The script resolves circular and recursive
references in OpenAPI by replacing them with object
schemas. However, not all circular references can
be resolved. You can run the openapi:inspect
command to identify which references remain
unresolved.
$ rdme openapi:validate Validate your OpenAPI/Swagger definition.
"
`;

exports[`cli > --help > should print usage for a given command 1`] = `
"
Upload, or resync, your OpenAPI/Swagger definition to ReadMe.

Usage

rdme openapi [file|url] [options]

Options

--key string Project API key
--id string Unique identifier for your API definition. Use
this if you're re-uploading an existing API
definition.
--version string Project version. If running command in a CI
environment and this option is not passed, the
main project version will be used.
--workingDirectory string Working directory (for usage with relative
external references)
--useSpecVersion Uses the version listed in the \`info.version\`
field in the API definition for the project
version parameter.
--raw Return the command results as a JSON object
instead of a pretty output.
--github Create a new GitHub Actions workflow for this
command.
--create Bypasses the create/update prompt and creates a
new API definition.
--update Automatically update an existing API definition
in ReadMe if it's the only one associated with
the current version.
--title string An override value for the \`info.title\` field in
the API definition
--dryRun Runs the command without creating/updating any
API Definitions in ReadMe. Useful for debugging.
-h, --help Display this usage guide

Related commands

$ rdme openapi:convert Convert an API definition to OpenAPI and bundle any
external references.
$ rdme openapi:inspect Analyze an OpenAPI/Swagger definition for various
OpenAPI and ReadMe feature usage.
$ rdme openapi:reduce Reduce an OpenAPI definition into a smaller subset.
$ rdme openapi:refs The script resolves circular and recursive
references in OpenAPI by replacing them with object
schemas. However, not all circular references can
be resolved. You can run the openapi:inspect
command to identify which references remain
unresolved.
$ rdme openapi:validate Validate your OpenAPI/Swagger definition.
"
`;

exports[`cli > --help > should print usage for a given command if supplied as \`help <command>\` 1`] = `
"
Upload, or resync, your OpenAPI/Swagger definition to ReadMe.

Usage

rdme openapi [file|url] [options]

Options

--key string Project API key
--id string Unique identifier for your API definition. Use
this if you're re-uploading an existing API
definition.
--version string Project version. If running command in a CI
environment and this option is not passed, the
main project version will be used.
--workingDirectory string Working directory (for usage with relative
external references)
--useSpecVersion Uses the version listed in the \`info.version\`
field in the API definition for the project
version parameter.
--raw Return the command results as a JSON object
instead of a pretty output.
--github Create a new GitHub Actions workflow for this
command.
--create Bypasses the create/update prompt and creates a
new API definition.
--update Automatically update an existing API definition
in ReadMe if it's the only one associated with
the current version.
--title string An override value for the \`info.title\` field in
the API definition
--dryRun Runs the command without creating/updating any
API Definitions in ReadMe. Useful for debugging.
-h, --help Display this usage guide

Related commands

$ rdme openapi:convert Convert an API definition to OpenAPI and bundle any
external references.
$ rdme openapi:inspect Analyze an OpenAPI/Swagger definition for various
OpenAPI and ReadMe feature usage.
$ rdme openapi:reduce Reduce an OpenAPI definition into a smaller subset.
$ rdme openapi:refs The script resolves circular and recursive
references in OpenAPI by replacing them with object
schemas. However, not all circular references can
be resolved. You can run the openapi:inspect
command to identify which references remain
unresolved.
$ rdme openapi:validate Validate your OpenAPI/Swagger definition.
"
`;

exports[`cli > --help > should show related commands for a subcommands help menu 1`] = `
"
List versions available in your project or get a version by SemVer (https://semver.org/).

Usage

rdme versions [options]

Options

--key string Project API key
--version string A specific project version to view.
-h, --help Display this usage guide

Related commands

$ rdme versions:create Create a new version for your project.
$ rdme versions:delete Delete a version associated with your ReadMe
project.
$ rdme versions:update Update an existing version for your project.
"
`;
Loading
You are viewing a condensed version of this merge commit. You can view the full changes here.