From e737d402e6226bdcd4d47725206a96353e276266 Mon Sep 17 00:00:00 2001 From: pandeymangg Date: Fri, 12 Jun 2026 19:42:24 +0530 Subject: [PATCH 1/3] release changes --- .github/workflows/release.yml | 17 +++++------------ packages/formbricks/CHANGELOG.md | 13 +++++++++++++ packages/formbricks/pubspec.yaml | 5 +---- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 322da95..25d709c 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,9 +2,8 @@ name: Release on: workflow_dispatch: - push: - tags: - - "*.*.*" + release: + types: [published] concurrency: group: ${{ github.workflow }}-${{ github.ref }} @@ -60,14 +59,8 @@ jobs: run: make pub-publish-dry-run - name: Publish to pub.dev - if: github.event_name == 'push' && github.ref_type == 'tag' - env: - PUB_PUBLISH_ENABLED: ${{ vars.PUB_PUBLISH_ENABLED }} + if: github.event_name == 'release' run: | - # Fail-safe: publishing is irreversible, so it's gated on PUB_PUBLISH_ENABLED. - # First resolve the pub.dev name (taken; latest 0.0.7), bump version, drop publish_to: none. - if [ "$PUB_PUBLISH_ENABLED" != "true" ]; then - echo "::notice::Publish skipped — set repository variable PUB_PUBLISH_ENABLED=true to enable (see prerequisites in release.yml)." - exit 0 - fi + # Prereqs: the release's tag matches the pubspec version, and pub.dev + # automated publishing is configured to trust this repo + workflow. make pub-publish-force diff --git a/packages/formbricks/CHANGELOG.md b/packages/formbricks/CHANGELOG.md index 3316528..2a813b7 100644 --- a/packages/formbricks/CHANGELOG.md +++ b/packages/formbricks/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## 0.1.0 + +First beta release. + +- `Formbricks.setup(...)` — initialize against a workspace, with persisted + config, lifecycle-aware expiry refresh, and error-state cooldown. +- `Formbricks.track(...)` — code-action tracking. +- User identification — `setUserId`, `setAttribute` / `setAttributes`, + `setLanguage`, and `logout`, with debounced, coalesced backend sync. +- Survey eligibility filtering — `displayOption`, `recontactDays`, + `displayLimit`, segment targeting, and the `displayPercentage` gate. +- Targeted in-app surveys rendered through a hardened WebView host. + ## 0.0.1 - Establishes the Flutter SDK package and monorepo wiring. diff --git a/packages/formbricks/pubspec.yaml b/packages/formbricks/pubspec.yaml index 583ecf1..399c3d9 100644 --- a/packages/formbricks/pubspec.yaml +++ b/packages/formbricks/pubspec.yaml @@ -2,14 +2,11 @@ name: formbricks description: >- Formbricks Flutter SDK — connect your Flutter app to Formbricks, identify users, track actions, and render targeted in-app surveys. -version: 0.0.1 +version: 0.1.0 homepage: https://formbricks.com repository: https://github.com/formbricks/flutter issue_tracker: https://github.com/formbricks/flutter/issues -# Not published to pub.dev yet — publish_to is disabled until the first release. -publish_to: none - # Part of the root pub workspace — shares the root lockfile + analysis config. resolution: workspace From 7546a2862dead4c235302fb5a59102f7f96d6625 Mon Sep 17 00:00:00 2001 From: pandeymangg Date: Fri, 12 Jun 2026 19:45:17 +0530 Subject: [PATCH 2/3] some more changes --- .github/workflows/release.yml | 14 ++++++++++++++ packages/formbricks/CHANGELOG.md | 7 ------- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 25d709c..a59cbcf 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,6 +30,20 @@ jobs: with: persist-credentials: false + # release events can't be filtered by tag in `on:`, so gate here: abort + # unless the release tag is a X.Y.Z version (optionally with a -prerelease + # suffix). Skipped for manual workflow_dispatch runs. + - name: Validate release tag is a version + if: github.event_name == 'release' + env: + TAG: ${{ github.event.release.tag_name }} + run: | + if [[ ! "$TAG" =~ ^[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z.]+)?$ ]]; then + echo "::error::Release tag '$TAG' is not a X.Y.Z version. Aborting." + exit 1 + fi + echo "Release tag '$TAG' OK." + - name: Set up Dart for pub.dev OIDC uses: dart-lang/setup-dart@65eb853c7ba17dde3be364c3d2858773e7144260 # v1.7.2 diff --git a/packages/formbricks/CHANGELOG.md b/packages/formbricks/CHANGELOG.md index 2a813b7..ea110dd 100644 --- a/packages/formbricks/CHANGELOG.md +++ b/packages/formbricks/CHANGELOG.md @@ -12,10 +12,3 @@ First beta release. - Survey eligibility filtering — `displayOption`, `recontactDays`, `displayLimit`, segment targeting, and the `displayPercentage` gate. - Targeted in-app surveys rendered through a hardened WebView host. - -## 0.0.1 - -- Establishes the Flutter SDK package and monorepo wiring. -- Adds `Formbricks.setup(...)` with persisted workspace/user state. -- Adds `Formbricks.track(...)` for code-action tracking. -- Renders targeted in-app surveys through a hardened WebView host. From 41d926ac88074f0901a0e1f9864ace9dee389882 Mon Sep 17 00:00:00 2001 From: pandeymangg Date: Mon, 15 Jun 2026 14:21:15 +0530 Subject: [PATCH 3/3] fixes coderabbit feedback --- .github/workflows/release.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index fb515b2..55a3293 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -31,15 +31,17 @@ jobs: persist-credentials: false # release events can't be filtered by tag in `on:`, so gate here: abort - # unless the release tag is a X.Y.Z version (optionally with a -prerelease - # suffix). Skipped for manual workflow_dispatch runs. + # unless the release tag is a semver version — X.Y.Z with optional + # dot-separated -prerelease and +build identifiers (e.g. 1.2.3, 1.2.3-rc-1, + # 1.2.3-rc.1, 1.2.3+build.5). Skipped for manual workflow_dispatch runs. - name: Validate release tag is a version if: github.event_name == 'release' env: TAG: ${{ github.event.release.tag_name }} run: | - if [[ ! "$TAG" =~ ^[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z.]+)?$ ]]; then - echo "::error::Release tag '$TAG' is not a X.Y.Z version. Aborting." + semver='^[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?([+][0-9A-Za-z-]+(\.[0-9A-Za-z-]+)*)?$' + if [[ ! "$TAG" =~ $semver ]]; then + echo "::error::Release tag '$TAG' is not a semver version. Aborting." exit 1 fi echo "Release tag '$TAG' OK."