PackageTrack
Sign in Get early access

analytics_hub_appsflyer

Appsflyer provider for analytics_hub. Forwards LogEvent events to Appsflyer via the official SDK.

0.5.0 4akLoon/analytics_hub

What this package is like to depend on

Last release 18 days ago

05 Aug 2026

Too new to tell

only 2 dated releases

Nearly every release is documented

notes for 2 of 2 stable releases

Nothing withdrawn

no release was ever pulled

5 months old

2 releases · first in 2026

2 releases in the last 12 months

see the full history below

Release timeline

2 releases · Feb 2026 to Aug 2026
Release Pre-release

Releases

latest 2
  1. 0.5.0 05 Aug 2026
    Release notes
    • Release 0.5.0: port zeely-mobile fixes, drop session support, add CI

    Port behavior fixes made in the zeely-mobile copies of these packages:

    • ProviderIdentifier equality/hashCode now include the runtime type so
      identifiers of different subclasses with the same name don't collide
    • AnalyticsHub.initialize initializes providers sequentially
      (Future.forEach) instead of concurrently
    • Quieter logging: sendEvent logs at fine level and the dispatch
      pipeline no longer logs each step
    • Provider constructors accept an optional interceptors parameter

    Remove session support (breaking): Session, HubSessionDelegate,
    AnalyticsHub.sessionDelegate and AnalytycsProvider.setSession are gone;
    apps manage user identity directly on the underlying SDKs. The
    getAnonymousId parameters of the Mixpanel/Appsflyer providers are
    removed with it.

    Add GitHub Actions CI modeled on basalt_dart: analyze/format/test plus
    publish dry-run on every push/PR, and tag-driven pub.dev publishing via
    OIDC (-v tags).

    Co-Authored-By: Claude Fable 5 [email protected]

    • Audit cleanup: drop dead code and unnecessary dependencies
    • Firebase/Appsflyer providers: remove flush() overrides that existed
      only to log a "not supported" message — the base AnalytycsProvider
      flush() is already a no-op. This drops the logging dependency from
      all three provider packages (mixpanel no longer imported it at all).
    • analytics_hub core is now a pure Dart package: flutter_test dev
      dependency removed (tests only use package:test), so dart test
      works without a Flutter SDK.
    • Remove unused dev dependencies: test from the provider packages
      (their tests use flutter_test), lints from mixpanel (inherited from
      the workspace root), test from the root package (no tests there).
    • Provider tests: delete dead _TestEvent classes and
      registerFallbackValue setup left over from the removed setSession
      tests, plus the now-unused analytics_hub imports.
    • Core internals: remove unused DispatchTarget.providerIdentifier
      getter; EventDispatcher.dispatch returns the executor future directly
      instead of awaiting into a local.
    • Root README: close the unterminated yaml code fence in Quick start
      that swallowed the rest of the page on render.

    Co-Authored-By: Claude Fable 5 [email protected]

    • Rename AnalytycsProvider to AnalyticsProvider, fix workspace layout

    Fix the long-standing typo in the provider base class name across all
    packages, docs, examples, and tests. No compatibility alias is kept —
    the packages have no external consumers yet.

    Also move resolution: workspace from pubspec_overrides.yaml into each
    package's pubspec.yaml (the layout basalt_dart and zeely-mobile use, and
    what dart test's workspace validation expects) and delete the
    overrides files.

    Co-Authored-By: Claude Fable 5 [email protected]

    • Fix mixpanel_flutter lower bound for pub.dev score compliance

    Ran pana (the tool pub.dev uses to compute package score) against all
    four packages. analytics_hub itself scores a clean 160/160.

    Found a real bug via the "compatible with dependency constraint lower
    bounds" check: mixpanel_flutter's declared minimum (2.0.0) allows
    versions up to 2.2.0 where Mixpanel.track() returns void instead of
    Future. MixpanelEventResolver.resolve declares a Future
    return type and returns the track() call directly, so pinning an old
    2.x mixpanel_flutter breaks analysis (and would break at runtime for
    anyone actually on that range). Raised the lower bound to >=2.3.0,
    where track() became async. Verified dart analyze is clean and tests
    pass with dependencies downgraded to their lower bounds.

    The three provider packages can't get a full pana score yet since they
    depend on analytics_hub, which isn't published to pub.dev — pana (like
    pub.dev itself) resolves dependency_overrides are ignored for scoring,
    so this is a publish-order concern rather than a code issue: publish
    analytics_hub first, then the providers.

    Co-Authored-By: Claude Fable 5 [email protected]

    • Add design spec for basalt_dart-style documentation

    Covers badges + workspace banners on all READMEs, a "what's inside"
    reference table in the core README, a packages/analytics_hub/doc/
    folder with four deep-dive guides, and a root CONTRIBUTING.md —
    scoped down from basalt_dart's equivalent docs to this repo's size.

    Co-Authored-By: Claude Fable 5 [email protected]

    • Add basalt_dart-style documentation

    Badges + "part of workspace" banners on every README (EN/UA), a
    "what's inside" reference table in the core README, a
    packages/analytics_hub/doc/ folder with four deep-dive guides
    (getting started, providers, interceptors & context, testing), and a
    root CONTRIBUTING.md — implements the design spec, which is removed
    now that it's realized in the actual docs.

    Skipped the MIT license badge from the original spec: the repo has no
    LICENSE file, so that badge would have been false.

    Co-Authored-By: Claude Sonnet 5 [email protected]

    • Remove initialize and dispose from provider lifecycle

    SDK lifecycle belongs in the app — keep only flush for buffered backends.

    Co-authored-by: Cursor [email protected]

    • Fix example formatting for CI

    Co-authored-by: Cursor [email protected]


    Co-authored-by: Claude Fable 5 [email protected]
    Co-authored-by: Cursor [email protected]

    Open source →
    Release notes

    Added

    • Optional interceptors constructor parameter for provider-level interceptors.

    Changed

    • Removed the logging dependency; flush() no longer logs a "not supported" message and simply inherits the base no-op.

    Breaking Changes

    • Removed setSession and the required getAnonymousId parameter along with core session support. Manage the customer user ID directly via AppsflyerSdk.setCustomerUserId.
    • Updated dependency constraint to analytics_hub: ">=0.5.0 <0.6.0".
    Open source →
  2. 0.4.0 26 Feb 2026
    Release notes

    Added

    • Initial Appsflyer provider integration for analytics_hub:
      • AppsflyerAnalyticsHubProvider forwards LogEvent to AppsflyerSdk.logEvent.
      • AppsflyerAnalyticsHubIdentifier for routing events to Appsflyer.
      • Required getAnonymousId callback used when the hub session becomes null to set an anonymous customer user ID via AppsflyerSdk.setCustomerUserId.
    • Example usage and tests for the provider and resolver.
    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