From fa712f45af90de33843993143cf32e8a2280a7aa Mon Sep 17 00:00:00 2001 From: LunaStev Date: Sun, 9 Aug 2026 22:04:51 +0900 Subject: [PATCH] Relicense the Wave standard library under Apache 2.0 Establish std/ as a separately licensed standard library while retaining MPL-2.0 for the Wave compiler and every repository component outside that directory. Add the canonical Apache License 2.0 text under std/LICENSE, declare Apache-2.0 in the standard library manifest, and replace the MPL headers in all 79 Wave standard library source files with Apache-2.0 headers. Remove the std-only AI training restriction so the standard library is distributed under the unmodified Apache license terms without an additional use restriction. Document the license boundary in the root README, std README, NOTICE, COPYRIGHT, and contribution terms so users, redistributors, and future contributors can identify the applicable license from either repository scope. Validated the license text against the Apache Software Foundation copy, verified every std Wave source carries the Apache-2.0 SPDX identifier, ran the std policy checker, parsed the manifest, passed all 22 Rust tests, and completed the Wave suite with 96 passes, 12 platform skips, and no failures or timeouts. Signed-off-by: LunaStev --- CONTRIBUTING.md | 8 +- COPYRIGHT | 5 +- NOTICE | 10 +- README.md | 16 ++- std/LICENSE | 202 +++++++++++++++++++++++++++++++++++++ std/README.md | 9 ++ std/buffer/alloc.wave | 18 ++-- std/buffer/read.wave | 18 ++-- std/buffer/types.wave | 18 ++-- std/buffer/write.wave | 18 ++-- std/bytes/endian.wave | 18 ++-- std/env/consts.wave | 18 ++-- std/env/cwd.wave | 18 ++-- std/env/environ.wave | 18 ++-- std/env/parse.wave | 18 ++-- std/fs/consts.wave | 18 ++-- std/fs/file.wave | 18 ++-- std/io/consts.wave | 18 ++-- std/io/fd.wave | 18 ++-- std/libc/arpa.wave | 18 ++-- std/libc/errno.wave | 18 ++-- std/libc/netinet.wave | 18 ++-- std/libc/poll.wave | 18 ++-- std/libc/socket.wave | 18 ++-- std/libc/stdio.wave | 18 ++-- std/libc/stdlib.wave | 18 ++-- std/libc/string.wave | 18 ++-- std/libc/time.wave | 18 ++-- std/libc/unistd.wave | 18 ++-- std/manifest.json | 1 + std/math/bits.wave | 18 ++-- std/math/float.wave | 18 ++-- std/math/int.wave | 18 ++-- std/math/num.wave | 18 ++-- std/math/trig.wave | 18 ++-- std/mem/alloc.wave | 18 ++-- std/mem/consts.wave | 18 ++-- std/mem/cstr.wave | 18 ++-- std/mem/ops.wave | 18 ++-- std/net/address.wave | 18 ++-- std/net/poll.wave | 18 ++-- std/net/socket_base.wave | 18 ++-- std/net/socketopt.wave | 18 ++-- std/net/tcp.wave | 18 ++-- std/net/udp.wave | 18 ++-- std/path/analyze.wave | 18 ++-- std/path/consts.wave | 18 ++-- std/path/copy.wave | 18 ++-- std/path/core.wave | 18 ++-- std/process/consts.wave | 18 ++-- std/process/core.wave | 18 ++-- std/process/spawn.wave | 18 ++-- std/process/wait.wave | 18 ++-- std/string/ascii.wave | 18 ++-- std/string/cmp.wave | 18 ++-- std/string/find.wave | 18 ++-- std/string/hash.wave | 18 ++-- std/string/len.wave | 18 ++-- std/string/trim.wave | 18 ++-- std/sys/env.wave | 18 ++-- std/sys/fs.wave | 18 ++-- std/sys/linux/env.wave | 18 ++-- std/sys/linux/fs.wave | 18 ++-- std/sys/linux/memory.wave | 18 ++-- std/sys/linux/process.wave | 18 ++-- std/sys/linux/socket.wave | 18 ++-- std/sys/linux/syscall.wave | 18 ++-- std/sys/linux/time.wave | 18 ++-- std/sys/linux/tty.wave | 18 ++-- std/sys/macos/env.wave | 18 ++-- std/sys/macos/fs.wave | 18 ++-- std/sys/macos/memory.wave | 18 ++-- std/sys/macos/process.wave | 18 ++-- std/sys/macos/socket.wave | 18 ++-- std/sys/macos/syscall.wave | 18 ++-- std/sys/macos/time.wave | 18 ++-- std/sys/macos/tty.wave | 18 ++-- std/sys/memory.wave | 18 ++-- std/sys/process.wave | 18 ++-- std/sys/socket.wave | 18 ++-- std/sys/time.wave | 18 ++-- std/sys/tty.wave | 18 ++-- std/time/clock.wave | 18 ++-- std/time/consts.wave | 18 ++-- std/time/diff.wave | 18 ++-- std/time/sleep.wave | 18 ++-- 86 files changed, 1190 insertions(+), 483 deletions(-) create mode 100644 std/LICENSE diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1ed72c16..fd13164f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -184,9 +184,13 @@ Small, focused PRs are preferred. ## 11. License -By contributing to Wave, you agree that your contributions are licensed under: +By contributing to Wave, you agree that your contributions are licensed under +the license governing the part of the repository you modify: -[Mozilla Public License 2.0](LICENSE) +- Contributions outside [`std/`](std/) are licensed under the + [Mozilla Public License 2.0](LICENSE). +- Contributions to the Wave standard library under [`std/`](std/) are licensed + under the [Apache License 2.0](std/LICENSE). --- diff --git a/COPYRIGHT b/COPYRIGHT index 69b15cb9..47ffa323 100644 --- a/COPYRIGHT +++ b/COPYRIGHT @@ -12,5 +12,6 @@ Contributors: Copyright ownership of individual source files is indicated in the file headers. -Unless otherwise noted, all contributions to this project -are licensed under the Mozilla Public License v2.0 (MPL-2.0). +Unless otherwise noted, contributions outside std/ are licensed under the +Mozilla Public License v2.0 (MPL-2.0). Contributions to the Wave standard +library under std/ are licensed under the Apache License 2.0 (Apache-2.0). diff --git a/NOTICE b/NOTICE index 44e9e3c7..1cecb5bd 100644 --- a/NOTICE +++ b/NOTICE @@ -7,10 +7,16 @@ maintained by the Wave Foundation. Copyright (c) 2024–2026 Wave Foundation Copyright (c) 2024–2026 LunaStev and contributors -This project is licensed under the Mozilla Public License v2.0 (MPL-2.0). +The Wave compiler and repository components outside std/ are licensed under +the Mozilla Public License v2.0 (MPL-2.0). + +The Wave standard library under std/ is a separate work licensed under the +Apache License 2.0 (Apache-2.0). See std/LICENSE. Re-implementations of the Wave language specification are permitted. -However, reuse of Wave source files must comply with the terms of the MPL-2.0. +However, reuse of Wave compiler source files must comply with the terms of the +MPL-2.0, while reuse of standard library source files must comply with the +Apache-2.0 license. The names "Wave", "Wave Language", "Wave Compiler", and related project names may be considered trademarks of the Wave Foundation. diff --git a/README.md b/README.md index 65d17b74..abf0697e 100644 --- a/README.md +++ b/README.md @@ -27,8 +27,8 @@ Created by Discord - -License + +Licenses @@ -121,6 +121,16 @@ Contributions are welcome! Please read the [contributing guidelines](CONTRIBUTIN --- +## License + +- The Wave compiler and repository components outside [`std/`](std/) are + licensed under the [Mozilla Public License 2.0](LICENSE). +- The Wave standard library under [`std/`](std/) is licensed separately under + the [Apache License 2.0](std/LICENSE), allowing it to be modified, + redistributed, and embedded in other products under that license. + +--- + ## What can do? Check https://github.com/wavefnd/Wave/issues/328 to see useful programs created with Wave. @@ -135,4 +145,4 @@ Check https://github.com/wavefnd/Wave/issues/328 to see useful programs created --- -

Built with ❤️ by the Wave community
© 2025 Wave Programming Language • LunaStev • Mozilla Public License 2.0

+

Built with ❤️ by the Wave community
© 2025 Wave Programming Language • LunaStev • Compiler: MPL-2.0 • Standard library: Apache-2.0

diff --git a/std/LICENSE b/std/LICENSE new file mode 100644 index 00000000..d6456956 --- /dev/null +++ b/std/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/std/README.md b/std/README.md index 48153c7f..26ac4517 100644 --- a/std/README.md +++ b/std/README.md @@ -2,6 +2,15 @@ This is Wave's standard library. This standard library operates independently of Wave's compiler and is not part of the compiler itself. +## License + +The Wave standard library in this directory is licensed under the +[Apache License 2.0](LICENSE). It may be modified, redistributed, and embedded +in other products under the terms of that license. + +The Wave compiler and other repository components outside `std/` remain +licensed under the repository's [Mozilla Public License 2.0](../LICENSE). + ## Dependency Policy - `std/libc/*` is the only place where `extern(c)` bindings are allowed. diff --git a/std/buffer/alloc.wave b/std/buffer/alloc.wave index 3ba9f3e8..eeb0f56a 100644 --- a/std/buffer/alloc.wave +++ b/std/buffer/alloc.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::mem::alloc"); import("std::mem::ops"); diff --git a/std/buffer/read.wave b/std/buffer/read.wave index cf0f5e98..945d59af 100644 --- a/std/buffer/read.wave +++ b/std/buffer/read.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::buffer::types"); diff --git a/std/buffer/types.wave b/std/buffer/types.wave index 8babea4a..5a159c32 100644 --- a/std/buffer/types.wave +++ b/std/buffer/types.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 struct Buffer { data: ptr; diff --git a/std/buffer/write.wave b/std/buffer/write.wave index 639c1660..d1752474 100644 --- a/std/buffer/write.wave +++ b/std/buffer/write.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::buffer::types"); import("std::buffer::alloc"); diff --git a/std/bytes/endian.wave b/std/bytes/endian.wave index c8830333..b8ea8578 100644 --- a/std/bytes/endian.wave +++ b/std/bytes/endian.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun bytes_swap16(x: i16) -> i16 { let v: i32 = x as i32; diff --git a/std/env/consts.wave b/std/env/consts.wave index 32e1b86a..07ba8885 100644 --- a/std/env/consts.wave +++ b/std/env/consts.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 const ENV_ERR_NOT_FOUND: i64 = -2; const ENV_ERR_NO_SPACE: i64 = -3; diff --git a/std/env/cwd.wave b/std/env/cwd.wave index 8f8d560a..8a79e8ef 100644 --- a/std/env/cwd.wave +++ b/std/env/cwd.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::fs"); diff --git a/std/env/environ.wave b/std/env/environ.wave index c6d2d4b0..fd34ac0f 100644 --- a/std/env/environ.wave +++ b/std/env/environ.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::env"); import("std::env::parse"); diff --git a/std/env/parse.wave b/std/env/parse.wave index e5a18746..49427182 100644 --- a/std/env/parse.wave +++ b/std/env/parse.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun _env_key_len(name: str) -> i64 { let mut n: i64 = 0; diff --git a/std/fs/consts.wave b/std/fs/consts.wave index 2f3c382a..c51484f2 100644 --- a/std/fs/consts.wave +++ b/std/fs/consts.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // unix-style file modes const FS_MODE_USER_RW: i32 = 384; // 0600 diff --git a/std/fs/file.wave b/std/fs/file.wave index 88fdd584..dc0ff2a6 100644 --- a/std/fs/file.wave +++ b/std/fs/file.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::io::consts"); import("std::io::fd"); diff --git a/std/io/consts.wave b/std/io/consts.wave index c02fc5aa..6bd6e20f 100644 --- a/std/io/consts.wave +++ b/std/io/consts.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 const IO_STDIN_FD: i64 = 0; const IO_STDOUT_FD: i64 = 1; diff --git a/std/io/fd.wave b/std/io/fd.wave index 2cb1db62..3d35df65 100644 --- a/std/io/fd.wave +++ b/std/io/fd.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::io::consts"); import("std::sys::fs"); diff --git a/std/libc/arpa.wave b/std/libc/arpa.wave index 58f39134..35e5431c 100644 --- a/std/libc/arpa.wave +++ b/std/libc/arpa.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 extern(c) { fun inet_addr(cp: ptr) -> i32; diff --git a/std/libc/errno.wave b/std/libc/errno.wave index 16952feb..6ce7b660 100644 --- a/std/libc/errno.wave +++ b/std/libc/errno.wave @@ -2,12 +2,18 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 extern(c) fun __errno_location() -> ptr; diff --git a/std/libc/netinet.wave b/std/libc/netinet.wave index 08260bc2..7da3cee8 100644 --- a/std/libc/netinet.wave +++ b/std/libc/netinet.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // sockaddr_in (IPv4) struct SockAddrIn { diff --git a/std/libc/poll.wave b/std/libc/poll.wave index 8f9ad64c..9e1cfb3c 100644 --- a/std/libc/poll.wave +++ b/std/libc/poll.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // poll events const POLLIN: i16 = 0x001; diff --git a/std/libc/socket.wave b/std/libc/socket.wave index f31d8400..eb607ad0 100644 --- a/std/libc/socket.wave +++ b/std/libc/socket.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // address families const AF_INET: i32 = 2; diff --git a/std/libc/stdio.wave b/std/libc/stdio.wave index aa514a3a..d2db845d 100644 --- a/std/libc/stdio.wave +++ b/std/libc/stdio.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 extern(c) { fun puts(s: ptr) -> i32; diff --git a/std/libc/stdlib.wave b/std/libc/stdlib.wave index c33a19fb..febd1d96 100644 --- a/std/libc/stdlib.wave +++ b/std/libc/stdlib.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 extern(c) fun malloc(size: i64) -> ptr; extern(c) fun calloc(count: i64, size: i64) -> ptr; diff --git a/std/libc/string.wave b/std/libc/string.wave index 27a6dc46..c94faa89 100644 --- a/std/libc/string.wave +++ b/std/libc/string.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 extern(c) fun strlen(s: ptr) -> i64; extern(c) fun strcmp(a: ptr, b: ptr) -> i32; diff --git a/std/libc/time.wave b/std/libc/time.wave index 61741177..9ba9dbf1 100644 --- a/std/libc/time.wave +++ b/std/libc/time.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 struct TimeSpec { sec: i64; diff --git a/std/libc/unistd.wave b/std/libc/unistd.wave index 510c0075..5904f1c5 100644 --- a/std/libc/unistd.wave +++ b/std/libc/unistd.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 extern(c) fun read(fd: i32, buf: ptr, count: i64) -> i64; extern(c) fun write(fd: i32, buf: ptr, count: i64) -> i64; diff --git a/std/manifest.json b/std/manifest.json index 870a8864..352d557b 100644 --- a/std/manifest.json +++ b/std/manifest.json @@ -1,5 +1,6 @@ { "name": "std", "format": 1, + "license": "Apache-2.0", "modules": ["string", "math", "sys", "net", "libc", "time", "env", "path", "mem", "buffer", "io", "fs", "bytes", "process"] } diff --git a/std/math/bits.wave b/std/math/bits.wave index 9a831d21..b3919748 100644 --- a/std/math/bits.wave +++ b/std/math/bits.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun is_pow2(x: i32) -> bool { if (x <= 0) { diff --git a/std/math/float.wave b/std/math/float.wave index 4c53d3e6..c4a864f1 100644 --- a/std/math/float.wave +++ b/std/math/float.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::math::int"); diff --git a/std/math/int.wave b/std/math/int.wave index 6f341083..c085338a 100644 --- a/std/math/int.wave +++ b/std/math/int.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun num_abs(x: T, zero: T) -> T { if (x < zero) { diff --git a/std/math/num.wave b/std/math/num.wave index c84e6a49..4b8121ca 100644 --- a/std/math/num.wave +++ b/std/math/num.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun gcd(a0: i32, b0: i32) -> i32 { let mut a: i32 = a0; diff --git a/std/math/trig.wave b/std/math/trig.wave index 76b9fcf2..73b5eadd 100644 --- a/std/math/trig.wave +++ b/std/math/trig.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::math::int"); diff --git a/std/mem/alloc.wave b/std/mem/alloc.wave index 1a77cb7f..0fefe185 100644 --- a/std/mem/alloc.wave +++ b/std/mem/alloc.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::memory"); import("std::mem::consts"); diff --git a/std/mem/consts.wave b/std/mem/consts.wave index 74e74be2..5aa18127 100644 --- a/std/mem/consts.wave +++ b/std/mem/consts.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 const MEM_PROT_READ: i64 = 1; const MEM_PROT_WRITE: i64 = 2; diff --git a/std/mem/cstr.wave b/std/mem/cstr.wave index 01a4a0ef..fa0b4fce 100644 --- a/std/mem/cstr.wave +++ b/std/mem/cstr.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun mem_len_cstr(s: str) -> i64 { let mut i: i64 = 0; diff --git a/std/mem/ops.wave b/std/mem/ops.wave index 6fb8d691..2ffb403d 100644 --- a/std/mem/ops.wave +++ b/std/mem/ops.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::mem::consts"); diff --git a/std/net/address.wave b/std/net/address.wave index acd07ac7..373c1f6d 100644 --- a/std/net/address.wave +++ b/std/net/address.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::socket"); diff --git a/std/net/poll.wave b/std/net/poll.wave index 6baf1cdc..197ae011 100644 --- a/std/net/poll.wave +++ b/std/net/poll.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::socket"); diff --git a/std/net/socket_base.wave b/std/net/socket_base.wave index 5147aaa1..f7072148 100644 --- a/std/net/socket_base.wave +++ b/std/net/socket_base.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::socket"); import("std::sys::fs"); diff --git a/std/net/socketopt.wave b/std/net/socketopt.wave index 106f360f..0be5faab 100644 --- a/std/net/socketopt.wave +++ b/std/net/socketopt.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::fs"); import("std::sys::socket"); diff --git a/std/net/tcp.wave b/std/net/tcp.wave index e7f9f7b2..abe8d06b 100644 --- a/std/net/tcp.wave +++ b/std/net/tcp.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::socket"); import("std::net::address"); diff --git a/std/net/udp.wave b/std/net/udp.wave index aa8aebef..4f29e157 100644 --- a/std/net/udp.wave +++ b/std/net/udp.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::socket"); import("std::net::address"); diff --git a/std/path/analyze.wave b/std/path/analyze.wave index deb54494..c8beccfb 100644 --- a/std/path/analyze.wave +++ b/std/path/analyze.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::path::core"); diff --git a/std/path/consts.wave b/std/path/consts.wave index 7714a2ae..3e82e548 100644 --- a/std/path/consts.wave +++ b/std/path/consts.wave @@ -2,12 +2,18 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 const PATH_ERR_NO_SPACE: i32 = -1; diff --git a/std/path/copy.wave b/std/path/copy.wave index 75e2883a..83695fbb 100644 --- a/std/path/copy.wave +++ b/std/path/copy.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::path::core"); import("std::path::analyze"); diff --git a/std/path/core.wave b/std/path/core.wave index d61b933a..62a479a4 100644 --- a/std/path/core.wave +++ b/std/path/core.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun path_is_sep(c: u8) -> bool { if (c == 47) { diff --git a/std/process/consts.wave b/std/process/consts.wave index ec498f90..ae1282bd 100644 --- a/std/process/consts.wave +++ b/std/process/consts.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 const PROC_ERR_INTR: i64 = -4; diff --git a/std/process/core.wave b/std/process/core.wave index 4056ecfa..d1e19b4f 100644 --- a/std/process/core.wave +++ b/std/process/core.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::process::consts"); import("std::sys::process"); diff --git a/std/process/spawn.wave b/std/process/spawn.wave index 2fb71c75..b14a86f1 100644 --- a/std/process/spawn.wave +++ b/std/process/spawn.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::io::consts"); import("std::io::fd"); diff --git a/std/process/wait.wave b/std/process/wait.wave index 9a324292..f1543d96 100644 --- a/std/process/wait.wave +++ b/std/process/wait.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::process::consts"); import("std::process::core"); diff --git a/std/string/ascii.wave b/std/string/ascii.wave index 50718758..6222a285 100644 --- a/std/string/ascii.wave +++ b/std/string/ascii.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun is_digit(c: u8) -> bool { if (c >= 48 && c <= 57) { diff --git a/std/string/cmp.wave b/std/string/cmp.wave index 4eedf9da..6ae9c4e9 100644 --- a/std/string/cmp.wave +++ b/std/string/cmp.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun eq(a: str, b: str) -> bool { let mut i: i32 = 0; diff --git a/std/string/find.wave b/std/string/find.wave index a70c4213..4f95de2a 100644 --- a/std/string/find.wave +++ b/std/string/find.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun find_char(s: str, c: u8) -> i32 { let mut i: i32 = 0; diff --git a/std/string/hash.wave b/std/string/hash.wave index cff9bc5d..75004dd7 100644 --- a/std/string/hash.wave +++ b/std/string/hash.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun djb2_32(s: str) -> i32 { let mut h: i32 = 5381; diff --git a/std/string/len.wave b/std/string/len.wave index a7547a1b..c789b657 100644 --- a/std/string/len.wave +++ b/std/string/len.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun len(s: str) -> i32 { let mut i: i32 = 0; diff --git a/std/string/trim.wave b/std/string/trim.wave index 56ba8176..871acaa6 100644 --- a/std/string/trim.wave +++ b/std/string/trim.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 fun trim_left_index(s: str) -> i32 { let mut i: i32 = 0; diff --git a/std/sys/env.wave b/std/sys/env.wave index bd5b444a..fb01c5ba 100644 --- a/std/sys/env.wave +++ b/std/sys/env.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Environment sys dispatcher diff --git a/std/sys/fs.wave b/std/sys/fs.wave index 0fed06d2..e4610ccc 100644 --- a/std/sys/fs.wave +++ b/std/sys/fs.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Filesystem sys dispatcher diff --git a/std/sys/linux/env.wave b/std/sys/linux/env.wave index 4bf02c79..950b5981 100644 --- a/std/sys/linux/env.wave +++ b/std/sys/linux/env.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::linux::fs"); diff --git a/std/sys/linux/fs.wave b/std/sys/linux/fs.wave index 37805d53..7b919980 100644 --- a/std/sys/linux/fs.wave +++ b/std/sys/linux/fs.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 filesystem syscalls diff --git a/std/sys/linux/memory.wave b/std/sys/linux/memory.wave index 8c168523..9e5a0557 100644 --- a/std/sys/linux/memory.wave +++ b/std/sys/linux/memory.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 memory syscalls diff --git a/std/sys/linux/process.wave b/std/sys/linux/process.wave index f2dc897f..8e5ba6cd 100644 --- a/std/sys/linux/process.wave +++ b/std/sys/linux/process.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 process syscalls diff --git a/std/sys/linux/socket.wave b/std/sys/linux/socket.wave index d2ccb197..3f028062 100644 --- a/std/sys/linux/socket.wave +++ b/std/sys/linux/socket.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 socket syscalls diff --git a/std/sys/linux/syscall.wave b/std/sys/linux/syscall.wave index c1070e20..7cd26d49 100644 --- a/std/sys/linux/syscall.wave +++ b/std/sys/linux/syscall.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 syscall interface for Wave diff --git a/std/sys/linux/time.wave b/std/sys/linux/time.wave index 79225e45..f17dc46f 100644 --- a/std/sys/linux/time.wave +++ b/std/sys/linux/time.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 time-related syscalls diff --git a/std/sys/linux/tty.wave b/std/sys/linux/tty.wave index b46fb58e..efb698d6 100644 --- a/std/sys/linux/tty.wave +++ b/std/sys/linux/tty.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Linux x86_64 tty helpers diff --git a/std/sys/macos/env.wave b/std/sys/macos/env.wave index 2cb6448a..0d02880e 100644 --- a/std/sys/macos/env.wave +++ b/std/sys/macos/env.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ENOSYS-style return for not implemented path. const ERR_NOT_IMPLEMENTED: i64 = -38; diff --git a/std/sys/macos/fs.wave b/std/sys/macos/fs.wave index 76707d3d..f3fd3b15 100644 --- a/std/sys/macos/fs.wave +++ b/std/sys/macos/fs.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS filesystem syscalls diff --git a/std/sys/macos/memory.wave b/std/sys/macos/memory.wave index 8bf5ad1e..55407258 100644 --- a/std/sys/macos/memory.wave +++ b/std/sys/macos/memory.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS memory syscalls diff --git a/std/sys/macos/process.wave b/std/sys/macos/process.wave index b237d5e4..6e214c1f 100644 --- a/std/sys/macos/process.wave +++ b/std/sys/macos/process.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS process syscalls diff --git a/std/sys/macos/socket.wave b/std/sys/macos/socket.wave index c3ce4ce3..d30fff40 100644 --- a/std/sys/macos/socket.wave +++ b/std/sys/macos/socket.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS socket syscalls diff --git a/std/sys/macos/syscall.wave b/std/sys/macos/syscall.wave index d5c60792..e804505d 100644 --- a/std/sys/macos/syscall.wave +++ b/std/sys/macos/syscall.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS x86_64 syscall entry helpers diff --git a/std/sys/macos/time.wave b/std/sys/macos/time.wave index be8a8dcd..39c9ee4c 100644 --- a/std/sys/macos/time.wave +++ b/std/sys/macos/time.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS time syscalls diff --git a/std/sys/macos/tty.wave b/std/sys/macos/tty.wave index 9b915330..97fcde96 100644 --- a/std/sys/macos/tty.wave +++ b/std/sys/macos/tty.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // macOS tty helpers diff --git a/std/sys/memory.wave b/std/sys/memory.wave index 4c9d854c..4911c443 100644 --- a/std/sys/memory.wave +++ b/std/sys/memory.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Memory sys dispatcher diff --git a/std/sys/process.wave b/std/sys/process.wave index dc352876..a748f8d6 100644 --- a/std/sys/process.wave +++ b/std/sys/process.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Process sys dispatcher diff --git a/std/sys/socket.wave b/std/sys/socket.wave index e6c04999..3eefffc5 100644 --- a/std/sys/socket.wave +++ b/std/sys/socket.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Socket sys dispatcher diff --git a/std/sys/time.wave b/std/sys/time.wave index c9d9b1f7..3714a3bc 100644 --- a/std/sys/time.wave +++ b/std/sys/time.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // Time sys dispatcher diff --git a/std/sys/tty.wave b/std/sys/tty.wave index 79f18100..5a893a81 100644 --- a/std/sys/tty.wave +++ b/std/sys/tty.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 // ======================================================= // TTY sys dispatcher diff --git a/std/time/clock.wave b/std/time/clock.wave index a5c34ced..75ae6236 100644 --- a/std/time/clock.wave +++ b/std/time/clock.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::time"); diff --git a/std/time/consts.wave b/std/time/consts.wave index dfe76479..621cd499 100644 --- a/std/time/consts.wave +++ b/std/time/consts.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 const TIME_CLOCK_REALTIME: i32 = 0; const TIME_CLOCK_MONOTONIC: i32 = 1; diff --git a/std/time/diff.wave b/std/time/diff.wave index a46df6e9..dc740959 100644 --- a/std/time/diff.wave +++ b/std/time/diff.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::time"); diff --git a/std/time/sleep.wave b/std/time/sleep.wave index 190256ee..6eff822d 100644 --- a/std/time/sleep.wave +++ b/std/time/sleep.wave @@ -2,13 +2,19 @@ // Copyright (c) 2024-2026 Wave Foundation // Copyright (c) 2024-2026 LunaStev and contributors // -// This Source Code Form is subject to the terms of the -// Mozilla Public License, v. 2.0. -// If a copy of the MPL was not distributed with this file, -// You can obtain one at https://mozilla.org/MPL/2.0/. +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at // -// SPDX-License-Identifier: MPL-2.0 -// AI TRAINING NOTICE: Prohibited without prior written permission. No use for machine learning or generative AI training, fine-tuning, distillation, embedding, or dataset creation. +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// SPDX-License-Identifier: Apache-2.0 import("std::sys::time");