changed return value from `String` to `Box<str>` which is smaller and makes more sense since we don't mutate packet data
String — 24 bytes (ptr + len + capacity)
Box<str> — 16 bytes (ptr + len)
* initial commit
# Conflicts:
# Cargo.toml
# Conflicts:
# Cargo.toml
* implemented more `DataResult` methods
* finished data result struct
* fixed clippy errors
* implemented `map_like` and more `dynamic_ops` methods
* finished most other `DynamicOps` methods
* Fixed doc in get_bytes
* added encoder and decoder files
* fixed some stuff and added primitive codecs
* added some primitive codecs (has errors for now)
* changed the "stream" ops methods
* reworked types of the coders and codecs, added list codecs
* added JSON ops
* fixed list codecs, added some doc test examples in `JsonOps`
* added lazy codecs
* added map encoders, decoders and struct builders
* actually added mapdecoder
* added encoder and decoder transformations
* fixed encoder and decoder transformations and added transformation functions and range codecs
* added field encoders and decoders and separated range codecs
* added field encoders and decoders and separated range codecs
* added BaseMapCodec and SimpleMapCodec
* added struct codecs and moved tests
* added `NbtOps`, unsigned number codec types, range codec tests, a struct test, detailed `Codec` documentation
* added optional field map codecs, the validator function and reworked struct builder functions
* added unbounded map and struct codec tests and reworked validated codecs
* did some visibility refactoring
* fixed some stuff and renamed unsigned number codecs
* fixed formatting
* fixed docs to reflect changes on renaming unsigned number codecs
* fixed validated test
* fixed doctest
* moved base_map_codec and fixed docs about codecs
* fixed some mistakes in the code
* fixed some more mistakes in the code and converted some `DataResult::error` calls to `DataResult::partial_error`
* fixed formatting
* fixed some incorrect docs
* removed `OnceLock`s in `MapCodec`s so they can be used more easily
* fixed transformer codec descriptions, added more `NbtOps` tests and fixed some `NbtOps` list methods
* fixed doctest
* added a method to allow creating a field using a `MapCodec` reference
* bifurcated `MapCodecCodec`s as well
* removed imports only for documentation and replaced them with intra-doc links
* added additional docs to `optional_field_with_default` and `lenient_optional_field_with_default` Codec methods for additional details on encoding
* renamed crate to `pumpkin-codecs` so that data fixing can be placed somewhere else not frequently used
* fixed invalid nbt tag for test
* reverted wrapping the tags for heterogeneous elements
* fixed a few more issues
* initial commit
# Conflicts:
# Cargo.toml
* added `NbtOps`, unsigned number codec types, range codec tests, a struct test, detailed `Codec` documentation
* renamed crate to `pumpkin-codecs` so that data fixing can be placed somewhere else not frequently used
* added either codecs and either map codecs
* added a test and extra either methods
* added extra assertion
* removed this crate's `either` module in favor of the `either` crate
* fixed rebase
* fixed Cargo.lock
* removed old folder
* removed `DataResult` change
* initial commit
# Conflicts:
# Cargo.toml
* implemented more `DataResult` methods
* finished data result struct
* fixed clippy errors
* implemented `map_like` and more `dynamic_ops` methods
* finished most other `DynamicOps` methods
* Fixed doc in get_bytes
* added encoder and decoder files
* fixed some stuff and added primitive codecs
* added some primitive codecs (has errors for now)
* changed the "stream" ops methods
* reworked types of the coders and codecs, added list codecs
* added JSON ops
* fixed list codecs, added some doc test examples in `JsonOps`
* added lazy codecs
* added map encoders, decoders and struct builders
* actually added mapdecoder
* added encoder and decoder transformations
* fixed encoder and decoder transformations and added transformation functions and range codecs
* added field encoders and decoders and separated range codecs
* added field encoders and decoders and separated range codecs
* added BaseMapCodec and SimpleMapCodec
* added struct codecs and moved tests
* added `NbtOps`, unsigned number codec types, range codec tests, a struct test, detailed `Codec` documentation
* added optional field map codecs, the validator function and reworked struct builder functions
* added unbounded map and struct codec tests and reworked validated codecs
* did some visibility refactoring
* fixed some stuff and renamed unsigned number codecs
* fixed formatting
* fixed docs to reflect changes on renaming unsigned number codecs
* fixed validated test
* fixed doctest
* moved base_map_codec and fixed docs about codecs
* fixed some mistakes in the code
* fixed some more mistakes in the code and converted some `DataResult::error` calls to `DataResult::partial_error`
* fixed formatting
* fixed some incorrect docs
* removed `OnceLock`s in `MapCodec`s so they can be used more easily
* fixed transformer codec descriptions, added more `NbtOps` tests and fixed some `NbtOps` list methods
* fixed doctest
* added a fourth specific `NbtOps` test for byte buffers (`ByteArray`s in NBT)
* fixed grammar mistake
* log messages for discarded keys in `create_map`
* use the `tracing` crate for logging
* added a method to allow creating a field using a `MapCodec` reference
* bifurcated `MapCodecCodec`s as well
* removed imports only for documentation and replaced them with intra-doc links
* added additional docs to `optional_field_with_default` and `lenient_optional_field_with_default` Codec methods for additional details on encoding
* renamed crate to `pumpkin-codecs` so that data fixing can be placed somewhere else not frequently used
* fixed some more errors and reworked `nbt_ops`'s `ListCollector` to be like 1.21.11, also allows &str in `DataResult`'s creation methods
* fixed invalid nbt tag for test
* reverted wrapping the tags for heterogeneous elements
* renamed function parameter in `DataResult::apply_2`
* removed unnecessary comment
* fixed a few more issues
* fixed formatting
* fixed another mistake for `DataResult::add_message`
* renamed `DataResult` factory methods to be more idiomatic and removed unnecessary `dyn` method
* removed unnecessary `clone()`
* updated Cargo.lock
* feat: wasm plugin api base
* fix: make metadata macro work
* chore: fix clippy lints
* Implement guest registering of events
* chore: remove hardcoded v0.1.0 dep in wasm_host
* feat: add events to wasm
* feat: add caching of components
* fix: clippy lints
* chore: update Cargo.lock
* fix: add feature flag for link section
* feat: add base for command wit definitions
* feat: implement arg variants for command wit interface
* feat: add commented out command-tree arg variant
* feat: add wit definitions for text-component and command tree
Introduces the text interface with a builder-pattern resource,
argument-type variant, command-node resource, and register-command
on context. Migrates event and command-sender to use the new
text-component resource.
* feat: add stubs for wasm host
* chore: update wasmtime to v42
* feat: implement three methods of wit textcomponent
* Add consume function
* feat: implement all text-component host methods
Replace todo!() stubs with working implementations for all
HostTextComponent trait methods: style setters, click events,
hover events, add_text, get_text, and encode.
* feat: allow events to be modified
* feat: add some of base for commands
* chore: fix spelling mistake
* chore: remove unused dep
* feat: implement all argument-type to consumer mappings
* Add command exports
* log plugin load errors
* Some commands work
* Some more Commands work
* Update how commands are registered
* Implement locale
* Use handler id with require
* chore: fix some warnings
* Add PlayerLeaveEvent
* chore: fix all clippy warnings
* fix: add more descriptive error message
---------
Co-authored-by: Purdze <r.s.sutton@hotmail.co.uk>
Co-authored-by: Alexander Medvedev <lilalexmed@proton.me>