commit 0c0aad7db9158bdb75e4d2f22297746205abda52
parent f2cd459c1a8ed591c97139361baf64e1e9046fa3
Author: Jack Mordaunt <jackmordaunt.dev@gmail.com>
Date: Thu, 17 Sep 2026 07:28:54 -0400
icns: move the module to v4
Folding the CLI into the library module changes its import path, and the
decoder now returns sentinel errors and a different Decode result for JPEG
2000-only files, both breaking for existing callers. A new major version
leaves v3 users untouched; the in-repo commands follow the working tree
through the workspace.
Diffstat:
9 files changed, 13 insertions(+), 10 deletions(-)
diff --git a/cmd/icnsify/go.mod b/cmd/icnsify/go.mod
@@ -3,7 +3,7 @@ module github.com/jackmordaunt/icns/cmd/icnsify
go 1.21.5
require (
- github.com/jackmordaunt/icns/v3 v3.0.1
+ github.com/jackmordaunt/icns/v4 v4.0.0
github.com/spf13/afero v1.11.0
github.com/spf13/pflag v1.0.5
)
diff --git a/cmd/icnsify/main.go b/cmd/icnsify/main.go
@@ -13,7 +13,7 @@ import (
"path/filepath"
"strings"
- "github.com/jackmordaunt/icns/v3"
+ "github.com/jackmordaunt/icns/v4"
"github.com/spf13/afero"
"github.com/spf13/pflag"
diff --git a/cmd/preview/go.mod b/cmd/preview/go.mod
@@ -5,7 +5,7 @@ go 1.21.5
require (
gioui.org v0.3.1
gioui.org/x v0.3.2
- github.com/jackmordaunt/icns/v3 v3.0.0
+ github.com/jackmordaunt/icns/v4 v4.0.0
github.com/ncruces/zenity v0.10.10
)
diff --git a/cmd/preview/main.go b/cmd/preview/main.go
@@ -25,7 +25,7 @@ import (
"gioui.org/widget"
m "gioui.org/widget/material"
c "gioui.org/x/component"
- "github.com/jackmordaunt/icns/v3"
+ "github.com/jackmordaunt/icns/v4"
"github.com/ncruces/zenity"
)
diff --git a/cmd/shell-extension/dll_test.go b/cmd/shell-extension/dll_test.go
@@ -16,7 +16,7 @@ import (
"github.com/jackmordaunt/icns/cmd/shell-extension/internal/com"
"github.com/jackmordaunt/icns/cmd/shell-extension/internal/provider"
- "github.com/jackmordaunt/icns/v3"
+ "github.com/jackmordaunt/icns/v4"
"golang.org/x/sys/windows"
)
diff --git a/cmd/shell-extension/go.mod b/cmd/shell-extension/go.mod
@@ -3,9 +3,7 @@ module github.com/jackmordaunt/icns/cmd/shell-extension
go 1.21.5
require (
- github.com/jackmordaunt/icns/v3 v3.0.1
+ github.com/jackmordaunt/icns/v4 v4.0.0
github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646
golang.org/x/sys v0.25.0
)
-
-replace github.com/jackmordaunt/icns/v3 => ../..
diff --git a/cmd/shell-extension/internal/provider/provider.go b/cmd/shell-extension/internal/provider/provider.go
@@ -19,7 +19,7 @@ import (
"unsafe"
"github.com/jackmordaunt/icns/cmd/shell-extension/internal/com"
- "github.com/jackmordaunt/icns/v3"
+ "github.com/jackmordaunt/icns/v4"
"github.com/nfnt/resize"
"golang.org/x/sys/windows"
)
diff --git a/go.mod b/go.mod
@@ -1,4 +1,4 @@
-module github.com/jackmordaunt/icns/v3
+module github.com/jackmordaunt/icns/v4
go 1.21.5
diff --git a/go.work b/go.work
@@ -6,3 +6,8 @@ use (
./cmd/preview
./cmd/shell-extension
)
+
+// The commands require the library at a tagged version so that go install
+// works outside this checkout. Inside it, resolve that version to the working
+// tree, which also lets the tree build before the tag exists.
+replace github.com/jackmordaunt/icns/v4 v4.0.0 => ./