From f20af6faee813dbd4f865d411c77a61c3134b298 Mon Sep 17 00:00:00 2001 From: Esteban Lorenzano Date: Wed, 18 Jun 2025 13:44:48 +0200 Subject: [PATCH 1/3] if I want to let git to give me the differences, I need this method (also the otherone was old and not valid anymore). --- ...options.file_cb.hunk_cb.line_cb.payload..st | 3 +-- ...le_cb.binary_cb.hunk_cb.line_cb.payload..st | 18 ++++++++++++++++++ ...options.file_cb.hunk_cb.line_cb.payload..st | 7 ------- .../instance/basicIsDirectory..st | 2 +- .../instance/basicIsFile..st | 2 +- 5 files changed, 21 insertions(+), 11 deletions(-) create mode 100644 LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.binary_cb.hunk_cb.line_cb.payload..st delete mode 100644 LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st diff --git a/LibGit-Core.package/LGitDiff.class/instance/diff_blobs.old_as_path.new_blob.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st b/LibGit-Core.package/LGitDiff.class/instance/diff_blobs.old_as_path.new_blob.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st index ca5a3310..cdd249ab 100644 --- a/LibGit-Core.package/LGitDiff.class/instance/diff_blobs.old_as_path.new_blob.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st +++ b/LibGit-Core.package/LGitDiff.class/instance/diff_blobs.old_as_path.new_blob.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st @@ -2,6 +2,5 @@ libgit - calls diff_blobs: old_blob old_as_path: old_as_path new_blob: new_blob new_as_path: new_as_path options: options file_cb: file_cb hunk_cb: hunk_cb line_cb: line_cb payload: payload ^ self - ffiCallSafely: - #(LGitReturnCodeEnum git_diff_blobs (LGitBlob old_blob , String old_as_path , LGitBlob new_blob , String new_as_path , LGitDiffOptions *options , LGitDiffFileCallback file_cb , LGitDiffHunkCallback hunk_cb , LGitDiffLineCallback line_cb , void *payload)) + ffiCall: #(LGitReturnCodeEnum git_diff_blobs (LGitBlob old_blob , String old_as_path , LGitBlob new_blob , String new_as_path , LGitDiffOptions *options , LGitDiffFileCallback file_cb , LGitDiffHunkCallback hunk_cb , LGitDiffLineCallback line_cb , void *payload)) options: #(optMayGC optCoerceNilToNull) \ No newline at end of file diff --git a/LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.binary_cb.hunk_cb.line_cb.payload..st b/LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.binary_cb.hunk_cb.line_cb.payload..st new file mode 100644 index 00000000..684279fe --- /dev/null +++ b/LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.binary_cb.hunk_cb.line_cb.payload..st @@ -0,0 +1,18 @@ +libgit - calls +diff_buffers: old_buffer + old_len: old_len + old_as_path: old_as_path + new_buffer: new_buffer + new_len: new_len + new_as_path: new_as_path + options: options + file_cb: file_cb + binary_cb: binary_cb + hunk_cb: hunk_cb + line_cb: line_cb + payload: payload + + ^ self + ffiCall: + #(LGitReturnCodeEnum git_diff_buffers #(FFIVoid * old_buffer , size_t old_len , String old_as_path , void *new_buffer , size_t new_len , String new_as_path , LGitDiffOptions * options , LGitDiffFileCallback file_cb , LGitDiffBinaryCallback binary_cb , LGitDiffHunkCallback hunk_cb , LGitDiffLineCallback line_cb , void * payload)) + options: #(optMayGC optCoerceNilToNull) \ No newline at end of file diff --git a/LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st b/LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st deleted file mode 100644 index 23c28e20..00000000 --- a/LibGit-Core.package/LGitDiff.class/instance/diff_buffers.old_len.old_as_path.new_buffer.new_len.new_as_path.options.file_cb.hunk_cb.line_cb.payload..st +++ /dev/null @@ -1,7 +0,0 @@ -libgit - calls -diff_buffers: old_buffer old_len: old_len old_as_path: old_as_path new_buffer: new_buffer new_len: new_len new_as_path: new_as_path options: options file_cb: file_cb hunk_cb: hunk_cb line_cb: line_cb payload: payload - - ^ self - ffiCallSafely: - #(LGitReturnCodeEnum git_diff_buffers #(FFIVoid * old_buffer , size_t old_len , String old_as_path , void *new_buffer , size_t new_len , String new_as_path , LGitDiffOptions * options , LGitDiffFileCallback file_cb , LGitDiffHunkCallback hunk_cb , LGitDiffLineCallback line_cb , void * payload)) - options: #(optMayGC optCoerceNilToNull) \ No newline at end of file diff --git a/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsDirectory..st b/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsDirectory..st index 8be023cb..90e84eab 100644 --- a/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsDirectory..st +++ b/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsDirectory..st @@ -1,4 +1,4 @@ abstract basicIsDirectory: aNode - ^ aNode object isTree \ No newline at end of file + ^ aNode type = LGitObjectTypeEnum git_obj_tree diff --git a/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsFile..st b/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsFile..st index cbf0b72f..993a22c1 100644 --- a/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsFile..st +++ b/LibGit-FileSystem.package/LGitCommitStore.class/instance/basicIsFile..st @@ -1,4 +1,4 @@ abstract basicIsFile: aLGitTreeEntry - ^ aLGitTreeEntry object isBlob \ No newline at end of file + ^ aLGitTreeEntry type = LGitObjectTypeEnum git_obj_blob From 4323b42a321b9db2a2a5ca742059ee5f40619acd Mon Sep 17 00:00:00 2001 From: Esteban Lorenzano Date: Wed, 18 Jun 2025 13:45:10 +0200 Subject: [PATCH 2/3] this is now a char --- LibGit-Core.package/LGitDiffLine.class/class/fieldsDesc.st | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LibGit-Core.package/LGitDiffLine.class/class/fieldsDesc.st b/LibGit-Core.package/LGitDiffLine.class/class/fieldsDesc.st index 86d911c2..586a0421 100644 --- a/LibGit-Core.package/LGitDiffLine.class/class/fieldsDesc.st +++ b/LibGit-Core.package/LGitDiffLine.class/class/fieldsDesc.st @@ -1,7 +1,7 @@ fields description fieldsDesc ^#( - LGitDiffLineTypeEnum origin "A git_diff_line_t value" + char origin "A git_diff_line_t value" int old_lineno "Line number in old file or -1 for added line" int new_lineno "Line number in new file or -1 for deleted line" int num_lines "Number of newline characters in content" From 7b574e490466f43ec00d2a36607b7da52ddb920a Mon Sep 17 00:00:00 2001 From: Esteban Lorenzano Date: Wed, 18 Jun 2025 14:55:19 +0200 Subject: [PATCH 3/3] rebuild field accessors --- .../LGitDiffLine.class/instance/prim_origin..st | 4 ++-- .../LGitDiffLine.class/instance/prim_origin.st | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin..st b/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin..st index dddc020d..81b2074c 100644 --- a/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin..st +++ b/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin..st @@ -1,4 +1,4 @@ -libgit - fields +libgit-fields prim_origin: anObject "This method was automatically generated" - handle unsignedLongAt: OFFSET_PRIM_ORIGIN put: anObject value \ No newline at end of file + handle unsignedCharAt: OFFSET_PRIM_ORIGIN put: anObject \ No newline at end of file diff --git a/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin.st b/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin.st index 26cadf6e..483495f5 100644 --- a/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin.st +++ b/LibGit-Core.package/LGitDiffLine.class/instance/prim_origin.st @@ -1,4 +1,4 @@ -libgit - fields +libgit-fields prim_origin "This method was automatically generated" - ^LGitDiffLineTypeEnum fromInteger: (handle unsignedLongAt: OFFSET_PRIM_ORIGIN) \ No newline at end of file + ^handle unsignedCharAt: OFFSET_PRIM_ORIGIN \ No newline at end of file