Skip to content

Commit 63a678e

Browse files
authored
Support Rails v6.0 document (#74)
* Create collections ref. https://jekyllrb.com/docs/step-by-step/09-collections/ * Define collections * Create mkdir rake task * Add: switch_rails method * Define specific_version under version * Enhance switch_rails * mkdir && switch_rails * Update submodule: v6.0.3 * Set frozen_string_literal * Change collection config format ref. https://jekyllrb.com/docs/step-by-step/09-collections/ * Use just each * Float to String ``` jekyll/collection.rb:163:in `sanitize_label': undefined method `gsub' for 6.0:Float (NoMethodError) ``` * Create version directory inside src * Add: generate_rails_rdoc, generate_src * Add target_version to generate_src * Define INDEX_HTML * mv navigation.html * collections→rails_versions * main: Rails v6, sub: Rails v5 * Create build_multi task * Set scope for Rails 5.2 path * Change navigation path * Replace link path * Replace path * Add files for Rails v5.2 * Bump bootstrap from 4.5 to 4.6 ref. https://getbootstrap.com/docs/4.6/getting-started/introduction/ * Set navbar-expand to header * Display version selector * target_rails_version→default_rails_version * Add doc-build to CI * Add require * Create symbolic link for default version * Set default page.version * checkout with submodule * Use macOS for doc build * Bump rails: 6.0.3→6.0.3.6 * sed shell script → ruby File read/write to make it OS-agnostic * Revert "Use macOS for doc build" This reverts commit 895c0d2. * switch_default_rails→build * Revert "switch_default_rails→build" This reverts commit 3eb87b8. * Update ci.yml * Generate Rails v6.0 doc
1 parent c408bc6 commit 63a678e

File tree

4,224 files changed

+395716
-17923
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

4,224 files changed

+395716
-17923
lines changed

.github/workflows/ci.yml

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,28 @@
11
name: CI
2-
on: [push]
2+
on: [push, pull_request]
33
jobs:
4-
build:
4+
jekyll-build:
55
runs-on: ubuntu-latest
66
name: Jekyll Build
77
steps:
88
- uses: actions/checkout@v2
99
- uses: ruby/setup-ruby@v1
1010
with:
1111
ruby-version: 3.0
12-
bundler-cache: true
12+
bundler-cache: true
1313
- name: Jekyll Build
1414
run: bundle exec jekyll build
15+
doc-build:
16+
runs-on: ubuntu-latest
17+
name: Rails Doc Build
18+
steps:
19+
- uses: actions/checkout@v2
20+
with:
21+
submodules: true
22+
- uses: ruby/setup-ruby@v1
23+
with:
24+
ruby-version: 2.7
25+
bundler-cache: true
26+
- name: Doc Build
27+
run: |
28+
rake build

Rakefile

Lines changed: 62 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,31 +1,77 @@
1+
# frozen_string_literal: true
2+
3+
require 'yaml'
4+
require 'bundler'
5+
6+
SOURCE_DIR = "src"
7+
INDEX_HTML = 'files/railties/RDOC_MAIN_rdoc.html'
8+
19
task :build do
10+
generate_rails_rdoc
11+
generate_src
12+
13+
sh 'bundle exec jekyll build'
14+
end
15+
16+
task :switch_default_rails do
17+
switch_rails(config["default_rails_version"])
18+
end
19+
20+
task :build_multi do
21+
config["rails_versions"].each do |version, detail|
22+
dir = "#{SOURCE_DIR}/#{version}"
23+
mkdir dir unless Dir.exist?(dir)
24+
25+
bulid_version = detail["specific_version"]
26+
switch_rails(bulid_version)
27+
generate_rails_rdoc
28+
generate_src(target_version: version)
29+
end
30+
end
31+
32+
def config
33+
YAML.load_file('./_config.yml')
34+
end
35+
36+
def switch_rails(version)
37+
cd 'rails' do
38+
sh "git reset --hard"
39+
sh "git switch refs/tags/v#{version} -C v#{version}"
40+
end
41+
end
42+
43+
def generate_rails_rdoc
244
cd 'rails' do
345
Bundler.with_unbundled_env do
4-
sh %(sed -i '' -e 's/sdoc.*$/sdoc", github: "toshimaru\\/sdoc", branch: "railsdoc"/g' ./Gemfile)
46+
# replace sdoc gem
47+
gemfile = File.read("Gemfile")
48+
gemfile.gsub!(/"sdoc.*$/, '"sdoc", github: "toshimaru/sdoc", branch: "railsdoc"')
49+
File.write("Gemfile", gemfile)
50+
551
sh 'bundle install && bundle update sdoc'
652
rm_rf 'doc'
753
sh 'bundle exec rake rdoc'
854
end
955
end
56+
end
1057

58+
def generate_src(target_version: nil)
1159
copy_sources = Dir.glob('rails/doc/rdoc/*').reject { |path| path.end_with?("panel", "js", "created.rid") }
12-
cp_r copy_sources, 'src/'
60+
target_dir = "#{SOURCE_DIR}/#{target_version}"
61+
cp_r copy_sources, target_dir
1362

14-
cd 'src' do
15-
cp 'files/railties/RDOC_MAIN_rdoc.html', 'index.html'
16-
mv 'navigation.html', '_includes/navigation.html', force: true
17-
end
18-
19-
sh 'bundle exec jekyll build'
20-
end
63+
cd target_dir do
64+
cp INDEX_HTML, 'index.html'
2165

22-
task :switch_rails do
23-
require 'yaml'
66+
if target_version.nil?
67+
mv 'navigation.html', '_includes/navigation.html', force: true
68+
else
69+
# Replace absolute path in navigation.html
70+
content = File.read("navigation.html")
71+
content.gsub!("<a href=\"/", "<a href=\"/#{target_version}/")
72+
File.write("navigation.html", content)
2473

25-
config = YAML.load_file('./_config.yml')
26-
target_rails_version = config["target_rails_version"]
27-
28-
cd 'rails' do
29-
sh "git switch v#{target_rails_version} -c v#{target_rails_version}"
74+
mv 'navigation.html', "../_includes/navigation#{target_version}.html", force: true
75+
end
3076
end
3177
end

_config.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,12 @@ title: RailsDoc(β)
22
description: Ruby on Rails API Documentation.
33
url: https://railsdoc.github.io
44
source: src
5-
target_rails_version: 5.2.5
5+
default_rails_version: 6.0.3.6
6+
rails_versions:
7+
# "6.0":
8+
# specific_version: "6.0.3"
9+
"5.2":
10+
specific_version: "5.2.5"
611
plugins:
712
- jekyll-include-cache
813
- jekyll-redirect-from
@@ -17,5 +22,10 @@ defaults:
1722
- scope:
1823
path: ""
1924
values:
25+
version: 6.0
2026
image: https://avatars.githubusercontent.com/u/4223
2127
toc: true
28+
- scope:
29+
path: "5.2"
30+
values:
31+
version: 5.2

rails

Submodule rails updated 2388 files
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
---
2+
title: AbstractController
3+
layout: default
4+
---
5+
<div class="main">
6+
<div class="banner">
7+
8+
<span>Ruby on Rails 5.2.5</span><br />
9+
10+
<div class="type">Module</div>
11+
<h1>
12+
AbstractController
13+
14+
</h1>
15+
<ul class="files">
16+
17+
<li><a href="../files/actionpack/lib/abstract_controller/asset_paths_rb.html">actionpack/lib/abstract_controller/asset_paths.rb</a></li>
18+
19+
<li><a href="../files/actionpack/lib/abstract_controller/base_rb.html">actionpack/lib/abstract_controller/base.rb</a></li>
20+
21+
<li><a href="../files/actionpack/lib/abstract_controller/caching_rb.html">actionpack/lib/abstract_controller/caching.rb</a></li>
22+
23+
<li><a href="../files/actionpack/lib/abstract_controller/caching/fragments_rb.html">actionpack/lib/abstract_controller/caching/fragments.rb</a></li>
24+
25+
<li><a href="../files/actionpack/lib/abstract_controller/callbacks_rb.html">actionpack/lib/abstract_controller/callbacks.rb</a></li>
26+
27+
<li><a href="../files/actionpack/lib/abstract_controller/collector_rb.html">actionpack/lib/abstract_controller/collector.rb</a></li>
28+
29+
<li><a href="../files/actionpack/lib/abstract_controller/error_rb.html">actionpack/lib/abstract_controller/error.rb</a></li>
30+
31+
<li><a href="../files/actionpack/lib/abstract_controller/helpers_rb.html">actionpack/lib/abstract_controller/helpers.rb</a></li>
32+
33+
<li><a href="../files/actionpack/lib/abstract_controller/logger_rb.html">actionpack/lib/abstract_controller/logger.rb</a></li>
34+
35+
<li><a href="../files/actionpack/lib/abstract_controller/railties/routes_helpers_rb.html">actionpack/lib/abstract_controller/railties/routes_helpers.rb</a></li>
36+
37+
<li><a href="../files/actionpack/lib/abstract_controller/rendering_rb.html">actionpack/lib/abstract_controller/rendering.rb</a></li>
38+
39+
<li><a href="../files/actionpack/lib/abstract_controller/translation_rb.html">actionpack/lib/abstract_controller/translation.rb</a></li>
40+
41+
<li><a href="../files/actionpack/lib/abstract_controller/url_for_rb.html">actionpack/lib/abstract_controller/url_for.rb</a></li>
42+
43+
<li><a href="../files/actionpack/lib/action_controller/metal/redirecting_rb.html">actionpack/lib/action_controller/metal/redirecting.rb</a></li>
44+
45+
<li><a href="../files/actionpack/lib/action_controller/metal/rendering_rb.html">actionpack/lib/action_controller/metal/rendering.rb</a></li>
46+
47+
<li><a href="../files/railties/lib/rails/mailers_controller_rb.html">railties/lib/rails/mailers_controller.rb</a></li>
48+
49+
</ul>
50+
</div>
51+
<div id="bodyContent">
52+
<div id="content">
53+
54+
55+
56+
57+
58+
59+
60+
61+
62+
<h2 id="namespace">Namespace</h2>
63+
64+
65+
<h3 id="module">Module</h3>
66+
<ul>
67+
68+
<li><a href="AbstractController/Caching.html">AbstractController::Caching</a></li>
69+
70+
<li><a href="AbstractController/Callbacks.html">AbstractController::Callbacks</a></li>
71+
72+
<li><a href="AbstractController/Collector.html">AbstractController::Collector</a></li>
73+
74+
<li><a href="AbstractController/Helpers.html">AbstractController::Helpers</a></li>
75+
76+
<li><a href="AbstractController/Railties.html">AbstractController::Railties</a></li>
77+
78+
<li><a href="AbstractController/Rendering.html">AbstractController::Rendering</a></li>
79+
80+
<li><a href="AbstractController/Translation.html">AbstractController::Translation</a></li>
81+
82+
<li><a href="AbstractController/UrlFor.html">AbstractController::UrlFor</a></li>
83+
84+
</ul>
85+
86+
87+
88+
<h3 id="class">Class</h3>
89+
<ul>
90+
91+
<li><a href="AbstractController/ActionNotFound.html">AbstractController::ActionNotFound</a></li>
92+
93+
<li><a href="AbstractController/Base.html">AbstractController::Base</a></li>
94+
95+
<li><a href="AbstractController/DoubleRenderError.html">AbstractController::DoubleRenderError</a></li>
96+
97+
</ul>
98+
99+
100+
101+
102+
103+
104+
105+
106+
107+
108+
109+
110+
111+
112+
113+
114+
<!-- Methods -->
115+
116+
117+
118+
119+
</div>
120+
121+
</div>
122+
</div>
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
---
2+
title: AbstractController::ActionNotFound
3+
layout: default
4+
---
5+
<div class="main">
6+
<div class="banner">
7+
8+
<span>Ruby on Rails 5.2.5</span><br />
9+
10+
<div class="type">Class</div>
11+
<h1>
12+
AbstractController::ActionNotFound
13+
14+
<span class="parent">&lt;
15+
16+
StandardError
17+
18+
</span>
19+
20+
</h1>
21+
<ul class="files">
22+
23+
<li><a href="../../files/actionpack/lib/abstract_controller/base_rb.html">actionpack/lib/abstract_controller/base.rb</a></li>
24+
25+
</ul>
26+
</div>
27+
<div id="bodyContent">
28+
<div id="content">
29+
30+
<div class="description">
31+
32+
<p>Raised when a non-existing controller action is triggered.</p>
33+
34+
</div>
35+
36+
37+
38+
39+
40+
41+
42+
43+
44+
45+
46+
47+
48+
49+
50+
51+
52+
53+
54+
55+
56+
57+
58+
<!-- Methods -->
59+
60+
61+
62+
63+
</div>
64+
65+
</div>
66+
</div>

0 commit comments

Comments
 (0)