{"ecosystem":"pub","package":"hooks","from_version":null,"to_version":null,"changes":[{"from_version":"jni_flutter-v1.0.1","to_version":"jnigen-v0.16.0","change_type":"breaking","description":"Add docs about debugging.","migration_hint":null},{"from_version":"jni_flutter-v1.0.1","to_version":"jnigen-v0.16.0","change_type":"breaking","description":"No more nullable `JType` classes, only `JType` classes, and the `JType` class is simplified.","migration_hint":null},{"from_version":"jni_flutter-v1.0.1","to_version":"jnigen-v0.16.0","change_type":"breaking","description":"Add support for Kotlin interfaces with suspend functions. These can now be implemented using Dart functions that return a `Future`.","migration_hint":null},{"from_version":"jni_flutter-v1.0.1","to_version":"jnigen-v0.16.0","change_type":"breaking","description":"Namespace primitive types to avoid collisions with generated API names, eg `bool`.","migration_hint":null},{"from_version":"jni_flutter-v1.0.1","to_version":"jnigen-v0.16.0","change_type":"breaking","description":"It is no longer necessary to pass around the `JType` in many cases where it used to be required.","migration_hint":null},{"from_version":"jni-v0.15.2","to_version":"jnigen-v0.15.0","change_type":"breaking","description":"Updated to the latest lints.","migration_hint":null},{"from_version":"hooks_runner-v1.1.1","to_version":"jni-v1.0.0","change_type":"breaking","description":"No more nullable `JType` classes, only `JType` classes, and the `JType` class is simplified.","migration_hint":null},{"from_version":"hooks_runner-v1.1.1","to_version":"jni-v1.0.0","change_type":"breaking","description":"**Breaking Change**: All Java wrapper classes have been migrated to extension types. The main effects are:","migration_hint":null},{"from_version":"hooks_runner-v1.1.1","to_version":"jni-v1.0.0","change_type":"breaking","description":"All collections (`JList`, `JMap` etc) are now direct code generated wrappers around the Java objects, so are less Darty. Instead there are now Darty adapter classes you can access via `asDart()`.","migration_hint":null},{"from_version":"hooks_runner-v1.1.1","to_version":"jni-v1.0.0","change_type":"breaking","description":"It is no longer necessary to pass around the `JType` in many cases where it used to be required.","migration_hint":null},{"from_version":"hooks_runner-v1.1.1","to_version":"jni-v1.0.0","change_type":"breaking","description":"Added `Jni.captureStackTraceOnRelease` which defaults to `false`. When this is set, the stack traces of the release points will be stored for `JObject`s to help debug `DoubleReleaseError` and `UseAfterReleaseError`s. This includes the points where `JObject`s have been registered to be released by an `arena` via `JObject.releaseBy`.","migration_hint":null},{"from_version":"native_toolchain_c-v0.17.6","to_version":"jni-v0.15.0","change_type":"breaking","description":"**Breaking Change**: Renamed `JObjType` to `JType`.","migration_hint":null},{"from_version":"native_toolchain_c-v0.17.6","to_version":"jni-v0.15.0","change_type":"breaking","description":"**Breaking Change**: Made all of the type classes internal.","migration_hint":null},{"from_version":"native_toolchain_c-v0.17.6","to_version":"jni-v0.15.0","change_type":"breaking","description":"**Breaking Change**: Removed `Jni.getApplicationClassLoader()`, `Jni.getCurrentActivity()`, and `Jni.getCachedApplicationContext()`. Instead use `Jni.androidApplicationContext(engineId)` to access the application context and use `Jni.androidActivity(engineId)` to acccess the activity.","migration_hint":null},{"from_version":"native_toolchain_c-v0.17.6","to_version":"jni-v0.15.0","change_type":"breaking","description":"Update to the latest lints.","migration_hint":null}],"total":15,"note":"Curated major-version breaking changes. Always verify against the package's official changelog before migrating.","_cache":"hit"}