Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,12 @@
[build]

[alias]
dev = "run -- dev"

[env]
DUCKDB_STATIC="1"
DUCKDB_DISABLE_EXTENSION_LOAD="1"
DUCKDB_DISABLE_JEMALLOC="1"

[target.x86_64-unknown-linux-musl]
rustflags=["-C", "target_cpu=x86-64-v3"]
10 changes: 5 additions & 5 deletions .github/workflows/container.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,11 @@ jobs:

runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- name: Setup Docker Buildx
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
uses: docker/setup-buildx-action@d7f5e7f509e45cec5c76c4d5afdd7de93d0b3df5 # v4.1.0
- name: Extract Semver
id: semver
env:
Expand All @@ -34,7 +34,7 @@ jobs:
SEMVER_VERSION=$(echo "$INPUT_TAG" | sed -E 's/liwan-v//')
echo "SEMVER_VERSION=${SEMVER_VERSION}" >> "$GITHUB_OUTPUT"
- name: Setup Docker Metadata
uses: docker/metadata-action@030e881283bb7a6894de51c315a6bfe6a94e05cf # v6.0.0
uses: docker/metadata-action@80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9 # v6.1.0
id: meta
with:
images: ghcr.io/${{ github.actor }}/liwan
Expand All @@ -44,7 +44,7 @@ jobs:
type=semver,pattern={{major}},value=${{ steps.semver.outputs.SEMVER_VERSION }}
type=raw,edge
- name: Login to GitHub Container Registry
uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4.1.0
uses: docker/login-action@650006c6eb7dba73a995cc03b0b2d7f5ca915bee # v4.2.0
with:
registry: ghcr.io
username: ${{ github.actor }}
Expand All @@ -66,7 +66,7 @@ jobs:

wait
- name: Build and push Docker images
uses: docker/build-push-action@bcafcacb16a39f128d818304e6c9c0c18556b85f # v7.1.0
uses: docker/build-push-action@f9f3042f7e2789586610d6e8b85c8f03e5195baf # v7.2.0
with:
context: .
file: ./scripts/Containerfile
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
contents: write
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- uses: taiki-e/create-gh-release-action@eba8ea96c86cca8a37f1b56e94b4d13301fba651 # v1.11.0
Expand All @@ -27,7 +27,7 @@ jobs:
permissions:
contents: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0
Expand All @@ -36,7 +36,7 @@ jobs:
no-cache: true
- name: Build web project
run: |
bun install
bun install --frozen-lockfile
bun run build
working-directory: ./web
- name: Upload web assets
Expand Down Expand Up @@ -64,7 +64,7 @@ jobs:

runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-web.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
permissions:
contents: read
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2.2.0
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
name: Run tests on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
with:
persist-credentials: false
- uses: actions-rust-lang/setup-rust-toolchain@46268bd060767258de96ed93c1251119784f2ab6 # v1.16.1
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/target
liwan.config.toml
/liwan-data
profile.json
profile.json
24 changes: 24 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,30 @@ The format is roughly based on the output of `git-cliff` and this project adhere
Since this is not a library, this changelog focuses on the changes that are relevant to the end-users. For a detailed list of changes, see the commit history, which adheres to [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/). New releases are created automatically when a new tag is pushed (Commit message: chore(release): vX.X.X).
-->

## [v1.6.0] - 2026-06-02

### Features

- Added global and per-entity collection settings for visitor grouping, geolocation detail, session metrics, UTM parameters, and data retention
- Added ingest drop rules to discard matching events before they are stored
- Added project display settings to show or hide metrics and dimensions per project
- Added a pruning tool to apply retention and collection settings to historical data

### Bug Fixes

- Fixed bounce rate deltas so lower bounce rates are shown as an improvement
- Fixed the account settings form to avoid React form action runtime errors

### Documentation

- Added documentation for collected data, privacy-focused collection settings, cookie banner considerations, and projects/entities
- Updated the docs site for clearer setup, configuration, metrics, GeoIP, reverse proxy, DuckDB, and ad blocker guidance

### Other

- Renamed the internal `visitor_id` event column to `visitor_group_id` to better describe how repeat visits are grouped
- Existing installs are migrated automatically with collection settings that preserve the previous default behavior

## [v1.5.0] - 2026-06-15

### Features
Expand Down
Loading