anydoc-ruby 0.1.7-x86_64-linux → 0.2.3-x86_64-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: c4acb8037f88aa86da38b606b9b69b92b700de11eb34e6653e3b15374602612b
4
- data.tar.gz: bd7a8904f018ba0ff2df45762268a35aaf1eb3e850b0981815820d70157d9b73
3
+ metadata.gz: 2a5ecddbad25fb6ce76814124118801607a135ba8cd9c10570987f12c001b945
4
+ data.tar.gz: 0b92b61d4cc7ba9a51d4a6d52074206a6ebf1610fb65a7d4817dab19e76312ac
5
5
  SHA512:
6
- metadata.gz: 903d2408282531ca4572962f0e3912511f3c4dd6bf7ab81a19b8721932c8977c931689d466f8be5711de3f4aabc695f0fe8b050ecbde993aaf2bfaabc81f33d0
7
- data.tar.gz: 06aaebcc77c935b2a4eed5e55c895288cde48d74cb587ab9f0e2f6277c866dfb4982220bc2e4d7fc1fc4538b94cc5e53657ca591c7caf75e84067f6c156e9752
6
+ metadata.gz: 5a396676783cf7a44baa15810bf74d1d10705109576c74e3918bfcfd52927c001763f162f89827015ff7931f4fc4622f1dd2c1bfc38d2c311096142c19353cc6
7
+ data.tar.gz: 17c10c2899a1acff09fbb71ac8a535f8eacefca19d7f90fd68f553cf77301a1b557c8401ba02d32f20d4d9a2f18bcb0acb2a26807ae8ce56d51790e8b174f6b1
data/README.md CHANGED
@@ -144,6 +144,18 @@ bundle exec rake gems:all # the source gem and all seven platforms
144
144
 
145
145
  Run these through Rake rather than calling `rb-sys-dock` from this directory: the container mounts the shell's working directory, and the build needs the crate one level above it, so the tasks run the CLI from the repository root with `--directory ruby`. The first build of each platform pulls a multi-gigabyte image.
146
146
 
147
+ ### Releasing
148
+
149
+ The gem version tracks the version of the crate it wraps, so a release starts from a crate version bump:
150
+
151
+ 1. Bump `lib/anydoc/version.rb` and the `anydoc` dependency in `ext/anydoc/Cargo.toml` to the crate's version.
152
+ 2. `sh scripts/check-versions.sh` from the repository root, which fails unless all seven version locations agree.
153
+ 3. Tag `ruby-v<version>` and push it.
154
+
155
+ The tag runs [`.github/workflows/release-ruby.yml`](../.github/workflows/release-ruby.yml), which cross-compiles every platform gem, installs and tests each one, pushes them through RubyGems trusted publishing, and attaches them to a GitHub release. A `workflow_dispatch` run does everything except publish.
156
+
157
+ Because the versions are locked together, a fix that touches only the bindings waits for the next crate release. Shipping one sooner means relaxing the version gate for that release.
158
+
147
159
  ## License
148
160
 
149
161
  [MIT](https://github.com/honzasterba/anydoc/blob/main/LICENSE)
Binary file
Binary file
Binary file
Binary file
@@ -32,7 +32,7 @@ module Anydoc
32
32
  #
33
33
  # @!attribute [r] kind
34
34
  # @return [Symbol] +:heading+, +:paragraph+, +:list+, +:table+,
35
- # +:block_quote+, +:code_block+, or +:rule+.
35
+ # +:block_quote+, +:code_block+, +:rule+, or +:math+.
36
36
  # @!attribute [r] level
37
37
  # @return [Integer, nil] heading: 1-6.
38
38
  # @!attribute [r] anchor
@@ -49,7 +49,8 @@ module Anydoc
49
49
  # @!attribute [r] lang
50
50
  # @return [String, nil] code_block.
51
51
  # @!attribute [r] text
52
- # @return [String, nil] code_block.
52
+ # @return [String, nil] code_block, math (LaTeX source without
53
+ # delimiters).
53
54
  class Block < Data.define(
54
55
  :kind, :level, :anchor, :content, :list, :table, :blocks, :lang, :text
55
56
  )
@@ -59,10 +60,10 @@ module Anydoc
59
60
  #
60
61
  # @!attribute [r] kind
61
62
  # @return [Symbol] +:text+, +:link+, +:image+, +:anchor+ (a zero-width
62
- # marker for an internal link target at this position), +:note_ref+, or
63
- # +:line_break+.
63
+ # marker for an internal link target at this position), +:note_ref+,
64
+ # +:line_break+, +:math+, or +:checkbox+.
64
65
  # @!attribute [r] text
65
- # @return [String, nil] text.
66
+ # @return [String, nil] text; math (LaTeX source without delimiters).
66
67
  # @!attribute [r] style
67
68
  # @return [Style, nil] text.
68
69
  # @!attribute [r] content
@@ -78,8 +79,11 @@ module Anydoc
78
79
  # @!attribute [r] note_id
79
80
  # @return [String, nil] note_ref: the id of the note in
80
81
  # {Document#notes}.
82
+ # @!attribute [r] checked
83
+ # @return [Boolean, nil] checkbox: its state.
81
84
  class Inline < Data.define(
82
- :kind, :text, :style, :content, :target, :alt, :source, :anchor, :note_id
85
+ :kind, :text, :style, :content, :target, :alt, :source, :anchor, :note_id,
86
+ :checked
83
87
  )
84
88
  end
85
89
 
@@ -141,14 +145,11 @@ module Anydoc
141
145
  #
142
146
  # @!attribute [r] blocks
143
147
  # @return [Array<Block>]
144
- # @!attribute [r] checked
145
- # @return [Boolean, nil] task-list state, when the item carries a
146
- # checkbox.
147
148
  # @!attribute [r] marker_label
148
149
  # @return [String, nil] literal marker text that overrides the list marker
149
150
  # when the source number text cannot be reproduced from the marker and
150
151
  # position alone (composite number text such as +1-a)+).
151
- class ListItem < Data.define(:blocks, :checked, :marker_label)
152
+ class ListItem < Data.define(:blocks, :marker_label)
152
153
  end
153
154
 
154
155
  # A table as a canonical grid: every logical grid position appears exactly
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Anydoc
4
4
  # The gem version, which is the version of the anydoc crate it wraps.
5
- VERSION = "0.1.7"
5
+ VERSION = "0.2.3"
6
6
  end
data/sig/anydoc.rbs CHANGED
@@ -61,7 +61,7 @@ module Anydoc
61
61
  end
62
62
 
63
63
  class Block < ::Data
64
- # :heading | :paragraph | :list | :table | :block_quote | :code_block | :rule
64
+ # :heading | :paragraph | :list | :table | :block_quote | :code_block | :rule | :math
65
65
  attr_reader kind: Symbol
66
66
  attr_reader level: Integer?
67
67
  attr_reader anchor: String?
@@ -74,7 +74,7 @@ module Anydoc
74
74
  end
75
75
 
76
76
  class Inline < ::Data
77
- # :text | :link | :image | :anchor | :note_ref | :line_break
77
+ # :text | :link | :image | :anchor | :note_ref | :line_break | :math | :checkbox
78
78
  attr_reader kind: Symbol
79
79
  attr_reader text: String?
80
80
  attr_reader style: Style?
@@ -84,6 +84,7 @@ module Anydoc
84
84
  attr_reader source: ImageSource?
85
85
  attr_reader anchor: String?
86
86
  attr_reader note_id: String?
87
+ attr_reader checked: bool?
87
88
  end
88
89
 
89
90
  class Style < ::Data
@@ -122,7 +123,6 @@ module Anydoc
122
123
 
123
124
  class ListItem < ::Data
124
125
  attr_reader blocks: Array[Block]
125
- attr_reader checked: bool?
126
126
  attr_reader marker_label: String?
127
127
  end
128
128
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: anydoc-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.2.3
5
5
  platform: x86_64-linux
6
6
  authors:
7
7
  - Jan Sterba
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2026-08-06 00:00:00.000000000 Z
12
+ date: 2026-08-21 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: Ruby bindings for the anydoc Rust crate. Converts Word, PowerPoint, Excel,
15
15
  OpenDocument, RTF, EPUB, CSV, and PDF documents into clean GitHub-Flavored Markdown,