| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Merge pull request #5859 from odin-lang/bill/change-licensedev-2025-11 | gingerBill | 2025-11-04 | 6 | -6/+6 |
| |\ | | | | | Change Odin's LICENSE to zlib from BSD 3-clause | ||||
| | * | Remove unneeded newlines | gingerBill | 2025-10-28 | 1 | -4/+0 |
| | | | |||||
| | * | Change Odin's LICENSE to zlib from BSD 3-clause | gingerBill | 2025-10-28 | 6 | -6/+10 |
| | | | | | | | | | This change was made in order to allow things produced with Odin and using Odin's core library, to not require the LICENSE to also be distributed alongside the binary form. | ||||
| * | | Add `inject_at_soa` and `append_nothing_soa` procedures | thetarnav | 2025-11-02 | 1 | -0/+59 |
| |/ | |||||
| * | [core:hash] Add CCITT CRC-16 | Jeroen van Rijn | 2025-10-21 | 1 | -0/+19 |
| | | |||||
| * | core:math/bits: Finish docs, add `bitfield_extract` + `bitfield_insert` test. | Jeroen van Rijn | 2025-10-14 | 1 | -0/+23 |
| | | |||||
| * | core:math/bits: Add docs + tests for `rotate_left*` and `log2` | Jeroen van Rijn | 2025-10-14 | 2 | -0/+149 |
| | | |||||
| * | Increase timeout for `posix.test_pthreads`. | Jeroen van Rijn | 2025-10-10 | 1 | -3/+3 |
| | | |||||
| * | Package lines for base32, move its tests to tests" | Jeroen van Rijn | 2025-10-09 | 2 | -0/+232 |
| | | |||||
| * | Fix test inet_pton call in test_arpa_inet | Harold Brenes | 2025-09-29 | 1 | -1/+1 |
| | | |||||
| * | Merge pull request #5691 from rationalcoder/master | gingerBill | 2025-09-26 | 1 | -7/+8 |
| |\ | | | | | Fix out-of-band allocations in dynamic arenas | ||||
| | * | Fix out-of-band allocations in dynamic arenas | rationalcoder | 2025-09-16 | 1 | -7/+8 |
| | | | |||||
| * | | Merge pull request #5686 from thetarnav/zero-small-array-resize | gingerBill | 2025-09-26 | 1 | -0/+22 |
| |\ \ | | | | | | | Zero small array resize | ||||
| | * | | Add small array resize tests | Damian Tarnawski | 2025-09-15 | 1 | -0/+22 |
| | |/ | |||||
| * | | Fix memory leaks in type inference test | Tohei Ichikawa | 2025-09-24 | 1 | -11/+25 |
| | | | |||||
| * | | Fix test_proc_group_type_inference.odin | Tohei Ichikawa | 2025-09-24 | 1 | -11/+11 |
| | | | |||||
| * | | Improve type inferencing of literals when calling proc groups | Tohei Ichikawa | 2025-09-15 | 1 | -0/+142 |
| |/ | |||||
| * | Expand grayscale JPEGs to RGB(A) | Jeroen van Rijn | 2025-09-09 | 3 | -0/+11 |
| | | | | | And handle grayscale jpeg example file in test suite. | ||||
| * | Implement .alpha_add_if_missing for JPEG | Jeroen van Rijn | 2025-09-09 | 1 | -13/+13 |
| | | |||||
| * | Optionally save BMP | Jeroen van Rijn | 2025-09-09 | 1 | -6/+7 |
| | | |||||
| * | Make progressive JPEGs return a proper error | Jeroen van Rijn | 2025-09-09 | 2 | -269/+276 |
| | | | | | | | Add progressive JPEG file to test suite and test that loading it returns the expected `Unsupported_Frame_Type` error. This JPEG variant will hopefully be supported in the future, but we should at least return an error rather than use `unsupported()`. | ||||
| * | Add JPG test assets to .gitignore | Jeroen van Rijn | 2025-09-08 | 1 | -0/+1 |
| | | |||||
| * | Add basic test for JPG using Odin emblem | Jeroen van Rijn | 2025-09-08 | 2 | -2/+52 |
| | | |||||
| * | Add missing test attr and don't zero memory when reserve already did | Damian Tarnawski | 2025-08-26 | 1 | -0/+1 |
| | | |||||
| * | Merge branch 'master' into soa-resize-zero-memory | gingerBill | 2025-08-26 | 1 | -0/+78 |
| |\ | |||||
| | * | More soa tests | Damian Tarnawski | 2025-08-24 | 1 | -36/+59 |
| | | | |||||
| | * | Avoid overlap issues when correcting memory after resize in _reserve_soa | Damian Tarnawski | 2025-08-23 | 1 | -14/+44 |
| | | | |||||
| | * | Support using allocator resize in `_reserve_soa` (fixes #5615) | Damian Tarnawski | 2025-08-23 | 1 | -0/+26 |
| | | | |||||
| * | | Zero existing memory when using resize_soa (fixes #5614) | Damian Tarnawski | 2025-08-23 | 1 | -0/+34 |
| |/ | |||||
| * | Fix test for global procedure initialization | gingerBill | 2025-08-08 | 1 | -1/+1 |
| | | |||||
| * | Fix typo | gingerBill | 2025-08-08 | 1 | -2/+2 |
| | | |||||
| * | Fix more procedure to be `contextless` | gingerBill | 2025-08-08 | 2 | -3/+3 |
| | | |||||
| * | Fix tests for UTF-16 strings | gingerBill | 2025-08-02 | 3 | -4/+5 |
| | | |||||
| * | Remove unneeded uses of `intrinsics.constant_utf16_cstring` | gingerBill | 2025-08-02 | 2 | -3/+3 |
| | | |||||
| * | Fix #5498 | Jeroen van Rijn | 2025-07-25 | 2 | -105/+335 |
| | | | | | | | Also: - Expands `tests/core/hash` - Fixes bug found in `#hash(s, "murmur64")` | ||||
| * | Fix Linux-specific optimized test failure | Feoramund | 2025-07-22 | 1 | -4/+9 |
| | | | | | | | | | The stack was not aligned as expected for `buddy_allocator_init` when `-o:speed` was enabled, making this a test failure that only appeared with optimizations enabled. The data is now aligned specifically, as it should be. | ||||
| * | Add intrinsics.type_enum_is_contiguous test | FourteenBrush | 2025-07-11 | 1 | -0/+24 |
| | | |||||
| * | Fix #5452 | Jeroen van Rijn | 2025-07-11 | 1 | -0/+33 |
| | | |||||
| * | Add to `tests/internal` | Jeroen van Rijn | 2025-06-26 | 1 | -0/+34 |
| | | | | | Turn repro code into a proper test, and delete superfluous files from Odin root. | ||||
| * | Remove altogether. | Jeroen van Rijn | 2025-06-24 | 1 | -16/+1 |
| | | |||||
| * | Disable two tests under core/sys/posix. | Jeroen van Rijn | 2025-06-24 | 1 | -0/+10 |
| | | |||||
| * | Fix issue parsing `vendor/stb/image` with the `core:odin/parser` parser | Brad Lewis | 2025-06-22 | 1 | -0/+28 |
| | | |||||
| * | Fix early join after start. | Jeroen van Rijn | 2025-06-21 | 2 | -21/+21 |
| | | |||||
| * | uncomment test, see if it's fixed | Laytan Laats | 2025-06-20 | 1 | -3/+0 |
| | | |||||
| * | Merge pull request #5329 from JackMordaunt/jfm-fix_chan_try_send | Laytan | 2025-06-20 | 1 | -47/+272 |
| |\ | | | | | chan: fix try_send and send | ||||
| | * | tests/core/sync/chan: test concurrent send/close/recv | Jack Mordaunt | 2025-06-13 | 1 | -0/+55 |
| | | | | | | | | | | | | | This test is designed to ensure that a call to send will always correctly report whether the value was transmitted. If recv wins, a close call should not be able to intercept the send thread. | ||||
| | * | core/sync/chan.send: return false if channel is closed while blocked | Jack Mordaunt | 2025-06-12 | 1 | -0/+44 |
| | | | | | | | | | | | | | | | | | | | | | | | | | This commit makes send behave the same as recv: that the call will return false if the channel is closed while a thread is waiting on the blocking operation. Prior logic would have send return true even if the channel was actually closed rather than read from. Docs adjusted to make this clear. Tests added to lock in this behaviour. | ||||
| | * | tests/core/sync/chan: add test for contended try_send | Jack Mordaunt | 2025-06-12 | 1 | -0/+149 |
| | | | | | | | | | | | | | This test ensures that contending threads racing to try_send against a single blocking read will result in exactly one winner without any senders blocking. | ||||
| | * | core/sync/chan.try_send: avoid blocking if no reader is available | Jack Mordaunt | 2025-06-12 | 1 | -44/+17 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the semantics of try_send to be consistently non-blocking. That is, if the buffered is full OR there are no readers it returns false. The previous behaviour was such that it would block in the latter case of no reader, and it would wait for a reader. That is problematic because it produces inconsistent behaviour between buffered and unbuffered channels which is astonishing and adds complexity to the caller. To illustrate the problem with the old behaviour, consider the try_select operation: if a send-channel happens to be unbuffered the try_select (which wants to never block) can now block, that unbuffered send channel is selected (at random) and there is no reader on the other side. Thus we have unpredictable blocking behaviour, which breaks the guarantee that try_select never blocks. If you want a blocking send you can just call "send" (the blocking variant). In addition, there is some reader/writer math done inside can_{send,recv} such that they only report true if there is sufficient reader/writer capacity. If there is contention we need to ensure that each reader is paired to exactly one writer. Consider try_send: if there is a single reader we can send. If there is a single reader and a single writer, then we cannot send, as that reader will be paired with the existing writer. Therefore can_send is only true if there are more readers than writers at the time of check. NOTE: The original tests don't need to use wait-looping with thread.yield() or heuristic sleep. Instead we can just use blocking channel operations rather than non-blocking operations. | ||||
| | * | test/core/sync/chan: serialize try_select tests | Jack Mordaunt | 2025-06-12 | 1 | -3/+7 |
| | | | | | | | | | | | | | These tests will race access to __global_context_for_test, which can cause the test suite to flake. Even though only a single test actually references the variable, the logic in try_select consumes it. | ||||