Commit Graph

290 Commits

Author SHA1 Message Date
Laytan Laats
2d8d0dd851 fix @(optimization_mode) usage in builtin collections 2024-07-08 21:07:53 +02:00
Laytan Laats
6ab559437a encoding/cbor: add a custom tag to the example 2024-07-08 01:01:11 +02:00
Laytan Laats
db3b4ceb4a encoding/cbor: improve perf of marshalling array-like types 2024-07-08 00:37:40 +02:00
Laytan Laats
39e9b65c59 encoding/cbor: fix umarshal of big fixed arrays 2024-07-08 00:35:19 +02:00
Laytan Laats
604551eb2d wasi: make the demo run on wasi and run it in CI 2024-06-29 23:15:31 +02:00
gingerBill
e296d6fb90 Fix loads of indentation issues with mixing spaces and tabs 2024-06-29 19:50:51 +01:00
gingerBill
5413a8b744 Even more style fixes 2024-06-29 19:11:36 +01:00
gingerBill
930c929294 Indentation fixes 2024-06-29 18:49:57 +01:00
gingerBill
7f05b4caf2 Fix generation for unicode entities 2024-06-29 18:43:09 +01:00
gingerBill
c88a1bef91 Add another -vet-cast check 2024-06-29 12:40:04 +01:00
Feoramund
b3caae6db4 Keep -vet happy 2024-06-28 23:14:03 -04:00
gingerBill
883f6c129a Merge pull request #3643 from korvahkh/fix-omitempty-comma
encoding/json: Fix struct marshal() emitting comma after omitted field
2024-06-28 11:50:31 +01:00
gingerBill
4824050c99 Merge pull request #3792 from Feoramund/core-uuid
Add `core:encoding/uuid`
2024-06-28 09:49:23 +01:00
Jeroen van Rijn
d97fe41834 Mark deux 2024-06-24 22:45:12 +02:00
Jeroen van Rijn
d3d73590d3 Fix CSV comments. 2024-06-24 22:43:14 +02:00
Feoramund
ca58d7771b Use new API from_nanoseconds in uuid 2024-06-22 18:36:42 -04:00
Feoramund
8a4a3ed66e Change how Time is constructed in uuid 2024-06-22 18:21:32 -04:00
Feoramund
4481f9c695 Clarify some uuid legacy documentation 2024-06-22 18:21:32 -04:00
Feoramund
5a75cac5b9 Add API for creating custom version 8 UUIDs 2024-06-22 18:21:32 -04:00
Feoramund
e9b882be05 Add vendor-specific version 8 UUID generation (hashing) 2024-06-22 18:21:32 -04:00
Feoramund
339b2b23f6 Add unsafe_write to uuid package 2024-06-22 18:21:32 -04:00
Feoramund
8b8f8c7f7d Address minor organizational issues 2024-06-22 18:21:32 -04:00
Feoramund
9b3a104640 Add buffer-based to_string to uuid package 2024-06-22 18:21:32 -04:00
Feoramund
9b265b2309 Improve time-related API in uuid package
- Let timestamps be specified by the user.
- Change `time_v*` to `raw_time_v*` and implement an API that returns
  timestamps from the `time` package.
2024-06-22 18:21:32 -04:00
Feoramund
ea771d0cb7 Update uuid package documentation 2024-06-22 18:21:31 -04:00
Feoramund
fcdba334ea Require CSPRNG in UUID generation where applicable 2024-06-22 18:21:31 -04:00
Feoramund
3aa232a894 Move v3 and v5 UUID procs to uuid/legacy 2024-06-22 18:21:31 -04:00
Feoramund
9866b54d59 Add version 6 UUID generation 2024-06-22 18:21:31 -04:00
Feoramund
525bfca4ef Add version 1 UUID generation 2024-06-22 18:21:31 -04:00
Feoramund
4cfbd83b10 Add version 7 UUID generation 2024-06-22 18:21:31 -04:00
Feoramund
fee81985b4 Make UUID namespaces @(rodata) 2024-06-22 18:21:31 -04:00
Feoramund
6da99b888a Make UUID Identfier only a distinct byte array 2024-06-22 18:21:31 -04:00
Feoramund
31873ed466 Fix wrong comments 2024-06-22 18:21:31 -04:00
Feoramund
4dacddd85e Add core:encoding/uuid 2024-06-22 18:21:27 -04:00
korvahkh
104ca2ce22 Merge branch 'odin-lang:master' into fix-omitempty-comma 2024-06-13 01:27:44 +00:00
Jeroen van Rijn
2fe961cbcd Fold XML attribute whitespace. 2024-06-12 13:30:00 +02:00
Jeroen van Rijn
ebadff555d Update XML reader to normalize whitespace, part 1. 2024-06-12 12:52:48 +02:00
Jeroen van Rijn
601df0e8f7 Port tests\core\encoding\json 2024-06-02 14:47:08 -04:00
Jeroen van Rijn
1b32e27aa4 Port tests\core\encoding\hxa
And fix a few leaks in `core:encoding/hxa` while at it.
2024-06-02 14:47:08 -04:00
Jeroen van Rijn
3404dea8ac Port tests\encoding\hex 2024-06-02 14:47:08 -04:00
Jeroen van Rijn
a27b167218 Update tests\core\encoding\cbor to use new test runner.
It was leaky and required a substantial number of `loc := #caller_location` additions to parts of the core library to make it easier to track down how and where it leaked.

The tests now run fine multi-threaded.
2024-06-02 14:47:07 -04:00
Feoramund
fc4f6b87bb Add core:encoding/ansi package 2024-06-02 14:34:30 -04:00
gingerBill
31a9b3f428 core:encoding/ini 2024-05-31 16:35:30 +01:00
korvahkh
a7a6ff8c69 encoding/json: Fix struct marshal() emitting comma after omitted field
Previously:
```odin
package main

import "core:fmt"
import "core:encoding/json"

T :: struct {
	a: string `json:",omitempty"`,
	b: string,
}

main :: proc() {
	data, _ := json.marshal(T{b = "foo"})
	fmt.println(string(data))
}
```
would output:
```
{,"b":"foo"}
```

which is not correct.

Also cleaned up some whitespace while I'm at it.
2024-05-27 16:59:46 -05:00
Jeroen van Rijn
cfadca04f9 Merge pull request #3628 from IllusionMan1212/bitset-json-marshalling-fix
fix(core/encoding/json): remove Unsupported_Type return when marshalling bit_set
2024-05-25 08:34:59 +02:00
IllusionMan1212
65a4a56a83 fix(core/encoding/json): remove Unsupported_Type return when marshalling bit_set 2024-05-25 00:45:30 +02:00
Jeroen van Rijn
2a4ddbb7be Remove core:mem import in example. 2024-05-24 13:35:32 +02:00
Jeroen van Rijn
3b739dc5cc Add iterator_next(&r) to CSV. 2024-05-24 13:26:12 +02:00
korvahkh
9b759f39fc encoding/json: Properly marshal #no_nil unions
Previously the first variant of a `#no_nil` would always be output as
`null`, and following variants would be treated as the wrong type.
2024-05-11 14:36:56 -05:00
Feoramund
309a770cbf Fix omitempty in json.marshal 2024-04-27 05:24:59 -04:00