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
30 changes: 23 additions & 7 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,22 @@ jobs:
run:
working-directory: capglyph-cli
steps:
# CapGlyph (formerly Sigil) depends on the vectomancy crates via path deps (../vectomancy).
# Both repos are checked out side by side under the runner workspace;
# checkout@v7 rejects paths outside the primary repository dir, so the
# primary checkout itself lands in a subdirectory.
# CapGlyph depends on vectomancy crates + capglyph-core via path deps
# (../vectomancy, ../capglyph-core). Both siblings are checked out side
# by side under the runner workspace; checkout@v7 rejects paths outside
# the primary repository dir, so the primary checkout itself lands in a
# subdirectory.
- uses: actions/checkout@v7
with:
path: capglyph-cli
- uses: actions/checkout@v7
with:
repository: Xuepoo/vectomancy
path: vectomancy
- uses: actions/checkout@v7
with:
repository: CapGlyph/capglyph-core
path: capglyph-core

- uses: dtolnay/rust-toolchain@stable
with:
Expand All @@ -43,8 +48,9 @@ jobs:
~/.cargo/registry
~/.cargo/git
capglyph-cli/target
capglyph-core/target
vectomancy/target
key: cargo-${{ runner.os }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'vectomancy/Cargo.lock') }}
key: cargo-${{ runner.os }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'capglyph-core/Cargo.lock', 'vectomancy/Cargo.lock') }}
restore-keys: cargo-${{ runner.os }}-

- name: Format check
Expand Down Expand Up @@ -88,15 +94,20 @@ jobs:
with:
repository: Xuepoo/vectomancy
path: vectomancy
- uses: actions/checkout@v7
with:
repository: CapGlyph/capglyph-core
path: capglyph-core
- uses: dtolnay/rust-toolchain@stable
- uses: actions/cache@v6
with:
path: |
~/.cargo/registry
~/.cargo/git
capglyph-cli/target
capglyph-core/target
vectomancy/target
key: cargo-${{ runner.os }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'vectomancy/Cargo.lock') }}
key: cargo-${{ runner.os }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'capglyph-core/Cargo.lock', 'vectomancy/Cargo.lock') }}
restore-keys: cargo-${{ runner.os }}-
- name: Test (learned+c2pa features)
run: cargo test --features learned,c2pa
Expand All @@ -115,6 +126,10 @@ jobs:
with:
repository: Xuepoo/vectomancy
path: vectomancy
- uses: actions/checkout@v7
with:
repository: CapGlyph/capglyph-core
path: capglyph-core
- uses: dtolnay/rust-toolchain@stable
with:
targets: wasm32-unknown-unknown
Expand All @@ -124,8 +139,9 @@ jobs:
~/.cargo/registry
~/.cargo/git
capglyph-cli/target
capglyph-core/target
vectomancy/target
key: cargo-${{ runner.os }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'vectomancy/Cargo.lock') }}
key: cargo-${{ runner.os }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'capglyph-core/Cargo.lock', 'vectomancy/Cargo.lock') }}
restore-keys: cargo-${{ runner.os }}-
- name: Check lib compiles for wasm32
env:
Expand Down
34 changes: 22 additions & 12 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,19 @@ jobs:
with:
path: capglyph-cli

# CapGlyph (formerly Sigil) depends on the vectomancy crates via path deps (../vectomancy).
# CapGlyph depends on vectomancy crates + capglyph-core via path deps (../vectomancy, ../capglyph-core).
- name: Checkout vectomancy (path dependency)
uses: actions/checkout@v7.0.1
with:
repository: Xuepoo/vectomancy
path: vectomancy

- name: Checkout capglyph-core (path dependency, CTX-0040)
uses: actions/checkout@v7.0.1
with:
repository: CapGlyph/capglyph-core
path: capglyph-core

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
Expand All @@ -68,8 +74,9 @@ jobs:
~/.cargo/registry
~/.cargo/git
capglyph-cli/target
capglyph-core/target
vectomancy/target
key: release-${{ runner.os }}-${{ matrix.target }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'vectomancy/Cargo.lock') }}
key: release-${{ runner.os }}-${{ matrix.target }}-${{ hashFiles('capglyph-cli/Cargo.lock', 'capglyph-core/Cargo.lock', 'vectomancy/Cargo.lock') }}
restore-keys: release-${{ runner.os }}-${{ matrix.target }}-

- name: Build release (learned+c2pa features)
Expand Down Expand Up @@ -191,16 +198,19 @@ jobs:
url="https://github.com/CapGlyph/capglyph-cli"
license=('Apache-2.0')
_vmver=8.0.0
source=("capglyph-\$pkgver::https://github.com/CapGlyph/capglyph-cli/archive/refs/tags/v\$pkgver.tar.gz"
"vectomancy-\$_vmver::https://github.com/Xuepoo/vectomancy/archive/refs/tags/v\$_vmver.tar.gz")
sha256sums=('SKIP'
'SKIP')
makedepends=('cargo')

prepare() {
# capglyph's Cargo.toml (formerly sigil) depends on ../vectomancy path deps
ln -sfn "\$srcdir/vectomancy-\$_vmver" "\$srcdir/capglyph-\$pkgver/../vectomancy"
}
source=("capglyph-\$pkgver::https://github.com/CapGlyph/capglyph-cli/archive/refs/tags/v\$pkgver.tar.gz"
"capglyph-core-\$pkgver::https://github.com/CapGlyph/capglyph-core/archive/refs/tags/v\$pkgver.tar.gz"
"vectomancy-\$_vmver::https://github.com/Xuepoo/vectomancy/archive/refs/tags/v\$_vmver.tar.gz")
sha256sums=('SKIP'
'SKIP'
'SKIP')
makedepends=('cargo')

prepare() {
# capglyph's Cargo.toml depends on ../vectomancy + ../capglyph-core path deps (CTX-0040)
ln -sfn "\$srcdir/vectomancy-\$_vmver" "\$srcdir/capglyph-\$pkgver/../vectomancy"
ln -sfn "\$srcdir/capglyph-core-\$pkgver" "\$srcdir/capglyph-\$pkgver/../capglyph-core"
}

build() {
cd "capglyph-\$pkgver"
Expand Down
1 change: 0 additions & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 7 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,6 @@ keywords = ["watermark", "forensics", "image", "security", "tracing"]
categories = ["command-line-utilities", "multimedia::images"]
readme = "README.md"

[workspace]
members = ["crates/capglyph-core"]
resolver = "2"

[lib]
name = "capglyph"
path = "src/lib.rs"
Expand All @@ -22,7 +18,13 @@ name = "capglyph"
path = "src/main.rs"

[dependencies]
capglyph-core = { path = "crates/capglyph-core" }
# capglyph-core is now a standalone repo (CTX-0040). Isolated monorepo layout
# keeps it at ../capglyph-core sibling (local: /capglyph/capglyph-core).
# CI checks out CapGlyph/capglyph-core alongside capglyph-cli and vectomancy
# so this sibling path resolves. Future crates.io publish will switch to
# `capglyph-core = "0.1"` version dep + `capglyph-core = { path = "../capglyph-core" }`
# dev override via [patch.crates-io] if needed.
capglyph-core = { path = "../capglyph-core" }

# Image I/O
image = { version = "0.25", default-features = false, features = ["png", "jpeg"] }
Expand Down
25 changes: 0 additions & 25 deletions crates/capglyph-core/Cargo.toml

This file was deleted.

106 changes: 0 additions & 106 deletions crates/capglyph-core/src/carrier.rs

This file was deleted.

Loading