fm-bench 0.5.2 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/docs/releasing.md +35 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# fm-bench
|
|
2
2
|
|
|
3
|
+
[](https://github.com/devinoldenburg/fm-bench/actions/workflows/ci.yml)
|
|
4
|
+
|
|
3
5
|
Benchmark Apple's `fm` command on macOS 27+.
|
|
4
6
|
|
|
5
7
|
Measure latency, throughput, streaming smoothness, stability, and goodput across Apple Foundation Models — with repeatable prompt suites and JSON/CSV reports for automation.
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Releasing
|
|
2
|
+
|
|
3
|
+
`fm-bench` uses semver tags (`v*.*.*`). Pushing a tag runs the **Release** workflow: test, lint, npm publish (with provenance), and GitHub release notes.
|
|
4
|
+
|
|
5
|
+
## Prerequisites
|
|
6
|
+
|
|
7
|
+
- Repository secret **`NPM_TOKEN`**: npm automation token with publish access to `fm-bench`.
|
|
8
|
+
- **`main`** is green on CI.
|
|
9
|
+
|
|
10
|
+
## Option A — GitHub Actions (recommended)
|
|
11
|
+
|
|
12
|
+
1. Open **Actions → Version → Run workflow**.
|
|
13
|
+
2. Choose `patch`, `minor`, `major`, or an exact semver.
|
|
14
|
+
3. The job runs `npm version`, pushes the commit and tag to `main`.
|
|
15
|
+
4. The tag push triggers **Release** automatically.
|
|
16
|
+
|
|
17
|
+
## Option B — Local
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
npm ci && npm test && npm run lint
|
|
21
|
+
npm version patch # or minor / major
|
|
22
|
+
git push --follow-tags
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Re-run Release without republishing
|
|
26
|
+
|
|
27
|
+
If npm already has the version but GitHub release failed (or vice versa), use **Actions → Release → Run workflow** and enter the existing tag (for example `v0.5.3`). The workflow skips npm publish when that version is already on the registry and skips creating a duplicate GitHub release.
|
|
28
|
+
|
|
29
|
+
## Dry run
|
|
30
|
+
|
|
31
|
+
```sh
|
|
32
|
+
npm run publish:dry-run
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
CI runs the same dry-run on every push to `main` and on pull requests.
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "fm-bench",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.3",
|
|
4
4
|
"description": "Dynamic benchmark CLI for Apple's fm command on macOS 27+.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
|
-
"fm-bench": "
|
|
7
|
+
"fm-bench": "bin/fm-bench.js"
|
|
8
8
|
},
|
|
9
9
|
"files": [
|
|
10
10
|
"bin",
|