Skip to content

Releases: fzyzcjy/flutter_rust_bridge

v2.0.0-dev.40

16 Jun 23:27
Compare
Choose a tag to compare

v2.0.0-dev.39

13 Jun 13:15
Compare
Choose a tag to compare
  • Please refer to https://fzyzcjy.github.io/flutter_rust_bridge/guides/miscellaneous/whats-new for what's changed in V2.
  • Do not create empty logs directory when not in verbose mode #2057
  • Automatically strip prefix set_/get_ when it is a setter/getter function #2058
  • Support adding errors to stream sink #2059
  • Support import statements in dart_code #2061
  • Add #[frb(type_64bit_int)] to pick preferred Dart big integer type #2065
  • Support user-defined custom serializers and deserializers #2067
  • Support attributes on impl block ; Improve ignore category message ; Fix external methods are wrong ignored #2069
  • Support #[frb(name)] on fields to rename them ; Automatically rename Dart field names if they conflict with Dart keywords #2070
  • Refactor internal code #2064 #2062
  • Migrate to new Dart web package #2063

v2.0.0-dev.38

09 Jun 23:35
Compare
Choose a tag to compare
  • Please refer to https://fzyzcjy.github.io/flutter_rust_bridge/guides/miscellaneous/whats-new for what's changed in V2.
  • Fix dashed library names #2034 (thanks @vhdirk)
  • Refactor internals to base on mods instead of files #2000
  • Support code in mod file #2000
  • Support code in lib.rs file #2000
  • Fix dart_code cannot generate when containing brackets confusing to mod parser #2000
  • Support multiple input path prefixes #2000
  • Add dart_type_rename to customize Dart names of opaque types #2006
  • Support automatic scanning of third party crates (part 1) #2007
  • Enhance usize and isize #2008
  • Support syntax of pub use something::* #2009
  • Improve Dart output directory of third party crates #2010
  • Support overriding things in third party crate #2011 #2013
  • Automatically mark methods of non-pub structs as ignored #2012
  • Refactor macros information encoding and decoding #2014
  • Detect and skip functions with generics #2015
  • Auto detect as opaque when third party struct/enum has non public field #2016
  • Auto convert reference type in return type as unit type #2017
  • Automatically mirror for scanned third party types #2018
  • Skip generating auto accessors for borrowed fields #2018
  • Support slices as arguments (such as &[u8], &[Something]) #2019
  • Support non-exhaustive enumerations #2020
  • Improve Dart import generation #2021
  • Support trait methods and trait default implementations #2024
  • Improve pub use parsing and trait definition parsing in third party crates #2025
  • Add integrate_third_party example #2027
  • Support overriding third party methods #2029
  • Support adding new methods to third party structs #2029
  • Fix third party pub use scanning problem #2030
  • Support multiple #[frb(external)] impl blocks for a single struct #2030
  • Fix scanning third party pub use concrete type for methods #2031
  • Make generated Dart opaque class abstract to improve testability #2032
  • Refactor HIR (high-level intermediate representation) #2037
  • Add stop_on_error configuration #2037
  • Refactor override_priority and refine_namespace #2041
  • Support trait definitions and translate to Dart abstract classes #2033
  • Support third party overriding traits #2033
  • Refactor MIR (mid-level intermediate representation) parser #2044
  • Support #[frb(generate_impl_enum)] #2046
  • Fix overriding attributes in third party crates for traits #2046
  • Add RustOpaqueInterface to cleanup generated interface #2047
  • Refactor to extract early_generator between high-level intermediate representation and mid-level intermediate representation #2049
  • Support #[frb(proxy)] #2050 #2052 #2053
  • Refactor to extract Lockable #2051
  • Support &dyn Trait #2054

v2.0.0-dev.37

30 May 10:03
Compare
Choose a tag to compare

v2.0.0-dev.36

26 May 05:14
Compare
Choose a tag to compare

v2.0.0-dev.35

20 May 12:26
Compare
Choose a tag to compare

v2.0.0-dev.34

18 May 14:22
Compare
Choose a tag to compare

v2.0.0-dev.33

06 May 06:45
Compare
Choose a tag to compare

v2.0.0-dev.32

16 Apr 00:17
Compare
Choose a tag to compare
  • Please refer to https://fzyzcjy.github.io/flutter_rust_bridge/guides/miscellaneous/whats-new for what's changed in V2.
  • Support self in non-opaque case (&self already supported before) #1880
  • Support &SomeStructOrEnum in non-opaque case (SomeStructOrEnum already supported before) #1880
  • Support &str type (String already supported before) #1880
  • Support instance and static methods for enums without fields #1879
  • Revert stream default semantics to not wait for Rust function execution #1877
  • Allow users to customize whether to await for Rust function for streams #1877
  • Hint users when a type is automatically inferred as both opaque and non-opaque #1876
  • Add check to ensure Rust and Dart has in-sync generated code #1878

v2.0.0-dev.31

10 Apr 00:54
Compare
Choose a tag to compare
  • Please refer to https://fzyzcjy.github.io/flutter_rust_bridge/guides/miscellaneous/whats-new for what's changed in V2.
  • Support methods in external crates #1861
  • Support inserting arbitrary Dart code #1860
  • Support disabling default Hash/Eq generation #1860
  • Support passing stream object at arbitrary location and arbitrary amount #1867
  • Let Rust function finish execution before returning stream object #1867
  • Support cases when using Rust conditional compilation #1856
  • Fix not exporting some struct types needed for customizing handlers #1865
  • Fix ignoring user-provided custom handler objects #1865
  • Fix ReceivePort is not closed when subscription is cancelled before Rust closes the stream #1857