Repository navigation
fix(deps): update module github.com/go-pdfkit/ops to v0.38.0 - #36
Merged
Merged
Conversation
Contributor
Author
ℹ️ Artifact update noticeFile name: go.modIn order to perform the update(s) described in the table above, Renovate ran the
Details:
|
tannevaled
force-pushed
the
renovate/deps
branch
from
November 9, 2026 07:43
f809dbc to
ff87680
Compare
tannevaled
force-pushed
the
renovate/deps
branch
from
November 10, 2026 08:04
ff87680 to
b4f860e
Compare
tannevaled
force-pushed
the
renovate/deps
branch
from
November 11, 2026 07:33
b4f860e to
20a89ab
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
v0.25.0→v0.38.0Release Notes
go-pdfkit/ops (github.com/go-pdfkit/ops)
v0.38.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.37.0...v0.38.0
v0.37.0Compare Source
Say what changed between two versions of a document
ops.Compareandpdfops compare.⛔ The pages are paired by what they say, not by their numbers. A page
inserted in the middle moves nothing after it: the pages that follow are still
paired with the pages they came from, and the insertion is one page added.
A pair must share half its words, or it is one page removed and another
added — without that floor a replaced chapter reads as a rewrite of the one
before it.
Inside a pair the diff is Myers (An O(ND) Difference Algorithm and Its
Variations, Algorithmica 1 (1986) 251–266) over words, with the words that
changed together reported together: "quick brown fox" → "slow grey mole" is
two changes, not six. Pictures are told apart by a hash of their samples, so
a swapped logo of the same size is a change; annotations by their subtype and
their text.
Bounded on both axes, because the input is two files and a file can say
anything: the alignment gives up past four million page pairs and pairs the
pages where they stand, and the diff gives up past two thousand differences and
reports both pages whole. A reference that points at itself stops the
comparison with the page named.
⛔
compareexits 0 whether or not the documents differ, unlikediff: inthis command an exit of 1 means the work could not be done, and a document that
changed is the work being done. The answer is in the last line, in words.
Closes the Compare PDFs row of the BentoPDF gap table for everything a
library can answer; side by side and overlay are the workbench's.
🤖 Generated with Claude Code
v0.36.0Compare Source
Turn a page by any angle
Doc.Turnandpdfops turn: the arbitrary-angle half thatRotaterefuses.Rotatewrites a number on the page —/Rotate, a multiple of ninety — andTurnrewrites the page onto a sheet of its own.⛔ The paper grows and nothing is cut off, which is the whole difference
from
Deskew: a deskew is a correction of a fraction of a degree on a pagewhose text sits well inside its margins, so it keeps the paper it was given.
The sheet is the turned page's bounding box —
w·|cos θ| + h·|sin θ|across,w·|sin θ| + h·|cos θ|down — and the page is centred on it, checked bymapping all four corners for angles from −350° to 350°: each must land inside
the sheet, and each edge must be touched.
An angle that is a multiple of ninety goes through
/Rotateand nothing elsehappens: no transformation, no new content stream, a page whose text was
selectable stays selectable.
⛔ Positive is clockwise, as ISO 32000-1 Table 30 and
Doc.Rotatealreadymean it. The tool this is ported from, BentoPDF's
rotate-custom, documents thesame thing and then does the opposite for any angle that is not a multiple of
ninety — its two arms turn opposite ways, and the seam is at exactly 90°. The
gate here is a render across that seam: a mark at the top of a square page must
come back at the right-hand edge after +90°, measured at 89°, 90° and 91°.
Closes the Rotate by Custom Degrees row of the BentoPDF gap table.
🤖 Generated with Claude Code
v0.35.0Compare Source
A redaction destroys the pixels under it
ISO 32000-1 §12.5.6.23: "If a portion of an image is contained in a redaction
region, that portion of the image data shall be destroyed; clipping or image
masks shall not be used to hide that data."
Redactused to refuse every region a picture was drawn across — which, for ascanned page, is every region there is. It now overwrites the samples under the
region and writes the picture back.
It does that to a picture whose samples are plain (already unfiltered by the
reader), eight bits a component,
DeviceGrayorDeviceRGB, drawn uprightand drawn once. Everything else is still refused by its own name, with
its reason, at
Redactrather than at the write: a/Filter(a JPEG would haveto be decoded and re-encoded), a turned or skewed placement, a picture drawn
twice, an inline image,
/ImageMask,/SMask,/Mask,/Decode, samples thatare not 8 bits, and any colour space outside those two — a zero sample in an
/Indexedspace is the palette's first colour, which may be white.⛔ The page's
/Resourcesare rebuilt, not copied, or the original picturewould stay in the file beside the blanked one, referenced by nothing and holding
every pixel the redaction promised to remove — defect #74 one object along. The
test walks every object of the written file and decodes it.
⛔ The sample grid counts down while the page counts up. Row zero is the
picture's top row and
vruns from its bottom edge; reading one for the otherblanks the mirror image of what was asked for. A region ending part way into a
sample destroys all of it.
Requires go-pdfkit/extract v0.11.0, whose
Image.Matrixis what the uprighttest reads. Closes #80 for the plain case; the JPEG half stays open there.
🤖 Generated with Claude Code
v0.34.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.33.0...v0.34.0
v0.33.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.32.0...v0.33.0
v0.32.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.31.0...v0.32.0
v0.31.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.30.0...v0.31.0
v0.30.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.29.0...v0.30.0
v0.29.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.28.1...v0.29.0
v0.28.1Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.28.0...v0.28.1
v0.28.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.27.0...v0.28.0
v0.27.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.26.0...v0.27.0
v0.26.0Compare Source
What's Changed
Full Changelog: go-pdfkit/ops@v0.25.0...v0.26.0
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate CLI.