Skip to content

v1.0.0

Latest
Compare
Choose a tag to compare
@JairusSW JairusSW released this 10 Mar 06:04
· 18 commits to master since this release
d57c547

v1.0.0

Release Date: March 9, 2025

After extensive development and testing, json-as has reached its first stable release! Version 1.0.0 delivers robust AssemblyScript-powered JSON serialization and deserialization, optimized for performance and memory efficiency at O(1)

🚀 Highlights of 1.0.0

✨ Major Fixes & Improvements

  • Fixed: Relative paths pointing through node_modules no longer create duplicate Source instances.
  • Fixed: Object keys containing brackets or braces no longer cause premature deserialization termination.
  • Fixed: Various memory optimizations to reduce leaks and improve performance.
  • Fixed: Proper handling of boolean deserialization, preventing crashes on false.
  • Fixed: Proper implementation of JSON.Value for arbitrary value deserialization
  • Fixed: Proper handling of pointers and type errors
  • Fixed: Support for multiple transforms from different libraries working together

🔧 Transform Enhancements

  • New: The behavior of --lib is now built directly into the transform.
  • Refactored: The transform now correctly generates load operations for object keys.
  • Fixed: Whitespace handling in objects and struct deserialization.

🛠️ Feature Additions

  • Custom Serializers & Deserializers – Full support for user-defined (de)serialization logic.
  • JSON.Obj Support – More powerful handling of arbitrary JSON objects.
  • JSON.Raw Support – Support inserting raw JSON blobs into documents
  • JSON.Value Support – Support using arbitrary types in JSON
  • Benchmarks – Performance comparisons for both AssemblyScript and JavaScript environments.
  • Memory Efficiency – Pre-allocated schema sizes reduce unnecessary memory allocations.
  • Central Buffer – Essentially means Zero Memory Growth and allocations

📚 Documentation Updates

  • Added clearer instructions for using @omit, custom serializers/deserializers, and arbitrary values
  • Updated README to reflect the latest feature set

⚡ What's Next?
With json-as now stable, future updates will focus on:

  • Further performance optimizations.
  • Enhancing compatibility with more AssemblyScript projects.
  • Additional utilities for JSON schema validation and transformation.

For a full list of changes, check out the CHANGELOG or visit the GitHub repository.