pdfsink 0.1.0-aarch64-linux → 0.1.2-aarch64-linux

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b24f351e1dcf882e436e68b0b2de9c17114f0fcf23c4e645b06eaa7cbecaae77
4
- data.tar.gz: 6a8579231369b9138ddb629d36636e1dc3740eb29c59c8bfeb4242e2224cf1a3
3
+ metadata.gz: a4db65f9e455a027e6edcc587d05ebba054ad17b5af2ab20877e6bd9dc3dce67
4
+ data.tar.gz: 6d4e0481ec84310094a59d976b5dc31b087bb4f9867e14ffc4ecbff3f13b68fc
5
5
  SHA512:
6
- metadata.gz: be70949bfebb23bc2d63077c01fb3fa4bcc598eb939b720de0da91607df63a6cd313e62b1482140c04c56148249b06aca93d1d7e7cfb8e673e65d49a9791e465
7
- data.tar.gz: 43f19f51f64bc53fc8d41dfd4cf23cf3d873839118c6bacce176a547fed1cd5f9afb70913201496a1f14893c8bcb09466a64e3c066a9bc7b39788eaaa38fed06
6
+ metadata.gz: 7def890e563658534dbd2592197fd43788fd3ad501815a45a918652bd7c5025dbfea1bd204eb35b0aa185eb028cc3893afee3fd6d290b7195b2b4e2cf57e0f56
7
+ data.tar.gz: 07c7996ee04f98d0bdecf46a0de3135c167bee668387c8909d5c128fa1b5e20aa3cf95d01c5db9f60af9dbf4e52de178f5796efbfb2355e3b20e4a38109abcbc
data/README.md CHANGED
@@ -109,7 +109,7 @@ page.search(/total:\s*\$\d+/i)
109
109
  ### Binary version
110
110
 
111
111
  ```ruby
112
- Pdfsink.version # => "0.2.8"
112
+ Pdfsink.version # => "0.2.9"
113
113
  ```
114
114
 
115
115
  ## Rails Integration
data/Rakefile CHANGED
@@ -1,19 +1,25 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "rspec/core/rake_task"
4
+ require "./lib/pdfsink/version"
4
5
 
5
6
  RSpec::Core::RakeTask.new(:spec)
6
7
 
7
8
  namespace :cargo do
8
9
  desc "Build the pdfsink-rs binary into lib/pdfsink/"
9
10
  task :build do
10
- crate_ver = "0.2.8"
11
- bin_name = "pdfsink-rs"
12
- stage = File.expand_path("ext/pdfsink/cargo-root", __dir__)
13
- lib_dir = File.expand_path("lib/pdfsink", __dir__)
11
+ bin_name = "pdfsink-rs"
12
+ repo = "https://github.com/AccountAim/pdfsink-rs"
13
+ tag = "v#{Pdfsink::PDFSINK_RS_VERSION}"
14
+ stage = File.expand_path("ext/pdfsink/cargo-root", __dir__)
15
+ lib_dir = File.expand_path("lib/pdfsink", __dir__)
14
16
 
17
+ # Build from the pinned git tag, not crates.io: the crate carries a
18
+ # [patch.crates-io] for a vendored adobe-cmap-parser fix, and cargo strips
19
+ # [patch] on publish -- so the fix only applies when building from source.
15
20
  sh "cargo", "install", "pdfsink-rs",
16
- "--version", crate_ver, "--bin", bin_name,
21
+ "--git", repo, "--tag", tag,
22
+ "--bin", bin_name, "--locked",
17
23
  "--root", stage, "--force"
18
24
 
19
25
  built = File.join(stage, "bin", bin_name)
@@ -1,18 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # extconf.rb -- invoked by `gem install` or `bundle install` to build the
4
- # pdfsink-rs CLI binary from the published crate.
4
+ # pdfsink-rs CLI binary from the pinned git tag.
5
5
  #
6
6
  # Requirements:
7
- # - cargo / rustc (Rust toolchain, 1.88+)
7
+ # - cargo / rustc (Rust toolchain, 1.97+)
8
+ # - git
8
9
  #
9
10
  # Precompiled platform gems ship the binary in lib/pdfsink/ and strip this
10
11
  # extension, so this script only runs for source installs.
11
12
 
12
13
  require "fileutils"
14
+ # RubyGems runs this from the extension dir, so resolve the version from __dir__.
15
+ require File.expand_path("../../lib/pdfsink/version", __dir__)
13
16
 
14
17
  CRATE = "pdfsink-rs"
15
- CRATE_VER = "0.2.8"
18
+ REPO = "https://github.com/AccountAim/pdfsink-rs"
19
+ TAG = "v#{Pdfsink::PDFSINK_RS_VERSION}"
16
20
  BIN_NAME = "pdfsink-rs"
17
21
  EXT_DIR = __dir__
18
22
  LIB_DIR = File.expand_path("../../lib/pdfsink", EXT_DIR)
@@ -46,10 +50,13 @@ end
46
50
  stage = File.join(EXT_DIR, "cargo-root")
47
51
  FileUtils.mkdir_p(stage)
48
52
 
49
- puts "Installing #{CRATE} v#{CRATE_VER} (release)..."
53
+ puts "Installing #{CRATE} #{TAG} from #{REPO} (release)..."
54
+ # Build from the git tag, not crates.io: the crate's [patch.crates-io] fix
55
+ # (vendored adobe-cmap-parser) is stripped on publish, so it only applies
56
+ # when building from source.
50
57
  ok = system("cargo", "install", CRATE,
51
- "--version", CRATE_VER,
52
- "--bin", BIN_NAME,
58
+ "--git", REPO, "--tag", TAG,
59
+ "--bin", BIN_NAME, "--locked",
53
60
  "--root", stage,
54
61
  "--force")
55
62
  abort "ERROR: cargo install #{CRATE} failed" unless ok
data/lib/pdfsink/cli.rb CHANGED
@@ -30,7 +30,7 @@ module Pdfsink
30
30
  # Override the resolved binary path (mainly for tests).
31
31
  attr_writer :binary
32
32
 
33
- # The pdfsink-rs version string, e.g. "pdfsink-rs 0.2.8".
33
+ # The pdfsink-rs version string, e.g. "pdfsink-rs 0.2.9".
34
34
  #
35
35
  # The CLI has no version subcommand, so this reports the crate version
36
36
  # the gem was built against.
Binary file
@@ -1,8 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Pdfsink
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.2"
5
5
 
6
- # Version of the pdfsink-rs crate this gem builds and wraps.
7
- PDFSINK_RS_VERSION = "0.2.8"
6
+ # Version of the pdfsink-rs crate this gem builds and wraps. Built from the
7
+ # matching git tag (v#{PDFSINK_RS_VERSION}), not crates.io -- the crate carries
8
+ # a [patch.crates-io] fix that cargo strips on publish.
9
+ PDFSINK_RS_VERSION = "0.2.12"
8
10
  end
data/lib/pdfsink.rb CHANGED
@@ -73,7 +73,7 @@ module Pdfsink
73
73
 
74
74
  # The version of the underlying pdfsink-rs binary the gem was built with.
75
75
  #
76
- # @return [String] e.g. "0.2.8"
76
+ # @return [String] e.g. "0.2.9"
77
77
  def version
78
78
  Cli.version
79
79
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pdfsink
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.2
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Accountaim
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-06-05 00:00:00.000000000 Z
11
+ date: 2026-07-17 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: |
14
14
  A Ruby gem that wraps the pdfsink-rs CLI, a fast pure-Rust PDF extraction