yard-relative_markdown_links 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/pull-request.yml +61 -0
- data/.rubocop.yml +3 -2
- data/.ruby-version +1 -1
- data/CHANGELOG.md +6 -1
- data/Gemfile +7 -0
- data/Gemfile.lock +29 -26
- data/README.md +4 -3
- data/bin/install-bundler +4 -0
- data/lib/yard/relative_markdown_links.rb +5 -3
- data/lib/yard/relative_markdown_links/version.rb +1 -1
- data/yard-relative_markdown_links.gemspec +1 -8
- metadata +9 -92
- data/.travis.yml +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1ba604ffff07a62d9a4d07e6e56ad6865d8752a727032e13e46cb08404599cd
|
4
|
+
data.tar.gz: 656f0f6c43e6d766f1c7bb6b3df110efae719b8e74e9e9877b1f0908e698db5a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 459e633a68b4a588370cbe7b18ff64742d99f4d73a59afa5e708f62cf5bd466b25192b1e23f8592e514a7045a27b3f28e5377e119f540a168cba0774a3f11198
|
7
|
+
data.tar.gz: e8c0f800b34e8704f6ffe385a047108eb33d6a7da993e4b7be6e70aebdee5161285f0022d936cadeafc46a03683aeb56cd511295d05102fdd6d87c8a77abda18
|
@@ -0,0 +1,61 @@
|
|
1
|
+
name: pull-request
|
2
|
+
|
3
|
+
on:
|
4
|
+
- pull_request
|
5
|
+
|
6
|
+
jobs:
|
7
|
+
test:
|
8
|
+
strategy:
|
9
|
+
matrix:
|
10
|
+
ruby:
|
11
|
+
- "2.5"
|
12
|
+
- "2.6"
|
13
|
+
- "2.7"
|
14
|
+
|
15
|
+
name: Ruby ${{ matrix.ruby }}
|
16
|
+
|
17
|
+
runs-on: ubuntu-latest
|
18
|
+
|
19
|
+
container:
|
20
|
+
image: ruby:${{ matrix.ruby }}-alpine
|
21
|
+
|
22
|
+
env:
|
23
|
+
BUNDLE_PATH: ${{ github.workspace }}/vendor/bundle
|
24
|
+
|
25
|
+
steps:
|
26
|
+
- name: Install dependencies
|
27
|
+
run: apk add build-base git
|
28
|
+
|
29
|
+
- name: Check out source code
|
30
|
+
uses: actions/checkout@v2
|
31
|
+
|
32
|
+
- name: Install Bundler
|
33
|
+
run: bin/install-bundler
|
34
|
+
|
35
|
+
- name: Compute cache key
|
36
|
+
id: cache-key
|
37
|
+
run: |
|
38
|
+
source /etc/os-release
|
39
|
+
printf \
|
40
|
+
"::set-output name=cache-key::alpine-%s-ruby-%s\n" \
|
41
|
+
"${VERSION_ID}" \
|
42
|
+
"${RUBY_VERSION}"
|
43
|
+
|
44
|
+
- name: Cache gems
|
45
|
+
uses: actions/cache@v1
|
46
|
+
with:
|
47
|
+
key: ${{ steps.cache-key.outputs.cache-key }}-gems-${{ hashFiles('Gemfile.lock') }}
|
48
|
+
path: vendor/bundle
|
49
|
+
|
50
|
+
- name: Install gems
|
51
|
+
run: bin/bundle install
|
52
|
+
env:
|
53
|
+
BUNDLE_FROZEN: true
|
54
|
+
BUNDLE_JOBS: 4
|
55
|
+
BUNDLE_RETRY: 3
|
56
|
+
|
57
|
+
- name: Run RuboCop
|
58
|
+
run: bin/rake rubocop
|
59
|
+
|
60
|
+
- name: Run tests
|
61
|
+
run: bin/rake test
|
data/.rubocop.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.7.
|
1
|
+
2.7.1
|
data/CHANGELOG.md
CHANGED
@@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
7
7
|
|
8
8
|
## [Unreleased]
|
9
9
|
|
10
|
+
## [0.3.0] - 2020-07-26
|
11
|
+
### Added
|
12
|
+
- Support for relative links to all extra files, not just markdown ([#9](https://github.com/haines/yard-relative_markdown_links/pull/9))
|
13
|
+
|
10
14
|
## [0.2.0] - 2020-03-06
|
11
15
|
### Changed
|
12
16
|
- Stop testing against old Rubies and upgrade dependencies ([#6](https://github.com/haines/yard-relative_markdown_links/pull/6))
|
@@ -23,7 +27,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
23
27
|
### Added
|
24
28
|
- A YARD plugin to allow relative links between Markdown files ([#1](https://github.com/haines/yard-relative_markdown_links/pull/1))
|
25
29
|
|
26
|
-
[Unreleased]: https://github.com/haines/yard-relative_markdown_links/compare/v0.
|
30
|
+
[Unreleased]: https://github.com/haines/yard-relative_markdown_links/compare/v0.3.0...HEAD
|
31
|
+
[0.3.0]: https://github.com/haines/yard-relative_markdown_links/compare/v0.2.0...v0.3.0
|
27
32
|
[0.2.0]: https://github.com/haines/yard-relative_markdown_links/compare/v0.1.2...v0.2.0
|
28
33
|
[0.1.2]: https://github.com/haines/yard-relative_markdown_links/compare/v0.1.1...v0.1.2
|
29
34
|
[0.1.1]: https://github.com/haines/yard-relative_markdown_links/compare/v0.1.0...v0.1.1
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,51 +1,54 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
yard-relative_markdown_links (0.
|
4
|
+
yard-relative_markdown_links (0.3.0)
|
5
5
|
nokogiri (~> 1.8)
|
6
6
|
|
7
7
|
GEM
|
8
8
|
remote: https://rubygems.org/
|
9
9
|
specs:
|
10
|
-
ast (2.4.
|
11
|
-
coderay (1.1.
|
12
|
-
|
13
|
-
method_source (0.9.2)
|
10
|
+
ast (2.4.1)
|
11
|
+
coderay (1.1.3)
|
12
|
+
method_source (1.0.0)
|
14
13
|
mini_portile2 (2.4.0)
|
15
|
-
minitest (5.14.
|
16
|
-
nokogiri (1.10.
|
14
|
+
minitest (5.14.1)
|
15
|
+
nokogiri (1.10.10)
|
17
16
|
mini_portile2 (~> 2.4.0)
|
18
|
-
parallel (1.19.
|
19
|
-
parser (2.7.
|
20
|
-
ast (~> 2.4.
|
21
|
-
pry (0.
|
22
|
-
coderay (~> 1.1
|
23
|
-
method_source (~>
|
17
|
+
parallel (1.19.2)
|
18
|
+
parser (2.7.1.4)
|
19
|
+
ast (~> 2.4.1)
|
20
|
+
pry (0.13.1)
|
21
|
+
coderay (~> 1.1)
|
22
|
+
method_source (~> 1.0)
|
24
23
|
rainbow (3.0.0)
|
25
|
-
rake (
|
24
|
+
rake (13.0.1)
|
25
|
+
regexp_parser (1.7.1)
|
26
26
|
rexml (3.2.4)
|
27
|
-
rubocop (0.
|
28
|
-
jaro_winkler (~> 1.5.1)
|
27
|
+
rubocop (0.88.0)
|
29
28
|
parallel (~> 1.10)
|
30
|
-
parser (>= 2.7.
|
29
|
+
parser (>= 2.7.1.1)
|
31
30
|
rainbow (>= 2.2.2, < 4.0)
|
31
|
+
regexp_parser (>= 1.7)
|
32
32
|
rexml
|
33
|
+
rubocop-ast (>= 0.1.0, < 1.0)
|
33
34
|
ruby-progressbar (~> 1.7)
|
34
|
-
unicode-display_width (>= 1.4.0, <
|
35
|
+
unicode-display_width (>= 1.4.0, < 2.0)
|
36
|
+
rubocop-ast (0.2.0)
|
37
|
+
parser (>= 2.7.0.1)
|
35
38
|
ruby-progressbar (1.10.1)
|
36
|
-
unicode-display_width (1.
|
37
|
-
yard (0.9.
|
39
|
+
unicode-display_width (1.7.0)
|
40
|
+
yard (0.9.25)
|
38
41
|
|
39
42
|
PLATFORMS
|
40
43
|
ruby
|
41
44
|
|
42
45
|
DEPENDENCIES
|
43
|
-
bundler
|
44
|
-
minitest
|
45
|
-
pry
|
46
|
-
rake
|
47
|
-
rubocop
|
48
|
-
yard
|
46
|
+
bundler
|
47
|
+
minitest
|
48
|
+
pry
|
49
|
+
rake
|
50
|
+
rubocop
|
51
|
+
yard
|
49
52
|
yard-relative_markdown_links!
|
50
53
|
|
51
54
|
BUNDLED WITH
|
data/README.md
CHANGED
@@ -3,14 +3,13 @@
|
|
3
3
|
[![Docs](https://img.shields.io/badge/docs-github.io-blue.svg?style=flat-square)](https://haines.github.io/yard-relative_markdown_links/)
|
4
4
|
[![Gem](https://img.shields.io/gem/v/yard-relative_markdown_links.svg?style=flat-square)](https://rubygems.org/gems/yard-relative_markdown_links)
|
5
5
|
[![GitHub](https://img.shields.io/badge/github-haines%2Fyard--relative__markdown__links-blue.svg?style=flat-square)](https://github.com/haines/yard-relative_markdown_links)
|
6
|
-
[![License](https://img.shields.io/github/license/haines/yard-relative_markdown_links.svg?style=flat-square)](https://github.com/haines/yard-relative_markdown_links/blob/
|
7
|
-
[![Travis](https://img.shields.io/travis/haines/yard-relative_markdown_links.svg?style=flat-square)](https://travis-ci.org/haines/yard-relative_markdown_links)
|
6
|
+
[![License](https://img.shields.io/github/license/haines/yard-relative_markdown_links.svg?style=flat-square)](https://github.com/haines/yard-relative_markdown_links/blob/main/LICENSE.md)
|
8
7
|
|
9
8
|
|
10
9
|
A [YARD](https://yardoc.org) plugin to allow relative links between Markdown files.
|
11
10
|
|
12
11
|
GitHub and YARD render Markdown files differently.
|
13
|
-
In particular, relative links
|
12
|
+
In particular, relative links in Markdown files that work in GitHub don't work in YARD.
|
14
13
|
For example, if you have `[hello](FOO.md)` in your README, YARD renders it as `<a href="FOO.md">hello</a>`, creating a broken link in your docs.
|
15
14
|
|
16
15
|
With this plugin enabled, you'll get `<a href="file.FOO.html">hello</a>` instead, which correctly links through to the rendered HTML file.
|
@@ -53,6 +52,8 @@ To include all Markdown files in your project, add the following lines to the en
|
|
53
52
|
**/*.md
|
54
53
|
```
|
55
54
|
|
55
|
+
If you include other types of file, relative links to those files from Markdown will work as well.
|
56
|
+
|
56
57
|
|
57
58
|
## Development
|
58
59
|
|
data/bin/install-bundler
ADDED
@@ -1,6 +1,7 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
require "nokogiri"
|
4
|
+
require "uri"
|
4
5
|
require "yard"
|
5
6
|
require "yard/relative_markdown_links/version"
|
6
7
|
|
@@ -13,14 +14,15 @@ module YARD # rubocop:disable Style/Documentation
|
|
13
14
|
# With this plugin enabled, you'll get `<a href="file.FOO.html">hello</a>`
|
14
15
|
# instead, which correctly links through to the rendered HTML file.
|
15
16
|
module RelativeMarkdownLinks
|
16
|
-
# Resolves relative links
|
17
|
+
# Resolves relative links from Markdown files.
|
17
18
|
# @param [String] text the HTML fragment in which to resolve links.
|
18
|
-
# @return [String] HTML with relative links to
|
19
|
+
# @return [String] HTML with relative links to extra files converted to `{file:}` links.
|
19
20
|
def resolve_links(text)
|
20
21
|
html = Nokogiri::HTML.fragment(text)
|
21
22
|
html.css("a[href]").each do |link|
|
22
23
|
href = URI(link["href"])
|
23
|
-
|
24
|
+
|
25
|
+
next unless href.relative? && options.files.map(&:filename).include?(href.path)
|
24
26
|
|
25
27
|
link.replace "{file:#{href} #{link.inner_html}}"
|
26
28
|
end
|
@@ -20,18 +20,11 @@ Gem::Specification.new do |spec|
|
|
20
20
|
spec.require_paths = ["lib"]
|
21
21
|
|
22
22
|
spec.metadata["bug_tracker_uri"] = "#{spec.homepage}/issues"
|
23
|
-
spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/
|
23
|
+
spec.metadata["changelog_uri"] = "#{spec.homepage}/blob/main/CHANGELOG.md"
|
24
24
|
spec.metadata["documentation_uri"] = "https://haines.github.io/yard-relative_markdown_links/"
|
25
25
|
spec.metadata["homepage_uri"] = spec.homepage
|
26
26
|
spec.metadata["source_code_uri"] = spec.homepage
|
27
27
|
spec.metadata["yard.run"] = "yri"
|
28
28
|
|
29
29
|
spec.add_dependency "nokogiri", "~> 1.8"
|
30
|
-
|
31
|
-
spec.add_development_dependency "bundler", "~> 2.1"
|
32
|
-
spec.add_development_dependency "minitest", "~> 5.11"
|
33
|
-
spec.add_development_dependency "pry", "~> 0.11"
|
34
|
-
spec.add_development_dependency "rake", "~> 12.1"
|
35
|
-
spec.add_development_dependency "rubocop", "~> 0.80.1"
|
36
|
-
spec.add_development_dependency "yard", "~> 0.9"
|
37
30
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yard-relative_markdown_links
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Haines
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-07-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -24,101 +24,17 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.8'
|
27
|
-
|
28
|
-
name: bundler
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '2.1'
|
34
|
-
type: :development
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '2.1'
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: minitest
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - "~>"
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '5.11'
|
48
|
-
type: :development
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - "~>"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '5.11'
|
55
|
-
- !ruby/object:Gem::Dependency
|
56
|
-
name: pry
|
57
|
-
requirement: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - "~>"
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0.11'
|
62
|
-
type: :development
|
63
|
-
prerelease: false
|
64
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "~>"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0.11'
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rake
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '12.1'
|
76
|
-
type: :development
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: '12.1'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: rubocop
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: 0.80.1
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: 0.80.1
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: yard
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - "~>"
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0.9'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - "~>"
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0.9'
|
111
|
-
description:
|
27
|
+
description:
|
112
28
|
email:
|
113
29
|
- andrew@haines.org.nz
|
114
30
|
executables: []
|
115
31
|
extensions: []
|
116
32
|
extra_rdoc_files: []
|
117
33
|
files:
|
34
|
+
- ".github/workflows/pull-request.yml"
|
118
35
|
- ".gitignore"
|
119
36
|
- ".rubocop.yml"
|
120
37
|
- ".ruby-version"
|
121
|
-
- ".travis.yml"
|
122
38
|
- ".yardopts"
|
123
39
|
- CHANGELOG.md
|
124
40
|
- CODE_OF_CONDUCT.md
|
@@ -129,6 +45,7 @@ files:
|
|
129
45
|
- Rakefile
|
130
46
|
- bin/bundle
|
131
47
|
- bin/console
|
48
|
+
- bin/install-bundler
|
132
49
|
- bin/rake
|
133
50
|
- bin/setup
|
134
51
|
- lib/yard-relative_markdown_links.rb
|
@@ -140,12 +57,12 @@ licenses:
|
|
140
57
|
- MIT
|
141
58
|
metadata:
|
142
59
|
bug_tracker_uri: https://github.com/haines/yard-relative_markdown_links/issues
|
143
|
-
changelog_uri: https://github.com/haines/yard-relative_markdown_links/blob/
|
60
|
+
changelog_uri: https://github.com/haines/yard-relative_markdown_links/blob/main/CHANGELOG.md
|
144
61
|
documentation_uri: https://haines.github.io/yard-relative_markdown_links/
|
145
62
|
homepage_uri: https://github.com/haines/yard-relative_markdown_links
|
146
63
|
source_code_uri: https://github.com/haines/yard-relative_markdown_links
|
147
64
|
yard.run: yri
|
148
|
-
post_install_message:
|
65
|
+
post_install_message:
|
149
66
|
rdoc_options: []
|
150
67
|
require_paths:
|
151
68
|
- lib
|
@@ -161,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
161
78
|
version: '0'
|
162
79
|
requirements: []
|
163
80
|
rubygems_version: 3.1.2
|
164
|
-
signing_key:
|
81
|
+
signing_key:
|
165
82
|
specification_version: 4
|
166
83
|
summary: A YARD plugin to allow relative links between Markdown files
|
167
84
|
test_files: []
|