54 Commits

Author SHA1 Message Date
Ulf Wiger 2ac9363d30 Add zompify support, verup to 0.2.0
Gajumaru Serialization Tests / tests (push) Successful in -2m7s
2026-04-16 23:31:12 +02:00
Ulf Wiger 4cc6adee2e Add unsafe_encode/2 to forego size check
Gajumaru Serialization Tests / tests (push) Successful in -2m49s
2026-03-25 22:10:06 +01:00
Ulf Wiger 4f97dd1bd1 Add keypair encoding, fix seckey size checks
Gajumaru Serialization Tests / tests (push) Successful in -2m51s
2026-03-24 23:06:29 +01:00
uwiger 05bbf058be Map 'hash' as known api type, add some more tests (#56)
Gajumaru Serialization Tests / tests (push) Successful in -2m53s
I noticed that the 'hash' serialization type wasn't in the `known_type()` set, although it was supported otherwise.
This PR adds it to the `known_type()` and also exports the type `gmser_api_encoder:known_type()`.

Also, some more tests are added to try to detect this sort of thing in the future.

Co-authored-by: Ulf Wiger <ulf@wiger.net>
Reviewed-on: #56
2026-03-24 21:23:20 +09:00
Ulf Wiger 00699b08b7 Fix OTP 28 dialyzer warnings, rewrite gmser_dyn decoder
Gajumaru Serialization Tests / tests (push) Successful in -3m56s
gmser_dyn no longer tries to compress output by omitting type tags.
Decoding streams using custom template codes can either use 'strict'
decoding, in which case matching templates must be registered on the
decoding end; in `strict => false` mode, the stream can still be decoded
without valudation if the custom template is missing.
2026-02-18 21:10:43 +01:00
Ulf Wiger 8734e67c66 WIP refactor gmser_dyn 2026-02-15 12:12:04 +01:00
Ulf Wiger 07d61722b4 Serialization got broken by previous PR
Gajumaru Serialization Tests / tests (push) Successful in 49m58s
2025-04-29 10:18:59 +02:00
Ulf Wiger f996253e6b Add forgotten exports, expand(Types) function
Gajumaru Serialization Tests / tests (push) Successful in 49m55s
2025-04-28 12:12:43 +02:00
Ulf Wiger b9a51acf55 Add gmser_dyn_types.erl
Gajumaru Serialization Tests / tests (push) Successful in 49m54s
2025-04-28 11:59:27 +02:00
Ulf Wiger 5df23c05c1 test case for 'switch'
Gajumaru Serialization Tests / tests (push) Failing after 49m55s
2025-04-28 11:51:23 +02:00
Ulf Wiger b358dfe914 Add switch semantics
Gajumaru Serialization Tests / tests (push) Failing after 49m54s
2025-04-28 11:36:02 +02:00
Ulf Wiger 795c7f7860 Save options, test cases for missing labels
Gajumaru Serialization Tests / tests (push) Successful in 49m42s
2025-04-23 23:36:03 +02:00
uwiger 0d77ca0388 Fix function_clause bug (#51)
Gajumaru Serialization Tests / tests (push) Successful in 49m16s
Co-authored-by: Ulf Wiger <ulf@wiger.net>
Reviewed-on: #51
2025-04-14 19:10:58 +09:00
Ulf Wiger a949d166f6 Add options for deserialization of missing labels
Gajumaru Serialization Tests / tests (push) Failing after 49m16s
2025-04-14 11:54:48 +02:00
Ulf Wiger ba771836fb Document static, make anyint standard
Gajumaru Serialization Tests / tests (push) Successful in 49m9s
2025-04-11 16:39:06 +02:00
Ulf Wiger dd3e731480 Support 'negint', 'items' and 'alt'
Gajumaru Serialization Tests / tests (push) Successful in 49m5s
2025-04-10 16:58:03 +02:00
Ulf Wiger 6563ef9de7 WIP add 'items', fix some layout issues 2025-04-10 16:58:03 +02:00
Ulf Wiger dd1c2455f0 Fix type-driven encode, more docs
Gajumaru Serialization Tests / tests (push) Successful in 48m53s
2025-04-05 21:44:36 +02:00
Ulf Wiger 3ede4f22e1 Register individual types, more docs 2025-04-05 13:20:30 +02:00
Ulf Wiger 4663a0f57e gmser_dyn.erl fairly complete
Gajumaru Serialization Tests / tests (push) Successful in 48m37s
2025-03-30 23:00:10 +02:00
zxq9 2db9ea6134 Package for zx (#45)
Gajumaru Serialization Tests / tests (push) Successful in -4m22s
This packages the library for deployment on zx (migrating from the old otpr-aeserialization-* line).

It also adds a native Erlang fallback to invokation of the Blake2 algorithm, picking enacl if it is present, but proceeding with eblake2 if not.

Reviewed-on: #45
Reviewed-by: dimitar.p.ivanov <dimitarivanov@qpq.swiss>
Reviewed-by: Ulf Wiger <ulfwiger@qpq.swiss>
Co-authored-by: Craig Everett <zxq9@zxq9.com>
Co-committed-by: Craig Everett <zxq9@zxq9.com>
2025-01-22 19:36:50 +09:00
zxq9 4b5cfcb67a Remove old type references, update naming, add license notices (#43)
Gajumaru Serialization Tests / tests (push) Successful in -4m21s
Removed the oracle type references and updated the dependency list to point to git.qpq.swiss.

Reviewed-on: #43
Co-authored-by: Craig Everett <zxq9@zxq9.com>
Co-committed-by: Craig Everett <zxq9@zxq9.com>
2025-01-22 13:22:03 +09:00
Ulf Wiger d28e63693c Add contract source (cx) 2024-10-15 08:07:24 +02:00
Ulf Wiger b5929e4d2e Define channel_delegates chain obj 2024-10-14 14:48:05 +02:00
Hans Svensson 9cb67eeb98 Add data_extend_tx 2024-09-24 09:47:25 +02:00
Dimitar Ivanov c31bcac249 Add entries 2024-07-26 14:39:47 +03:00
Ulf Wiger 5139f130f5 Add native token chain obj info 2024-07-15 17:38:23 +02:00
Ulf Wiger 8336d8113c Add native_token encoding support 2024-07-15 16:39:04 +02:00
Hans Svensson 8346df41f2 Add testimonies and AC serialization 2024-06-28 13:59:06 +00:00
Hans Svensson 2488ff3978 Add structured delegation signatures (#21)
* Bump enacl dependency

* Add serialization of delegation signature data
2023-12-06 15:23:57 +01:00
Ulf Wiger da8308821c Merge pull request #19 from davidyuk/secret-key
Add serialization of account secret key
2023-11-13 16:13:54 +01:00
Denis Davidyuk 213589ad9f Add serialization of account secret key 2023-09-15 10:08:29 +04:00
Ulf Wiger 893ebb69f6 Update src/aeserialization.erl with duplicates check
From code review

Co-authored-by: Radosław Rowicki <35342116+radrow@users.noreply.github.com>
2023-08-17 20:43:59 +02:00
Ulf Wiger 05c4f87619 Update src/aeserialization.erl with type comment
From code review

Co-authored-by: Radosław Rowicki <35342116+radrow@users.noreply.github.com>
2023-08-17 20:42:48 +02:00
Ulf Wiger 91d6159ebd Add #{items := list()} type for encode/decode 2023-08-17 13:04:06 +02:00
Hans Svensson 95d248aa0c Add ga_meta_tx_auth_data tag 2022-12-20 08:08:51 +01:00
Sean Hinde 27bb4331aa Small tidy up 2021-11-02 09:36:45 +01:00
Sean Hinde 9b36c771c7 Update to use latest enacl with new API 2021-11-01 18:37:12 +01:00
Dimitar Ivanov 58e34ae7b5 Merge pull request #14 from aeternity/GH-2851-paying_for_tx
Add paying_for_tx to aeser_chain_objects
2021-03-10 15:49:31 +02:00
Dimitar Ivanov 5e820bed55 Describe channel_set_delegates_tx 2021-03-07 12:28:27 +02:00
Hans Svensson 80ff8a49f4 Add paying_for_tx to aeser_chain_objects 2019-11-08 13:40:35 +01:00
Thomas Arts e1fe683f95 Name_auction serialization 2019-08-30 11:34:57 +02:00
Hans Svensson 1fdd580050 Add aeser_contract_code 2019-08-22 15:25:28 +02:00
Ulf Wiger d87adfd583 Add channel_offchain_update_meta object 2019-08-12 10:23:13 +02:00
Ulf Wiger cd341370b3 Add support for channel_client_reconnect_tx 2019-07-26 21:30:24 +02:00
Hans Svensson 3416ff5c1b Merge pull request #6 from aeternity/PT-165853843-encode_binary_json_content
Add a generic 'bytearray' encoding - prefix 'ba'
2019-05-13 14:24:15 +02:00
Hans Svensson 4724773d3b Add a generic 'bytearray' encoding - prefix 'ba' 2019-05-13 14:18:00 +02:00
Dimitar Ivanov 3eec4609d2 Remove pinned environment serialization 2019-04-25 14:32:54 +03:00
Dimitar Ivanov 816bf994ff Merge pull request #4 from aeternity/add_offchain_pinned_block_env
Add off-chain pinned environment serialization
2019-04-10 10:27:27 +02:00
Dimitar Ivanov ecde108939 Add off-chain pinned environment serialization 2019-04-08 08:42:55 +03:00