Skip to content

v7.0.0-beta.4

Pre-release
Pre-release
Compare
Choose a tag to compare
@kanadgupta kanadgupta released this 06 Nov 20:51
· 91 commits to main since this release

api v7 is around the corner folks! Here's a quick summary of the changes since api v6:

  • We've totally overhauled our SDK generation strategy so the generated SDK's types and module resolution should be consistent across all modern1 JavaScript environments (CommonJS, ES Modules, TypeScript, etc.). The CLI no longer asks confusing configuration questions about the type of JavaScript SDK you want to generate — it now generates a fully-typed JavaScript SDK that ✨ just works ✨ in pretty much every modern JavaScript environment.
  • New api CLI commands to help you better manage your SDK installation(s) — commands to list and uninstall your SDKs.
  • Lots of little DX niceties (license generation, configuration files with sensible defaults, etc.) so you can generate and publish a high-quality SDK to the NPM registry within minutes 🚀

api v7 is available in beta if you want to give it a whirl!

npx api@next install [your API definition here]

Got any feedback for us? Head on over to #791 and let us know what you think, we'd love to hear from you!

What's Changed

  • chore(deps): bumping out of date deps by @erunion in #711
  • chore(deps): bump actions/checkout from 3 to 4 by @dependabot in #712
  • chore(deps): upgrading to typescript 5 by @erunion in #719
  • chore(deps): bump json-schema-to-ts from 2.6.2-beta.0 to 2.9.2 by @dependabot in #718
  • chore(deps-dev): bump the minor-development-deps group with 1 update by @dependabot in #720
  • chore(deps): bump commander from 10.0.0 to 11.0.0 by @dependabot in #703
  • feat: drop support for node 16 and move to require native fetch by @erunion in #722
  • feat: deprecating the dynamic api entrypoint by @erunion in #723
  • refactor(core): moving the core library into an isolated package by @erunion in #725
  • refactor(ts): strict mode by @kanadgupta in #696
  • refactor(api): cleaning up the api directory now that core is split out by @erunion in #728
  • feat: moving node imports over to using the node: prefix by @erunion in #729
  • ci: knip by @kanadgupta in #730
  • refactor: rename @api/core to api.core by @kanadgupta in #731
  • fix: try renaming core pkg to @readme/api-core by @kanadgupta in #732
  • chore(deps-dev): bump oas-normalize from 8.4.1 to 10.1.0 by @dependabot in #726
  • chore(deps): bump by @kanadgupta in #735
  • chore(deps): bump @readme/oas-to-har from 20.1.1 to 23.0.8 by @dependabot in #741
  • chore(deps): bump by @kanadgupta in #742
  • chore(deps): bump oas + friends by @kanadgupta in #743
  • chore(deps): npm up by @kanadgupta in #744
  • chore(deps): bump fetch-har by @kanadgupta in #745
  • chore(deps): bump vitest from 0.34.5 to 0.34.6 by @dependabot in #751
  • chore(deps-dev): bump the minor-development-deps group with 4 updates by @dependabot in #750
  • refactor: remove make-dir as a dep by @kanadgupta in #746
  • fix(api): storage dir not being set properly by @erunion in #753
  • feat: migrate api and core to ESM by @kanadgupta in #733
  • refactor(api): minor refactors to how some internal language classes are used by @erunion in #755
  • fix(api): nestling generated schemas into a new schemas/ directory by @erunion in #756
  • chore(deps): bump undici from 5.25.2 to 5.26.3 by @dependabot in #757
  • chore(deps-dev): bump @babel/traverse from 7.23.0 to 7.23.2 by @dependabot in #758
  • feat(api): proper esm support and codegen overhauls by @erunion in #754
  • refactor(core): removing oas as a dependency on codegen'd SDKs by @erunion in #760
  • feat(codegen): required devDeps are now listed in package.json by @erunion in #761
  • fix(cli): specs not being dereferenced when installed + fixture refactors by @erunion in #762
  • feat(core): moving json-schema-to-ts directly into the core package by @erunion in #764
  • chore(deps): bumping all out of date dependencies by @erunion in #765
  • feat(cli): prompting the user to use info.title for their installed SDK by @erunion in #763
  • feat(httpsnippet-client-api): updates for v7 compatibility + custom variable support by @erunion in #767
  • fix(httpsnippet-client-api): retain casing for non-reserved headers by @erunion in #768
  • feat(api): codegen'd sdks now look a little bit nicer by @erunion in #769
  • feat(api): exposing openapi.json to codegen'd package.json files by @erunion in #771
  • fix(cjs): include get-stream directly in bundle by @kanadgupta in #770
  • feat(api): adding a $schema property to generated api.json lockfiles by @erunion in #773
  • feat(api): creation of a new list command by @erunion in #775
  • ci: cleanup by @kanadgupta in #778
  • feat: add a placeholder README file in codegen'd directory by @kanadgupta in #774
  • feat(api): addition of a new uninstall command by @erunion in #776
  • refactor(lockfile): consolidate TS and JSON schema type definitions by @kanadgupta in #777
  • fix: add caret to package.json dep by @kanadgupta in #779
  • fix(core): funky type issues with the main export exporting multiple things by @erunion in #781
  • feat(api): improvements to the installation screen by @erunion in #783
  • ci(api): fixing our smoketest suite by @erunion in #784
  • refactor(api): refactor core to handle HAR generation for code snippets by @erunion in #785
  • feat(api): creating LICENSE files and and SDK headings by @erunion in #786
  • feat: tsconfig, gitignore, npm script enhancements by @kanadgupta in #782
  • fix(core): refactoring FromSchema out of core by @erunion in #787
  • refactor(snippets): moving the library over to be an HTTPSnippet plugin by @erunion in #792
  • fix(api): run npm install with --ignore-scripts by @erunion in #793
  • feat: syntax highlighting on example snippet by @kanadgupta in #795
  • feat(codegen): expose package.json in exports object by @kanadgupta in #796
  • feat: throw error for legacy dynamic require users by @kanadgupta in #794
  • chore(deps): upgrading all of our oas deps to their latest releases by @erunion in #797
  • feat(core): bring FromSchema back into core by @kanadgupta in #801
  • chore(deps): bump figures from 5.0.0 to 6.0.1 by @dependabot in #805
  • chore(deps-dev): bump the minor-development-deps group with 19 updates by @dependabot in #804
  • chore(deps): bump actions/setup-node from 3 to 4 by @dependabot in #803
  • chore(deps): upgrading oas to its latest release by @erunion in #808
  • test: add tests for CLI commands by @kanadgupta in #799
  • feat: convert SDK output to module by @kanadgupta in #802
  • feat: add example code snippet to README by @kanadgupta in #809
  • fix(httpsnippet-client-api): making external deps no longer external by @erunion in #810

Full Changelog: v6.1.1...v7.0.0-beta.4

  1. Note that api now requires Node.js v18 or greater if you're a Node.js user, and TypeScript 5.2 if you're a TypeScript user.