Commit Graph
100 Commits
Author SHA1 Message Date
Jeroen van RijnandGitHub d401a089c8 Merge pull request #5022 from IllusionMan1212/fix-printing-long-strings
gb.h: fix buffer overflow when printing long strings.
2025-04-09 07:37:59 +02:00
Jeroen van RijnandGitHub dd826b759f Merge pull request #5021 from flysand7/fix-badge
Fix the CI badge URL
2025-04-08 22:55:58 +02:00
Jeroen van Rijn 329b15961a Don't run demo if building Odin fails.
`cl`'s return value was stomped by `mt`, so we ran the demo if `cl` failed, but `mt` succeeded.
This obscures `cl`'s output, so we're now checking both for errors.
2025-04-08 11:44:35 +02:00
Jeroen van Rijn eeb8b8dcc4 Fix #5020 2025-04-08 10:13:45 +02:00
Jeroen van RijnandGitHub 44bd2d3750 Merge pull request #5019 from Cararasu/master
vendor/glfw: fix SetMonitorCallback and MonitorProc type definition
2025-04-07 22:24:08 +02:00
Jeroen van RijnandGitHub d77b8aeaa1 Merge pull request #5018 from Barinzaya/fix-fmt-bitset-nonzero-enum
Fix printing of `bit_set[Enum]` when `min(Enum) != 0`
2025-04-07 22:01:19 +02:00
Jeroen van Rijn 716bd479a9 Disallow .Multiline in iterator. 2025-04-07 21:33:57 +02:00
Jeroen van Rijn 2b26c0b39e Remove now unused field. 2025-04-07 15:02:36 +02:00
Jeroen van Rijn a5e513567b Optimize regex match iterator.
Reuse virtual machine and capture groups between matches.
2025-04-07 14:58:41 +02:00
Jeroen van Rijn c13b68f103 Fix os2/process defer error. 2025-04-07 13:33:21 +02:00
Jeroen van Rijn 3287e1b0f0 Fix HXA defer warning 2025-04-07 13:19:00 +02:00
Jeroen van RijnandGitHub bee158d53a Merge pull request #5010 from Feoramund/fix-netbsd-arm64-syscall
Fix `syscall_bsd` on NetBSD ARM64
2025-04-07 11:30:13 +02:00
Jeroen van Rijn 9a2b6c01aa Return loop index in regex iterator. 2025-04-06 21:45:37 +02:00
Jeroen van Rijn 66077add33 {.Glboal} implicit in regex allocator. 2025-04-06 21:13:02 +02:00
Jeroen van RijnandGitHub 07a79254e0 Merge pull request #5008 from Kelimion/regex-iterator
Add iterator for `core:text/regex`.
2025-04-06 14:32:50 +02:00
Jeroen van Rijn 918d57fe01 Keep -vet happy. 2025-04-06 14:24:17 +02:00
Jeroen van Rijn cdc56dc691 Add iterator for core:text/regex.
Usage:
```odin
haystack := `xxfoobarxfoobarxx`
pattern  := `f(o)ob(ar)`

it := regex.create_iterator(haystack, pattern, {.Global}) or_return
defer regex.destroy(it)

for capture in regex.match(&it) {
	fmt.println(capture)
}
```
2025-04-06 14:19:14 +02:00
Jeroen van Rijn dbefee8905 Fix broken asan on Windows. 2025-04-05 22:01:16 +02:00
Jeroen van Rijn a6977ac733 Remove stray import. 2025-04-05 19:25:39 +02:00
Jeroen van Rijn 4b203d0c78 Fix segfault in core:sys/info on WSL2 2025-04-05 19:23:58 +02:00
Jeroen van RijnandGitHub 8d283cefa0 Merge pull request #5007 from laytan/net-errors-overhaul
net: rework errors to be cross-platform
2025-04-05 17:53:10 +02:00
Jeroen van RijnandGitHub 6913fc2231 Merge pull request #5006 from Kelimion/fix-doc-tests
Fix broken examples in documentation tester.
2025-04-05 16:47:12 +02:00
Jeroen van Rijn f7c4c80ef3 Fix broken examples in documentation tester.
No more:
```
We could not find the procedure "pkg_foo_example :: proc()" needed to test the example created for "pkg.foo"
The following procedures were found:
   bar()
```
2025-04-05 16:36:26 +02:00
Jeroen van RijnandGitHub 8480295b60 Merge pull request #4993 from Sojamann/small-array-doc
[DOC] Add documentation for package core:container/small_array
2025-04-05 15:49:51 +02:00
Jeroen van RijnandGitHub e651803045 Merge pull request #5005 from Kelimion/fix-5004
Fix #5004
2025-04-05 14:56:10 +02:00
Jeroen van Rijn 843467bb8f Fix #5004
Fixes constant NaN to constant NaN comparisons.
2025-04-05 14:47:30 +02:00
Jeroen van RijnandGitHub d31ad3cd7f Merge pull request #4991 from nadako/sdl-3.2.10
Update vendor:sdl3 to version 3.2.10
2025-04-02 23:01:03 +02:00
Jeroen van RijnandGitHub 688540699d Merge pull request #4994 from harold-b/hb/linux-sys-built-tag
Add linux build tag to core/sys/linux/sys.odin
2025-04-02 22:46:59 +02:00
Jeroen van Rijn 10bde20850 Fix #4980
Add nullptr check.
2025-04-02 14:21:52 +02:00
Jeroen van RijnandGitHub 29a8707001 Merge pull request #4978 from glektarssza/chore/fixup-detection-of-msvc
Use Microsoft "best practices" for using `vswhere`
2025-03-27 21:45:24 +01:00
Jeroen van Rijn 660598ca8a Fix #4968 2025-03-25 12:01:02 +01:00
Jeroen van RijnandGitHub 242f59a43d Merge pull request #4124 from Yawning/feature/crypto
core/crypto: More improvements
2025-03-23 11:38:11 +01:00
Jeroen van RijnandGitHub f578ce3acb Merge pull request #4957 from Barinzaya/fix-mem-make_map
Fix `mem.make_map`
2025-03-22 16:34:32 +01:00
Jeroen van RijnandGitHub a91d528af6 Merge pull request #4921 from cornishon/fmt_allocator_docs
Update `fmt` docs for procedures with a default allocator parameter
2025-03-09 14:14:18 +01:00
Jeroen van RijnandGitHub 874efa5fe8 Merge pull request #4912 from flysand7/remove-epoch-datetime
[datetime]: Remove the definition of EPOCH
2025-03-06 12:10:48 +01:00
Jeroen van RijnandGitHub 7841d0b14b Merge pull request #4884 from Dzentsetsu/master
Add DWM_WINDOW_CORNER_PREFERENCE enum for window corner preferences
2025-03-02 13:50:00 +01:00
Jeroen van RijnandGitHub b6e4765e63 Merge pull request #4872 from haesbaert/dns-spoof
Fix multiple vulnerabilities in the resolver
2025-02-23 19:13:21 +01:00
Jeroen van Rijn 940da61869 Fix missing error when TCP connection refused.
Fixes #4867
2025-02-23 12:47:22 +01:00
Jeroen van RijnandGitHub bc100c3158 Merge pull request #4820 from Lperlind/tlsf_fixup
Fix tlsf block adjustment
2025-02-10 03:12:20 +01:00
Jeroen van RijnandGitHub 40cf9a33e9 Merge pull request #4817 from bplu4t2f/master
Add more win32 STARTF_* constants
2025-02-09 15:26:07 +01:00
Jeroen van RijnandGitHub 963663b8e1 Merge pull request #4814 from haesbaert/dns-cleanup
Cleanup allocated dns runtime data
2025-02-09 02:12:02 +01:00
Jeroen van RijnandGitHub fdc011555f Merge pull request #4813 from haesbaert/dns-fixes
Fix some compression bugs in dns.
2025-02-09 02:11:47 +01:00
Jeroen van RijnandGitHub 0683a3d672 Merge pull request #4681 from haesbaert/sockaddr
Add net.dial_tcp_from_host{_or_endpoint} and unify them
2025-02-08 12:45:02 +01:00
Jeroen van RijnandGitHub 77c91c82ff Merge pull request #4776 from candtechsoftware/master
Added IP_ADD_MEMBERSHIP to  Socket_Option on Linux
2025-01-30 12:56:07 +01:00
Jeroen van RijnandGitHub e7cf6c3275 Merge pull request #4769 from Kelimion/mdns
Add tentative mDNS/Bonjour/Avahi query support to `net.resolve`
2025-01-27 23:11:53 +01:00
Jeroen van Rijn cc29bdaefc Simplify *nix mDNS 2025-01-27 23:04:15 +01:00
Jeroen van Rijn 8998d74a92 Add mDNS for *nix. 2025-01-27 22:55:48 +01:00
Jeroen van Rijn d85c2c1ca7 Add mDNS/Bonjour/Avahi (.local) support for Windows 2025-01-27 22:16:24 +01:00
Jeroen van Rijn 600e0ebed0 Fix stray space vs. tab 2025-01-12 12:13:29 +01:00
Jeroen van RijnandGitHub 397e371232 Merge pull request #4641 from zolk3ri/fix/base32-error-handling
encoding/base32: Add RFC-compliant error handling and improve reliability
2025-01-04 20:27:16 +01:00
Jeroen van Rijn ad99d20d29 Remove outdated PNG save helpers 2024-12-23 16:33:23 +01:00
Jeroen van RijnandGitHub d3f072835d Merge pull request #4592 from cstrachan88/master
Fixes odin-lang/Odin#4591
2024-12-17 21:23:49 +01:00
Jeroen van RijnandGitHub 04e8dcc042 Merge pull request #4554 from Kelimion/get-date
Add misc\get-date.c
2024-12-03 12:49:33 +01:00
Jeroen van Rijn ef5546aea5 Add misc\get-date.c
Prints the current date as YYYYMMDD without relying on PowerShell.

Hopefully fixes #4540
2024-12-03 12:42:13 +01:00
Jeroen van Rijnandflysand7 47888794c8 Fix assert when return value expected. 2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 ad8bff4d3a Make O_RDONLY default for os.open on all platforms.
And also moved Windows file procs to `os_windows.odin`, in line with all the other platforms who didn't have a dedicated `file_<platform>.odin`
2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 21ff9856d4 Check type_expr in check_procedure_param_polymorphic_type
Fixes #4523 assert.
2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 9388f0d5a5 Add aliases for Is*Ready -> Is*Valid 2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 0e3572947a Fix #4508 for abs, min, max (#4516)
* Fix #4508 for abs, min, max and the rest of the builtins.

None of these segfault now:
```odin
package bug

main :: proc() {
	p :: proc() {}

	// _ = len(p())
	// _ = cap(p())

	// _ = size_of(p())
	// _ = align_of(p())

	// T :: struct {}
	// _ = offset_of(p())
	// _ = offset_of(T, p())
	// _ = offset_of(p(), foo)
	// _ = offset_of(p(), "")

	// _ = type_of(p())
	// _ = type_info_of(p())
	// _ = typeid_of(p())

	// A: [4]int
	// _ = swizzle(p())    //  :: proc(x: [N]T, indices: ..int) -> [len(indices)]T ---
	// _ = swizzle(A, p()) //  :: proc(x: [N]T, indices: ..int) -> [len(indices)]T ---

	// _ = complex(p(), p())
	// _ = quaternion(p(), p(), p(), p())
	// _ = quaternion(w=p(), x=p(), y=p(), z=p())

	// _ = real(p())
	// _ = imag(p())
	// _ = jmag(p())
	// _ = kmag(p())
	// _ = conj(p())

	// _ = expand_values(p())

	// _ = min(p())
	// _ = max(p())
	// _ = abs(p())
	// _ = clamp(p(), p(), p())

	// _ = soa_zip(p())
	// _ = soa_unzip(p())
}
```
2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 7e4aafe239 Add comment explaining #4515 test. 2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 66c57e380a Test #4515 2024-12-01 11:54:56 +11:00
Jeroen van Rijnandflysand7 4d9a9ec3f5 Fix #4509 2024-12-01 11:54:54 +11:00
Jeroen van Rijnandflysand7 826abd6245 && 2024-12-01 11:54:53 +11:00
Jeroen van Rijnandflysand7 d44f8c377a Phrasing! 2024-12-01 11:54:53 +11:00
Jeroen van Rijnandflysand7 9ecc378803 Suggest -microarch:native if popcnt instruction is missing.
Fixes #4453.
2024-12-01 11:54:53 +11:00
Jeroen van Rijnandflysand7 1a13322cd7 Missing paren. 2024-12-01 11:54:52 +11:00
Jeroen van Rijnandflysand7 c5d3fdca44 mem.is_aligned is in bytes, not log2 bytes
Fix formula and clarify comment
2024-12-01 11:54:52 +11:00
Jeroen van Rijnandflysand7 c9c237babf match_exact_value: return when type is compound
fixes #4431
2024-12-01 11:54:51 +11:00
Jeroen van Rijnandflysand7 1df246664f Fix image.which_bytes
Invert test in `which_bytes` to fix Softimage PIC detection. Fixes #4429.
2024-12-01 11:54:51 +11:00
Jeroen van RijnandGitHub 314c41ef33 Merge pull request #4534 from laytan/dynlib-unload-before-load
dynlib: unload library before loading again & add LIBRARY_FILE_EXTENSION constant
2024-11-28 21:20:07 +01:00
Jeroen van Rijn 6d83755e92 Fix assert when return value expected. 2024-11-28 20:44:57 +01:00
Jeroen van RijnandGitHub 276928170c Merge pull request #4532 from Kelimion/open_fix
Make `O_RDONLY` default for `os.open` on all platforms.
2024-11-28 16:04:49 +01:00
Jeroen van Rijn 8581240ece Make O_RDONLY default for os.open on all platforms.
And also moved Windows file procs to `os_windows.odin`, in line with all the other platforms who didn't have a dedicated `file_<platform>.odin`
2024-11-28 15:57:48 +01:00
Jeroen van RijnandGitHub 7d17902c2a Merge pull request #4526 from Kelimion/fix-4523
Check `type_expr` in `check_procedure_param_polymorphic_type`
2024-11-27 15:35:42 +01:00
Jeroen van Rijn c7dec10100 Check type_expr in check_procedure_param_polymorphic_type
Fixes #4523 assert.
2024-11-27 15:26:33 +01:00
Jeroen van RijnandGitHub 2b94886ef3 Merge pull request #4522 from laytan/rework-macos-version-retrieval
sys/info & odin report: rework macos version retrieval
2024-11-26 22:59:16 +01:00
Jeroen van RijnandGitHub be5cdd759e Merge pull request #4517 from Kelimion/raylib5
Add aliases for Is*Ready -> Is*Valid
2024-11-25 20:26:15 +01:00
Jeroen van Rijn d315d357ca Add aliases for Is*Ready -> Is*Valid 2024-11-25 20:18:53 +01:00
Jeroen van RijnandGitHub 7c3ce334d6 Fix #4508 for abs, min, max (#4516)
* Fix #4508 for abs, min, max and the rest of the builtins.

None of these segfault now:
```odin
package bug

main :: proc() {
	p :: proc() {}

	// _ = len(p())
	// _ = cap(p())

	// _ = size_of(p())
	// _ = align_of(p())

	// T :: struct {}
	// _ = offset_of(p())
	// _ = offset_of(T, p())
	// _ = offset_of(p(), foo)
	// _ = offset_of(p(), "")

	// _ = type_of(p())
	// _ = type_info_of(p())
	// _ = typeid_of(p())

	// A: [4]int
	// _ = swizzle(p())    //  :: proc(x: [N]T, indices: ..int) -> [len(indices)]T ---
	// _ = swizzle(A, p()) //  :: proc(x: [N]T, indices: ..int) -> [len(indices)]T ---

	// _ = complex(p(), p())
	// _ = quaternion(p(), p(), p(), p())
	// _ = quaternion(w=p(), x=p(), y=p(), z=p())

	// _ = real(p())
	// _ = imag(p())
	// _ = jmag(p())
	// _ = kmag(p())
	// _ = conj(p())

	// _ = expand_values(p())

	// _ = min(p())
	// _ = max(p())
	// _ = abs(p())
	// _ = clamp(p(), p(), p())

	// _ = soa_zip(p())
	// _ = soa_unzip(p())
}
```
2024-11-25 15:27:35 +01:00
Jeroen van Rijn 1a0a6c485d Add comment explaining #4515 test. 2024-11-25 13:47:04 +01:00
Jeroen van Rijn 2dc0187836 Test #4515 2024-11-25 13:16:27 +01:00
Jeroen van RijnandGitHub d3d3cbf186 Merge pull request #4512 from lxmcf/master
raylib: Update to 5.5
2024-11-25 11:16:28 +01:00
Jeroen van RijnandGitHub 73ab881eda Merge pull request #4510 from Kelimion/fix_4509
Fix #4509
2024-11-24 13:15:02 +01:00
Jeroen van Rijn 56e4da8546 Fix #4509 2024-11-24 13:08:24 +01:00
Jeroen van RijnandGitHub 5955881d3c Merge pull request #4499 from Waqar144/patch-1
Fix typo, its supposed to be #config
2024-11-18 20:18:43 +01:00
Jeroen van RijnandGitHub d118f88cd5 Merge pull request #4494 from jakubtomsu/min-max-one-numeric-param-error
[checker] Report error when builtin `min`/`max` has only one numeric parameter
2024-11-17 21:53:45 +01:00
Jeroen van RijnandGitHub 40eeaf42b9 Merge pull request #4490 from Tetralux/fix-make-map-alloc
[runtime] `make(map[K]V)` should not allocate any capacity
2024-11-16 12:56:00 +01:00
Jeroen van RijnandGitHub a3442b22da Merge pull request #4488 from NicknEma/win32-struct-fix
Fix integer type
2024-11-15 21:17:35 +01:00
Jeroen van RijnandGitHub 287774ed6f Merge pull request #4476 from Bazzas-Forks/slice-size
Add core:slice.size
2024-11-11 11:14:46 +01:00
Jeroen van RijnandGitHub 74178cd741 Merge pull request #4471 from bayo-code/list-supported-targets
List the supported targets using `odin build . -targets:?`
2024-11-11 10:43:56 +01:00
Jeroen van RijnandGitHub da196a2b74 Merge pull request #4470 from clankill3r/patch-2
Update demo.odin
2024-11-09 19:55:32 +01:00
Jeroen van RijnandGitHub 76bf28ef2e Merge pull request #4468 from Cthuflu/patch-doc-1
Correct zlib usage in doc
2024-11-09 00:18:51 +01:00
Jeroen van RijnandGitHub 1b16ddbb3e Merge pull request #4464 from Kelimion/should_use_native
Suggest `-microarch:native` if `popcnt` instruction is missing.
2024-11-07 15:09:24 +01:00
Jeroen van Rijn 3bfe675a68 && 2024-11-07 15:02:19 +01:00
Jeroen van Rijn deb562613f Phrasing! 2024-11-07 13:13:58 +01:00
Jeroen van Rijn 925d8749e0 Suggest -microarch:native if popcnt instruction is missing.
Fixes #4453.
2024-11-07 12:56:49 +01:00
Jeroen van RijnandGitHub 013c1d3128 Merge pull request #4456 from colrdavidson/timezones_fix
add new test, better fail-check, and non-transitioning tz fix
2024-11-05 12:55:16 +01:00
Jeroen van RijnandGitHub e6475fec4d Merge pull request #4449 from 0dminnimda/add-pie
Link as PIE for PIC by default
2024-11-04 14:25:31 +01:00
Jeroen van RijnandGitHub 7a98b58189 Merge pull request #4451 from NicknEma/contextless-marks
Mark procs as "contextless" in winerror.odin
2024-11-04 11:37:32 +01:00
Jeroen van RijnandGitHub 468bd3dfde Merge pull request #4447 from Kelimion/is_aligned
`mem.is_aligned` is in bytes, not log2 bytes
2024-11-03 14:16:23 +01:00