Jeroen van Rijn and GitHub
1761802330
Merge pull request #4062 from laytan/fix-switch-over-internal-pointer-union
...
fix type switching over internal pointer union
2024-08-12 00:25:47 +02:00
Jeroen van Rijn and GitHub
8a67221bd4
Merge pull request #4057 from asibahi/patch-1
...
typo fix
2024-08-11 13:35:10 +02:00
Jeroen van Rijn and GitHub
e226d37803
Merge pull request #4023 from Feoramund/simd-index
...
Vectorize `index_byte`
2024-08-10 21:01:41 +02:00
Jeroen van Rijn
1242b6e82f
Improve slice.binary_search_by
2024-08-10 18:26:59 +02:00
Jeroen van Rijn and GitHub
9759d56c81
Merge pull request #4003 from Yawning/feature/crypto-improvements
...
core:crypto: Various improvements
2024-08-10 17:17:00 +02:00
Jeroen van Rijn
bf53d2f6db
Fix time.precise_clock on 32-bit platforms.
2024-08-10 12:44:40 +02:00
Jeroen van Rijn
d267735d99
Fixed time.precise_clock
2024-08-10 12:35:58 +02:00
Jeroen van Rijn
be7a1f671c
Revert "Add time.precise_clock_from_time + time.precise_clock_from_duration"
...
This reverts commit c9ca192f33 .
2024-08-10 03:26:09 +02:00
Jeroen van Rijn
c9ca192f33
Add time.precise_clock_from_time + time.precise_clock_from_duration
2024-08-10 03:23:08 +02:00
Jeroen van Rijn
c5ed7083d2
Disable NetBSD CI
2024-08-09 19:44:51 +02:00
Jeroen van Rijn
d69e0bfa00
NetBSD vm fix.
2024-08-09 19:37:26 +02:00
Jeroen van Rijn
fa6f343261
Remove unused import.
2024-08-09 19:06:50 +02:00
Jeroen van Rijn and GitHub
cc24d2de3e
Merge pull request #3810 from Feoramund/freebsd-core-net
...
Port `core:net` to FreeBSD
2024-08-09 09:50:05 +02:00
Jeroen van Rijn
bc6deab175
echo -> printf for build_odin.sh message
2024-08-09 09:46:45 +02:00
Jeroen van Rijn and GitHub
1e09ff3b2e
Merge pull request #4043 from Kelimion/expect_leak_or_bad_free
...
Allow testing for intentional leaks in test runner
2024-08-08 21:40:17 +02:00
Jeroen van Rijn
933f9f9bd1
Enable test leak = fatal on CI.
2024-08-08 21:31:30 +02:00
Jeroen van Rijn
b82cfc5f15
Fix shoco heisenleak
2024-08-08 21:15:59 +02:00
Jeroen van Rijn
a05b73c632
Keep -vet happy when mem tracking is disabled.
2024-08-08 21:02:35 +02:00
Jeroen van Rijn
4d27898418
Use test runner's own tracking allocator.
2024-08-08 20:58:25 +02:00
Jeroen van Rijn
80d1e1ba82
Allow testing for intentional leaks in test runner
...
Adds `expect_leak_or_bad_free :: proc(t: ^T, client_test: proc(t: ^T), verifier: Memory_Verifier_Proc)`.
It sets up its own `Tracking_Allocator`, runs the `client_test`, and then calls the `verifier` procedure.
The verifier can then inspect the contents of the tracking allocator and call `testing.expect*` as sensible for the test in question.
Any allocations are then cleared so that the test runner doesn't itself complain about leaks.
Additionally, `ODIN_TEST_LOG_LEVEL_MEMORY` has been added as a define to set the severity of the test runner's memory tracker. You can use `-define:ODIN_TEST_LOG_LEVEL_MEMORY=error` to make tests fail rather than warn if leaks or bad frees have been found.
2024-08-08 20:41:32 +02:00
Jeroen van Rijn and GitHub
f328929939
Merge pull request #4038 from Hyrtwol/core-sys-windows-rawinput-code
...
Core sys windows rawinput code
2024-08-08 18:23:02 +02:00
Jeroen van Rijn
94c62fb630
Fix typo.
2024-08-08 18:01:09 +02:00
Jeroen van Rijn and GitHub
a7fe9eec73
Merge pull request #4037 from Kelimion/symlink_test
...
Allow symlink test to work irrespective of git settings.
2024-08-08 17:56:05 +02:00
Jeroen van Rijn
d93f3c63d8
Rename package to test_core_os to fit with the rest of test_*
2024-08-08 17:49:08 +02:00
Jeroen van Rijn
ada3df303e
Allow symlink test to work irrespective of git settings.
2024-08-08 17:46:00 +02:00
Jeroen van Rijn and GitHub
4b9ca39522
Merge pull request #4035 from karl-zylinski/build-release-hint
...
Added a hint at end of build.bat about release mode when building in debug mode
2024-08-08 14:48:48 +02:00
Jeroen van Rijn
796feeead9
Remove LLVM copy from nightly.
2024-08-07 22:12:23 +02:00
Jeroen van Rijn
2bf055ec6e
Delete empty file after access check.
2024-08-07 19:38:36 +02:00
Jeroen van Rijn
69a15ca5b6
Don't copy LLVM shared object on Linux
...
We copy the LLVM shared object when building Odin on Linux. Contrary the comment in `build_odin.sh`,
this is unnecessary, and Odin can be compiled and itself compile things just fine without this step.
This is then packaged up at release and leads to #4019 and #4033 . The Linux release builds are built
on Ubuntu and not strictly supported on other Linux distributions. Building from source is preferred.
2024-08-07 14:50:45 +02:00
Jeroen van Rijn
17ebaffce8
Update comment.
2024-08-05 22:12:22 +02:00
Jeroen van Rijn
4902288a5a
Add reflect.struct_field_count that returns the number of fields in a struct type
...
Example:
```odin
package struct_count_example
import "core:fmt"
import "core:reflect"
import "core:dynlib"
Foo :: struct{
one: int,
two: f32,
}
Bar :: struct {
three: int,
four: bool,
five: f64,
}
Game_Api :: struct {
init: proc(api: ^Game_Api),
update: proc(api: ^Game_Api),
using foo: Foo,
bar: Bar,
// Private stuff
reload_count: int,
__handle: rawptr,
}
API_PRIVATE_COUNT :: 2
game_api: Game_Api
main :: proc() {
fmt.printfln("Game_Api, .Top: %v", reflect.struct_field_count(Game_Api)) // 6
fmt.printfln("Game_Api, .Using: %v", reflect.struct_field_count(Game_Api, .Using)) // 8
fmt.printfln("Game_Api, .Recursive: %v", reflect.struct_field_count(Game_Api, .Recursive)) // 11
symbols_loaded, _ := dynlib.initialize_symbols(&game_api, "game.dll")
symbols_expected := reflect.struct_field_count(Game_Api) - API_PRIVATE_COUNT
if symbols_loaded == -1 {
fmt.eprintln("Couldn't load game.dll")
return
} else if symbols_loaded != symbols_expected {
fmt.eprintfln("Expected %v symbols, got %v", symbols_expected, symbols_loaded)
return
}
}
```
2024-08-05 22:04:16 +02:00
Jeroen van Rijn and GitHub
2cc3795686
Merge pull request #4027 from karl-zylinski/blend-pixel-compile-fix
...
Fix for blend_pixel.odin in core/image/common.odin not compiling
2024-08-05 17:38:30 +02:00
Jeroen van Rijn
6175efde3d
Fix crash if referencing import "aliased" in other file.
...
Fixes #4026
2024-08-05 17:23:50 +02:00
Jeroen van Rijn and GitHub
030220eb22
Merge pull request #4025 from karl-zylinski/patch-2
...
core/image/common.odin compile fix
2024-08-05 16:42:09 +02:00
Jeroen van Rijn
90e573c54a
Add image.premultiply_alpha helper.
2024-08-03 12:58:43 +02:00
Jeroen van Rijn
1a16585b10
Add image.pixels_to_image helper.
2024-08-02 14:54:52 +02:00
Jeroen van Rijn and GitHub
8e8660fdfc
Merge pull request #4007 from marcosantos98/fix-wasm
...
Fix: compilation error when using BufferSubDataSlice in webgl package
2024-08-02 12:31:23 +02:00
Jeroen van Rijn
0fa62937d5
Fix NetBSD CI
2024-07-31 20:19:13 +02:00
Jeroen van Rijn
f627a38b4f
Update rand.reset() example.
2024-07-31 20:00:55 +02:00
Jeroen van Rijn and GitHub
cc8c2f236b
Merge pull request #4002 from thetarnav/update-builtin-constants
...
Update comments for builtin constants
2024-07-31 19:47:01 +02:00
Jeroen van Rijn
fdfe6b00e0
Improve output path checking
...
Fixes #4001
2024-07-31 15:16:09 +02:00
Jeroen van Rijn
24e6f16f4a
Clamp dot in angle_between to avoid precision errors.
...
Fixes #3978
2024-07-28 15:00:29 +02:00
Jeroen van Rijn and GitHub
cb31df34c1
Merge pull request #3362 from Hyrtwol/sys-windows-2
...
core/sys/windows part 2
2024-07-26 14:29:56 +02:00
Jeroen van Rijn and GitHub
4e194d5dbd
Merge pull request #3980 from Kelimion/format-time
...
Add `time.to_string*` formatters.
2024-07-25 21:09:51 +02:00
Jeroen van Rijn
00c6b83537
Use constants in example.
2024-07-25 21:02:38 +02:00
Jeroen van Rijn
ca7d86084e
Improve docs.
2024-07-25 20:58:47 +02:00
Jeroen van Rijn
9088a493d9
Add time.to_string* formatters.
2024-07-25 19:43:42 +02:00
Jeroen van Rijn
4ff62994bf
Add CLSCTX_ALL
2024-07-24 22:54:17 +02:00
Jeroen van Rijn and GitHub
33d6677514
Merge pull request #3951 from Kelimion/lua_test
...
Add Lua example to `vendor:lua` as well as basic tests.
2024-07-24 17:50:49 +02:00
Jeroen van Rijn
8d6ff51922
Copy lua54.dll during CI test
2024-07-24 17:43:51 +02:00
Jeroen van Rijn and GitHub
da80c51195
Merge pull request #3966 from KyleNBurke/sys-windows-add-type
...
Add `NCCALCSIZE_PARAMS` to `sys/windows`
2024-07-23 07:45:44 +02:00
Jeroen van Rijn
9cad8179b7
Clarify core:time Unix timestamp
2024-07-22 20:00:25 +02:00
Jeroen van Rijn and GitHub
ccf8b2764d
Create README.md
2024-07-22 18:00:57 +02:00
Jeroen van Rijn
07d2aba310
Simplify exe path check.
2024-07-22 16:36:21 +02:00
Jeroen van Rijn and GitHub
4889641af4
Merge pull request #3959 from Kelimion/fix-output-is-directory-check
...
Fix .exe path is directory check.
2024-07-22 16:22:17 +02:00
Jeroen van Rijn
90a4d12b30
Fix .exe path is directory check.
2024-07-22 16:11:33 +02:00
Jeroen van Rijn and GitHub
a39b6de18c
Merge pull request #3958 from Kelimion/fix-3473
...
Fix #3473
2024-07-22 15:41:39 +02:00
Jeroen van Rijn
39657e4d96
Fix #3473
...
Fix the problem where the initial package's directory name ended in .odin.
2024-07-22 15:15:51 +02:00
Jeroen van Rijn and GitHub
51733fce68
Merge pull request #3952 from Ronaldr1985/master
...
Ensure that values in ini map are unquoted
2024-07-21 14:58:15 +02:00
Jeroen van Rijn and GitHub
a056e9da81
Merge pull request #3954 from flysand7/docs-thread
...
[thread]: Document all functions in core:thread
2024-07-21 14:10:49 +02:00
Jeroen van Rijn
431227d4c5
Add NULL check in check_range_stmt
...
Fixes #3953
2024-07-21 02:52:53 +02:00
Jeroen van Rijn
fc5ce30f34
Allow json to unmarshal empty struct.
2024-07-21 00:37:11 +02:00
Jeroen van Rijn and GitHub
572b400d8e
Merge pull request #3950 from Ronaldr1985/master
...
Add tests for encoding/ini
2024-07-20 18:47:08 +02:00
Jeroen van Rijn
f78a792d48
Add Lua example to vendor\lua as well as basic tests.
2024-07-20 18:30:41 +02:00
Jeroen van Rijn and GitHub
cdd2c98b8d
Merge pull request #3948 from flysand7/docs-time
...
[time]: Document all functions
2024-07-20 16:06:07 +02:00
Jeroen van Rijn
9d6ed991cb
Remove LUA panic for non-big-3 OS
2024-07-20 14:33:34 +02:00
Jeroen van Rijn
2385e1ddd9
Update LUA imports for Darwin.
2024-07-20 14:24:01 +02:00
Jeroen van Rijn and GitHub
64614889de
Merge pull request #3946 from flysand7/x11-fixes
...
[vendor/x11]: Fix missing argument in XDefaultDepth, wrong types in CreateSimpleWindow
2024-07-20 04:00:00 +02:00
Jeroen van Rijn and GitHub
d9d044970e
Merge pull request #3945 from flysand7/docs-datetime
...
[time/datetime]: Document package datetime
2024-07-20 03:56:21 +02:00
Jeroen van Rijn
7237f9c9f8
Help text default -o:none -> -o:minimal.
2024-07-19 20:47:26 +02:00
Jeroen van Rijn
5520b45457
Add glfw LICENSE file
2024-07-16 22:59:32 +02:00
Jeroen van Rijn and GitHub
0a9c150748
Merge pull request #3929 from laytan/fix-fmt-len-transfer-to-children
...
fmt: fix optional_len or use_nul_termination being used by both array and elems
2024-07-15 19:36:20 +02:00
Jeroen van Rijn and GitHub
3a75a8dd1b
Merge pull request #3928 from Yawning/feature/aes-ni
...
core/crypto: Support AES-NI + PCLMUL
2024-07-15 18:41:21 +02:00
Jeroen van Rijn
e3e31b42d0
#force_no_inline build_huffman to avoid bloat
2024-07-15 00:54:08 +02:00
Jeroen van Rijn and GitHub
03cb585845
Merge pull request #3908 from NicknEma/Intrusive-list-docs
...
Write docs for `core:container/intrusive/list` package
2024-07-14 23:28:53 +02:00
Jeroen van Rijn and GitHub
65dab3a3b1
Merge pull request #3925 from Feoramund/fix-no-return-switch
...
Fix compiler crash when switching on no value
2024-07-14 21:26:46 +02:00
Jeroen van Rijn and GitHub
76b0562acd
Merge pull request #3923 from laytan/fix-off-by-one-in-queue-back
...
Fix off-by-one in queue `back` and `back_ptr` procs
2024-07-14 16:09:16 +02:00
Jeroen van Rijn and GitHub
88823c4024
Merge pull request #3921 from Ronaldr1985/master
...
Fix logic bug in core/encoding/ini/ini.odin
2024-07-14 14:48:47 +02:00
Jeroen van Rijn and GitHub
d845a07519
Merge pull request #3912 from xzores/master
...
Update stb_truetype.odin
2024-07-13 00:16:34 +02:00
Jeroen van Rijn and GitHub
a8ce5bd005
Merge pull request #3903 from laytan/allow-mem-virtual-import-on-more-targets
...
allow `core:mem/virtual` import on more targets by expanding the `other` implementation
2024-07-11 02:12:53 +02:00
Jeroen van Rijn
c49afb0039
Add hinstdll forward to runtime globals
2024-07-10 19:58:29 +02:00
Jeroen van Rijn
b02291b20a
Compile demo with -vet -strict-style.
2024-07-10 19:26:35 +02:00
Jeroen van Rijn
4148c6d6c7
#if WINDOWS
2024-07-10 15:25:49 +02:00
Jeroen van Rijn
cc73e06a46
Allow precompiled resources with -resource:foo.res
...
And add them to the magic new feature.
2024-07-10 15:09:13 +02:00
Jeroen van Rijn
8dc4eca4d2
Allow using precompiled .res file.
2024-07-10 14:25:18 +02:00
Jeroen van Rijn and GitHub
d43a2daa17
Merge pull request #3897 from Kelimion/simd-vet
...
Let simd/x86 pass new transmute/cast vet.
2024-07-09 17:04:45 +02:00
Jeroen van Rijn
7b31acd2d7
Let simd/x86 pass new transmute/cast vet.
2024-07-09 16:50:55 +02:00
Jeroen van Rijn and GitHub
9575d85f1a
Merge pull request #3511 from IllusionMan1212/x11-xkb
...
vendor/x11: some XKB extension procedures and constants
2024-07-08 21:14:26 +02:00
Jeroen van Rijn and GitHub
ec2234560a
Merge pull request #3889 from laytan/darwin-remove-implicit-syscall-usage
...
darwin: remove syscall usage (without -no-crt) to comply to Apple guidelines
2024-07-08 15:54:24 +02:00
Jeroen van Rijn and GitHub
212906ecd2
Merge pull request #3886 from laytan/cbor-enhancements
...
CBOR enhancements
2024-07-08 02:01:39 +02:00
Jeroen van Rijn and GitHub
861ad2037f
Merge pull request #3884 from Feoramund/fix-3883
...
Forbid `$T=` parameter from crashing compiler
2024-07-06 22:08:05 +02:00
Jeroen van Rijn and GitHub
b79a098c2e
Merge pull request #3882 from Kelimion/clean_up_iterator
...
Remove nil checks.
2024-07-06 18:45:45 +02:00
Jeroen van Rijn
258f120d52
Remove nil checks.
...
The caller should really not pass `foo: ^string = nil`. A `for ch, in foo` would also crash,
so let's not introduce new semantics for iteration.
A caller shouldn't pass garbage if they can help it, and a `nil` ^string is not a useful ZII usage here.
2024-07-06 18:34:52 +02:00
Jeroen van Rijn and GitHub
25904e8f89
Merge pull request #3878 from Poaetce/setsid-returns-pid
...
[sys/linux]: change setsid to return Pid
2024-07-06 01:21:22 +02:00
Jeroen van Rijn and GitHub
ecffe5a082
Merge pull request #3877 from Kelimion/wstring_fix
...
Fix utf8_to_wstring given zero bytes.
2024-07-05 13:58:49 +02:00
Jeroen van Rijn
9ecc33570b
Improve fix.
2024-07-05 13:51:38 +02:00
Jeroen van Rijn
164a5e587e
Fix utf8_to_wstring given zero bytes.
2024-07-05 13:46:07 +02:00
Jeroen van Rijn and GitHub
c8432df248
Merge pull request #3874 from laytan/fix-not-detecting-duplicate-proc-case
...
Fix not detecting duplicate proc cases
2024-07-05 01:00:14 +02:00
Jeroen van Rijn
22fabba2f6
Fix #3873
2024-07-05 00:48:08 +02:00
Jeroen van Rijn and GitHub
3c2161b196
Merge pull request #3870 from laytan/fix-fontstash-proc-group
...
vendor/fontstash: fix 'AddFont' proc group for JS target
2024-07-04 17:05:49 +02:00