update readme generally and for new branch strategy
This commit is contained in:
		
							parent
							
								
									6c106c1c71
								
							
						
					
					
						commit
						cdaf924867
					
				
					 1 changed files with 35 additions and 24 deletions
				
			
		
							
								
								
									
										59
									
								
								README.md
									
										
									
									
									
								
							
							
						
						
									
										59
									
								
								README.md
									
										
									
									
									
								
							|  | @ -1,9 +1,9 @@ | |||
| AWS SDK for Zig | ||||
| =============== | ||||
| 
 | ||||
| [Zig 0.13](https://ziglang.org/download/#release-0.13.0): | ||||
| [Zig 0.14](https://ziglang.org/download/#release-0.14.0): | ||||
| 
 | ||||
| [](https://git.lerch.org/lobo/aws-sdk-for-zig/actions?workflow=build.yaml&state=closed) | ||||
| [](https://git.lerch.org/lobo/aws-sdk-for-zig/actions?workflow=build.yaml&state=closed) | ||||
| 
 | ||||
| [Last Mach Nominated Zig Version](https://machengine.org/about/nominated-zig/): | ||||
| 
 | ||||
|  | @ -13,12 +13,13 @@ AWS SDK for Zig | |||
| 
 | ||||
| [](https://git.lerch.org/lobo/aws-sdk-for-zig/actions?workflow=zig-nightly.yaml&state=closed) | ||||
| 
 | ||||
| **NOTE ON BUILD STATUS**: The nightly/mach nominated version of this currently | ||||
| panics under CI, but I have not yet reproduced this panic. Running manually on | ||||
| multiple machines appears to be working properly | ||||
| [Zig 0.13](https://ziglang.org/download/#release-0.13.0): | ||||
| 
 | ||||
| [](https://git.lerch.org/lobo/aws-sdk-for-zig/actions?workflow=zig-previous.yaml&state=closed) | ||||
| 
 | ||||
| 
 | ||||
| Current executable size for the demo is 980k after compiling with -Doptimize=ReleaseSmall | ||||
| in x86_linux, and will vary based on services used. Tested targets: | ||||
| in x86_64-linux, and will vary based on services used. Tested targets: | ||||
| 
 | ||||
| * x86_64-linux | ||||
| * riscv64-linux | ||||
|  | @ -30,22 +31,38 @@ in x86_linux, and will vary based on services used. Tested targets: | |||
| 
 | ||||
| Tested targets are built, but not continuously tested, by CI. | ||||
| 
 | ||||
| Zig-Develop Branch | ||||
| ------------------ | ||||
| Branches | ||||
| -------- | ||||
| 
 | ||||
| This branch is intended for use with the in-development version of Zig. This | ||||
| starts with 0.12.0-dev.3180+83e578a18. This is aligned with [Mach Engine's Nominated | ||||
| Zig Versions](https://machengine.org/about/nominated-zig/). Nightly zig versions | ||||
| are difficult to keep up with and there is no special effort made there, build | ||||
| status is FYI (and used as a canary for nominated zig versions). | ||||
| * **master**:      This branch tracks the latest released zig version | ||||
| * **zig-0.13**:    This branch tracks the previous released zig version (0.13 currently). | ||||
|                    Support for the previous version is best effort, generally | ||||
|                    degrading over time. Fixes will generally appear in master, then | ||||
|                    backported into the previous version. | ||||
| * **zig-mach**:    This branch tracks the latest mach nominated version. A separate | ||||
|                    branch is necessary as mach nominated is usually, but not always, | ||||
|                    more recent than the latest production zig. Support for the mach | ||||
|                    version is best effort. | ||||
| * **zig-develop**: This branch tracks zig nightly, and is used mainly as a canary | ||||
|                    for breaking changes that will need to be dealt with when | ||||
|                    a new mach nominated version or new zig release appear. | ||||
|                    Expect significant delays in any build failures. | ||||
| 
 | ||||
| Other branches/tags exist but are unsupported | ||||
| 
 | ||||
| Building | ||||
| -------- | ||||
| 
 | ||||
| `zig build` should work. It will build the code generation project, fetch model | ||||
| files from upstream AWS Go SDK v2, run the code generation, then build the main | ||||
| project with the generated code. Testing can be done with `zig test`. | ||||
| project with the generated code. Testing can be done with `zig build test`. Note that | ||||
| this command tests on all supported architectures, so for a faster testing | ||||
| process, use `zig build smoke-test` instead. | ||||
| 
 | ||||
| To make development even faster, a build option is provided to avoid the use of | ||||
| LLVM. To use this, use the command `zig build -Dno-llvm smoke-test`. This | ||||
| can reduce build/test time 300%. Note, however, native code generation in zig | ||||
| is not yet complete, so you may see errors. | ||||
| 
 | ||||
| Using | ||||
| ----- | ||||
|  | @ -53,7 +70,8 @@ Using | |||
| This is designed for use with the Zig package manager, and exposes a module | ||||
| called "aws". Set up `build.zig.zon` and add the dependency/module to your project | ||||
| as normal and the package manager should do its thing. A full example can be found | ||||
| in [/example](example/README.md). | ||||
| in [/example](example/build.zig.zon). This can also be used at build time in | ||||
| a downstream project's `build.zig`. | ||||
| 
 | ||||
| Configuring the module and/or Running the demo | ||||
| ---------------------------------------------- | ||||
|  | @ -61,8 +79,8 @@ Configuring the module and/or Running the demo | |||
| This library mimics the aws c libraries for it's work, so it operates like most | ||||
| other 'AWS things'. [/src/main.zig](src/main.zig) gives you a handful of examples | ||||
| for working with services. For local testing or alternative endpoints, there's | ||||
| no real standard, so there is code to look for `AWS_ENDPOINT_URL` environment | ||||
| variable that will supersede all other configuration. | ||||
| no real standard, so there is code to look for an environment variable | ||||
| `AWS_ENDPOINT_URL` variable that will supersede all other configuration. | ||||
| 
 | ||||
| Limitations | ||||
| ----------- | ||||
|  | @ -83,13 +101,6 @@ TODO List: | |||
| * Implement timeouts and other TODO's in the code | ||||
| * Add option to cache signature keys | ||||
| 
 | ||||
| Services without TLS 1.3 support | ||||
| -------------------------------- | ||||
| 
 | ||||
| All AWS services should support TLS 1.3 at this point, but there are many regions | ||||
| and several partitions, and not all of them have been tested, so your mileage | ||||
| may vary. If something doesn't work, please submit an issue to let others know. | ||||
| 
 | ||||
| Dependency tree | ||||
| --------------- | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue