@devaloop/devalang 0.0.1-beta.3 → 0.1.1

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 (345) hide show
  1. package/README.md +182 -152
  2. package/out-tsc/api.d.ts +180 -0
  3. package/out-tsc/api.d.ts.map +1 -0
  4. package/out-tsc/api.js +286 -0
  5. package/out-tsc/api.js.map +1 -0
  6. package/out-tsc/bin/index.d.ts +12 -0
  7. package/out-tsc/bin/index.d.ts.map +1 -0
  8. package/out-tsc/bin/index.js +20 -54
  9. package/out-tsc/bin/index.js.map +1 -0
  10. package/out-tsc/examples/basic-usage.d.ts +8 -0
  11. package/out-tsc/examples/basic-usage.d.ts.map +1 -0
  12. package/out-tsc/examples/basic-usage.js +113 -0
  13. package/out-tsc/examples/basic-usage.js.map +1 -0
  14. package/out-tsc/index.d.ts +19 -5
  15. package/out-tsc/index.d.ts.map +1 -0
  16. package/out-tsc/index.js +24 -6
  17. package/out-tsc/index.js.map +1 -0
  18. package/out-tsc/scripts/copy-wasm-dts.d.ts +7 -0
  19. package/out-tsc/scripts/copy-wasm-dts.d.ts.map +1 -0
  20. package/out-tsc/scripts/copy-wasm-dts.js +36 -32
  21. package/out-tsc/scripts/copy-wasm-dts.js.map +1 -0
  22. package/out-tsc/scripts/postinstall.d.ts +1 -0
  23. package/out-tsc/scripts/postinstall.d.ts.map +1 -0
  24. package/out-tsc/scripts/postinstall.js +4 -1
  25. package/out-tsc/scripts/postinstall.js.map +1 -0
  26. package/out-tsc/scripts/version/bump.d.ts +5 -1
  27. package/out-tsc/scripts/version/bump.d.ts.map +1 -0
  28. package/out-tsc/scripts/version/bump.js +114 -44
  29. package/out-tsc/scripts/version/bump.js.map +1 -0
  30. package/out-tsc/scripts/version/fetch.d.ts +12 -1
  31. package/out-tsc/scripts/version/fetch.d.ts.map +1 -0
  32. package/out-tsc/scripts/version/fetch.js +68 -24
  33. package/out-tsc/scripts/version/fetch.js.map +1 -0
  34. package/out-tsc/scripts/version/index.d.ts +6 -0
  35. package/out-tsc/scripts/version/index.d.ts.map +1 -0
  36. package/out-tsc/scripts/version/index.js +44 -22
  37. package/out-tsc/scripts/version/index.js.map +1 -0
  38. package/out-tsc/scripts/version/sync.d.ts +5 -1
  39. package/out-tsc/scripts/version/sync.d.ts.map +1 -0
  40. package/out-tsc/scripts/version/sync.js +78 -29
  41. package/out-tsc/scripts/version/sync.js.map +1 -0
  42. package/out-tsc/types.d.ts +68 -0
  43. package/out-tsc/types.d.ts.map +1 -0
  44. package/out-tsc/{core/types/value.js → types.js} +4 -0
  45. package/out-tsc/types.js.map +1 -0
  46. package/out-tsc/wasm.d.ts +8 -0
  47. package/out-tsc/wasm.d.ts.map +1 -0
  48. package/out-tsc/{core/index.js → wasm.js} +9 -6
  49. package/out-tsc/wasm.js.map +1 -0
  50. package/package.json +42 -42
  51. package/.cargo/config.toml +0 -2
  52. package/.devalang +0 -9
  53. package/.github/workflows/ci.yml +0 -103
  54. package/Cargo.toml +0 -84
  55. package/docs/CHANGELOG.md +0 -622
  56. package/docs/CONTRIBUTING.md +0 -101
  57. package/docs/ROADMAP.md +0 -38
  58. package/docs/TODO.md +0 -71
  59. package/examples/automation.deva +0 -42
  60. package/examples/bank.deva +0 -7
  61. package/examples/bus.deva +0 -10
  62. package/examples/chain.deva +0 -19
  63. package/examples/condition.deva +0 -20
  64. package/examples/duration.deva +0 -9
  65. package/examples/effect.deva +0 -2
  66. package/examples/events.deva +0 -12
  67. package/examples/filter.deva +0 -11
  68. package/examples/function.deva +0 -15
  69. package/examples/group.deva +0 -12
  70. package/examples/index.deva +0 -63
  71. package/examples/lfo.deva +0 -9
  72. package/examples/loop.deva +0 -10
  73. package/examples/pattern.deva +0 -8
  74. package/examples/plugin.deva +0 -16
  75. package/examples/routing.deva +0 -23
  76. package/examples/samples/hat-808.wav +0 -0
  77. package/examples/samples/kick-808.wav +0 -0
  78. package/examples/synth.deva +0 -24
  79. package/examples/synth_types.deva +0 -17
  80. package/examples/variables.deva +0 -9
  81. package/out-tsc/bin/project-version.json +0 -6
  82. package/out-tsc/core/functions/index.d.ts +0 -42
  83. package/out-tsc/core/functions/index.js +0 -87
  84. package/out-tsc/core/index.d.ts +0 -6
  85. package/out-tsc/core/types/index.d.ts +0 -4
  86. package/out-tsc/core/types/index.js +0 -20
  87. package/out-tsc/core/types/plugin.d.ts +0 -18
  88. package/out-tsc/core/types/plugin.js +0 -2
  89. package/out-tsc/core/types/result.d.ts +0 -27
  90. package/out-tsc/core/types/result.js +0 -2
  91. package/out-tsc/core/types/statement.d.ts +0 -106
  92. package/out-tsc/core/types/statement.js +0 -2
  93. package/out-tsc/core/types/value.d.ts +0 -43
  94. package/out-tsc/pkg/devalang_core.d.ts +0 -15
  95. package/out-tsc/pkg/devalang_core.js +0 -65
  96. package/out-tsc/pkg/devalang_core_bg.wasm.d.ts +0 -34
  97. package/out-tsc/scripts/version/copy-to-binary.d.ts +0 -1
  98. package/out-tsc/scripts/version/copy-to-binary.js +0 -79
  99. package/project-version.json +0 -6
  100. package/rust/bindings/Cargo.toml +0 -9
  101. package/rust/bindings/src/lib.rs +0 -86
  102. package/rust/cli/addon/commands.rs +0 -35
  103. package/rust/cli/addon/download.rs +0 -234
  104. package/rust/cli/addon/install.rs +0 -33
  105. package/rust/cli/addon/list.rs +0 -224
  106. package/rust/cli/addon/metadata.rs +0 -124
  107. package/rust/cli/addon/mod.rs +0 -8
  108. package/rust/cli/addon/remove.rs +0 -271
  109. package/rust/cli/addon/update.rs +0 -305
  110. package/rust/cli/addon/utils.rs +0 -109
  111. package/rust/cli/build/commands.rs +0 -153
  112. package/rust/cli/build/mod.rs +0 -2
  113. package/rust/cli/build/process.rs +0 -165
  114. package/rust/cli/check/mod.rs +0 -208
  115. package/rust/cli/discover/commands.rs +0 -275
  116. package/rust/cli/discover/config.rs +0 -109
  117. package/rust/cli/discover/fs.rs +0 -19
  118. package/rust/cli/discover/install.rs +0 -214
  119. package/rust/cli/discover/metadata.rs +0 -48
  120. package/rust/cli/discover/mod.rs +0 -5
  121. package/rust/cli/init/commands.rs +0 -88
  122. package/rust/cli/init/mod.rs +0 -1
  123. package/rust/cli/login/commands.rs +0 -124
  124. package/rust/cli/login/mod.rs +0 -1
  125. package/rust/cli/me/commands.rs +0 -52
  126. package/rust/cli/me/mod.rs +0 -1
  127. package/rust/cli/mod.rs +0 -12
  128. package/rust/cli/parser.rs +0 -320
  129. package/rust/cli/play/commands.rs +0 -375
  130. package/rust/cli/play/io.rs +0 -17
  131. package/rust/cli/play/mod.rs +0 -5
  132. package/rust/cli/play/process.rs +0 -159
  133. package/rust/cli/play/realtime.rs +0 -91
  134. package/rust/cli/play/utils.rs +0 -23
  135. package/rust/cli/telemetry/commands.rs +0 -22
  136. package/rust/cli/telemetry/event_creator.rs +0 -80
  137. package/rust/cli/telemetry/mod.rs +0 -3
  138. package/rust/cli/telemetry/send.rs +0 -51
  139. package/rust/cli/template/commands.rs +0 -69
  140. package/rust/cli/template/mod.rs +0 -1
  141. package/rust/cli/update/commands.rs +0 -6
  142. package/rust/cli/update/mod.rs +0 -1
  143. package/rust/config/driver.rs +0 -112
  144. package/rust/config/mod.rs +0 -3
  145. package/rust/config/ops.rs +0 -26
  146. package/rust/config/settings.rs +0 -101
  147. package/rust/core/audio/engine/driver.rs +0 -237
  148. package/rust/core/audio/engine/export.rs +0 -169
  149. package/rust/core/audio/engine/helpers.rs +0 -178
  150. package/rust/core/audio/engine/mod.rs +0 -56
  151. package/rust/core/audio/engine/notes/dsp.rs +0 -88
  152. package/rust/core/audio/engine/notes/mod.rs +0 -53
  153. package/rust/core/audio/engine/notes/params.rs +0 -294
  154. package/rust/core/audio/engine/sample/insert.rs +0 -300
  155. package/rust/core/audio/engine/sample/mod.rs +0 -40
  156. package/rust/core/audio/engine/sample/padding.rs +0 -170
  157. package/rust/core/audio/evaluator/condition.rs +0 -61
  158. package/rust/core/audio/evaluator/mod.rs +0 -9
  159. package/rust/core/audio/evaluator/numeric.rs +0 -152
  160. package/rust/core/audio/evaluator/rhs.rs +0 -16
  161. package/rust/core/audio/evaluator/string_expr.rs +0 -94
  162. package/rust/core/audio/interpreter/driver.rs +0 -574
  163. package/rust/core/audio/interpreter/mod.rs +0 -2
  164. package/rust/core/audio/interpreter/statements/arrow_call/interprete.rs +0 -179
  165. package/rust/core/audio/interpreter/statements/arrow_call/methods/chord.rs +0 -398
  166. package/rust/core/audio/interpreter/statements/arrow_call/methods/effects.rs +0 -323
  167. package/rust/core/audio/interpreter/statements/arrow_call/methods/mod.rs +0 -3
  168. package/rust/core/audio/interpreter/statements/arrow_call/methods/note.rs +0 -371
  169. package/rust/core/audio/interpreter/statements/arrow_call/mod.rs +0 -3
  170. package/rust/core/audio/interpreter/statements/arrow_call/types/arp.rs +0 -192
  171. package/rust/core/audio/interpreter/statements/arrow_call/types/mod.rs +0 -24
  172. package/rust/core/audio/interpreter/statements/arrow_call/types/pad.rs +0 -116
  173. package/rust/core/audio/interpreter/statements/arrow_call/types/pluck.rs +0 -97
  174. package/rust/core/audio/interpreter/statements/arrow_call/types/sub.rs +0 -100
  175. package/rust/core/audio/interpreter/statements/automate.rs +0 -16
  176. package/rust/core/audio/interpreter/statements/call.rs +0 -325
  177. package/rust/core/audio/interpreter/statements/condition.rs +0 -72
  178. package/rust/core/audio/interpreter/statements/function.rs +0 -24
  179. package/rust/core/audio/interpreter/statements/let_.rs +0 -36
  180. package/rust/core/audio/interpreter/statements/load.rs +0 -17
  181. package/rust/core/audio/interpreter/statements/loop_.rs +0 -115
  182. package/rust/core/audio/interpreter/statements/mod.rs +0 -12
  183. package/rust/core/audio/interpreter/statements/sleep.rs +0 -28
  184. package/rust/core/audio/interpreter/statements/spawn.rs +0 -302
  185. package/rust/core/audio/interpreter/statements/tempo.rs +0 -40
  186. package/rust/core/audio/interpreter/statements/trigger.rs +0 -242
  187. package/rust/core/audio/loader/mod.rs +0 -1
  188. package/rust/core/audio/loader/trigger.rs +0 -98
  189. package/rust/core/audio/mod.rs +0 -6
  190. package/rust/core/audio/player.rs +0 -70
  191. package/rust/core/audio/special/easing.rs +0 -189
  192. package/rust/core/audio/special/env.rs +0 -45
  193. package/rust/core/audio/special/math.rs +0 -134
  194. package/rust/core/audio/special/mod.rs +0 -9
  195. package/rust/core/audio/special/modulator.rs +0 -143
  196. package/rust/core/builder/mod.rs +0 -129
  197. package/rust/core/debugger/lexer.rs +0 -27
  198. package/rust/core/debugger/logs.rs +0 -52
  199. package/rust/core/debugger/mod.rs +0 -30
  200. package/rust/core/debugger/preprocessor.rs +0 -27
  201. package/rust/core/debugger/store.rs +0 -38
  202. package/rust/core/error/mod.rs +0 -269
  203. package/rust/core/lexer/driver.rs +0 -59
  204. package/rust/core/lexer/handler/arrow.rs +0 -82
  205. package/rust/core/lexer/handler/at.rs +0 -21
  206. package/rust/core/lexer/handler/brace.rs +0 -41
  207. package/rust/core/lexer/handler/colon.rs +0 -21
  208. package/rust/core/lexer/handler/comment.rs +0 -30
  209. package/rust/core/lexer/handler/dot.rs +0 -21
  210. package/rust/core/lexer/handler/driver.rs +0 -337
  211. package/rust/core/lexer/handler/identifier.rs +0 -47
  212. package/rust/core/lexer/handler/indent.rs +0 -66
  213. package/rust/core/lexer/handler/mod.rs +0 -15
  214. package/rust/core/lexer/handler/newline.rs +0 -23
  215. package/rust/core/lexer/handler/number.rs +0 -31
  216. package/rust/core/lexer/handler/operator.rs +0 -46
  217. package/rust/core/lexer/handler/parenthesis.rs +0 -41
  218. package/rust/core/lexer/handler/slash.rs +0 -21
  219. package/rust/core/lexer/handler/string.rs +0 -63
  220. package/rust/core/lexer/mod.rs +0 -3
  221. package/rust/core/lexer/token.rs +0 -91
  222. package/rust/core/mod.rs +0 -9
  223. package/rust/core/parser/driver/block.rs +0 -111
  224. package/rust/core/parser/driver/cursor.rs +0 -82
  225. package/rust/core/parser/driver/driver_impl.rs +0 -159
  226. package/rust/core/parser/driver/mod.rs +0 -6
  227. package/rust/core/parser/driver/parse_array.rs +0 -120
  228. package/rust/core/parser/driver/parse_map.rs +0 -247
  229. package/rust/core/parser/driver/parser.rs +0 -160
  230. package/rust/core/parser/handler/arrow_call.rs +0 -328
  231. package/rust/core/parser/handler/at.rs +0 -279
  232. package/rust/core/parser/handler/bank.rs +0 -104
  233. package/rust/core/parser/handler/condition.rs +0 -83
  234. package/rust/core/parser/handler/dot.rs +0 -148
  235. package/rust/core/parser/handler/identifier/automate.rs +0 -254
  236. package/rust/core/parser/handler/identifier/call.rs +0 -91
  237. package/rust/core/parser/handler/identifier/emit.rs +0 -70
  238. package/rust/core/parser/handler/identifier/function.rs +0 -113
  239. package/rust/core/parser/handler/identifier/group.rs +0 -89
  240. package/rust/core/parser/handler/identifier/let_.rs +0 -173
  241. package/rust/core/parser/handler/identifier/mod.rs +0 -55
  242. package/rust/core/parser/handler/identifier/on.rs +0 -107
  243. package/rust/core/parser/handler/identifier/print.rs +0 -49
  244. package/rust/core/parser/handler/identifier/sleep.rs +0 -96
  245. package/rust/core/parser/handler/identifier/spawn.rs +0 -91
  246. package/rust/core/parser/handler/identifier/synth.rs +0 -171
  247. package/rust/core/parser/handler/loop_.rs +0 -194
  248. package/rust/core/parser/handler/mod.rs +0 -9
  249. package/rust/core/parser/handler/pattern.rs +0 -97
  250. package/rust/core/parser/handler/tempo.rs +0 -105
  251. package/rust/core/parser/mod.rs +0 -3
  252. package/rust/core/parser/statement.rs +0 -10
  253. package/rust/core/plugin/loader.rs +0 -137
  254. package/rust/core/plugin/mod.rs +0 -2
  255. package/rust/core/plugin/runner/mod.rs +0 -11
  256. package/rust/core/plugin/runner/non_wasm.rs +0 -481
  257. package/rust/core/plugin/runner/wasm32.rs +0 -44
  258. package/rust/core/preprocessor/loader/inject.rs +0 -313
  259. package/rust/core/preprocessor/loader/loader_helpers.rs +0 -110
  260. package/rust/core/preprocessor/loader/mod.rs +0 -235
  261. package/rust/core/preprocessor/mod.rs +0 -4
  262. package/rust/core/preprocessor/module.rs +0 -55
  263. package/rust/core/preprocessor/processor/handlers.rs +0 -107
  264. package/rust/core/preprocessor/processor/mod.rs +0 -1
  265. package/rust/core/preprocessor/resolver/bank.rs +0 -49
  266. package/rust/core/preprocessor/resolver/call.rs +0 -124
  267. package/rust/core/preprocessor/resolver/condition.rs +0 -95
  268. package/rust/core/preprocessor/resolver/driver.rs +0 -324
  269. package/rust/core/preprocessor/resolver/function.rs +0 -69
  270. package/rust/core/preprocessor/resolver/group.rs +0 -122
  271. package/rust/core/preprocessor/resolver/let_.rs +0 -32
  272. package/rust/core/preprocessor/resolver/loop_.rs +0 -318
  273. package/rust/core/preprocessor/resolver/mod.rs +0 -16
  274. package/rust/core/preprocessor/resolver/pattern.rs +0 -95
  275. package/rust/core/preprocessor/resolver/spawn.rs +0 -99
  276. package/rust/core/preprocessor/resolver/synth.rs +0 -54
  277. package/rust/core/preprocessor/resolver/tempo.rs +0 -48
  278. package/rust/core/preprocessor/resolver/trigger.rs +0 -116
  279. package/rust/core/preprocessor/resolver/value.rs +0 -176
  280. package/rust/core/store/global.rs +0 -57
  281. package/rust/core/store/mod.rs +0 -1
  282. package/rust/lib.rs +0 -323
  283. package/rust/macros/Cargo.toml +0 -14
  284. package/rust/macros/src/lib.rs +0 -52
  285. package/rust/main.rs +0 -557
  286. package/rust/types/Cargo.toml +0 -11
  287. package/rust/types/src/addons.rs +0 -57
  288. package/rust/types/src/ast.rs +0 -202
  289. package/rust/types/src/config.rs +0 -82
  290. package/rust/types/src/lib.rs +0 -15
  291. package/rust/types/src/plugin.rs +0 -20
  292. package/rust/types/src/store.rs +0 -139
  293. package/rust/types/src/telemetry.rs +0 -85
  294. package/rust/utils/Cargo.toml +0 -29
  295. package/rust/utils/src/error.rs +0 -186
  296. package/rust/utils/src/file.rs +0 -477
  297. package/rust/utils/src/first_usage.rs +0 -97
  298. package/rust/utils/src/lib.rs +0 -9
  299. package/rust/utils/src/logger.rs +0 -200
  300. package/rust/utils/src/path.rs +0 -158
  301. package/rust/utils/src/signature.rs +0 -41
  302. package/rust/utils/src/spinner.rs +0 -20
  303. package/rust/utils/src/version.rs +0 -58
  304. package/rust/utils/src/watcher.rs +0 -46
  305. package/rust/web/api.rs +0 -5
  306. package/rust/web/auth.rs +0 -5
  307. package/rust/web/cdn.rs +0 -34
  308. package/rust/web/forge.rs +0 -5
  309. package/rust/web/mod.rs +0 -5
  310. package/rust/web/sso.rs +0 -5
  311. package/templates/minimal/.devalang +0 -5
  312. package/templates/minimal/README.md +0 -218
  313. package/templates/minimal/src/index.deva +0 -2
  314. package/templates/welcome/.devalang +0 -5
  315. package/templates/welcome/README.md +0 -218
  316. package/templates/welcome/samples/kick-808.wav +0 -0
  317. package/templates/welcome/src/index.deva +0 -61
  318. package/templates/welcome/src/variables.deva +0 -3
  319. package/tests/integration.rs +0 -21
  320. package/tests/rust/cli_check_build.rs +0 -21
  321. package/tests/rust/cli_help.rs +0 -12
  322. package/tests/rust/cli_template_list.rs +0 -10
  323. package/tests/rust/cli_version.rs +0 -11
  324. package/tests/typescript/index.spec.ts +0 -136
  325. package/tests/typescript/playhead.spec.ts +0 -36
  326. package/tests/typescript/render_e2e.spec.ts +0 -77
  327. package/tsconfig.json +0 -115
  328. package/typescript/bin/index.ts +0 -28
  329. package/typescript/core/functions/index.ts +0 -94
  330. package/typescript/core/index.ts +0 -6
  331. package/typescript/core/types/index.ts +0 -4
  332. package/typescript/core/types/plugin.ts +0 -19
  333. package/typescript/core/types/result.ts +0 -29
  334. package/typescript/core/types/statement.ts +0 -47
  335. package/typescript/core/types/value.ts +0 -29
  336. package/typescript/index.ts +0 -8
  337. package/typescript/pkg/devalang_core.d.ts +0 -4
  338. package/typescript/pkg/devalang_core.ts +0 -65
  339. package/typescript/scripts/copy-wasm-dts.ts +0 -41
  340. package/typescript/scripts/postinstall.ts +0 -85
  341. package/typescript/scripts/version/bump.ts +0 -44
  342. package/typescript/scripts/version/copy-to-binary.ts +0 -82
  343. package/typescript/scripts/version/fetch.ts +0 -18
  344. package/typescript/scripts/version/index.ts +0 -25
  345. package/typescript/scripts/version/sync.ts +0 -24
@@ -1,32 +1,81 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.syncVersion = void 0;
16
- const fs_1 = __importDefault(require("fs"));
17
- const path_1 = __importDefault(require("path"));
18
- const syncVersion = (projectVersionPath) => __awaiter(void 0, void 0, void 0, function* () {
19
- const version = fs_1.default.readFileSync(projectVersionPath, "utf-8").trim();
20
- const versionString = JSON.parse(version).version;
21
- // Package.json
22
- const pkgPath = path_1.default.join(__dirname, "..", "..", "..", "package.json");
23
- const pkgJson = JSON.parse(fs_1.default.readFileSync(pkgPath, "utf-8"));
24
- pkgJson.version = versionString;
25
- fs_1.default.writeFileSync(pkgPath, JSON.stringify(pkgJson, null, 2));
26
- // Cargo.toml
27
- const cargoPath = path_1.default.join(__dirname, "..", "..", "..", "Cargo.toml");
28
- const cargoToml = fs_1.default.readFileSync(cargoPath, "utf-8");
29
- const updatedCargo = cargoToml.replace(/(version\s*=\s*")[^"]*(")/, `$1${versionString}$2`);
30
- fs_1.default.writeFileSync(cargoPath, updatedCargo);
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
31
17
  });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
32
36
  exports.syncVersion = syncVersion;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ /**
40
+ * Synchronizes version from package.json to all other version files
41
+ */
42
+ async function syncVersion() {
43
+ const rootPath = path.resolve(__dirname, '../../../..');
44
+ // Read package.json as source of truth
45
+ const packageJsonPath = path.join(rootPath, 'package.json');
46
+ const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
47
+ const version = packageJson.version;
48
+ if (!version) {
49
+ throw new Error('No version found in package.json');
50
+ }
51
+ // Determine channel from version
52
+ const isPreRelease = version.includes('-');
53
+ let channel = 'stable';
54
+ if (isPreRelease) {
55
+ if (version.includes('alpha'))
56
+ channel = 'alpha';
57
+ else if (version.includes('beta'))
58
+ channel = 'beta';
59
+ else
60
+ channel = 'preview';
61
+ }
62
+ // Update Cargo.toml
63
+ const cargoTomlPath = path.join(rootPath, 'Cargo.toml');
64
+ let cargoToml = fs.readFileSync(cargoTomlPath, 'utf-8');
65
+ cargoToml = cargoToml.replace(/version = "[\d\.]+-?[a-z\.]*\d*"/, `version = "${version}"`);
66
+ fs.writeFileSync(cargoTomlPath, cargoToml);
67
+ console.log(`✅ Synchronized Cargo.toml to ${version}`);
68
+ // Update project-version.json
69
+ const projectVersionPath = path.join(rootPath, 'project-version.json');
70
+ let projectVersion = { version, channel, build: 1 };
71
+ if (fs.existsSync(projectVersionPath)) {
72
+ const existing = JSON.parse(fs.readFileSync(projectVersionPath, 'utf-8'));
73
+ projectVersion.build = existing.build || 1;
74
+ projectVersion.commit = existing.commit;
75
+ }
76
+ projectVersion.version = version;
77
+ projectVersion.channel = channel;
78
+ fs.writeFileSync(projectVersionPath, JSON.stringify(projectVersion, null, 2) + '\n');
79
+ console.log(`✅ Synchronized project-version.json to ${version}`);
80
+ }
81
+ //# sourceMappingURL=sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/typescript/scripts/version/sync.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,kCA+CC;AArDD,uCAAyB;AACzB,2CAA6B;AAE7B;;GAEG;AACI,KAAK,UAAU,WAAW;IAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAExD,uCAAuC;IACvC,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IAEpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED,iCAAiC;IACjC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,OAAO,GAA4C,QAAQ,CAAC;IAEhE,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,OAAO,GAAG,OAAO,CAAC;aAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,OAAO,GAAG,MAAM,CAAC;;YAC/C,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;IAED,oBAAoB;IACpB,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACxD,IAAI,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACxD,SAAS,GAAG,SAAS,CAAC,OAAO,CAC3B,kCAAkC,EAClC,cAAc,OAAO,GAAG,CACzB,CAAC;IACF,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;IAEvD,8BAA8B;IAC9B,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;IACvE,IAAI,cAAc,GAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IAEzD,IAAI,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1E,cAAc,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;QAC3C,cAAc,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC1C,CAAC;IAED,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;IACjC,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;IAEjC,EAAE,CAAC,aAAa,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrF,OAAO,CAAC,GAAG,CAAC,0CAA0C,OAAO,EAAE,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Type definitions for Devalang V2
3
+ */
4
+ /**
5
+ * Options for rendering audio
6
+ */
7
+ export interface RenderOptions {
8
+ sampleRate?: number;
9
+ bpm?: number;
10
+ }
11
+ /**
12
+ * Options for MIDI export
13
+ */
14
+ export interface MidiOptions extends RenderOptions {
15
+ timeSignatureNum?: number;
16
+ timeSignatureDen?: number;
17
+ }
18
+ /**
19
+ * Parse result from Devalang parser
20
+ */
21
+ export interface ParseResult {
22
+ success: boolean;
23
+ statements: StatementInfo[];
24
+ errors: string[];
25
+ }
26
+ /**
27
+ * Statement information
28
+ */
29
+ export interface StatementInfo {
30
+ kind: string;
31
+ line: number;
32
+ }
33
+ /**
34
+ * Debug render result with metadata
35
+ */
36
+ export interface DebugRenderResult {
37
+ audio: Float32Array;
38
+ sampleRate: number;
39
+ duration: number;
40
+ eventCount: number;
41
+ bpm: number;
42
+ }
43
+ /**
44
+ * Metadata about code without rendering
45
+ */
46
+ export interface CodeMetadata {
47
+ statementCount: number;
48
+ bpm: number;
49
+ sampleRate: number;
50
+ }
51
+ /**
52
+ * Registered bank information
53
+ */
54
+ export interface RegisteredBank {
55
+ fullName: string;
56
+ alias: string;
57
+ triggers: Record<string, string>;
58
+ }
59
+ /**
60
+ * Debug state information
61
+ */
62
+ export interface DebugState {
63
+ sampleLoadCount: number;
64
+ playbackDebugCount: number;
65
+ errorCount: number;
66
+ debugErrorsEnabled: boolean;
67
+ }
68
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/typescript/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,aAAa;IAChD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,OAAO,CAAC;CAC7B"}
@@ -1,2 +1,6 @@
1
1
  "use strict";
2
+ /**
3
+ * Type definitions for Devalang V2
4
+ */
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/typescript/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * WASM bindings re-export
3
+ *
4
+ * This module re-exports the generated WASM bindings.
5
+ * It will be available after running: npm run rust:wasm:all
6
+ */
7
+ export * from '../../pkg/node/devalang_wasm';
8
+ //# sourceMappingURL=wasm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm.d.ts","sourceRoot":"","sources":["../src/typescript/wasm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,cAAc,8BAA8B,CAAC"}
@@ -1,4 +1,10 @@
1
1
  "use strict";
2
+ /**
3
+ * WASM bindings re-export
4
+ *
5
+ * This module re-exports the generated WASM bindings.
6
+ * It will be available after running: npm run rust:wasm:all
7
+ */
2
8
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
9
  if (k2 === undefined) k2 = k;
4
10
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -14,9 +20,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
20
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
21
  };
16
22
  Object.defineProperty(exports, "__esModule", { value: true });
17
- /**
18
- * Core functionality for the Devalang language.
19
- * This module exports all the core types and functions used in the language.
20
- */
21
- __exportStar(require("./types/index"), exports);
22
- __exportStar(require("./functions/index"), exports);
23
+ // These will be available after WASM build
24
+ __exportStar(require("../../pkg/node/devalang_wasm"), exports);
25
+ //# sourceMappingURL=wasm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wasm.js","sourceRoot":"","sources":["../src/typescript/wasm.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;AAEH,2CAA2C;AAC3C,+DAA6C"}
package/package.json CHANGED
@@ -1,34 +1,39 @@
1
1
  {
2
2
  "name": "@devaloop/devalang",
3
3
  "private": false,
4
- "version": "0.0.1-beta.3",
4
+ "version": "0.1.1",
5
5
  "description": "Write music like code. Devalang is a domain-specific language (DSL) for sound designers and music hackers. Compose, automate, and control sound — in plain text.",
6
- "longDescription": "Devalang is a compact, performant DSL and toolchain for composing, automating and rendering sound. It provides a CLI, WASM bindings, a TypeScript API, and plugins for editors. Ideal for live-coding, sample-based production, algorithmic composition, and fast prototyping.",
7
6
  "main": "out-tsc/index.js",
7
+ "types": "./out-tsc/index.d.ts",
8
8
  "bin": {
9
9
  "devalang": "./out-tsc/bin/index.js"
10
10
  },
11
- "types": "./out-tsc/index.d.ts",
12
11
  "scripts": {
13
12
  "rust:fmt": "cargo fmt",
14
- "rust:dev:build": "cargo run build --entry examples --output output --debug",
15
- "rust:dev:check": "cargo run check --entry examples --output output --debug",
16
- "rust:dev:play": "cargo run play --entry examples --output output --repeat --debug",
17
- "rust:wasm:web": "wasm-pack build --target=web --no-default-features",
18
- "rust:wasm:node": "wasm-pack build --target=nodejs --no-default-features",
19
- "rust:prepack": "cargo build --release",
20
- "scripts:postbuild": "tsc && node out-tsc/scripts/postbuild.js",
21
- "scripts:version:bump": "tsc && node out-tsc/scripts/version/index.js",
22
- "scripts:copy-version": "tsc && node out-tsc/scripts/version/copy-to-binary.js --out-dir ./out-tsc/bin",
23
- "scripts:build": "tsc",
13
+ "rust:check": "cargo check --lib",
14
+ "rust:build": "cargo build --lib --release",
15
+ "rust:build:cli": "cargo build --features cli --release",
16
+ "rust:test": "cargo test",
17
+ "rust:wasm:web": "wasm-pack build --target web --out-dir pkg/web --no-default-features --features wasm",
18
+ "rust:wasm:node": "wasm-pack build --target nodejs --out-dir pkg/node --no-default-features --features wasm",
19
+ "rust:wasm:all": "npm run rust:wasm:web && npm run rust:wasm:node",
20
+ "ts:build": "tsc",
21
+ "ts:watch": "tsc --watch",
22
+ "ts:clean": "rimraf out-tsc",
24
23
  "types:build": "tsc --emitDeclarationOnly",
25
- "types:wasm": "tsc && node out-tsc/scripts/copy-wasm-dts.js",
26
- "types:all": "npm run rust:wasm:node && npm run types:wasm && npm run types:build",
27
- "test:rust": "cargo test",
28
- "test:ts": "mocha -r ts-node/register tests/typescript/**/*.spec.ts --exit",
29
- "test": "npm run test:ts",
30
- "postinstall": "node out-tsc/scripts/postinstall.js",
31
- "beforepublish": "npm run types:all && npm run scripts:copy-version"
24
+ "types:wasm": "npm run rust:wasm:node && node out-tsc/scripts/copy-wasm-dts.js",
25
+ "version:bump": "tsx src/typescript/scripts/version/index.ts bump",
26
+ "version:sync": "tsx src/typescript/scripts/version/index.ts sync",
27
+ "version:fetch": "tsx src/typescript/scripts/version/index.ts fetch",
28
+ "build": "npm run ts:build && npm run rust:build",
29
+ "build:all": "npm run rust:wasm:all && npm run ts:build",
30
+ "build:release": "npm run build:all && npm run rust:build:cli",
31
+ "test": "npm run rust:test",
32
+ "test:examples": "cargo run --features cli -- check --entry examples/",
33
+ "clean": "cargo clean && npm run ts:clean",
34
+ "prepare": "npm run ts:build",
35
+ "prepublishOnly": "npm run build:all",
36
+ "postinstall": "node -e \"try { require('./out-tsc/scripts/postinstall.js') } catch (e) { console.log('⚠️ Skipping postinstall (build first)') }\""
32
37
  },
33
38
  "homepage": "https://devalang.com",
34
39
  "keywords": [
@@ -36,43 +41,38 @@
36
41
  "music",
37
42
  "sound",
38
43
  "dsl",
39
- "domain-specific-language",
40
44
  "audio",
41
- "music-programming",
42
45
  "synthesis",
43
46
  "midi",
44
47
  "wasm",
45
- "vscode",
46
48
  "live-coding",
47
- "sound-design",
48
- "samples",
49
- "cli"
49
+ "sound-design"
50
50
  ],
51
51
  "author": {
52
52
  "name": "Devaloop",
53
53
  "email": "contact@devaloop.com",
54
54
  "url": "https://devaloop.com"
55
55
  },
56
- "bugs": {
57
- "url": "https://github.com/devaloop-labs/devalang/issues",
58
- "email": "contact@devaloop.com"
59
- },
60
56
  "license": "MIT",
61
57
  "repository": {
62
58
  "type": "git",
63
59
  "url": "https://github.com/devaloop-labs/devalang.git"
64
60
  },
65
- "dependencies": {
61
+ "devDependencies": {
66
62
  "@types/follow-redirects": "^1.14.4",
67
- "@types/node": "^24.0.3",
68
- "follow-redirects": "^1.15.11"
63
+ "@types/node": "^20.19.19",
64
+ "follow-redirects": "^1.15.9",
65
+ "rimraf": "^5.0.10",
66
+ "tsx": "^4.20.6",
67
+ "typescript": "^5.9.3"
69
68
  },
70
- "devDependencies": {
71
- "typescript": "^5.9.2",
72
- "mocha": "^10.2.0",
73
- "chai": "^4.3.8",
74
- "ts-node": "^10.9.1",
75
- "@types/mocha": "^10.0.1",
76
- "@types/chai": "^4.3.4"
77
- }
78
- }
69
+ "engines": {
70
+ "node": ">=16.0.0"
71
+ },
72
+ "files": [
73
+ "out-tsc/**/*",
74
+ "pkg/**/*",
75
+ "README.md",
76
+ "LICENSE"
77
+ ]
78
+ }
@@ -1,2 +0,0 @@
1
- [target.wasm32-unknown-unknown]
2
- rustflags = ["--cfg", "getrandom_backend=\"wasm_js\""]
package/.devalang DELETED
@@ -1,9 +0,0 @@
1
- [defaults]
2
- entry = "./examples"
3
- output = "./output"
4
- watch = false
5
- debug = true
6
- compress = true
7
- audio_format = "wav16"
8
- sample_rate = 44100
9
- output_format = ["wav", "mid"]
@@ -1,103 +0,0 @@
1
- name: CI & Release
2
-
3
- permissions:
4
- contents: write
5
-
6
- on:
7
- push:
8
- tags:
9
- - "v*"
10
-
11
- jobs:
12
- build:
13
- name: Build binaries
14
- runs-on: ${{ matrix.os }}
15
- strategy:
16
- matrix:
17
- include:
18
- - os: ubuntu-latest
19
- target: x86_64-unknown-linux-gnu
20
- bin_ext: ""
21
- - os: macos-latest
22
- target: x86_64-apple-darwin
23
- bin_ext: ""
24
- - os: windows-latest
25
- target: x86_64-pc-windows-msvc
26
- bin_ext: ".exe"
27
-
28
- steps:
29
- - name: Checkout sources
30
- uses: actions/checkout@v4
31
-
32
- - name: Install ALSA (Linux)
33
- if: matrix.os == 'ubuntu-latest'
34
- run: |
35
- sudo apt-get update
36
- sudo apt-get install -y libasound2-dev pkg-config
37
-
38
- - name: Install Node.js
39
- uses: actions/setup-node@v4
40
- with:
41
- node-version: 20
42
-
43
- - name: Install Rust
44
- uses: actions-rs/toolchain@v1
45
- with:
46
- toolchain: stable
47
- override: true
48
- target: ${{ matrix.target }}
49
-
50
- - name: NPM Install
51
- run: npm install
52
-
53
- - name: Build TS
54
- run: npx tsc
55
-
56
- - name: Build release
57
- run: cargo build --release --target ${{ matrix.target }}
58
-
59
- - name: Ensure out-tsc/bin exists (Unix)
60
- if: runner.os != 'Windows'
61
- run: mkdir -p out-tsc/bin
62
-
63
- - name: Ensure out-tsc/bin exists (Windows)
64
- if: runner.os == 'Windows'
65
- shell: pwsh
66
- run: |
67
- New-Item -ItemType Directory -Force out-tsc/bin | Out-Null
68
-
69
- - name: Copy binary (Unix)
70
- if: runner.os != 'Windows'
71
- run: cp target/${{ matrix.target }}/release/devalang${{ matrix.bin_ext }} out-tsc/bin/devalang-${{ matrix.target }}${{ matrix.bin_ext }}
72
-
73
- - name: Copy binary (Windows)
74
- if: runner.os == 'Windows'
75
- shell: pwsh
76
- run: |
77
- Copy-Item "target\${{ matrix.target }}\release\devalang${{ matrix.bin_ext }}" "out-tsc\bin\devalang-${{ matrix.target }}${{ matrix.bin_ext }}" -Force
78
-
79
- - name: Upload artifact (CI)
80
- uses: actions/upload-artifact@v4
81
- with:
82
- name: devalang-${{ matrix.target }}
83
- path: out-tsc/bin/*
84
-
85
- release:
86
- name: Create GitHub Release
87
- runs-on: ubuntu-latest
88
- needs: build
89
- steps:
90
- - name: Download all build artifacts
91
- uses: actions/download-artifact@v4
92
- with:
93
- path: dist
94
- pattern: devalang-*
95
- merge-multiple: true
96
-
97
- - name: List files
98
- run: ls -la dist
99
-
100
- - name: Upload to GitHub Release
101
- uses: softprops/action-gh-release@v2
102
- with:
103
- files: dist/*
package/Cargo.toml DELETED
@@ -1,84 +0,0 @@
1
- [package]
2
- name = "devalang"
3
- version = "0.0.1-beta.3"
4
- authors = ["Devaloop <contact@devaloop.com>"]
5
- description = "Write music like code. Devalang is a domain-specific language (DSL) for sound designers and music hackers. Compose, automate, and control sound — in plain text."
6
- license = "MIT"
7
- repository = "https://github.com/devaloop-labs/devalang"
8
- license-file = "LICENSE"
9
- keywords = ["music", "dsl", "audio", "cli", "synthesis"]
10
- categories = ["command-line-utilities", "development-tools", "parser-implementations"]
11
- readme = "README.md"
12
- homepage = "https://devalang.com"
13
- documentation = "https://docs.devalang.com/"
14
- edition = "2024"
15
-
16
- [[bin]]
17
- name = "devalang"
18
- path = "rust/main.rs"
19
-
20
- [lib]
21
- name = "devalang_core"
22
- path = "rust/lib.rs"
23
- crate-type = ["cdylib", "rlib"]
24
-
25
- [profile.release]
26
- opt-level = "s"
27
-
28
- [features]
29
- default = ["cli"]
30
- cli = ["crossterm", "indicatif", "inquire", "zip", "reqwest", "flate2", "tokio"]
31
-
32
- [dependencies]
33
- devalang_types = { path = "rust/types", version = "0.0.4" }
34
- devalang_bindings = { path = "rust/bindings", version = "0.0.1" }
35
- devalang_macros = { path = "rust/macros", version = "0.0.1" }
36
- clap = { version = "4.5", features = ["derive"] }
37
- serde = { version = "1.0", features = ["derive"] }
38
- serde_json = "1.0"
39
- rodio = "0.17"
40
- hound = "3.4.0"
41
- toml = "0.8"
42
- notify = "6.1"
43
- fs_extra = "1.3"
44
- include_dir = "0.7"
45
- wasm-bindgen = "0.2"
46
- serde-wasm-bindgen = "0.4"
47
- nom_locate = "4.0.0"
48
- chrono = "0.4"
49
- crossterm = { version = "0.27", optional = true }
50
- indicatif = { version = "0.17", optional = true }
51
- inquire = { version = "0.7.5", optional = true }
52
- js-sys = "0.3"
53
- getrandom = { version = "0.3", features = ["wasm_js"] }
54
- reqwest = { version = "0.12.22", optional = true, features = ["json"] }
55
- flate2 = { version = "1.0", optional = true }
56
- tokio = { version = "1", features = ["full"], optional = true }
57
- zip = { version = "4.3.0", optional = true }
58
- rayon = "1.10.0"
59
- webbrowser = "0.8"
60
- tiny_http = "0.9.0"
61
- dirs = "5"
62
- urlencoding = "2.1"
63
- uuid = { version = "1.18.0", features = ["v4"] }
64
- console_error_panic_hook = "0.1.7"
65
- midly = "0.5.3"
66
-
67
- [dev-dependencies]
68
- assert_cmd = "2"
69
- predicates = "2"
70
- tempfile = "3"
71
-
72
- # For wasm32, enable wasm-friendly randomness backends and avoid
73
- # pulling in native-only CLI dependencies.
74
- [target.'cfg(target_arch = "wasm32")'.dependencies]
75
- getrandom = { version = "0.3", features = ["wasm_js"] }
76
- uuid = { version = "1.18.0", features = ["v4", "js", "rng-getrandom"] }
77
- # Keep a lightweight linkage to the utils crate for wasm builds without
78
- # enabling native CLI features.
79
- devalang_utils = { path = "rust/utils", default-features = false, version = "0.0.3" }
80
-
81
- # devalang_utils with CLI and wasmtime are only needed for native targets.
82
- [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
83
- devalang_utils = { path = "rust/utils", features = ["cli"], version = "0.0.3" }
84
- wasmtime = "19"