@greenpandastudios/aug-cli 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +13 -0
  3. package/THIRD_PARTY_NOTICES.md +18 -0
  4. package/bin/aug.mjs +3 -0
  5. package/docs/api/crypto.md +351 -0
  6. package/docs/api/io.md +207 -0
  7. package/docs/api/json.md +21 -0
  8. package/docs/api/memory.md +109 -0
  9. package/docs/api/time.md +54 -0
  10. package/docs/api/web.md +184 -0
  11. package/docs/assets/benchmarks/execution.svg +2978 -0
  12. package/docs/assets/benchmarks/http.svg +1674 -0
  13. package/docs/assets/benchmarks/improvements.svg +2315 -0
  14. package/docs/assets/benchmarks/memory.svg +1891 -0
  15. package/docs/benchmark-baseline.json +1087 -0
  16. package/docs/benchmark-results.json +91123 -0
  17. package/docs/benchmarks.json +38 -0
  18. package/docs/compatibility.md +42 -0
  19. package/docs/concurrency-implementation.md +18 -0
  20. package/docs/diagnostics.md +97 -0
  21. package/docs/docker.md +35 -0
  22. package/docs/example-projects.json +26 -0
  23. package/docs/examples/approved-design/counters.md +253 -0
  24. package/docs/examples/approved-design/dependencies/august/0.19.0/io/contracts.md +395 -0
  25. package/docs/examples/approved-design/domain/app.md +165 -0
  26. package/docs/examples/approved-design/domain/export.md +83 -0
  27. package/docs/examples/approved-design/domain/models.md +80 -0
  28. package/docs/examples/approved-design/domain/numbers.md +248 -0
  29. package/docs/examples/approved-design/index.md +39 -0
  30. package/docs/examples/approved-design/main-yaml.md +24 -0
  31. package/docs/examples/approved-design/main.md +215 -0
  32. package/docs/examples/benchmark/index.md +33 -0
  33. package/docs/examples/benchmark/main-yaml.md +17 -0
  34. package/docs/examples/benchmark/main.md +117 -0
  35. package/docs/examples/cli-args/index.md +32 -0
  36. package/docs/examples/cli-args/main.md +107 -0
  37. package/docs/examples/collections/index.md +32 -0
  38. package/docs/examples/collections/main.md +118 -0
  39. package/docs/examples/collections-benchmark/index.md +34 -0
  40. package/docs/examples/collections-benchmark/main.md +115 -0
  41. package/docs/examples/cpu-benchmark/index.md +34 -0
  42. package/docs/examples/cpu-benchmark/main.md +90 -0
  43. package/docs/examples/developer-workflow/calculator.md +357 -0
  44. package/docs/examples/developer-workflow/dependencies/august/0.19.0/io/contracts.md +395 -0
  45. package/docs/examples/developer-workflow/index.md +37 -0
  46. package/docs/examples/developer-workflow/logging/console.md +124 -0
  47. package/docs/examples/developer-workflow/logging/export.md +70 -0
  48. package/docs/examples/developer-workflow/logging/logger.md +111 -0
  49. package/docs/examples/developer-workflow/main.md +172 -0
  50. package/docs/examples/drop/index.md +33 -0
  51. package/docs/examples/drop/main.md +85 -0
  52. package/docs/examples/drop/resource.md +95 -0
  53. package/docs/examples/errors/errors.md +85 -0
  54. package/docs/examples/errors/index.md +33 -0
  55. package/docs/examples/errors/main.md +92 -0
  56. package/docs/examples/ffi/index.md +33 -0
  57. package/docs/examples/ffi/main.md +75 -0
  58. package/docs/examples/ffi/native.md +93 -0
  59. package/docs/examples/generic-di/dependencies/august/0.19.0/io/contracts.md +395 -0
  60. package/docs/examples/generic-di/index.md +33 -0
  61. package/docs/examples/generic-di/main.md +111 -0
  62. package/docs/examples/generic-di/types.md +180 -0
  63. package/docs/examples/generics/index.md +33 -0
  64. package/docs/examples/generics/main.md +120 -0
  65. package/docs/examples/generics/types.md +189 -0
  66. package/docs/examples/hello/app/export.md +67 -0
  67. package/docs/examples/hello/app/greeter.md +190 -0
  68. package/docs/examples/hello/dependencies/august/0.19.0/io/contracts.md +395 -0
  69. package/docs/examples/hello/index.md +37 -0
  70. package/docs/examples/hello/logging/console.md +121 -0
  71. package/docs/examples/hello/logging/export.md +71 -0
  72. package/docs/examples/hello/logging/logger.md +120 -0
  73. package/docs/examples/hello/main.md +115 -0
  74. package/docs/examples/http-benchmark/index.md +35 -0
  75. package/docs/examples/http-benchmark/main.md +79 -0
  76. package/docs/examples/http-benchmark/routes.md +88 -0
  77. package/docs/examples/index.md +60 -0
  78. package/docs/examples/interceptors/app.md +250 -0
  79. package/docs/examples/interceptors/dependencies/august/0.19.0/io/contracts.md +395 -0
  80. package/docs/examples/interceptors/index.md +35 -0
  81. package/docs/examples/interceptors/interceptors.md +284 -0
  82. package/docs/examples/interceptors/logging.md +155 -0
  83. package/docs/examples/interceptors/main.md +162 -0
  84. package/docs/examples/json-benchmark/data.md +71 -0
  85. package/docs/examples/json-benchmark/dependencies/august/0.19.0/json/contracts.md +103 -0
  86. package/docs/examples/json-benchmark/index.md +35 -0
  87. package/docs/examples/json-benchmark/main.md +131 -0
  88. package/docs/examples/new-syntax/console.md +118 -0
  89. package/docs/examples/new-syntax/dependencies/august/0.19.0/io/contracts.md +395 -0
  90. package/docs/examples/new-syntax/greeter.md +145 -0
  91. package/docs/examples/new-syntax/index.md +36 -0
  92. package/docs/examples/new-syntax/logger.md +111 -0
  93. package/docs/examples/new-syntax/main.md +135 -0
  94. package/docs/examples/new-syntax/math.md +79 -0
  95. package/docs/examples/oidc-login/client/contracts.md +151 -0
  96. package/docs/examples/oidc-login/client/endpoints.md +263 -0
  97. package/docs/examples/oidc-login/client/export.md +107 -0
  98. package/docs/examples/oidc-login/client/login.md +515 -0
  99. package/docs/examples/oidc-login/client/logout.md +249 -0
  100. package/docs/examples/oidc-login/client/protocol.md +595 -0
  101. package/docs/examples/oidc-login/client/session.md +297 -0
  102. package/docs/examples/oidc-login/client/views.md +144 -0
  103. package/docs/examples/oidc-login/common/export.md +115 -0
  104. package/docs/examples/oidc-login/common/headers.md +162 -0
  105. package/docs/examples/oidc-login/common/keys.md +336 -0
  106. package/docs/examples/oidc-login/common/settings.md +116 -0
  107. package/docs/examples/oidc-login/common/views.md +103 -0
  108. package/docs/examples/oidc-login/dependencies/august/0.19.0/crypto/contracts.md +925 -0
  109. package/docs/examples/oidc-login/dependencies/august/0.19.0/crypto/jose.md +434 -0
  110. package/docs/examples/oidc-login/dependencies/august/0.19.0/json/contracts.md +103 -0
  111. package/docs/examples/oidc-login/dependencies/august/0.19.0/memory/store.md +374 -0
  112. package/docs/examples/oidc-login/dependencies/august/0.19.0/time/contracts.md +150 -0
  113. package/docs/examples/oidc-login/dependencies/august/0.19.0/web/contracts.md +532 -0
  114. package/docs/examples/oidc-login/index.md +57 -0
  115. package/docs/examples/oidc-login/main-yaml.md +28 -0
  116. package/docs/examples/oidc-login/main.md +283 -0
  117. package/docs/examples/oidc-login/provider/authorization.md +457 -0
  118. package/docs/examples/oidc-login/provider/contracts.md +267 -0
  119. package/docs/examples/oidc-login/provider/credentials.md +148 -0
  120. package/docs/examples/oidc-login/provider/discovery.md +215 -0
  121. package/docs/examples/oidc-login/provider/export.md +131 -0
  122. package/docs/examples/oidc-login/provider/token.md +364 -0
  123. package/docs/examples/oidc-login/provider/userinfo.md +228 -0
  124. package/docs/examples/oidc-login/provider/views.md +137 -0
  125. package/docs/examples/ownership/counter.md +140 -0
  126. package/docs/examples/ownership/index.md +33 -0
  127. package/docs/examples/ownership/main.md +90 -0
  128. package/docs/examples/ownership-transfer/dependencies/august/0.19.0/io/contracts.md +395 -0
  129. package/docs/examples/ownership-transfer/index.md +33 -0
  130. package/docs/examples/ownership-transfer/main.md +125 -0
  131. package/docs/examples/ownership-transfer/resource.md +150 -0
  132. package/docs/examples/packages-app/dependencies/packages/@example/aug-math/0.1.0/arithmetic.md +117 -0
  133. package/docs/examples/packages-app/index.md +34 -0
  134. package/docs/examples/packages-app/main-yaml.md +18 -0
  135. package/docs/examples/packages-app/main.md +80 -0
  136. package/docs/examples/packages-math/aug-package-json.md +24 -0
  137. package/docs/examples/packages-math/index.md +36 -0
  138. package/docs/examples/packages-math/package-json.md +25 -0
  139. package/docs/examples/packages-math/src/arithmetic.md +121 -0
  140. package/docs/examples/packages-math/src/export.md +63 -0
  141. package/docs/examples/startup-benchmark/index.md +34 -0
  142. package/docs/examples/startup-benchmark/main.md +68 -0
  143. package/docs/examples/visibility/counter.md +142 -0
  144. package/docs/examples/visibility/index.md +33 -0
  145. package/docs/examples/visibility/main.md +96 -0
  146. package/docs/examples.json +47 -0
  147. package/docs/getting-started.md +5 -0
  148. package/docs/grammar.md +136 -0
  149. package/docs/implementation-map.md +106 -0
  150. package/docs/index.md +46 -0
  151. package/docs/language-conformance.md +30 -0
  152. package/docs/language-constructs.md +1461 -0
  153. package/docs/language-design-audit.md +147 -0
  154. package/docs/maintaining-docs.md +43 -0
  155. package/docs/packages.md +184 -0
  156. package/docs/performance.md +535 -0
  157. package/docs/production-readiness.md +39 -0
  158. package/docs/reference.md +361 -0
  159. package/docs/release-review.md +23 -0
  160. package/docs/releasing.md +79 -0
  161. package/docs/roadmap.md +13 -0
  162. package/docs/specifications.md +86 -0
  163. package/docs/testing.md +120 -0
  164. package/docs/tooling.md +197 -0
  165. package/docs/web-implementation-plan.md +39 -0
  166. package/docs/web-library-gaps.md +27 -0
  167. package/docs/web.md +197 -0
  168. package/examples/approved-design/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  169. package/examples/approved-design/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  170. package/examples/approved-design/.aug-spec/manifest.json +14 -0
  171. package/examples/approved-design/counters.aug +22 -0
  172. package/examples/approved-design/counters.aug.md +177 -0
  173. package/examples/approved-design/domain/app.aug +12 -0
  174. package/examples/approved-design/domain/app.aug.md +97 -0
  175. package/examples/approved-design/domain/export.aug +5 -0
  176. package/examples/approved-design/domain/export.aug.md +25 -0
  177. package/examples/approved-design/domain/models.aug +2 -0
  178. package/examples/approved-design/domain/models.aug.md +30 -0
  179. package/examples/approved-design/domain/numbers.aug +29 -0
  180. package/examples/approved-design/domain/numbers.aug.md +141 -0
  181. package/examples/approved-design/main.aug +26 -0
  182. package/examples/approved-design/main.aug.md +108 -0
  183. package/examples/approved-design/main.yaml +8 -0
  184. package/examples/benchmark/.aug-spec/manifest.json +7 -0
  185. package/examples/benchmark/main.aug +17 -0
  186. package/examples/benchmark/main.aug.md +43 -0
  187. package/examples/benchmark/main.yaml +1 -0
  188. package/examples/cli-args/.aug-spec/manifest.json +7 -0
  189. package/examples/cli-args/main.aug +15 -0
  190. package/examples/cli-args/main.aug.md +38 -0
  191. package/examples/collections/.aug-spec/manifest.json +7 -0
  192. package/examples/collections/main.aug +18 -0
  193. package/examples/collections/main.aug.md +43 -0
  194. package/examples/developer-workflow/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  195. package/examples/developer-workflow/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  196. package/examples/developer-workflow/.aug-spec/manifest.json +13 -0
  197. package/examples/developer-workflow/calculator.aug +55 -0
  198. package/examples/developer-workflow/calculator.aug.md +228 -0
  199. package/examples/developer-workflow/logging/console.aug +8 -0
  200. package/examples/developer-workflow/logging/console.aug.md +67 -0
  201. package/examples/developer-workflow/logging/export.aug +2 -0
  202. package/examples/developer-workflow/logging/export.aug.md +19 -0
  203. package/examples/developer-workflow/logging/logger.aug +6 -0
  204. package/examples/developer-workflow/logging/logger.aug.md +57 -0
  205. package/examples/developer-workflow/main.aug +25 -0
  206. package/examples/developer-workflow/main.aug.md +79 -0
  207. package/examples/drop/.aug-spec/manifest.json +8 -0
  208. package/examples/drop/main.aug +3 -0
  209. package/examples/drop/main.aug.md +35 -0
  210. package/examples/drop/resource.aug +8 -0
  211. package/examples/drop/resource.aug.md +44 -0
  212. package/examples/errors/.aug-spec/manifest.json +8 -0
  213. package/examples/errors/errors.aug +6 -0
  214. package/examples/errors/errors.aug.md +33 -0
  215. package/examples/errors/main.aug +7 -0
  216. package/examples/errors/main.aug.md +36 -0
  217. package/examples/ffi/.aug-spec/manifest.json +8 -0
  218. package/examples/ffi/main.aug +2 -0
  219. package/examples/ffi/main.aug.md +27 -0
  220. package/examples/ffi/native.aug +6 -0
  221. package/examples/ffi/native.aug.md +43 -0
  222. package/examples/generic-di/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  223. package/examples/generic-di/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  224. package/examples/generic-di/.aug-spec/manifest.json +10 -0
  225. package/examples/generic-di/main.aug +9 -0
  226. package/examples/generic-di/main.aug.md +49 -0
  227. package/examples/generic-di/types.aug +17 -0
  228. package/examples/generic-di/types.aug.md +124 -0
  229. package/examples/generics/.aug-spec/manifest.json +8 -0
  230. package/examples/generics/main.aug +9 -0
  231. package/examples/generics/main.aug.md +58 -0
  232. package/examples/generics/types.aug +19 -0
  233. package/examples/generics/types.aug.md +132 -0
  234. package/examples/hello/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  235. package/examples/hello/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  236. package/examples/hello/.aug-spec/manifest.json +14 -0
  237. package/examples/hello/app/export.aug +1 -0
  238. package/examples/hello/app/export.aug.md +17 -0
  239. package/examples/hello/app/greeter.aug +22 -0
  240. package/examples/hello/app/greeter.aug.md +109 -0
  241. package/examples/hello/logging/console.aug +7 -0
  242. package/examples/hello/logging/console.aug.md +65 -0
  243. package/examples/hello/logging/export.aug +2 -0
  244. package/examples/hello/logging/export.aug.md +19 -0
  245. package/examples/hello/logging/logger.aug +9 -0
  246. package/examples/hello/logging/logger.aug.md +59 -0
  247. package/examples/hello/main.aug +9 -0
  248. package/examples/hello/main.aug.md +49 -0
  249. package/examples/interceptors/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  250. package/examples/interceptors/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  251. package/examples/interceptors/.aug-spec/manifest.json +12 -0
  252. package/examples/interceptors/app.aug +28 -0
  253. package/examples/interceptors/app.aug.md +162 -0
  254. package/examples/interceptors/interceptors.aug +40 -0
  255. package/examples/interceptors/interceptors.aug.md +180 -0
  256. package/examples/interceptors/logging.aug +12 -0
  257. package/examples/interceptors/logging.aug.md +96 -0
  258. package/examples/interceptors/main.aug +22 -0
  259. package/examples/interceptors/main.aug.md +76 -0
  260. package/examples/new-syntax/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  261. package/examples/new-syntax/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  262. package/examples/new-syntax/.aug-spec/manifest.json +13 -0
  263. package/examples/new-syntax/console.aug +7 -0
  264. package/examples/new-syntax/console.aug.md +63 -0
  265. package/examples/new-syntax/greeter.aug +10 -0
  266. package/examples/new-syntax/greeter.aug.md +89 -0
  267. package/examples/new-syntax/logger.aug +6 -0
  268. package/examples/new-syntax/logger.aug.md +57 -0
  269. package/examples/new-syntax/main.aug +12 -0
  270. package/examples/new-syntax/main.aug.md +64 -0
  271. package/examples/new-syntax/math.aug +3 -0
  272. package/examples/new-syntax/math.aug.md +29 -0
  273. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/contracts.aug +73 -0
  274. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/contracts.aug.md +791 -0
  275. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/jose.aug +68 -0
  276. package/examples/oidc-login/.aug-spec/august/0.19.0/crypto/jose.aug.md +266 -0
  277. package/examples/oidc-login/.aug-spec/august/0.19.0/json/contracts.aug +6 -0
  278. package/examples/oidc-login/.aug-spec/august/0.19.0/json/contracts.aug.md +55 -0
  279. package/examples/oidc-login/.aug-spec/august/0.19.0/memory/store.aug +45 -0
  280. package/examples/oidc-login/.aug-spec/august/0.19.0/memory/store.aug.md +250 -0
  281. package/examples/oidc-login/.aug-spec/august/0.19.0/time/contracts.aug +11 -0
  282. package/examples/oidc-login/.aug-spec/august/0.19.0/time/contracts.aug.md +96 -0
  283. package/examples/oidc-login/.aug-spec/august/0.19.0/web/contracts.aug +58 -0
  284. package/examples/oidc-login/.aug-spec/august/0.19.0/web/contracts.aug.md +420 -0
  285. package/examples/oidc-login/.aug-spec/manifest.json +40 -0
  286. package/examples/oidc-login/README.md +29 -0
  287. package/examples/oidc-login/client/contracts.aug +7 -0
  288. package/examples/oidc-login/client/contracts.aug.md +80 -0
  289. package/examples/oidc-login/client/endpoints.aug +21 -0
  290. package/examples/oidc-login/client/endpoints.aug.md +161 -0
  291. package/examples/oidc-login/client/export.aug +7 -0
  292. package/examples/oidc-login/client/export.aug.md +29 -0
  293. package/examples/oidc-login/client/login.aug +58 -0
  294. package/examples/oidc-login/client/login.aug.md +331 -0
  295. package/examples/oidc-login/client/logout.aug +18 -0
  296. package/examples/oidc-login/client/logout.aug.md +150 -0
  297. package/examples/oidc-login/client/protocol.aug +106 -0
  298. package/examples/oidc-login/client/protocol.aug.md +326 -0
  299. package/examples/oidc-login/client/session.aug +34 -0
  300. package/examples/oidc-login/client/session.aug.md +155 -0
  301. package/examples/oidc-login/client/views.aug +21 -0
  302. package/examples/oidc-login/client/views.aug.md +68 -0
  303. package/examples/oidc-login/common/export.aug +9 -0
  304. package/examples/oidc-login/common/export.aug.md +33 -0
  305. package/examples/oidc-login/common/headers.aug +11 -0
  306. package/examples/oidc-login/common/headers.aug.md +79 -0
  307. package/examples/oidc-login/common/keys.aug +37 -0
  308. package/examples/oidc-login/common/keys.aug.md +207 -0
  309. package/examples/oidc-login/common/settings.aug +4 -0
  310. package/examples/oidc-login/common/settings.aug.md +47 -0
  311. package/examples/oidc-login/common/views.aug +16 -0
  312. package/examples/oidc-login/common/views.aug.md +34 -0
  313. package/examples/oidc-login/main.aug +39 -0
  314. package/examples/oidc-login/main.aug.md +166 -0
  315. package/examples/oidc-login/main.yaml +12 -0
  316. package/examples/oidc-login/provider/authorization.aug +59 -0
  317. package/examples/oidc-login/provider/authorization.aug.md +264 -0
  318. package/examples/oidc-login/provider/contracts.aug +15 -0
  319. package/examples/oidc-login/provider/contracts.aug.md +193 -0
  320. package/examples/oidc-login/provider/credentials.aug +10 -0
  321. package/examples/oidc-login/provider/credentials.aug.md +64 -0
  322. package/examples/oidc-login/provider/discovery.aug +13 -0
  323. package/examples/oidc-login/provider/discovery.aug.md +133 -0
  324. package/examples/oidc-login/provider/export.aug +13 -0
  325. package/examples/oidc-login/provider/export.aug.md +41 -0
  326. package/examples/oidc-login/provider/token.aug +37 -0
  327. package/examples/oidc-login/provider/token.aug.md +223 -0
  328. package/examples/oidc-login/provider/userinfo.aug +26 -0
  329. package/examples/oidc-login/provider/userinfo.aug.md +104 -0
  330. package/examples/oidc-login/provider/views.aug +18 -0
  331. package/examples/oidc-login/provider/views.aug.md +63 -0
  332. package/examples/ownership/.aug-spec/manifest.json +8 -0
  333. package/examples/ownership/counter.aug +14 -0
  334. package/examples/ownership/counter.aug.md +85 -0
  335. package/examples/ownership/main.aug +4 -0
  336. package/examples/ownership/main.aug.md +38 -0
  337. package/examples/ownership-transfer/.aug-spec/august/0.19.0/io/contracts.aug +36 -0
  338. package/examples/ownership-transfer/.aug-spec/august/0.19.0/io/contracts.aug.md +316 -0
  339. package/examples/ownership-transfer/.aug-spec/manifest.json +10 -0
  340. package/examples/ownership-transfer/main.aug +9 -0
  341. package/examples/ownership-transfer/main.aug.md +63 -0
  342. package/examples/ownership-transfer/resource.aug +16 -0
  343. package/examples/ownership-transfer/resource.aug.md +89 -0
  344. package/examples/packages/README.md +15 -0
  345. package/examples/packages/app/.aug-spec/manifest.json +9 -0
  346. package/examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug +9 -0
  347. package/examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug.md +63 -0
  348. package/examples/packages/app/main.aug +2 -0
  349. package/examples/packages/app/main.aug.md +33 -0
  350. package/examples/packages/app/main.yaml +2 -0
  351. package/examples/packages/math/.aug-spec/manifest.json +8 -0
  352. package/examples/packages/math/README.md +3 -0
  353. package/examples/packages/math/aug-package.json +8 -0
  354. package/examples/packages/math/package.json +9 -0
  355. package/examples/packages/math/src/arithmetic.aug +8 -0
  356. package/examples/packages/math/src/arithmetic.aug.md +63 -0
  357. package/examples/packages/math/src/export.aug +1 -0
  358. package/examples/packages/math/src/export.aug.md +17 -0
  359. package/examples/visibility/.aug-spec/manifest.json +8 -0
  360. package/examples/visibility/counter.aug +14 -0
  361. package/examples/visibility/counter.aug.md +87 -0
  362. package/examples/visibility/main.aug +7 -0
  363. package/examples/visibility/main.aug.md +39 -0
  364. package/package.json +50 -0
  365. package/runtime/aug_crypto.c +121 -0
  366. package/runtime/aug_html.c +93 -0
  367. package/runtime/aug_http.c +829 -0
  368. package/runtime/aug_json.c +165 -0
  369. package/runtime/aug_runtime.c +792 -0
  370. package/runtime/aug_runtime.h +245 -0
  371. package/runtime/aug_tasks.c +172 -0
  372. package/runtime/aug_time.c +5 -0
  373. package/runtime/aug_values.c +80 -0
  374. package/scripts/bootstrap-native.mjs +121 -0
  375. package/scripts/native-dependencies.lock.json +65 -0
  376. package/scripts/native-home.mjs +11 -0
  377. package/src/actions.js +109 -0
  378. package/src/ast.js +19 -0
  379. package/src/builtins.js +93 -0
  380. package/src/checker.js +2896 -0
  381. package/src/cli.js +344 -0
  382. package/src/codegen.js +1159 -0
  383. package/src/config.js +149 -0
  384. package/src/continuation.js +110 -0
  385. package/src/di.js +24 -0
  386. package/src/documentation.js +27 -0
  387. package/src/editor.js +782 -0
  388. package/src/effects.js +29 -0
  389. package/src/fixes.js +222 -0
  390. package/src/formatter.js +296 -0
  391. package/src/freshness.js +154 -0
  392. package/src/help.js +212 -0
  393. package/src/html.js +27 -0
  394. package/src/http-policies.js +90 -0
  395. package/src/inference.js +16 -0
  396. package/src/interceptors.js +70 -0
  397. package/src/javadoc.js +67 -0
  398. package/src/lexer.js +199 -0
  399. package/src/libraries.js +31 -0
  400. package/src/lsp.js +180 -0
  401. package/src/native.js +144 -0
  402. package/src/navigation.js +162 -0
  403. package/src/openapi.js +220 -0
  404. package/src/ownership.js +232 -0
  405. package/src/package-manager.js +299 -0
  406. package/src/parser.js +1155 -0
  407. package/src/policies.js +130 -0
  408. package/src/project-init.js +19 -0
  409. package/src/project.js +292 -0
  410. package/src/schemas.js +62 -0
  411. package/src/semantic.js +255 -0
  412. package/src/spec.js +738 -0
  413. package/src/testing.js +186 -0
  414. package/src/types.js +10 -0
@@ -0,0 +1,117 @@
1
+ ---
2
+ title: "packages/@example/aug-math/0.1.0/arithmetic.aug · Use a package"
3
+ generated: true
4
+ source: "examples/packages/app/.aug-spec/packages/@example/aug-math/0.1.0/arithmetic.aug"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ search: false
10
+ pageClass: aug-example-page
11
+ ---
12
+
13
+ # `packages/@example/aug-math/0.1.0/arithmetic.aug`
14
+
15
+ [Use a package](../../../../../index.md) · Dependency source and specification
16
+
17
+ This is the exact dependency version used by this example.
18
+
19
+ ::::: example-compare
20
+
21
+ :::: example-code
22
+
23
+ ## Code {#code}
24
+
25
+ ::: code-group
26
+
27
+ ```aug [Indentation]
28
+ /** Add two integers. @param left First value. @param right Second value. @return Their sum. */
29
+ add(int left, int right) returns int:
30
+ return left + right
31
+ test add:
32
+ when "addition":
33
+ it "adds_two_integers":
34
+ assert(add(left=2, right=3) == 5)
35
+ ```
36
+
37
+ ```aug [Braces]
38
+ /** Add two integers. @param left First value. @param right Second value. @return Their sum. */
39
+ add(int left, int right) returns int {
40
+ return left + right
41
+ }
42
+ test add {
43
+ when "addition" {
44
+ it "adds_two_integers" {
45
+ assert(add(left=2, right=3) == 5)
46
+ }
47
+ }
48
+ }
49
+ ```
50
+
51
+ :::
52
+
53
+ ::::
54
+
55
+ :::: example-spec
56
+
57
+ ## Compiled specification {#specification}
58
+
59
+ August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
60
+
61
+ ### In this file
62
+
63
+ - [`add`](arithmetic.md#symbol-add) is a function returning `int`.
64
+ - [`test add`](arithmetic.md#symbol-test-20-add) is a same-file test suite.
65
+
66
+ ### `add` {#symbol-add}
67
+
68
+ [source](arithmetic.md#code)
69
+
70
+ **Inputs**
71
+
72
+ - `left` (`int`) — required labeled input.
73
+ - `right` (`int`) — required labeled input.
74
+
75
+ Returns: `int`.
76
+
77
+ **What it does**
78
+
79
+ - Return `left` plus `right`.
80
+
81
+ **Author documentation**
82
+
83
+ Add two integers.
84
+
85
+ **Returns** Their sum.
86
+
87
+ **Parameters**
88
+ - `left`: First value.
89
+ - `right`: Second value.
90
+
91
+ ### `test add` {#symbol-test-20-add}
92
+
93
+ [source](arithmetic.md#code)
94
+
95
+ Same-file function tests for [`add`](arithmetic.md#symbol-add). Each case gets isolated setup and dependency bindings.
96
+
97
+ #### Group `addition`
98
+
99
+ ##### `adds_two_integers`
100
+
101
+ [source](arithmetic.md#code)
102
+
103
+ - Call `assert` with (call [`add`](arithmetic.md#symbol-add) with `left` = `2`; `right` = `3` equals `5`).
104
+
105
+ ### Built-in operations used by this file
106
+
107
+ - `assert` (`condition`: `bool`) → `void`: Assert a bool in a test case or its setup. Catching an assertion failure cannot make the case pass; every case must execute an assertion.
108
+
109
+ [Full built-in reference](https://greenpandastudios.github.io/augscript/language-constructs).
110
+
111
+ ### Shared language rules
112
+
113
+ See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
114
+
115
+ ::::
116
+
117
+ :::::
@@ -0,0 +1,34 @@
1
+ ---
2
+ title: "Use a package"
3
+ generated: true
4
+ source: "examples/packages/app"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ ---
10
+
11
+ # Use a package
12
+
13
+ Install the neighboring arithmetic package and import it through a local alias.
14
+
15
+ Read a file below to see its highlighted source and the Markdown produced by `aug spec`. Choose **Indentation** or **Braces** above the code. Both views describe the same checked program; your choice is kept when you open another file.
16
+
17
+ ## Project files
18
+
19
+ - [`main.aug`](main.md)
20
+
21
+ - [`main.yaml`](main-yaml.md)
22
+
23
+ ## Try this project
24
+
25
+ From a repository checkout with August installed:
26
+
27
+ ```sh
28
+ aug install examples/packages/app --offline
29
+ aug check examples/packages/app
30
+ aug spec examples/packages/app
31
+ aug run examples/packages/app
32
+ ```
33
+
34
+ [Browse all examples](../index.md)
@@ -0,0 +1,18 @@
1
+ ---
2
+ title: "main.yaml · Use a package"
3
+ generated: true
4
+ source: "examples/packages/app/main.yaml"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ ---
10
+
11
+ # `main.yaml`
12
+
13
+ [Use a package](index.md) · Project configuration
14
+
15
+ ```yaml
16
+ packages:
17
+ math: "../math"
18
+ ```
@@ -0,0 +1,80 @@
1
+ ---
2
+ title: "main.aug · Use a package"
3
+ generated: true
4
+ source: "examples/packages/app/main.aug"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ pageClass: aug-example-page
10
+ ---
11
+
12
+ # `main.aug`
13
+
14
+ [Use a package](index.md) · Source and specification
15
+
16
+ ::: details Files in this project
17
+
18
+ - [`main.aug`](main.md)
19
+
20
+ :::
21
+
22
+ ::::: example-compare
23
+
24
+ :::: example-code
25
+
26
+ ## Code {#code}
27
+
28
+ ::: code-group
29
+
30
+ ```aug [Indentation]
31
+ import add from math
32
+ print(value=add(left=20, right=22))
33
+ ```
34
+
35
+ ```aug [Braces]
36
+ import add from math
37
+ print(value=add(left=20, right=22))
38
+ ```
39
+
40
+ :::
41
+
42
+ ::::
43
+
44
+ :::: example-spec
45
+
46
+ ## Compiled specification {#specification}
47
+
48
+ August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
49
+
50
+ ### In this file
51
+
52
+ - Run 1 other startup step in source order.
53
+
54
+ ### Startup, in source order
55
+
56
+ - Call `print` with `value` = call [`add`](dependencies/packages/%40example/aug-math/0.1.0/arithmetic.md#symbol-add) with `left` = `20`; `right` = `22`.
57
+
58
+ ### Dependencies used by this file
59
+
60
+ Only referenced types and operations appear here. Each name links to its complete specification.
61
+
62
+ #### [`add`](dependencies/packages/%40example/aug-math/0.1.0/arithmetic.md#symbol-add)
63
+
64
+ Function from `math`.
65
+
66
+ - [`add`](dependencies/packages/%40example/aug-math/0.1.0/arithmetic.md#symbol-add) (`left`: `int`, `right`: `int`) → `int`.
67
+
68
+ ### Built-in operations used by this file
69
+
70
+ - `print` (`value`: `any`) → `void`: Composition and test output. Other callables receive Console and declare uses console.write.
71
+
72
+ [Full built-in reference](https://greenpandastudios.github.io/augscript/language-constructs).
73
+
74
+ ### Shared language rules
75
+
76
+ See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
77
+
78
+ ::::
79
+
80
+ :::::
@@ -0,0 +1,24 @@
1
+ ---
2
+ title: "aug-package.json · Create a package"
3
+ generated: true
4
+ source: "examples/packages/math/aug-package.json"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ ---
10
+
11
+ # `aug-package.json`
12
+
13
+ [Create a package](index.md) · Project configuration
14
+
15
+ ```json
16
+ {
17
+ "format": 1,
18
+ "name": "@example/aug-math",
19
+ "version": "0.1.0",
20
+ "compiler": "0.19.0",
21
+ "source": "src",
22
+ "dependencies": {}
23
+ }
24
+ ```
@@ -0,0 +1,36 @@
1
+ ---
2
+ title: "Create a package"
3
+ generated: true
4
+ source: "examples/packages/math"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ ---
10
+
11
+ # Create a package
12
+
13
+ Publish a small arithmetic library through export.aug and test its public surface.
14
+
15
+ Read a file below to see its highlighted source and the Markdown produced by `aug spec`. Choose **Indentation** or **Braces** above the code. Both views describe the same checked program; your choice is kept when you open another file.
16
+
17
+ ## Project files
18
+
19
+ - [`src/arithmetic.aug`](src/arithmetic.md)
20
+ - [`src/export.aug`](src/export.md)
21
+
22
+ - [`aug-package.json`](aug-package-json.md)
23
+ - [`package.json`](package-json.md)
24
+
25
+ ## Try this project
26
+
27
+ From a repository checkout with August installed:
28
+
29
+ ```sh
30
+ aug check examples/packages/math
31
+ aug spec examples/packages/math
32
+ aug test examples/packages/math
33
+ aug pack examples/packages/math
34
+ ```
35
+
36
+ [Browse all examples](../index.md)
@@ -0,0 +1,25 @@
1
+ ---
2
+ title: "package.json · Create a package"
3
+ generated: true
4
+ source: "examples/packages/math/package.json"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ ---
10
+
11
+ # `package.json`
12
+
13
+ [Create a package](index.md) · Project configuration
14
+
15
+ ```json
16
+ {
17
+ "name": "@example/aug-math",
18
+ "version": "0.1.0",
19
+ "description": "An August package authoring example",
20
+ "license": "MIT",
21
+ "files": ["src", "aug-package.json", "README.md"],
22
+ "exports": { "./aug-package.json": "./aug-package.json" },
23
+ "dependencies": {}
24
+ }
25
+ ```
@@ -0,0 +1,121 @@
1
+ ---
2
+ title: "src/arithmetic.aug · Create a package"
3
+ generated: true
4
+ source: "examples/packages/math/src/arithmetic.aug"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ pageClass: aug-example-page
10
+ ---
11
+
12
+ # `src/arithmetic.aug`
13
+
14
+ [Create a package](../index.md) · Source and specification
15
+
16
+ ::: details Files in this project
17
+
18
+ - [`src/arithmetic.aug`](arithmetic.md)
19
+ - [`src/export.aug`](export.md)
20
+
21
+ :::
22
+
23
+ ::::: example-compare
24
+
25
+ :::: example-code
26
+
27
+ ## Code {#code}
28
+
29
+ ::: code-group
30
+
31
+ ```aug [Indentation]
32
+ /** Add two integers. @param left First value. @param right Second value. @return Their sum. */
33
+ add(int left, int right) returns int:
34
+ return left + right
35
+ test add:
36
+ when "addition":
37
+ it "adds_two_integers":
38
+ assert(add(left=2, right=3) == 5)
39
+ ```
40
+
41
+ ```aug [Braces]
42
+ /** Add two integers. @param left First value. @param right Second value. @return Their sum. */
43
+ add(int left, int right) returns int {
44
+ return left + right
45
+ }
46
+ test add {
47
+ when "addition" {
48
+ it "adds_two_integers" {
49
+ assert(add(left=2, right=3) == 5)
50
+ }
51
+ }
52
+ }
53
+ ```
54
+
55
+ :::
56
+
57
+ ::::
58
+
59
+ :::: example-spec
60
+
61
+ ## Compiled specification {#specification}
62
+
63
+ August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
64
+
65
+ ### In this file
66
+
67
+ - [`add`](arithmetic.md#symbol-add) is a function returning `int`.
68
+ - [`test add`](arithmetic.md#symbol-test-20-add) is a same-file test suite.
69
+
70
+ ### `add` {#symbol-add}
71
+
72
+ [source](arithmetic.md#code)
73
+
74
+ **Inputs**
75
+
76
+ - `left` (`int`) — required labeled input.
77
+ - `right` (`int`) — required labeled input.
78
+
79
+ Returns: `int`.
80
+
81
+ **What it does**
82
+
83
+ - Return `left` plus `right`.
84
+
85
+ **Author documentation**
86
+
87
+ Add two integers.
88
+
89
+ **Returns** Their sum.
90
+
91
+ **Parameters**
92
+ - `left`: First value.
93
+ - `right`: Second value.
94
+
95
+ ### `test add` {#symbol-test-20-add}
96
+
97
+ [source](arithmetic.md#code)
98
+
99
+ Same-file function tests for [`add`](arithmetic.md#symbol-add). Each case gets isolated setup and dependency bindings.
100
+
101
+ #### Group `addition`
102
+
103
+ ##### `adds_two_integers`
104
+
105
+ [source](arithmetic.md#code)
106
+
107
+ - Call `assert` with (call [`add`](arithmetic.md#symbol-add) with `left` = `2`; `right` = `3` equals `5`).
108
+
109
+ ### Built-in operations used by this file
110
+
111
+ - `assert` (`condition`: `bool`) → `void`: Assert a bool in a test case or its setup. Catching an assertion failure cannot make the case pass; every case must execute an assertion.
112
+
113
+ [Full built-in reference](https://greenpandastudios.github.io/augscript/language-constructs).
114
+
115
+ ### Shared language rules
116
+
117
+ See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
118
+
119
+ ::::
120
+
121
+ :::::
@@ -0,0 +1,63 @@
1
+ ---
2
+ title: "src/export.aug · Create a package"
3
+ generated: true
4
+ source: "examples/packages/math/src/export.aug"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ pageClass: aug-example-page
10
+ ---
11
+
12
+ # `src/export.aug`
13
+
14
+ [Create a package](../index.md) · Source and specification
15
+
16
+ ::: details Files in this project
17
+
18
+ - [`src/arithmetic.aug`](arithmetic.md)
19
+ - [`src/export.aug`](export.md)
20
+
21
+ :::
22
+
23
+ ::::: example-compare
24
+
25
+ :::: example-code
26
+
27
+ ## Code {#code}
28
+
29
+ ::: code-group
30
+
31
+ ```aug [Indentation]
32
+ export add from arithmetic
33
+ ```
34
+
35
+ ```aug [Braces]
36
+ export add from arithmetic
37
+ ```
38
+
39
+ :::
40
+
41
+ ::::
42
+
43
+ :::: example-spec
44
+
45
+ ## Compiled specification {#specification}
46
+
47
+ August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
48
+
49
+ ### In this file
50
+
51
+ - Export `add` from this folder.
52
+
53
+ ### Folder exports
54
+
55
+ - Export the declaration `add` from [`arithmetic.aug`](arithmetic.md#symbol-add).
56
+
57
+ ### Shared language rules
58
+
59
+ See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
60
+
61
+ ::::
62
+
63
+ :::::
@@ -0,0 +1,34 @@
1
+ ---
2
+ title: "Startup benchmark"
3
+ generated: true
4
+ source: "benchmarks/startup"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ ---
10
+
11
+ # Startup benchmark
12
+
13
+ The small program used to measure process startup.
14
+
15
+ Read a file below to see its highlighted source and the Markdown produced by `aug spec`. Choose **Indentation** or **Braces** above the code. Both views describe the same checked program; your choice is kept when you open another file.
16
+
17
+ ## Project files
18
+
19
+ - [`main.aug`](main.md)
20
+
21
+
22
+ ## Try this project
23
+
24
+ From a repository checkout with August installed:
25
+
26
+ ```sh
27
+ aug check benchmarks/startup
28
+ aug spec benchmarks/startup
29
+ aug run benchmarks/startup
30
+ ```
31
+
32
+ See [the performance page](../../performance.md) for measurements, input sizes, and reproduction steps.
33
+
34
+ [Browse all examples](../index.md)
@@ -0,0 +1,68 @@
1
+ ---
2
+ title: "main.aug · Startup benchmark"
3
+ generated: true
4
+ source: "benchmarks/startup/main.aug"
5
+ editLink: false
6
+ prev: false
7
+ next: false
8
+ outline: [2, 3]
9
+ pageClass: aug-example-page
10
+ ---
11
+
12
+ # `main.aug`
13
+
14
+ [Startup benchmark](index.md) · Source and specification
15
+
16
+ ::: details Files in this project
17
+
18
+ - [`main.aug`](main.md)
19
+
20
+ :::
21
+
22
+ ::::: example-compare
23
+
24
+ :::: example-code
25
+
26
+ ## Code {#code}
27
+
28
+ ::: code-group
29
+
30
+ ```aug [Indentation]
31
+ print(value=7)
32
+ ```
33
+
34
+ ```aug [Braces]
35
+ print(value=7)
36
+ ```
37
+
38
+ :::
39
+
40
+ ::::
41
+
42
+ :::: example-spec
43
+
44
+ ## Compiled specification {#specification}
45
+
46
+ August 0.19.0. This document is compiled from checked code with deterministic wording guided by Simplified Technical English.
47
+
48
+ ### In this file
49
+
50
+ - Run 1 other startup step in source order.
51
+
52
+ ### Startup, in source order
53
+
54
+ - Call `print` with `value` = `7`.
55
+
56
+ ### Built-in operations used by this file
57
+
58
+ - `print` (`value`: `any`) → `void`: Composition and test output. Other callables receive Console and declare uses console.write.
59
+
60
+ [Full built-in reference](https://greenpandastudios.github.io/augscript/language-constructs).
61
+
62
+ ### Shared language rules
63
+
64
+ See the [language reference](https://greenpandastudios.github.io/augscript/reference) for numeric, equality, ownership, and task rules.
65
+
66
+ ::::
67
+
68
+ :::::