Skip to content

File.OldName and File.NewName are the same when they shouldn't be #65

Description

@ghostsquad

I have a patch that looks like this:

diff -u /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-1.yaml /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-1.yaml
--- /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-1.yaml	2026-01-14 20:44:05
+++ /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-1.yaml	2026-01-14 20:44:05
@@ -11,7 +11,7 @@
     app.kubernetes.io/version: "6.9.4"
     app.kubernetes.io/managed-by: Helm
   annotations:
-    specific: cluster-1
+    specific: cluster-1-new
 spec:
   type: ClusterIP
   ports:
diff -u /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-2.yaml /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-2.yaml
--- /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-2.yaml	2026-01-14 20:44:05
+++ /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-2.yaml	2026-01-14 20:44:05
@@ -11,7 +11,7 @@
     app.kubernetes.io/version: "6.9.4"
     app.kubernetes.io/managed-by: Helm
   annotations:
-    specific: cluster-2
+    specific: cluster-2-new
 spec:
   type: ClusterIP
   ports:
diff -u /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-3.yaml /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-3.yaml
--- /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-3.yaml	2026-01-14 20:44:05
+++ /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-3.yaml	2026-01-14 20:44:05
@@ -11,7 +11,7 @@
     app.kubernetes.io/version: "6.9.4"
     app.kubernetes.io/managed-by: Helm
   annotations:
-    specific: cluster-3
+    specific: cluster-3-special
 spec:
   type: ClusterIP
   ports:
diff -u /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-4.yaml /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-4.yaml
--- /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-1/cluster-4.yaml	2026-01-14 20:44:05
+++ /Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-4.yaml	2026-01-14 20:44:06
@@ -11,7 +11,7 @@
     app.kubernetes.io/version: "6.9.4"
     app.kubernetes.io/managed-by: Helm
   annotations:
-    specific: cluster-4
+    specific: cluster-4-new
 spec:
   type: ClusterIP
   ports:

When I parse this, and look at each OldName and NewName, I expect to see .../rendered-1/... as the old, and .../rendered-2/... as the new (shortened for brevity), but both OldName and NewName show up as rendered-2.

files, _, err := gitdiff.Parse(patchFile)
for _, file := range files {
	godump.Dump("oldName", file.OldName)
	godump.Dump("newName", file.NewName)
}
<#dump // cmd/diff-differ/main.go:57
"oldName" #string
"/Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-1.yaml" #string
<#dump // cmd/diff-differ/main.go:58
"newName" #string
"/Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-1.yaml" #string
<#dump // cmd/diff-differ/main.go:57
"oldName" #string
"/Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-2.yaml" #string
<#dump // cmd/diff-differ/main.go:58
"newName" #string
"/Users/ghostsquad/projects/diff-differ/docs/examples/k8s-manifests/rendered-2/cluster-2.yaml" #string

This looks like a bug.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions