Skip to content

Releases: mrousavy/nitro

Release 0.4.0

13 Aug 23:20
e0546ca
Compare
Choose a tag to compare

0.4.0 (2024-08-13)

✨ Features

  • Add NitroModules.hasHybridObject(..) and NitroModules.getAllHybridMethodNames() (#30) (6d2338d)
  • Approach 1 of implementing Swift (#24) (f90a132)
  • Support unordered_map<K, V> (and fix arrays bidirectionally) (#28) (9eac80f)
  • Try CarSwift experiment (db05f1f)

🐛 Bug Fixes

  • Android build and usages of Codegen types in react-native-nitro-image (#29) (a68f8de)
  • dont export funcs (432bb05)
  • Fix Swift umbrella header includes (#19) (0dd6322)
  • Fix Android build/JNI setup (#27) (d57c155)
  • Fix CMake extension (afe7fd6)

Release 0.3.0

09 Aug 15:33
f69d103
Compare
Choose a tag to compare

0.3.0 (2024-08-09)

✨ Features

  • Add addNumbers(..) and addStrings(..) tests (ideal for benchmarking) (d51766a)
  • Add custom path arg (aa8e900)
  • Make HybridObject a NativeState (#11) (86c3702), closes #12
  • Speed up tests by making a timeouted Promise (e7a361e)

💨 Performance Improvements

  • Do all .is.. checks only in DEBUG (f5bd9e1)

🐛 Bug Fixes

  • Add nullptr check to HybridObjectRegistry (ec910a7)
  • Filter duplicate files (ac7a089)
  • Fix CMake target_sources being wrong (bc88e52)
  • Remove unresolved import on Android (f7646c3)
  • Rename Swift bridge to +ResultTypes (de36e17)
  • Set up log-level in middleware (bc56a7c)

📚 Documentation

  • mention required debugLevel (#15) (4181c43)
  • specify how nitrogen detect your specs (#14) (7a914cf)

Release 0.1.7

07 Aug 12:35
c249e9c
Compare
Choose a tag to compare

0.1.7 (2024-08-07)

✨ Features

  • Add JSIConverter<struct>::canConvert (f4c5581)
  • Implement JSIConverter<enum>::canConvert (for TS unions) - NOW WE COVERED ALL CASES/TESTS! 🥳 (0b0b149)
  • Support JSIConverter<AnyMap>::canConvert (+ AnyValue and unordered_map<string, T>) (882054e)
  • Support dynamically converting jsi::Value to any T in a variant by adding JSIConverter<T>::canConvert(...) 🎉 (c7b0cde)

🐛 Bug Fixes

  • Add tests and fix some (872e77c)
  • Also mark some function return types as optional (17299bd)
  • Better error messages for variant and ArrayBuffer (f383d69)
  • Fix null/undefined not being parsed as optional (ef50863)
  • Fix a whole bunch of issues. (a0b6471)
  • Fix broken tuple test, now works Float2 or Float3 (cf82da4)
  • Fix duplicate types in variant (ecbd0ad)
  • Fix enum conversions canConvert lowercase (46c2676)
  • Fix generation of enums (31f90d0)
  • Remove old TestHybridObject (97c838b)
  • Return true for empty array's canConvert (2910180)

Release 0.2.0

08 Aug 10:31
736e4fe
Compare
Choose a tag to compare

Changelog:

0.2.0 (2024-08-08)

✨ Features

  • Make HybridObject a NativeState (#11) (86c3702), closes #12
  • Cache toObject(...) using jsi::WeakObject and correctly set setExternalMemoryPressure #13

💨 Performance Improvements

  • Do all .is.. checks only in DEBUG (f5bd9e1)

Release 0.1.5

05 Aug 22:36
cf0c6e3
Compare
Choose a tag to compare

0.1.5 (2024-08-05)

✨ Features

  • Add A LOT of tests to TestHybridObject (7cbd66b)
  • Add all tests (47fce56)
  • Add stub for web (9e4be9a)
  • Add tests for ArrayBuffer (0e51985)
  • Extract vector, map and optional (fef7f62)
  • Move to templates (87eae31)
  • Separate out JSIConverter files (9818b86)
  • Support ArrayBuffers from JS, and fix JSIConverter<T> template (592ceb9)
  • Support optional parameters (#9) (273772c)
  • Throw on anonymous objects (b3b1ebf)
  • Use bun (#8) (5cd87f2)
  • Use efficient ThreadPool to speed up Promise creation (950ff03)

💨 Performance Improvements

  • Make args check constexpr (401743c)

🐛 Bug Fixes

Release 0.1.1

01 Aug 22:36
58b9279
Compare
Choose a tag to compare

Release 0.1.0

01 Aug 22:35
8f125cc
Compare
Choose a tag to compare

0.1.0 (2024-08-01)

💨 Performance Improvements

  • Also cache getPropertyNames (eddad79)
  • Make all JSIConverter calls inline (b5d832c)
  • Pass function to Promise and JSIConverter as move (04f9e94)
  • Speed up Dispatcher get calls (a6b69b3)
  • Use contains instead of count (756cd90)
  • Use get (assert) instead of as for faster perf! (0da06a7)
  • Use hashing functions for literal types (ab08c97)

✨ Features

  • Add ArrayBuffer support (44608b8)
  • Add hashString with compile time length (1cc33e0)
  • Add kind (84ff92a)
  • Add logLevel and parse properly (74076e7)
  • Add memorySize to HybridObjects (47800ec)
  • Add name and equals methods to HybridObject (4262b79)
  • Add override prop (d524536)
  • Add saveToFile(path) (d784f1d)
  • Add fbjni, RN and Nitro as core libs (107bbe2)
  • Add Kotlin (e2636b7)
  • Add tuple support to JSIConverter (f96df1d)
  • Allow optional (c3d16ed)
  • Allow passing in path to script (f93b63e)
  • Also create Test obj on Android!! :))))) (23ecec0)
  • Also log total alive instances (5c50d02)
  • Always create C++ code (0e39f2a)
  • Always write trailing newline (b3dbb0f)
  • Android builds! (1a037c0)
  • Build C++ libs ourselves instead of CodeGen (e2cd332)
  • call into java (9c66382)
  • Convert structs to and from JSI (a7eb13a)
  • Create AnyMap (c043b61)
  • Create Data based ArrayBuffer for Swift (b310478)
  • Create ForeignArrayBuffer (cf2eb19)
  • Create getHybridPart to move this logic (eec426e)
  • Create JSICacheReference for safer cache access (3e0279a)
  • Create OwningLock to lock mutex (fc4eb15)
  • Create react-native-nitro-image (24167c3)
  • Create RuntimeError (23c4cbd)
  • Create fbjni C++ object (76bc9f1)
  • Create fibonacci for 80 (613f288)
  • Create files in nitrogen/generated (9e34873)
  • Create initializer and registry on Android (4115045)
  • Create Kotlin code! (c22acb6)
  • Create Kotlin structs (data classes) (952147a)
  • Don't expose header, fix cycle (ec2be05)
  • Drop the Swift stuff again (1380e3e)
  • Forward declare structs and enums as well :) (d97d0d3)
  • Generate NitroImage+autolinking.rb (b137a0f)
  • Generate all Swift result types in a single file (a071e17)
  • Generate CMake autolinking setup as well (e9dda33)
  • Generate gradle file as well (0eec2bd)
  • Generate Swift protocol BASE (9e14e67)
  • Generate to platform subfolders (7119d8f)
  • Group files by platform, to prettify logging (99ac21d)
  • Implement == for OwningReference (803c7bf)
  • Implement a bunch of Swift types (8673069)
  • Implement enum Java <-> C++ parsers (952730a)
  • Implement HybridTestObject (04f4fe0)
  • Implement Method, Parameter and Property for Kotlin (ff0c102)
  • Inform JS GC about memory pressure if it is a HybridObject (2e503ab)
  • It works! (f89a5f4)
  • Load C++ library from Java (717f466)
  • Log runtime thread ID (f6853f7)
  • Log when files changed! (560e333)
  • Make single required constructor for structs (83bd6f7)
  • Map roundtrip (JS -> C++) (18d509c)
  • Move Hash.hpp into core codebase (1186148)
  • Namespaces! (fb3317c)
  • Non-duplicate forward declarations (066469b)
  • Owning array buffer (9d301cc)
  • Parse nitro.json file with Zod (dd3e559)
  • Prettify a few edge cases in...
Read more

Release 0.0.9

01 Aug 23:39
2623893
Compare
Choose a tag to compare

0.0.9 (2024-08-01)

Release 0.0.8

01 Aug 23:35
8211fc2
Compare
Choose a tag to compare

0.0.8 (2024-08-01)

Release 0.0.7

01 Aug 23:28
2787ef0
Compare
Choose a tag to compare

0.0.7 (2024-08-01)

🐛 Bug Fixes