Skip to content

Commit ca480cd

Browse files
committed
feat: improve DMG handling and root-run robustness for v0.3.1
- Update signature logic to skip artifacts without .sig files (with a warning) instead of erroring, specifically addressing DMG files which Tauri doesn't sign for updates. - Enhance version detection to support tauri.conf.json in both root and src-tauri directories. - Add support for both Tauri 1.0 and 2.0 configuration structures (tauri.updater vs plugins.updater). - Trim signatures in generated latest.json to prevent trailing newline issues. - Revamp README.md with Quick Start, platform priority tables, and clearer requirements. - Update Cargo.toml to exclude development scripts, Makefile, and test fixtures from the published crate. - Update CHANGELOG.md for the 0.3.1 release.
1 parent 4764042 commit ca480cd

11 files changed

Lines changed: 417 additions & 96 deletions

File tree

.github/workflows/ci.yml

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,8 @@ jobs:
2525
- name: Check formatting
2626
run: cargo fmt --all -- --check
2727

28-
- name: Run verification suite
29-
run: bash scripts/test.sh
30-
31-
- name: Run CLI smoke checks
32-
run: bash scripts/smoke-cli.sh
28+
- name: Run clippy
29+
run: cargo clippy --all-targets --all-features -- -D warnings
3330

34-
- name: Run generation smoke check
35-
run: bash scripts/smoke-generate.sh
36-
37-
- name: Run generation smoke check with repo/fallback tauri.conf.json
38-
run: bash scripts/smoke-generate-current-conf.sh
31+
- name: Run verification suite
32+
run: make verify

.github/workflows/publish.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,11 @@ jobs:
2424
- name: Check formatting
2525
run: cargo fmt --all -- --check
2626

27-
- name: Run tests
28-
run: cargo test --all-features
27+
- name: Run clippy
28+
run: cargo clippy --all-targets --all-features -- -D warnings
29+
30+
- name: Run release verification suite
31+
run: make verify
2932

3033
- name: Publish to crates.io
3134
env:

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@ tauri.conf.json
55

66
.env*
77
.DS_Store
8+
real-tauri-app/

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,25 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
66

77
## [Unreleased]
88

9+
## [0.3.1] - 2026-04-27
10+
911
### Changed
12+
1013
- Documentation updates and release prep notes.
14+
- Improved macOS updater handling by preferring `.app.tar.gz` artifacts over `.dmg` and skipping platforms where signatures are missing (e.g. DMG files which Tauri doesn't sign).
15+
- Made CLI root-run friendly for `src-tauri` projects by reading version and public key from both root and `src-tauri` locations, supporting both Tauri 1.0 and 2.0 configurations.
16+
17+
### Added
18+
19+
- Added optional real-app smoke test script: `scripts/smoke-real-tauri-app.sh`.
20+
- Added `make smoke-real-app` target for validating against a local real Tauri app.
21+
- Added `real-tauri-app/` to `.gitignore` for local real app fixtures.
22+
- Added support in real-app smoke testing for `src-tauri/tauri.conf.json` and temporary installer/version bootstrapping.
1123

1224
## [0.3.0] - 2026-04-27
1325

1426
### Added
27+
1528
- Added test scripts:
1629
- `scripts/test.sh` for full verification checks.
1730
- `scripts/smoke-cli.sh` for CLI command smoke tests.
@@ -21,6 +34,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
2134
- Added CI workflow to run format checks, tests, and smoke scripts on push/pull requests.
2235

2336
### Changed
37+
2438
- Converted project to CLI-only usage (removed library usage path).
2539
- Added explicit `help`/`version` commands and short flags.
2640
- Updated docs and specifications for CLI-only behavior.
@@ -29,4 +43,5 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
2943
## [0.2.5] - 2026-04-27
3044

3145
### Changed
46+
3247
- Baseline release prior to CLI-only and CI/test-script enhancements.

CONTRIBUTING.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,14 @@ Please make sure to read and follow our [Code of Conduct](CODE_OF_CONDUCT.md).
3434
- Include reproduction steps if fixing a bug.
3535
- Ensure the full verification set passes:
3636
- `make verify`
37+
- `make clippy`
38+
- optional real app validation: `make smoke-real-app`
3739
- or run scripts manually:
3840
- `./scripts/test.sh`
3941
- `./scripts/smoke-cli.sh`
4042
- `./scripts/smoke-generate.sh`
4143
- `./scripts/smoke-generate-current-conf.sh`
44+
- `REAL_APP_DIR=/path/to/your-app ./scripts/smoke-real-tauri-app.sh`
4245

4346
## Release Process
4447

Cargo.lock

Lines changed: 36 additions & 31 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "tauri-latest-json"
3-
version = "0.3.0"
3+
version = "0.3.1"
44
authors = ["Aung Min Khant <aungminkhant.shay@gmail.com>"]
55
edition = "2021"
66
description = "Generate multi-platform Tauri updater latest.json from built installers"
@@ -9,14 +9,14 @@ repository = "https://github.com/shayyz-code/tauri-latest-json"
99
readme = "README.md"
1010
keywords = ["tauri", "updater"]
1111
categories = ["command-line-utilities", "development-tools"]
12-
exclude = [".env", ".env.*"]
12+
exclude = [".env", ".env.*", "scripts/", "Makefile", "SPEC.md", "real-tauri-app/"]
1313

1414
[dependencies]
1515
serde = { version = "1.0", features = ["derive"] }
1616
serde_json = "1.0"
1717
chrono = { version = "0.4", features = ["serde"] }
1818
walkdir = "2.5"
19-
toml = "0.8"
19+
toml = "1.1.2"
2020

2121
[features]
2222
default = []

Makefile

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
SHELL := /bin/bash
22

3-
.PHONY: help fmt test smoke-cli smoke-generate smoke-generate-current-conf verify ci check dry-publish
3+
.PHONY: help fmt clippy test smoke-cli smoke-generate smoke-generate-current-conf smoke-real-app verify ci check dry-publish
44

55
help:
66
@echo "Available targets:"
77
@echo " make fmt - Check formatting"
8+
@echo " make clippy - Run clippy with warnings as errors"
89
@echo " make test - Run verification test suite"
910
@echo " make smoke-cli - Run CLI smoke checks"
1011
@echo " make smoke-generate - Run end-to-end generation smoke check"
1112
@echo " make smoke-generate-current-conf - Run smoke check using repo tauri.conf.json (or fallback in CI)"
13+
@echo " make smoke-real-app - Run smoke check against local real-tauri-app (ignored by git)"
1214
@echo " make verify - Run full local verification (fmt + tests + all smokes)"
1315
@echo " make ci - Alias of verify"
1416
@echo " make check - Cargo check with verify-signature feature"
@@ -17,6 +19,9 @@ help:
1719
fmt:
1820
cargo fmt --all -- --check
1921

22+
clippy:
23+
cargo clippy --all-targets --all-features -- -D warnings
24+
2025
test:
2126
bash scripts/test.sh
2227

@@ -29,6 +34,9 @@ smoke-generate:
2934
smoke-generate-current-conf:
3035
bash scripts/smoke-generate-current-conf.sh
3136

37+
smoke-real-app:
38+
bash scripts/smoke-real-tauri-app.sh
39+
3240
verify: fmt test smoke-cli smoke-generate smoke-generate-current-conf
3341

3442
ci: verify

0 commit comments

Comments
 (0)