Skip to content

Releases: fzyzcjy/flutter_rust_bridge

v2.4.0

13 Sep 02:06
Compare
Choose a tag to compare

v2.3.0

18 Aug 00:39
Compare
Choose a tag to compare

v2.2.0

07 Aug 05:54
Compare
Choose a tag to compare

v2.1.0

06 Jul 12:24
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.
  • Add the ability to generate plugins from the CLI tool #2144 (thanks @mcmah309)
  • Fix codegen halt when having boxed trait objects #2180
  • Add attribute #[frb(dart_async)] #2181
  • Fix Dart closures cannot be encoded when using the new Dart JS interop #2191
  • Expose Rust executor's async runtime for customization #2151
  • Generate methods of Default trait #2150
  • Automatically rename function names to avoid keyword conflict #2150
  • Improve parsing trait impl in third party crates #2150
  • Support more attributes #2140
  • Fix generated use statement pointing to self #2140
  • Fix linter warning avoid_return_types_on_setters #2140
  • Reduce number of generated files #2140
  • Add default_dart_async configuration option #2139
  • Handle root module scenario in pub use transformer #2124
  • Improve hints when fails to parse a struct or enum #2124

v2.0.0

21 Jun 02:31
Compare
Choose a tag to compare

v2.0.0-dev.42

20 Jun 11:14
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 brackets and nesting in pub use (such as pub use a::{b, x::{y,z}}) #2120
  • Support providing configuration both by command line and by config file at the same time #2119
  • Tell user reasons when skipping traits #2121
  • Update default template comments #2118
  • Allow using arbitrary frb attribute as an indicator to include an item #2121
  • Improve hints when user specify custom wasm-pack-rustflags but does not contain default one #2122

v2.0.0-dev.41

19 Jun 14:27
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.
  • Use dart.library.js_interop rather than dart.library.html #2113 (thanks @aran)
  • Auto skip methods in trait definitions that has Self as inputs because it cannot be translated to Dart #2099
  • Add type_64bit_int to config #2096
  • Improve namespace choices for opaque types #2096
  • Hint users when having references in output type, hint when wrong rust_input, and improve docs #2100
  • Improve warning message #2098
  • Experiment more about translating whole audio crate#2096
  • Improve internal code #2096
  • Make generated output sorted when using proxy_enum and trait_impl #2115

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