Skip to content

Upgrading ffigen 0.1 to 0.2

Breaking0.1.5 → 0.2.4+1Breaking4New7Changed3Fixed3Other1

BreakingUpgrade verdict

4 breaking changes.

  • Structs, enums and functions can now have their members renamed with regular expressions, and the old prefix settings are gone.
  • Code that calls `build` or `dryRun` must now pass a `PackageLayout` value.
  • The configuration file now groups header settings together, and you can use wildcard patterns to pick header files.
  • The include and exclude settings for declarations must now be written as a list.
Top 3 of 4 that need code or config changes
Breaking4
Adds Regexp based member renaming via member-rename and removes prefix and prefix-replacement subkeys.
member-renameprefixprefix-replacement
The build and dryRun functions now take a PackageLayout argument.
PackageLayoutbuilddryRun
Moves header entry-points and include-directives under a headers key, with glob syntax allowed.
entry-pointsinclude-directivesheaders
Changes declaration include/exclude config to be specified as a list.
includeexclude

Generated by DepDelta from published Dart source. Not mixed with prose notes.

  • removed: class ConfigError implements Exception
  • removed: ctor ConfigError([this.message])
  • removed: field Config.arrayWorkaround: bool
  • removed: field Config.commentType: CommentType
  • removed: field Config.compilerOpts: List<String>
  • removed: field Config.enumClassDecl: Declaration
  • removed: field Config.functionDecl: Declaration
  • removed: field Config.headerFilter: HeaderFilter
  • removed: field Config.headers: List<String>
  • removed: field Config.macroDecl: Declaration
  • removed: field Config.output: String
  • removed: field Config.preamble: String
  • removed: field Config.sort: bool
  • removed: field Config.structDecl: Declaration
  • removed: field Config.unnamedEnums: bool
  • removed: field Config.useSupportedTypedefs: bool
  • removed: field Config.wrapperDocComment: String
  • removed: field Config.wrapperName: String
  • removed: field ConfigError.message: final String
  • removed: method ConfigError.toString(): String
  • changed: ctor Library({ @required String name, String description, @required this.bindings, String header, }) → ctor Library({ @required String name, String description, @required this.bindings, String header, bool dartBool = …, })
  • changed: function parse(Config conf, {bool sort = …}): Library → function parse(Config c): Library
  • added: get Config.arrayWorkaround: bool
  • added: get Config.commentType: CommentType
  • added: get Config.compilerOpts: List<String>
  • added: get Config.dartBool: bool
  • added: get Config.enumClassDecl: Declaration
  • added: get Config.functionDecl: Declaration
  • added: get Config.headers: Headers
  • added: get Config.macroDecl: Declaration
  • added: get Config.output: String
  • added: get Config.preamble: String
  • added: get Config.sort: bool
  • added: get Config.structDecl: Declaration
  • added: get Config.unnamedEnums: bool
  • added: get Config.useSupportedTypedefs: bool
  • added: get Config.wrapperDocComment: String
  • added: get Config.wrapperName: String