Commit Graph

407 Commits

Author SHA1 Message Date
f612b3798a
include std and serializeMap from json.zig in generated code 2021-09-05 13:10:48 -07:00
0368c27c2c
move to state parameter and index level rather than prefix
This also includes a small change to force output of mappings even if empty
New zig correctly detects that without any field, we end up trying to use
a constant that does not exist (this is in the generated code)
2021-09-05 13:09:22 -07:00
2d10c6e356
change for compiling on 0.8.1 or current master 2021-09-05 13:05:50 -07:00
8ec16dbb1d
set signature options to something mostly appropriate (grr S3) 2021-09-02 15:43:02 -07:00
98b0c4127f
add generic dump function - handy for printf debugging 2021-09-02 15:41:14 -07:00
87116cb69e
support requests with bodies/responses without 2021-09-02 15:40:16 -07:00
535205e947
fix query args (http_query is a decl, not a field)
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-01 08:58:25 -07:00
3005e07cee
fix servicemodel test
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-01 08:27:58 -07:00
c7c5a0233c
switch to comptime array of strings for delete
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-01 07:13:42 -07:00
9f58076bac
add service_meta as struct const
Some checks failed
continuous-integration/drone/push Build is failing
2021-08-24 17:13:45 -07:00
7f178bcc91
provide ability to handle requests built at runtime
Some checks failed
continuous-integration/drone/push Build is failing
This commit adds a new interface that is capable of runtime
use. By calling Request(action).call(request, options), the request
object can now be built at runtime. This change also moves the client
object into the options structure. It also moves the metaInfo generated
function to a type-based function rather than requiring an instance for
binding.
2021-08-24 17:02:28 -07:00
866a68777e
teach json parsing about map patterns
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-23 13:37:40 -07:00
5c5f23eb26
skip value of field when field is unused (ported in from zig master) 2021-08-23 10:16:22 -07:00
8e853e9a82
rest json v1 basic requests (responses tbd)
All checks were successful
continuous-integration/drone/push Build is passing
This provides initial implementation with some basic calls
working. Only GET requests have been verified so far.
Http header support missing. POST/PUT might work, but
have not been tested. Currently the demo tests are
failing due to a response deserialization issue that
is still being debugged
2021-08-13 18:12:05 -07:00
6f53ed6dcf
http trait necessary for rest json support
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-13 11:03:11 -07:00
17b0ae9551
provide smithy-based json serialization for request data
All checks were successful
continuous-integration/drone/push Build is passing
This will use the actual structure name or the override
from the trait as needed. Return value support
is also enabled in the code generation but not in
aws.zig. The current fuzzy checks should get most
of the way there though
2021-08-13 10:28:29 -07:00
5c29120a44
initial json 1.1 support
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-12 17:51:47 -07:00
f21ce40186
include proper service name and use it 2021-08-12 17:51:07 -07:00
81cc6a8cde
fix query tests by consistently allocating requestid
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-12 17:05:30 -07:00
8e4dafbdee
update readme
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-12 14:25:08 -07:00
00b2ab3d27
initial support for json 1.0 2021-08-12 14:24:24 -07:00
feedbabba5
update README with xml details
All checks were successful
continuous-integration/drone/push Build is passing
2021-08-11 18:49:51 -07:00
86751f22e9
adjust type for new casing code
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-27 09:40:11 -07:00
34b803c7dc
support for EC2Query protocol requests (response is XML and not yet implemented)
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-24 00:25:53 -07:00
93c461fcc0
fix leaked memory on errors due to sentinal on concatenated data 2021-07-24 00:23:58 -07:00
da9eae4876
add headers to returned response 2021-07-24 00:23:06 -07:00
4bca7eba8f
add query string capabilities/move to request object 2021-07-24 00:22:06 -07:00
a97e26477d
support for single word handling in camelCase algo 2021-07-24 00:18:38 -07:00
079677bb2e
set higher branch quota - describeInstances needs plenty 2021-07-24 00:17:39 -07:00
f0fe3bbb94
add ec2 test 2021-07-24 00:17:09 -07:00
f415e97425
add automatic regen (though there is probably a better way here) 2021-07-23 14:05:26 -07:00
c7bff8a5e7
correct remaining to_snake issues in service manifest 2021-07-23 14:04:12 -07:00
2e01197d58
add default 2021-07-14 08:38:42 -07:00
fda5589f20
fix stripping, update readme for proper sizing
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-30 15:14:36 -07:00
ebbcdb271b
add smithy package to tests
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-30 13:49:02 -07:00
dfa0be60b9
update code generation without containing struct
Some checks failed
continuous-integration/drone/push Build is failing
Instead we will rely here on the implicit struct provided by the file
itself. This means that when the service_manifest.zig import is
assigned, we don't end up with a construct like "manifest.sts.sts" to
get to the sts service. This simplifies greatly the way that
servicemodel.zig needs to behave.

One down side, however, is that the structure does not seem
accessible with the current zig language, making metaInfo unable
to access itself as it did before. Or maybe it can, I just can't find
it. So, this change also adds a new "service_metadata" public constant
with the same declarations being published at the file level, and
that is the new return from the metaInfo function. Our aws.zig
only really needs the action and that metadata, so we're ok with that
even if there is some duplication (we could codegen pointers over, and
maybe should to save a little bit of space).
2021-06-30 13:40:20 -07:00
13e43528b5
move install to end
Some checks failed
continuous-integration/drone/push Build is failing
2021-06-30 11:13:12 -07:00
487abc057f
perform build before test/add gen as a dependency for test
Some checks failed
continuous-integration/drone/push Build is failing
2021-06-30 11:09:30 -07:00
b82dc3f50d
add build badge to README
Some checks failed
continuous-integration/drone/push Build is failing
2021-06-30 11:04:03 -07:00
0831c0a84c
add ci 2021-06-30 11:00:36 -07:00
e98d64f39c
update build.zig and README 2021-06-30 09:37:14 -07:00
3c9f91c012
rework servicemodel to avoid comptime_string @import
This method was in violation of the accepted proposal
https://github.com/ziglang/zig/issues/2206
and disallowed in the compiler as of adc2aed,
now in 0.8.0.
2021-06-30 09:21:08 -07:00
dcfefa4072
address zig changes in awshttp. zig 15a030ef3 or newer needed
There are two recent changes in zig that effect awshttp.

1. cf65ab8 disallows unused variables. Fair enough and backward
compatible.
2. https://github.com/ziglang/zig/issues/2115#issuecomment-827968279

This comment resulted in a backward incompatible change to use the
underlying value from a C enum rather than its symbol. This reduces
edge cases in the compiler. Ultimately we may want awshttp to define
zig enums that mirror the C enums, but for now I've commented the
definitions of the C enums used.
2021-06-30 09:14:28 -07:00
de41b456d3
address unused variable in generated metaInfo function 2021-06-30 09:12:34 -07:00
267e72051d
make services direct imports/pub const in generated service manifest 2021-06-30 09:11:53 -07:00
9c3be78d9f
address new compilation errors introduced in zig cf65ab8 2021-06-30 09:10:08 -07:00
ad7aa96678
use new smithy package in generated code 2021-06-30 09:07:35 -07:00
ac07c9300f
extract smithy to separate package 2021-06-30 09:05:21 -07:00
22e39dd6e1
allow for spaces in the name to be "handled" (ignored) 2021-06-29 17:19:34 -07:00
ae7ecb1179
update gitignore for codegen 2021-06-29 17:10:52 -07:00