Commit Graph

82 Commits

Author SHA1 Message Date
2793e1e17b
drone support for versionstep
Some checks failed
continuous-integration/drone/push Build is failing
2022-01-12 17:42:54 -08:00
7505d87bf1
implementation of addHeaders
Some checks failed
continuous-integration/drone/push Build is failing
2022-01-12 17:22:51 -08:00
9fd6755684
add version info to main output
Some checks failed
continuous-integration/drone/push Build is failing
2022-01-12 17:01:37 -08:00
a5b78384f5
build works, c_allocator no longer required 2022-01-12 09:18:16 -08:00
042dfad64b
rename awshttp 2022-01-11 16:55:42 -08:00
eb449eabb0
dig out aws crt. project no longer builds
Some checks failed
continuous-integration/drone/push Build is failing
2022-01-10 21:49:59 -08:00
1c41737202
upgrade to zig 0.9.0
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-03 08:06:14 -08:00
687880f27e
free requests in demo 2021-09-06 15:48:10 -07:00
d02272d12c
proper path/query support for REST v1
All checks were successful
continuous-integration/drone/push Build is passing
2021-09-05 14:33:33 -07:00
c80a65ed50
add ability to have custom stringification 2021-09-05 14:32:52 -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
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
00b2ab3d27
initial support for json 1.0 2021-08-12 14:24:24 -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
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
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
aa5b46c046
move codegen out of src - we will handle differently 2021-06-29 17:10:01 -07:00
7dc8e0e938
get all json tests passing with updated zig 0.9.0 (current master)
Key changes:

1. Remove all unused variables (see zig commit cf65ab8)
2. Remove tests requiring other files
3. Specify enum type when providing specific enum values (see zig
commits around 507a8096d)
2021-06-29 14:50:21 -07:00
b2ebc5a621
add snake comparison test 2021-06-23 18:23:56 -07:00
93536aa4ad
make primary executable a more robust integration test harness 2021-06-23 18:23:07 -07:00
06479b8cb7
more useful logging 2021-06-23 18:21:34 -07:00
6f38ecd893
update to new json/url options 2021-06-23 18:20:45 -07:00
77caa626f0
allow parsing of exponential numbers if they resolve to int 2021-06-23 18:18:42 -07:00
c2e2778d77
missing field support (not sure if we will use this) 2021-06-23 18:18:00 -07:00
3d9490de82
fix snake case comparison
code in the function required found variable to be a real count
for allocation purposes, but it was originally coded as a flag
instead, which broke any field with more than two underscores
2021-06-23 18:16:54 -07:00
f816c0cbf1
additional url encoding test cases and virtual rewrite of encoder 2021-06-23 18:14:59 -07:00
9c3fcc5a9d
address memory leaks in awshttp
There appears to be a leak in json.zig, which had minimal modifications for
snake/camel case, including use of an allocator. It is not obvious that
the leaks were added by these changes, so I will leave this issue for
later investigation.
2021-06-18 14:06:58 -07:00
667c38c8d3
add sentinals so we can work until general purpose allocator 2021-06-18 13:48:31 -07:00
2768c83a0a
switch to general purpose allocator so we can weed out leaks 2021-06-18 13:47:27 -07:00