diff --git a/.busbar-ref b/.busbar-ref index a96ed9e..3e77816 100644 --- a/.busbar-ref +++ b/.busbar-ref @@ -1 +1 @@ -934a016e20fc1a67c209b671d137c8cc28092767 1.6.0 +e1d3d8b097201859751d77208e66249d98b50a4b 1.6.0 diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..0d128b3 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,13 @@ +# Dependency updates target dev; they reach main only through a release. +version: 2 +updates: + - package-ecosystem: cargo + directory: "/" + target-branch: dev + schedule: + interval: weekly + - package-ecosystem: github-actions + directory: "/" + target-branch: dev + schedule: + interval: weekly diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d4860c4..023dd3c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,7 +15,7 @@ permissions: jobs: ci: - uses: GetBusbar/busbar/.github/workflows/plugin-ci.yml@934a016e20fc1a67c209b671d137c8cc28092767 + uses: GetBusbar/busbar/.github/workflows/plugin-ci.yml@e1d3d8b097201859751d77208e66249d98b50a4b with: service: none busbar_checkout: true diff --git a/.github/workflows/consumer-verify.yml b/.github/workflows/consumer-verify.yml index f7b47a8..53cf732 100644 --- a/.github/workflows/consumer-verify.yml +++ b/.github/workflows/consumer-verify.yml @@ -21,7 +21,7 @@ permissions: jobs: consumer: - uses: GetBusbar/busbar/.github/workflows/plugin-consumer-verify.yml@934a016e20fc1a67c209b671d137c8cc28092767 + uses: GetBusbar/busbar/.github/workflows/plugin-consumer-verify.yml@e1d3d8b097201859751d77208e66249d98b50a4b with: version: ${{ inputs.version || '' }} asset_prefix: busbar-store-sqlite diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 8ca2a01..f35de79 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,7 +6,8 @@ name: release on: push: - tags: ["v*", "!v*-*"] + # `vX.Y.Z-dev.N` is a signed PRE-RELEASE from dev (never main/qa); other suffixed tags start nothing. + tags: ["v*", "!v*-*", "v*-dev.*"] # A tag pushed with GITHUB_TOKEN starts no workflow, so a workflow that tags dispatches this on # the tag ref (`gh workflow run release.yml --ref `). workflow_dispatch: {} @@ -20,7 +21,7 @@ permissions: jobs: ci: - uses: GetBusbar/busbar/.github/workflows/plugin-ci.yml@934a016e20fc1a67c209b671d137c8cc28092767 + uses: GetBusbar/busbar/.github/workflows/plugin-ci.yml@e1d3d8b097201859751d77208e66249d98b50a4b with: service: none busbar_checkout: true @@ -29,7 +30,7 @@ jobs: secrets: inherit release: needs: ci - uses: GetBusbar/busbar/.github/workflows/plugin-release.yml@934a016e20fc1a67c209b671d137c8cc28092767 + uses: GetBusbar/busbar/.github/workflows/plugin-release.yml@e1d3d8b097201859751d77208e66249d98b50a4b with: plugin_crate: busbar-store-sqlite-plugin manifest_name: busbar-store-sqlite @@ -45,7 +46,7 @@ jobs: consumer-verify: needs: release if: ${{ !cancelled() }} - uses: GetBusbar/busbar/.github/workflows/plugin-consumer-verify.yml@934a016e20fc1a67c209b671d137c8cc28092767 + uses: GetBusbar/busbar/.github/workflows/plugin-consumer-verify.yml@e1d3d8b097201859751d77208e66249d98b50a4b with: version: ${{ github.ref_name }} asset_prefix: busbar-store-sqlite diff --git a/.github/workflows/repin.yml b/.github/workflows/repin.yml index b9b7288..ef6ea15 100644 --- a/.github/workflows/repin.yml +++ b/.github/workflows/repin.yml @@ -28,7 +28,7 @@ permissions: jobs: repin: - uses: GetBusbar/busbar/.github/workflows/plugin-repin.yml@934a016e20fc1a67c209b671d137c8cc28092767 + uses: GetBusbar/busbar/.github/workflows/plugin-repin.yml@e1d3d8b097201859751d77208e66249d98b50a4b with: busbar_sha: ${{ github.event.client_payload.sha || inputs.busbar_sha }} busbar_version: ${{ github.event.client_payload.version || inputs.busbar_version }} diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a13d586..62f3744 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -12,9 +12,7 @@ Thanks for your interest in improving `busbar-store-sqlite`. ## Layout -Every busbar plugin repo has the same shape. This one is a two-crate Cargo workspace: -`store-sqlite/` holds the plugin's logic and `store-sqlite-plugin/` is the thin `cdylib` that -packages it as a droppable `kind: store` plugin. busbar itself is a git dependency +Every busbar plugin repo has the same skeleton. This one is a two-crate Cargo workspace: `store-sqlite/` holds the plugin's logic and `store-sqlite-plugin/` is the thin `cdylib` that packages it as a droppable `kind: store` plugin. busbar itself is a git dependency pinned to the commit in `.busbar-ref`. The CI, release and lint configuration are rendered from [busbar's plugin registry](https://github.com/GetBusbar/busbar/blob/main/plugins.yaml); change them there, not here. diff --git a/Cargo.lock b/Cargo.lock index 027587e..e3c42eb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -70,7 +70,7 @@ checksum = "72f5acc6cb2ba439de613abc23857ec3d78374d8ed5ac84e9d11336e87da8649" [[package]] name = "busbar-contract" version = "1.6.0" -source = "git+https://github.com/GetBusbar/busbar?rev=934a016e20fc1a67c209b671d137c8cc28092767#934a016e20fc1a67c209b671d137c8cc28092767" +source = "git+https://github.com/GetBusbar/busbar?rev=e1d3d8b097201859751d77208e66249d98b50a4b#e1d3d8b097201859751d77208e66249d98b50a4b" dependencies = [ "async-trait", "futures", @@ -92,7 +92,7 @@ dependencies = [ [[package]] name = "busbar-kernel-ledger" version = "1.6.0" -source = "git+https://github.com/GetBusbar/busbar?rev=934a016e20fc1a67c209b671d137c8cc28092767#934a016e20fc1a67c209b671d137c8cc28092767" +source = "git+https://github.com/GetBusbar/busbar?rev=e1d3d8b097201859751d77208e66249d98b50a4b#e1d3d8b097201859751d77208e66249d98b50a4b" dependencies = [ "busbar-contract", "serde", @@ -102,7 +102,7 @@ dependencies = [ [[package]] name = "busbar-kernel-wal" version = "1.6.0" -source = "git+https://github.com/GetBusbar/busbar?rev=934a016e20fc1a67c209b671d137c8cc28092767#934a016e20fc1a67c209b671d137c8cc28092767" +source = "git+https://github.com/GetBusbar/busbar?rev=e1d3d8b097201859751d77208e66249d98b50a4b#e1d3d8b097201859751d77208e66249d98b50a4b" dependencies = [ "busbar-contract", "sha2 0.11.0", @@ -111,7 +111,7 @@ dependencies = [ [[package]] name = "busbar-plugin-loader" version = "1.5.0" -source = "git+https://github.com/GetBusbar/busbar?rev=934a016e20fc1a67c209b671d137c8cc28092767#934a016e20fc1a67c209b671d137c8cc28092767" +source = "git+https://github.com/GetBusbar/busbar?rev=e1d3d8b097201859751d77208e66249d98b50a4b#e1d3d8b097201859751d77208e66249d98b50a4b" dependencies = [ "async-trait", "busbar-contract", @@ -359,7 +359,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -1019,7 +1019,7 @@ dependencies = [ "once_cell", "socket2", "tracing", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -1182,7 +1182,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 26d6c63..98169bb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,5 +23,5 @@ publish = false repository = "https://github.com/GetBusbar/busbar-store-sqlite" [workspace.dependencies] -busbar-contract = { git = "https://github.com/GetBusbar/busbar", rev = "934a016e20fc1a67c209b671d137c8cc28092767" } -busbar-plugin-loader = { git = "https://github.com/GetBusbar/busbar", rev = "934a016e20fc1a67c209b671d137c8cc28092767" } +busbar-contract = { git = "https://github.com/GetBusbar/busbar", rev = "e1d3d8b097201859751d77208e66249d98b50a4b" } +busbar-plugin-loader = { git = "https://github.com/GetBusbar/busbar", rev = "e1d3d8b097201859751d77208e66249d98b50a4b" } diff --git a/store-sqlite-plugin/Cargo.toml b/store-sqlite-plugin/Cargo.toml index 1402761..8894521 100644 --- a/store-sqlite-plugin/Cargo.toml +++ b/store-sqlite-plugin/Cargo.toml @@ -16,13 +16,13 @@ crate-type = ["cdylib", "rlib"] [dependencies] # THE LOGIC, same repo: its `door::door` is the door this image exports. busbar-store-sqlite = { path = "../store-sqlite" } -busbar-contract = { git = "https://github.com/GetBusbar/busbar", rev = "934a016e20fc1a67c209b671d137c8cc28092767" } +busbar-contract = { git = "https://github.com/GetBusbar/busbar", rev = "e1d3d8b097201859751d77208e66249d98b50a4b" } [dev-dependencies] # The conformance and e2e tests load the built cdylib and the linked door over the REAL loader (the # one dispatcher, the store v3 table) — dev-only, never in the shipped artifact. Same pinned rev as # the logic crate's busbar-contract, so one busbar source resolves. -busbar-plugin-loader = { git = "https://github.com/GetBusbar/busbar", rev = "934a016e20fc1a67c209b671d137c8cc28092767" } +busbar-plugin-loader = { git = "https://github.com/GetBusbar/busbar", rev = "e1d3d8b097201859751d77208e66249d98b50a4b" } serde_json = "1" # Dev-only: the conformance test awaits the store v3 calls (`StoreCalls`), which are futures. tokio = { version = "1", features = ["rt"] } diff --git a/store-sqlite/Cargo.toml b/store-sqlite/Cargo.toml index a60b71e..747ff01 100644 --- a/store-sqlite/Cargo.toml +++ b/store-sqlite/Cargo.toml @@ -20,7 +20,7 @@ crate-type = ["rlib"] # as `busbar_contract::abi::sdk`). Pinned by git rev to the busbar commit in `.busbar-ref`; a busbar # build that links this crate `[patch]`es the busbar git source to its own tree, so ONE copy of the # contract links. -busbar-contract = { git = "https://github.com/GetBusbar/busbar", rev = "934a016e20fc1a67c209b671d137c8cc28092767" } +busbar-contract = { git = "https://github.com/GetBusbar/busbar", rev = "e1d3d8b097201859751d77208e66249d98b50a4b" } # `bundled` compiles SQLite from source so the plugin has no system libsqlite3 dependency at all. rusqlite = { version = "0.40.0", features = ["bundled"] } serde_json = "1"