Jeroen van Rijn and GitHub
4e07d3f1d3
Merge pull request #4360 from frwdrik/patch-1
...
Fix typo in demo.odin
2024-10-09 19:00:23 +02:00
Jeroen van Rijn
6f23b5bb60
Fix #4359
...
Fixes #4359
2024-10-09 14:31:01 +02:00
Jeroen van Rijn and GitHub
c50eaa0b77
Merge pull request #4352 from avanspector/master
...
build.bat: remove wmic and mandatory git requirement
2024-10-06 21:27:13 +02:00
Jeroen van Rijn and GitHub
613f231fed
Merge pull request #4336 from Kelimion/slice_to_type
...
Add `slice.to_type`
2024-10-01 23:45:59 +02:00
Jeroen van Rijn
eba7be34e7
Add slice.to_type
2024-10-01 23:27:15 +02:00
Jeroen van Rijn and GitHub
7f9cfd1579
Merge pull request #4327 from beaumccartney/fix-deferred-attrib-error-report
...
fix #4326
2024-09-30 08:01:36 +02:00
Jeroen van Rijn and GitHub
791b05b14f
Merge pull request #2600 from Hyrtwol/icon-for-odin-exe
...
Icon for odin.exe
2024-09-24 17:03:38 +02:00
Jeroen van Rijn and GitHub
ba3d545c96
Merge pull request #4281 from c-cube/add-time-to-rfc3339
...
add a time-to-RFC3339 conversion function
2024-09-22 17:46:26 +02:00
Jeroen van Rijn and GitHub
9508a1f031
Merge pull request #4255 from avanspector/master
...
init ansi on a standalone testing exe
2024-09-17 17:15:41 +02:00
Jeroen van Rijn and GitHub
c94829f4d3
Merge pull request #4231 from InKryption/enable-doc-out-param
...
Enable -out:<filename> for doc subcommand
2024-09-12 01:43:22 +02:00
Jeroen van Rijn and GitHub
309ea50a7c
Merge pull request #4204 from A1029384756/static_builds
...
Changed Linux CI builds to static linking with Musl for better compatibility
2024-09-10 22:41:25 +02:00
Jeroen van Rijn
5c4f241f22
upload v4
2024-09-10 22:21:50 +02:00
Jeroen van Rijn and GitHub
fce7bcec49
Merge branch 'master' into static_builds
2024-09-10 22:15:06 +02:00
Jeroen van Rijn and GitHub
459de29a87
Merge pull request #4193 from odin-lang/dependabot/github_actions/dot-github/workflows/actions/download-artifact-4.1.7
...
Bump actions/download-artifact from 1 to 4.1.7 in /.github/workflows
2024-09-10 22:13:01 +02:00
Jeroen van Rijn
beb10cce63
Fix #4227
2024-09-10 15:31:57 +02:00
Jeroen van Rijn and GitHub
4df668fa22
Merge pull request #4226 from Kelimion/fix-4225
...
Fix #4225
2024-09-10 15:30:43 +02:00
Jeroen van Rijn
564c7821c5
Allow ExactValue_Invalid in assert.
...
Fixes #4225
2024-09-10 15:19:12 +02:00
Jeroen van Rijn
300b01d77d
Return "" for rune < 0 in strconv.
2024-09-08 00:32:46 +02:00
Jeroen van Rijn
466a90010f
Fix #4211
2024-09-07 21:07:29 +02:00
Jeroen van Rijn
c4c2282595
Update 4210 test to use unaligned_load.
2024-09-07 14:05:56 +02:00
Jeroen van Rijn
d2202416d2
Add test for #4210
2024-09-07 13:43:19 +02:00
Jeroen van Rijn and GitHub
c6b551d2c3
Merge pull request #4194 from Feoramund/update-bit-array
...
Update `bit_array`
2024-09-03 23:42:27 +02:00
Jeroen van Rijn and GitHub
645207b8b0
Merge pull request #4192 from laytan/strings-substring-rune-wise
...
strings: add `substring`, `substring_to` and `substring_from`
2024-09-03 22:47:56 +02:00
Jeroen van Rijn and GitHub
3da77bcd67
Merge pull request #4190 from Kelimion/strings.cut
...
strings.cut without allocation.
2024-09-03 19:09:27 +02:00
Jeroen van Rijn
996175753c
strings.cut without allocation.
2024-09-03 19:02:40 +02:00
Jeroen van Rijn and GitHub
9276476760
Merge pull request #4185 from Feoramund/add-time-to-datetime
...
Add `time.time_to_datetime`
2024-09-03 15:05:42 +02:00
Jeroen van Rijn and GitHub
71b2527df0
Merge pull request #4184 from Dimension4/help-text-build-mode
...
Add missing help text for -build-mode:test
2024-09-03 00:17:17 +02:00
Jeroen van Rijn
dd1f151696
Add math.remap_clamped.
2024-09-01 17:22:58 +02:00
Jeroen van Rijn and GitHub
c1605b5b4f
Merge pull request #4173 from karl-zylinski/clamp-remap
...
Make math.remap clamp the result in range [new_min, new_max]
2024-09-01 16:54:17 +02:00
Jeroen van Rijn
c1cb1a3d7e
Simplified #assert check
2024-08-31 19:13:37 +02:00
Jeroen van Rijn
a4ac50a5b4
Check for #assert condition to be a constant bool
...
Fixes #4170
2024-08-31 19:06:17 +02:00
Jeroen van Rijn
8ad4427a25
Add a few more reflect.bit_field_* helpers.
2024-08-30 22:40:14 +02:00
Jeroen van Rijn
db3bcd2cea
Add reflect.bit_fields_zipped
2024-08-30 22:04:10 +02:00
Jeroen van Rijn
3072a02d5d
Attempt to account for BuildTools installer's lack of \
2024-08-30 18:54:51 +02:00
Jeroen van Rijn and GitHub
17d10b72d5
Merge pull request #4158 from sqrt-negativeone/master
...
Win32 clipboard procedures
2024-08-28 19:02:18 +02:00
Jeroen van Rijn and GitHub
d3fca60e4d
Merge pull request #4160 from Kelimion/vsdd
...
-vet -strict-style -disallow-do
2024-08-28 18:49:44 +02:00
Jeroen van Rijn
d602e2cc74
Remove duplicate vet flag.
2024-08-28 18:43:54 +02:00
Jeroen van Rijn
831e26cb6f
Remove unused import.
2024-08-28 18:42:54 +02:00
Jeroen van Rijn
7b276cbc7e
-vet -strict-style -disallow-do
2024-08-28 18:36:49 +02:00
Jeroen van Rijn and GitHub
fcafd83506
Merge pull request #4159 from Kelimion/disallow-do
...
More -disallow-do in CI.
2024-08-28 18:20:39 +02:00
Jeroen van Rijn
21dab9673d
More -disallow-do in CI.
2024-08-28 18:13:53 +02:00
Jeroen van Rijn and GitHub
ef98aa1fe1
Merge pull request #4152 from edyu/master
...
Fix error for uuid to require 36 bytes instead 32 (4 bytes for dashes)
2024-08-26 19:35:04 +02:00
Jeroen van Rijn and GitHub
3e0f6bda91
Merge pull request #4149 from Feoramund/fix-thread-pool-use-after-free
...
Fix use-after-free in `thread.Pool`
2024-08-26 13:05:23 +02:00
Jeroen van Rijn and GitHub
4cf1af3f7d
Merge pull request #4135 from gelatinstudios/master
...
fix core:reflect/iterator.odin
2024-08-24 23:23:33 +02:00
Jeroen van Rijn
0a825fc44d
Improve SRV handling in dns_windows.odin
2024-08-24 18:43:25 +02:00
Jeroen van Rijn and GitHub
faec52623d
Merge pull request #4128 from gordonshamway23/mini_fix_in_image
...
Added missing slice advancing.
2024-08-24 14:23:42 +02:00
Jeroen van Rijn and GitHub
a8bc6f08a9
Merge pull request #4116 from Kelimion/article
...
Add table-driven (in)definite article to some errors.
2024-08-21 18:51:43 +02:00
Jeroen van Rijn
07aedb0b89
,
2024-08-21 18:42:11 +02:00
Jeroen van Rijn
1bcc074223
dash
2024-08-21 14:18:12 +02:00
Jeroen van Rijn
6b4b0cea5d
Add table-driven (in)definite article to some errors.
2024-08-20 22:13:31 +02:00
Jeroen van Rijn
daa0779c01
Rewrite compound_to_time without using i128.
2024-08-20 18:50:05 +02:00
Jeroen van Rijn and GitHub
5ef58049dc
Merge pull request #4114 from it-a-me/master
...
fix wiki link in the README.md
2024-08-20 14:27:47 +02:00
Jeroen van Rijn and GitHub
29838da782
Merge pull request #4111 from RoryO/simd-typo
...
fix simd var typo
2024-08-20 00:52:37 +02:00
Jeroen van Rijn and GitHub
3fc1f6f1cd
Merge pull request #4101 from Yawning/feature/index-byte-tweaks
...
core/bytes: Tweak `index_byte`/`last_index_byte`
2024-08-19 20:43:37 +02:00
Jeroen van Rijn and GitHub
34a9e20531
Merge pull request #4108 from Feoramund/remove-deprecated-testing-log
...
Remove deprecated `log` procs from `core:testing`
2024-08-19 04:19:22 +02:00
Jeroen van Rijn and GitHub
17eb0b5ee0
Merge pull request #4107 from Feoramund/add-digit-count
...
Add `core:math.count_digits_of_base`
2024-08-19 02:36:05 +02:00
Jeroen van Rijn and GitHub
bbb5593f87
Merge pull request #4098 from jolson88/raygui/vertical-text-alignment
...
(raygui) Restores vertical text alignment broken after 4.0 migration
2024-08-17 22:29:38 +02:00
Jeroen van Rijn
9553bc3689
If missing type is newline, print "newline", not \n
...
Turns:
W:/Odin/bug/bug.odin(3:27) Syntax Error: Expected a type, got '
'
Storage :: distinct map[]
Into:
W:/Odin/bug/bug.odin(3:27) Syntax Error: Expected a type, got newline
Storage :: distinct map[]
2024-08-17 17:25:52 +02:00
Jeroen van Rijn
ebbb70f11d
Error if missing map key type
...
Fixes #4096
2024-08-17 17:12:27 +02:00
Jeroen van Rijn and GitHub
478f529744
Merge pull request #4094 from amad00r/fix-nil-logger
...
Fix log unnecessary allocations
2024-08-17 01:50:13 +02:00
Jeroen van Rijn and GitHub
970dc7a1f2
Merge pull request #4091 from Feoramund/fix-darwin-os-open
...
Check if file open-mode is `O_CREATE` on Darwin before forcing chmod
2024-08-16 20:31:22 +02:00
Jeroen van Rijn and GitHub
14e207088a
Merge pull request #4088 from Kelimion/benchmark
...
Improve benchmarks.
2024-08-16 17:16:59 +02:00
Jeroen van Rijn
6c46c9e04b
Improve benchmarks.
2024-08-16 17:00:16 +02:00
Jeroen van Rijn
f7234e2ed3
Allow ODIN_TEST_LOG_LEVEL override when -debug.
2024-08-14 16:29:51 +02:00
Jeroen van Rijn and GitHub
069ad446cd
Merge pull request #4070 from Feoramund/test-runner-mem-fail-as-error
...
Let memory failures be errors in the test runner
2024-08-13 13:50:46 +02:00
Jeroen van Rijn and GitHub
02b4bb8491
Merge pull request #4072 from laytan/fix-32-bit-math-round
...
fix type hint propagation for shift
2024-08-13 00:34:19 +02:00
Jeroen van Rijn and GitHub
0d916a659e
Merge pull request #4053 from Feoramund/fix-gitignore
...
Fix `.gitignore`
2024-08-12 21:34:26 +02:00
Jeroen van Rijn and GitHub
053e65a1c8
Merge pull request #4071 from andreas-jonsson/andreas-jonsson-patch-2
...
Use another URL for pkgsrc on CI
2024-08-12 20:58:41 +02:00
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