Commit Graph

88 Commits

Author SHA1 Message Date
Adam Leventhal 4cce71069f
improve builder `TryInto` failure messages for body parameters (#646) 2023-12-12 16:58:20 -08:00
Adam Leventhal 54ea87fa40
openapiv3 v2 (#607) 2023-10-21 00:55:40 -07:00
Sophie Tauchert a1de78dbeb
Add support for text/plain and text/x-markdown body content types (#593) 2023-10-16 11:47:50 -07:00
Ian Nickles 6dc2a0ff2d
Generate unique internal var names and add tests for name collisions. (#601)
* Generate unique identifiers for internal variable names instead of using a
static prefix.

* Add tests for previous name collision issues.

* only prefix when needed.

Co-authored-by: Adam Leventhal <ahl@oxide.computer>

* add missing test invocation.

* update test fixtures per aaa40855485ca3c2ccf338c07d595ffc907975a1.

---------

Co-authored-by: Adam Leventhal <ahl@oxide.computer>
2023-10-16 11:44:24 -07:00
Ian Nickles d5f92a0e46
Rename internal `client` variable to help avoid collisions with input specs. (#600) 2023-10-12 15:39:06 -07:00
Ian Nickles 233cb80d94
Prefix internal variable names to help avoid collisions (#599) 2023-10-12 10:57:24 -07:00
Adam Leventhal 4dcba5928c
improve and simplify openapiv3 -> schemars conversion (#592) 2023-10-04 08:12:59 -07:00
Adam H. Leventhal 90fae279f9 update rustfmt (let/else) 2023-08-25 15:15:28 -07:00
Adam Leventhal eb0d9d207a
Restructure argument processing (#523)
Restructure argument processing to close up some corner cases where we didn't properly identify when the json body was required and to make it more extensible to other types of parameters such as those derived from enum variants.
2023-07-14 17:37:54 -07:00
Adam Leventhal 66c890807f
CLI: improve required settings for paginated operations (#469) 2023-05-15 08:59:07 -07:00
Adam Leventhal e7c4c16d9f
add special handling for optional query parameters (#468) 2023-05-12 15:04:00 -07:00
Adam Leventhal b94123e5ac
httpmock patterns are too general (#467) 2023-05-12 13:19:09 -07:00
Adam Leventhal 87749a11ee
update for new dropshot pagination format (#465) 2023-05-08 11:16:48 -07:00
Adam Leventhal e6004a936f
sync (#464) 2023-05-08 10:04:30 -07:00
Adam Leventhal db1826841e
add a json-body option to specify the full body (#458) 2023-05-07 20:43:45 -07:00
Benjamin Leonard 1121d5948c
Support for `long_about` in `generated_cli` (#456) 2023-05-04 08:36:17 -07:00
Adam Leventhal d0d1137a3a
generated streaming interfaces should honor the limit input (#455) 2023-05-03 20:53:28 -07:00
Adam Leventhal d135ec6df7
change handling of optional parameters (#453) 2023-05-03 11:44:26 -07:00
Adam Leventhal 29ac543eb5
CLI: simple handling of paginated operations (#454) 2023-05-03 11:42:38 -07:00
Adam Leventhal 6a515c304f
CLI: generate a fixed list of valid values for enum types (#442) 2023-04-26 15:15:07 -07:00
Douglas Dwyer 24862f92e0
Allow for parameters in content types (#430) 2023-04-25 22:09:05 -07:00
Dillen Meijboom d329bc0912
Add support for wasm (#278) 2023-04-25 21:50:04 -07:00
Adam Leventhal 362b6b728a
remove generate_text (#440) 2023-04-25 21:47:40 -07:00
John Vandenberg b717086ef3
Remove rustfmt from progenitor-impl (#368) 2023-04-25 09:11:52 -07:00
Adam Leventhal f6f957f89f
remove some turds / improve comments (#438) 2023-04-25 08:51:08 -07:00
Adam Leventhal 7da8db8544
generate `httpmock`-based testing code (#437) 2023-04-24 19:03:33 -07:00
Adam Leventhal a9e76608ca
add accept header (#436) 2023-04-24 17:42:22 -07:00
Adam Leventhal e2245764fe
allow for integer types with floating-point constraints (#417) 2023-04-11 16:34:31 -07:00
Adam H. Leventhal a4abdf60c5 cli: not all arguments are used to construct the body parameter 2023-04-04 11:52:25 -07:00
Adam Leventhal e04bb171f6
cli: handle optional body parameters (#401) 2023-03-30 12:27:25 -07:00
Adam Leventhal 4eb8cd6c21
make the OpenAPI info.version field accessible through the generated client (#400) 2023-03-29 23:02:17 -07:00
Adam Leventhal 94db6ff74f
complete CLI overrides to allow consumers to modify commands and execution (#399) 2023-03-29 16:50:41 -07:00
Adam Leventhal 10dc4cafc6
CLI generation prototype (#349) 2023-03-28 14:54:05 -07:00
Adam Leventhal 297a0c2f0a
builds can fail if TryFrom is not imported... sufficiently (#393) 2023-03-27 10:45:25 -07:00
Adam Leventhal d0b9842ce3
use body builder types in operation builders (#385) 2023-03-23 18:11:44 -07:00
John Vandenberg 82c979df65
Show missing schema ref (#325) 2023-02-20 16:11:35 -08:00
Adam Leventhal 1b942d1146
correct builder error message for Option types (#327) 2023-02-05 20:31:40 -08:00
Adam Leventhal 88ff3cf1e0
update typify and nexus.json (#323) 2023-01-31 21:28:12 -08:00
Adam Leventhal 9f0a9910ab
Let consumers replace types by name (#317) 2023-01-24 14:55:16 -08:00
John Vandenberg 7e64a98fd5
fix clippy issues (#301) 2023-01-18 00:07:27 -08:00
John Vandenberg 8836d77398
generate Cargo.toml using built dependency versions (#298) 2023-01-16 19:21:36 -08:00
Adam Leventhal 46d2df0e2a
bump versions (#305) 2023-01-15 19:59:53 -08:00
bnaecker 6eaacdfc93
Add method for referring to Client's inner type (#302) 2023-01-13 15:08:18 -08:00
Adam Leventhal 96af7b5a09
documentation examples sometimes are not formatted properly (#303) 2023-01-13 10:59:21 -08:00
Adam Leventhal a5fea0b061
fix a warning with base64 (#300) 2023-01-11 14:19:55 -08:00
bnaecker ba189e6323
Add docstrings to the generated Client (#295)
- Add docstring to the `Client`, based on the OpenAPI title and
  description, if provided.
- Add docstrings to the constructors and getters shared by all generated
  clients.
- Update expectorate tests.
- Small typo-fix in README.
2023-01-07 18:05:33 -08:00
Artem Medvedev e34756583a
feat: support header parameters (#210) 2023-01-04 11:14:37 -08:00
John Vandenberg 5b683c669f
Disable default features of reqwest and chrono (#232) 2022-12-27 15:59:45 -08:00
Adam Leventhal 57031d77d3
Allow conversion overrides by specifying a schema (#280) 2022-12-27 11:55:57 -08:00
Adam Leventhal dcee6a4eb2
clippy nits (#269) 2022-12-07 18:46:14 -08:00