rsyntaxtree 1.6.2 → 1.6.3

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.
Files changed (92) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +12 -0
  3. data/Rakefile +19 -0
  4. data/docs/.gitignore +0 -0
  5. data/docs/404.html +0 -0
  6. data/docs/Gemfile +0 -0
  7. data/docs/_config.yml +0 -0
  8. data/docs/_examples/000.md +0 -0
  9. data/docs/_examples/001.md +0 -0
  10. data/docs/_examples/002.md +0 -0
  11. data/docs/_examples/003.md +0 -0
  12. data/docs/_examples/004.md +0 -0
  13. data/docs/_examples/005.md +0 -0
  14. data/docs/_examples/006.md +0 -0
  15. data/docs/_examples/007.md +0 -0
  16. data/docs/_examples/008.md +0 -0
  17. data/docs/_examples/009.md +0 -0
  18. data/docs/_examples/010.md +0 -0
  19. data/docs/_examples/011.md +0 -0
  20. data/docs/_examples/012.md +0 -0
  21. data/docs/_examples/013.md +0 -0
  22. data/docs/_examples/014.md +0 -0
  23. data/docs/_examples/015.md +0 -0
  24. data/docs/_examples/016.md +0 -0
  25. data/docs/_examples/017.md +0 -0
  26. data/docs/_examples/018.md +0 -0
  27. data/docs/_examples/019.md +0 -0
  28. data/docs/_examples/020.md +0 -0
  29. data/docs/_examples/021.md +0 -0
  30. data/docs/_examples/022.md +0 -0
  31. data/docs/_examples/023.md +0 -0
  32. data/docs/_examples/024.md +0 -0
  33. data/docs/_examples/025.md +0 -0
  34. data/docs/_examples/026.md +0 -0
  35. data/docs/_examples/027.md +0 -0
  36. data/docs/_examples/028.md +0 -0
  37. data/docs/_examples/029.md +0 -0
  38. data/docs/_examples/030.md +0 -0
  39. data/docs/_examples/031.md +0 -0
  40. data/docs/_examples/032.md +0 -0
  41. data/docs/_examples/033.md +0 -0
  42. data/docs/_examples/034.md +0 -0
  43. data/docs/_examples/035.md +0 -0
  44. data/docs/_examples/036.md +0 -0
  45. data/docs/_examples/037.md +0 -0
  46. data/docs/_examples/038.md +0 -0
  47. data/docs/_examples/039.md +0 -0
  48. data/docs/_examples/040.md +0 -0
  49. data/docs/_examples/041.md +0 -0
  50. data/docs/_examples/042.md +0 -0
  51. data/docs/_examples/043.md +0 -0
  52. data/docs/_examples/044.md +0 -0
  53. data/docs/_examples/045.md +0 -0
  54. data/docs/_examples/046.md +0 -0
  55. data/docs/_includes/box_and_circle_table.html +0 -0
  56. data/docs/_includes/escape_char_table.html +0 -0
  57. data/docs/_includes/social_media_links.html +0 -0
  58. data/docs/_layouts/default.html +0 -0
  59. data/docs/assets/css/style.scss +0 -0
  60. data/docs/assets/img/elements/circle.png +0 -0
  61. data/docs/assets/img/elements/circle_abc.png +0 -0
  62. data/docs/assets/img/elements/circle_bold.png +0 -0
  63. data/docs/assets/img/elements/circle_hatched.png +0 -0
  64. data/docs/assets/img/elements/circle_one.png +0 -0
  65. data/docs/assets/img/elements/connector.png +0 -0
  66. data/docs/assets/img/elements/connector_bold.png +0 -0
  67. data/docs/assets/img/elements/square.png +0 -0
  68. data/docs/assets/img/elements/square_abc.png +0 -0
  69. data/docs/assets/img/elements/square_bold.png +0 -0
  70. data/docs/assets/img/elements/square_hatched.png +0 -0
  71. data/docs/assets/img/elements/square_one.png +0 -0
  72. data/docs/assets/img/favicon/apple-touch-icon.png +0 -0
  73. data/docs/assets/img/favicon/favicon-16x16.png +0 -0
  74. data/docs/assets/img/favicon/favicon-32x32.png +0 -0
  75. data/docs/assets/img/favicon/favicon.ico +0 -0
  76. data/docs/documentation.md +0 -0
  77. data/docs/documentation_ja.md +0 -0
  78. data/docs/examples.html +0 -0
  79. data/docs/index.html +0 -0
  80. data/fonts/NotoSansMono_SemiCondensed-Bold.ttf +0 -0
  81. data/fonts/NotoSansMono_SemiCondensed-Regular.ttf +0 -0
  82. data/img/sample.png +0 -0
  83. data/lib/rsyntaxtree/base_graph.rb +0 -0
  84. data/lib/rsyntaxtree/element.rb +0 -0
  85. data/lib/rsyntaxtree/elementlist.rb +0 -0
  86. data/lib/rsyntaxtree/markup_parser.rb +0 -0
  87. data/lib/rsyntaxtree/string_parser.rb +0 -0
  88. data/lib/rsyntaxtree/svg_graph.rb +0 -0
  89. data/lib/rsyntaxtree/utils.rb +0 -0
  90. data/lib/rsyntaxtree/version.rb +1 -1
  91. data/lib/rsyntaxtree.rb +0 -0
  92. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f13f7407a77bda563986883ec33eed5c2699305e73428582e0caf2c64c7cdf22
4
- data.tar.gz: 329f1d4357b0034709bd842f117c14ea401dad18b7ca72e65b917149fcc794a9
3
+ metadata.gz: dd3b753fd33f6df5903c6df87d02bf7c7ac45de57e1ba18da51f03fe391ab45f
4
+ data.tar.gz: 3f53988bbb1ccd64b75792b822ccb04eca2d7f209500d881610cf2295ced3ce7
5
5
  SHA512:
6
- metadata.gz: 4bab8dc69ae2631ae4818e41a2b986136ab9b40e20a6e9bd2e4793b745e605193f35920e5679e48f5e37bc89211c26e2a1f659a432292c2fd3c027fe35063ae1
7
- data.tar.gz: 36db33880b172ac48da638dc0de97797481c88ca6af3bddb632cb1e5f7f795d5146ad1cac5d29f242213157bd16a8c44e031c690d55561fd73076be4bb2dde0e
6
+ metadata.gz: 66e9a66413e457d4de55902743cc9ad61861c4b7fcdb4d9951d79966893e0665f5fea1e369ec69bbf058104627fc156250c841e2213f22b55b1c5b306991f311
7
+ data.tar.gz: 94ff87d7fab49605087c81bc98639c86fe768c1842048438c87381d22ebbf4d651cc0b5b6cadc16acf169cdee9021b694a8239777bc6088a4d3eb3d5f985d248
data/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.6.3] - 2026-07
4
+
5
+ ### Fixed
6
+ - Packaged files no longer carry owner-only permissions. `gem build` preserves
7
+ on-disk modes, so gems built from a checkout with `0600`/`0700` files shipped
8
+ a library unreadable — and a `rsyntaxtree` CLI unexecutable — by anyone but
9
+ the owner after `sudo gem install`. File modes are now normalized before the
10
+ gem is built: `0755` for commands (`bin/`, `exe/`) and shebang scripts, `0644`
11
+ for everything else. This also drops stray executable bits that the working
12
+ tree had picked up on data files (images, fonts, Markdown, CSS, library
13
+ sources).
14
+
3
15
  ## [1.6.2] - 2026-06
4
16
 
5
17
  ### Fixed
data/Rakefile CHANGED
@@ -13,6 +13,25 @@ Rake::TestTask.new do |task|
13
13
  task.warning = false
14
14
  end
15
15
 
16
+ # Gem packaging preserves on-disk file modes. Owner-only permissions (which a
17
+ # Dropbox-synced checkout tends to produce) ship files that are unreadable, and
18
+ # a CLI that is unexecutable, for anyone but the owner after `sudo gem install`.
19
+ # Normalize every tracked file before the gem is built: a file is executable
20
+ # only if it is a command (bin/, exe/) or a script with a shebang; everything
21
+ # else is data and gets 0644. Deciding by path/content rather than by the
22
+ # current mode also drops stray executable bits picked up from the filesystem.
23
+ task :normalize_permissions do
24
+ `git ls-files -z`.split("\x0").each do |f|
25
+ next unless File.file?(f)
26
+
27
+ executable = f.start_with?("bin/", "exe/") ||
28
+ File.open(f, "rb") { |io| io.read(2) } == "#!"
29
+ File.chmod(executable ? 0o755 : 0o644, f)
30
+ end
31
+ end
32
+
33
+ Rake::Task["build"].enhance([:normalize_permissions])
34
+
16
35
  desc "Generate SVG and PNG example images locally"
17
36
  task :generate do
18
37
  require_relative "dev/generate_examples"
data/docs/.gitignore CHANGED
File without changes
data/docs/404.html CHANGED
File without changes
data/docs/Gemfile CHANGED
File without changes
data/docs/_config.yml CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/docs/examples.html CHANGED
File without changes
data/docs/index.html CHANGED
File without changes
File without changes
File without changes
data/img/sample.png CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RSyntaxTree
4
- VERSION = "1.6.2"
4
+ VERSION = "1.6.3"
5
5
  end
data/lib/rsyntaxtree.rb CHANGED
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsyntaxtree
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.2
4
+ version: 1.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yoichiro Hasebe