Commit Graph

55 Commits

Author SHA1 Message Date
Emil Lerch 7dcf3d3a2e
upgrade to nominated zig 2024.3.0-mach (0.12.0-dev.3180+83e578a18)
aws-zig mach nominated build / build-zig-nightly (push) Failing after 28m36s Details
aws-zig nightly build / build-zig-nightly (push) Failing after 57s Details
There were significant changes to the way HTTP operates since 0.11,
effecting client operations, but more substantially, the server
implementation, which effected the test harness.

std.http.Headers was removed, including the getFirstValue function, which
needed to be replicated. On the plus side, a std.http.Header struct was
added, identical to our own structure, so I have removed out own header
in favor of stdlib.

On the Http client side, I have switched to use the fetch API. Proxy
support is built in, but we are using (mostly) our own implementation
for now, with the remaining conversion left as a TODO item. Raw URIs are
now supported, so the workaround for issue 17015 has been removed. Large
payloads should also be fixed, but this has not been tested.

The standard library now adds the content-length header
(unconditionally), which is a decision of dubious nature. I have removed
the addition of content-length, which also means it is not present
during signing. This should be allowed.

Dependency loop on fieldTransformer was fixed. This should have been
a problem on zig 0.11, but was not. This effected the API for the json
parsing, but we were not using that. At the call site, these did not
need to be specified as references.

With the http server no longer doing all the allocations it once was,
the test harness now has a lot more allocations to perform. To alleviate
the bookeeping, this was moved to an Arena allocator. The client,
which is really what is under test, continues to use the allocator
passed.
2024-04-02 09:27:42 -07:00
Emil Lerch fb34e556f7
re-enable demo code 2023-08-30 13:49:29 -07:00
Emil Lerch 1376a7f898
indicate that test is being skipped and why 2023-08-30 12:53:42 -07:00
Emil Lerch 993f9cd91c
allow -vvv as option on demo 2023-08-29 15:21:15 -07:00
Emil Lerch 9c403d0e18
cleanup output/remove one demo due to signature issue
AWS-Zig Build / build-zig-0.11.0-amd64-host (push) Successful in 6m11s Details
2023-08-29 12:47:22 -07:00
Emil Lerch bd72bbb1f3
clean up output (first pass) 2023-08-29 11:29:50 -07:00
Emil Lerch 9d7df078b0
0.11 now looks for std_options decl in root 2023-08-29 11:29:16 -07:00
Emil Lerch 812ad96a66
add proxy support 2023-08-29 11:24:34 -07:00
Emil Lerch 58949127d6
add help to demo program 2023-08-29 07:26:11 -07:00
Emil Lerch 71978e2386
add comment in demo on TLS v1.3 situation 2023-08-28 16:42:43 -07:00
Emil Lerch a8dddfbd30
update readme and talk about TLS 1.3 (sigh)
AWS-Zig Build / build-zig-0.11.0-amd64-host (push) Successful in 6m59s Details
2023-08-28 14:25:59 -07:00
Emil Lerch c8cba54fe0
ec2_query_with_input under test
AWS-Zig Build / build-zig-0.11.0-amd64-host (push) Successful in 7m9s Details
2023-08-28 13:30:39 -07:00
Emil Lerch 6d3e820bd1
add ec2_query_no_input 2023-08-28 13:10:16 -07:00
Emil Lerch 034172c7b3
progress indicator on main 2023-08-27 23:18:55 -07:00
Emil Lerch 06429e0853
re-enable full demo code
AWS-Zig Build / build-zig-0.11.0-amd64-host (push) Successful in 5m16s Details
2023-08-27 17:36:26 -07:00
Emil Lerch 9fd98c176a
remove TODO 2023-08-27 17:05:20 -07:00
Emil Lerch a4f9ca969c
bring EC2 back to par with 0.9.0 implementation
AWS-Zig Build / build-zig-0.11.0-amd64-host (push) Failing after 1m15s Details
2023-08-27 17:04:49 -07:00
Emil Lerch 779d940849
remove demos that are not yet functional 2023-08-27 11:54:31 -07:00
Emil Lerch ae07f82dd5
disable ec2_query demos temporarily 2023-08-27 11:40:56 -07:00
Emil Lerch 49089ff433
address windows build
AWS-Zig Build / build-zig-0.11.0-amd64-host (push) Successful in 7m36s Details
2023-08-15 08:50:22 -07:00
Emil Lerch 024ba8ee8f
fix edge case on ec2 query 2023-08-14 13:44:26 -07:00
Emil Lerch 9e02196dd0
clean compile on 0.11, not yet fully functional
AWS-Zig Build / build-zig-0.9-amd64-host (push) Failing after 1m41s Details
2023-08-14 10:06:28 -07:00
Emil Lerch c18de40edd
remove git version info 2023-08-05 13:29:07 -07:00
Emil Lerch 5ee53a493d
some codegen changes needed/investigation into http_query (see note)
This fixes main compile issues. Problems that remain:

* json is borked for objects with key/value keys that need to be coerced
* currently all request structures need an http_query declaration, and this may be a hard requirement
* need to revisit all the places where we are reading http response bodies
* there are 35 compile errors that do not have reference traces and will take a while to track down
2023-08-05 12:41:04 -07:00
Emil Lerch e6f7ab003d
zig fmt to take care of easy stuff 2023-08-04 10:07:58 -07:00
Emil Lerch cfdf4a3141
these are old changes, but I believe part of 0.11 from a while back 2023-08-04 10:06:54 -07:00
Emil Lerch 8d852e8084
handle s3 key paths
continuous-integration/drone/push Build is passing Details
2022-06-29 09:24:16 -07:00
Emil Lerch a662f6f674
add S3 integration test/update readme
continuous-integration/drone/push Build is passing Details
2022-06-05 18:34:39 -07:00
Emil Lerch d3a7edcadc
change verbosity levels to remove more noise 2022-06-05 18:23:16 -07:00
Emil Lerch e34a0d8ff4
comment failing integration demo
continuous-integration/drone/push Build is passing Details
2022-05-31 19:25:06 -07:00
Emil Lerch ab1060b145
s3 listallbuckets/putobject working
continuous-integration/drone/push Build is failing Details
2022-05-31 18:47:59 -07:00
Emil Lerch 357c583e9b
rest_xml support, minus s3
continuous-integration/drone/push Build is passing Details
2022-05-28 20:18:16 -07:00
Emil Lerch f9cf8de76f
initial S3 support
continuous-integration/drone/push Build is passing Details
2022-05-25 15:27:13 -07:00
Emil Lerch 0e46bb04b2
add ec2 query with input demo
continuous-integration/drone/push Build is passing Details
2022-05-25 11:38:34 -07:00
Emil Lerch 8727a4e038
EC2 support
continuous-integration/drone/push Build is passing Details
2022-02-16 14:14:54 -08:00
Emil Lerch 240d2ebdd1
new EC2 code (still failing/disabled) 2022-02-11 09:17:27 -08:00
Emil Lerch a88995290c
switch query_with_input test to something that will work with STS token
continuous-integration/drone/push Build is passing Details
2022-01-21 06:15:48 -08:00
Emil Lerch be42b07086
add tls trust chain for AWS
continuous-integration/drone/push Build is passing Details
2022-01-19 21:17:44 -08:00
Emil Lerch e66c82468a
most requests working (see below)
continuous-integration/drone/push Build is passing Details
rest_json_1_work_with_lambda seems to fail
STS-generated keys not working
there might be an intermittent signature failure
2022-01-19 19:29:58 -08:00
Emil Lerch 7505d87bf1
implementation of addHeaders
continuous-integration/drone/push Build is failing Details
2022-01-12 17:22:51 -08:00
Emil Lerch 9fd6755684
add version info to main output
continuous-integration/drone/push Build is failing Details
2022-01-12 17:01:37 -08:00
Emil Lerch a5b78384f5
build works, c_allocator no longer required 2022-01-12 09:18:16 -08:00
Emil Lerch 1c41737202
upgrade to zig 0.9.0
continuous-integration/drone/push Build is passing Details
2022-01-03 08:06:14 -08:00
Emil Lerch 687880f27e
free requests in demo 2021-09-06 15:48:10 -07:00
Emil Lerch c7c5a0233c
switch to comptime array of strings for delete
continuous-integration/drone/push Build is failing Details
2021-09-01 07:13:42 -07:00
Emil Lerch 7f178bcc91
provide ability to handle requests built at runtime
continuous-integration/drone/push Build is failing Details
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
Emil Lerch 8e853e9a82
rest json v1 basic requests (responses tbd)
continuous-integration/drone/push Build is passing Details
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
Emil Lerch 5c29120a44
initial json 1.1 support
continuous-integration/drone/push Build is passing Details
2021-08-12 17:51:47 -07:00
Emil Lerch 00b2ab3d27
initial support for json 1.0 2021-08-12 14:24:24 -07:00
Emil Lerch f0fe3bbb94
add ec2 test 2021-07-24 00:17:09 -07:00