PackageTrack
Sign in Get early access

pigeon

Code generator tool to make communication between Flutter and the host platform type-safe and easier.

28.0.0 1000K downloads/mo #77 most downloaded on pub.dev flutter/packages

What this package is like to depend on

Last release 2 days ago

21 Aug 2026

Ships fairly regularly

a new release about every 2 weeks

Nearly every release is documented

notes for 251 of 251 stable releases

1 version withdrawn

withdrawn after publishing

7 years old

262 releases · first in 2020

31 releases in the last 12 months

see the full history below

Release timeline

262 releases · Feb 2020 to Aug 2026
2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 60 of 262
  1. 28.0.0 21 Aug 2026
    Release notes

    Adds support for modern async method styles in swift and kotlin. This is now the default. Also adds a new annotation AsyncCallback that reverts to the old style.

    precursor to #11352

    Open source →
    Release notes
    • Breaking Change Updates Kotlin and Swift generators to generate suspend functions and async throws signatures for @FlutterApi methods by default, and for @HostApi methods annotated with @async.
      • Use @asyncCallback if callback-style signatures are required.
    Open source →
  2. 27.3.2 19 Aug 2026
    Release notes

    Part of fixing flutter/flutter#183945.

    Regenerating pigeon files will fix issue.

    Pre-Review Checklist

    Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. Comments from the gemini-code-assist bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed.

    Open source →
    Release notes
    • [dart] Fixes lint warning from unused codec variable in Dart proxy classes.
    Open source →
  3. 27.3.1 17 Aug 2026
    Release notes
    • Updates analyzer dependency to support versions 13 and 14.
    • Updates minimum Dart SDK constraint to 3.11.0.
    Open source →
  4. 27.3.0 21 Jul 2026
    Release notes
    • Adds support for sharing constants across platforms.
    Open source →
  5. 27.2.0 17 Jul 2026
    Release notes
    • Adds support for empty data classes.
    Open source →
  6. 27.1.2 13 Jul 2026
    Release notes
    • Reports a clear error when an input file uses an enhanced enum (one with a constructor, fields, methods, or arguments on its values), instead of silently generating incorrect output.
    Open source →
  7. 27.1.1 09 Jul 2026
    Release notes
    • [dart] Adds usage documentation to generated event channel methods, and emits the user's documentation comments on them.
    Open source →
  8. 27.1.0 11 Jun 2026
    Release notes
    • [swift] Adds CaseIterable conformance to generated enums.
    Open source →
  9. 27.0.0 10 Jun 2026
    Release notes
    • Breaking Change Overrides toString (or equivalent) methods on generated data classes
      • This can conflict with custom description implementations in Swift.
    • [swift] Updates isNullish to handle double nested Any? values.
    • Updates minimum supported SDK version to Flutter 3.38/Dart 3.10.
    Open source →
  10. 26.3.4 08 Apr 2026
    Release notes
    • [kotlin] Updates generated error class to inherit from RuntimeException instead of Throwable, for better Java interoperability.
    Open source →
  11. 26.3.3 28 Mar 2026
    Release notes
    • Updates analyzer dependency to support versions 10 through 12.
    Open source →
  12. 26.3.2 26 Mar 2026
    Release notes
    • Updates analyzer dependency to support version 10.
    Open source →
  13. 26.3.1 25 Mar 2026
    Release notes
    • Fixes dartdoc comments that accidentally used HTML.
    Open source →
  14. 26.3.0 25 Mar 2026
    Release notes
    • Optimizes and improves data class equality and hashing.
    • Changes hashing and equality methods to behave consistently across platforms.
    • Adds equality methods to previously unsupported languages.
    Open source →
  15. 26.2.3 11 Mar 2026
    Release notes
    • Produces a helpful error message when a method return type is missing or an unsupported type, such as a function type or record type.
    Open source →
  16. 26.2.1 11 Mar 2026
    Release notes
    • [dart] Improves nullability-handling in generated code.
    Open source →
  17. 26.2.0 09 Mar 2026
    Release notes
    • [kotlin] Adds option to add javax.annotation.Generated annotation.
    Open source →
  18. 26.1.10 02 Mar 2026
    Release notes
    • Dramatically reduces the number of File write operations sent to the operating system during code-generation. This improves performance of IDEs and the Dart analysis server.
    Open source →
  19. 26.1.9 02 Mar 2026
    Release notes
    • [dart] Reduces much duplication in reply-handling code.
    Open source →
  20. 26.1.8 26 Feb 2026
    Release notes
    • Makes some internal class constructors constant.
    Open source →
  21. 26.1.7 22 Jan 2026
    Release notes
    • [objc] Updates to use module imports.
    Open source →
  22. 26.1.5 18 Dec 2025
    Release notes
    • [kotlin] Fixes a "bridge method" warning when implementing an event stream handler.
    Open source →
  23. 26.1.4 04 Dec 2025
    Release notes
    • [swift][kotlin] Fixes crash that occurs when an object that is removed from the instance manager calls to Dart.
    Open source →
  24. 26.1.3 04 Dec 2025
    Release notes
    • [dart] Fixes error from constructor parameter sharing name with attached field for a ProxyApi.
    • Updates minimum supported SDK version to Flutter 3.35/Dart 3.9.
    Open source →
  25. 26.1.2 21 Nov 2025
    Release notes
    • [kotlin] Fixes compilation error with unbounded type parameter for InstanceManager.
    Open source →
  26. 26.1.1 18 Nov 2025
    Release notes
    • Updates supported analyzer versions to 8.x or 9.x.
    • Updates minimum supported SDK version to Flutter 3.32/Dart 3.8.
    Open source →
  27. 26.1.0 12 Nov 2025
    Release notes
    • Deprecates dartHostTestHandler and dartTestOut.
      • If you have a use case where this cannot easily be replaced with a mock or fake of the generated Dart API, please provide details in https://github.com/flutter/flutter/issues/178322.
    Open source →
  28. 26.0.5 06 Nov 2025
    Release notes
    • [kotlin] Serialize custom enums as Long instead of Int to avoid ClassCastException on decoding.
    Open source →
  29. 26.0.4 06 Nov 2025
    Release notes
    • Adds compatibility with analyzer 8.x.
    Open source →
  30. 26.0.3 04 Nov 2025
    Release notes
    • [kotlin] Removes all containsKey and replaces with contains.
    Open source →
  31. 26.0.2 13 Oct 2025
    Release notes
    • [kotlin] Fixes support for classes that override equals and hashCode for ProxyApis.
    • [kotlin] Adds error message log when a new Dart proxy instance fails to be created.
    • Updates minimum supported SDK version to Flutter 3.29/Dart 3.7.
    Open source →
  32. 26.0.1 11 Aug 2025
    Release notes
    • Improves documentation of ProxyApi annotation and internal Dart ProxyAPI helper functions.
    • Moves helper functions for generating Dart portion of ProxyAPIs.
    Open source →
  33. 26.0.0 17 Jul 2025
    Release notes
    • Breaking Change [dart] Changes name of constructors used to create subclasses of ProxyApis to pigeon_**original_name**.
    • [dart] Adds ProxyApi overrides classes to be used in Flutter unit tests.
    Open source →
  34. 25.5.0 18 Jun 2025
    Release notes
    • [dart] Changes the default InstanceManager and its initialization to no longer make a message call when used in a Flutter unit test.
    Open source →
  35. 25.4.0 17 Jun 2025
    Release notes
    • [gobject] Adds type id constants in header files so that they can be used by the user.
    • Updates minimum supported SDK version to Flutter 3.27/Dart 3.6.
    Open source →
  36. 25.3.2 15 May 2025
    Release notes
    • [dart] Fixes null pointer crashes/exceptions caused by premature finalization of Dart instances for ProxyApis.
    Open source →
  37. 25.3.1 17 Apr 2025
    Release notes
    • [kotlin] Fixes Kotlin InstanceManager not properly removing callbacks from handler.
    • [kotlin] Fixes SyntheticAccessor lint caused by private utility methods.
    Open source →
  38. 25.3.0 08 Apr 2025
    Release notes
    • [swift] Adds equality methods to generated data classes.
    • [dart, kotlin] Shortens equality methods.
    Open source →
  39. 25.2.0 27 Mar 2025
    Release notes
    • [kotlin] Adds equality methods to generated data classes.
    Open source →
  40. 25.1.0 20 Mar 2025
    Release notes
    • [dart] Adds equality methods to generated data classes.
    Open source →
  41. 25.0.0 17 Mar 2025
    Release notes
    • Breaking Change Removes oneLanguage field from PigeonOptions.
    • Separates internal options classes from user facing options.
    • Adds mergeDefinitionFileOptions parameter to runWithOptions method.
    • Relocates injectOverflowTypes to non-public facing method.
    Open source →
  42. 24.2.2 06 Mar 2025
    Release notes
    • Updates compileSdk 34 to flutter.compileSdkVersion.
    Open source →
  43. 24.2.1 18 Feb 2025
    Release notes
    • [dart] Fixes potential race condition caused by a ProxyApi constructor message call being made in an async method.
    Open source →
  44. 24.2.0 15 Feb 2025
    Release notes
    • Adjusts task queues to use a shared task queue for all methods in a single API instance, to give the same ordering guarantees as non-task-queue usage.
    • [swift] Adds task queue support to the Swift generator.
    Open source →
  45. 24.1.1 10 Feb 2025
    Release notes
    • [swift, kotlin] Adds an error message when a ProxyAPI callback method that returns a non-null value is nullable.
    • [swift, kotlin] Adds an error message in the ProxyApiBaseCodec when an instance could not be retrieved when reading a value.
    • [swift, kotlin] Fixes ProxyAPI platform APIs not calling completion when creating a new instance.
    Open source →
  46. 24.1.0 06 Feb 2025
    Release notes
    • [kotlin, swift] Adds annotation options to omit shared classes used in Event Channels.
    Open source →
  47. 24.0.0 03 Feb 2025
    Release notes
    • Breaking Change Relocates some files in lib that were not intended for direct client use to lib/src.
    Open source →
  48. 23.0.0 03 Feb 2025
    Release notes
    • Breaking Change [swift] Fixes a compile error about PigeonError's sendability conformance in Swift 6.
      • PigeonError's init now requires the "details" argument to be Sendable.
    Open source →
  49. 22.7.4 23 Jan 2025
    Release notes
    • [dart] Fixes bug with multi-instance event channel support.
    Open source →
  50. 22.7.3 18 Jan 2025
    Release notes
    • Adds compatibility with analyzer 7.x.*.
    Open source →
  51. 22.7.2 02 Jan 2025
    Release notes
    • Updates README to discuss best practices for using Pigeon-generated code.
    Open source →
  52. 22.7.1 27 Dec 2024
    Release notes
    • [swift] Adds support for platform checks of imports of ProxyApis.
    • Updates minimum supported SDK version to Flutter 3.22/Dart 3.4.
    Open source →
  53. 22.7.0 05 Dec 2024
    Release notes
    • [swift, kotlin] Adds event channel support.
    • [swift, kotlin] Adds sealed class inheritance support.
    • [swift] Updates codec class names to be upper camel case.
    Open source →
  54. 22.6.4 04 Dec 2024
    Release notes
    • [swift] Fixes the channel names of the named constructors of ProxyApis.
    Open source →
  55. 22.6.3 03 Dec 2024
    Release notes
    • Replaces deprecated collection method usage.
    Open source →
  56. 22.6.2 22 Nov 2024
    Release notes
    • Removes the @protected annotation from the InstanceManager field of the PigeonInternalProxyApiBaseClass.
    Open source →
  57. 22.6.1 12 Nov 2024
    Release notes
    • [gobject] Moves class declarations to the header to work around a bug in some versions of glib.
    Open source →
  58. 22.6.0 23 Oct 2024
    Release notes
    • [swift] Adds includeErrorClass to SwiftOptions.
    Open source →
  59. 22.5.0 11 Oct 2024
    Release notes
    • [swift] Adds implementation for @ProxyApi.
    Open source →
  60. 22.4.2 03 Oct 2024
    Release notes
    • Updates README.md to replace the deprecated flutter pub run pigeon command with dart run pigeon.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive