Skip to content

Support Rails v6.0 document #74

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 42 commits into from
May 5, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
f2f318a
Create collections
toshimaru Apr 19, 2021
d05181e
Define collections
toshimaru Apr 25, 2021
313ef55
Create mkdir rake task
toshimaru Apr 25, 2021
f2eb681
Add: switch_rails method
toshimaru May 2, 2021
48722cf
Define specific_version under version
toshimaru May 2, 2021
7af781a
Enhance switch_rails
toshimaru May 2, 2021
6d8a637
mkdir && switch_rails
toshimaru May 2, 2021
251f8c7
Update submodule: v6.0.3
toshimaru May 3, 2021
9536519
Set frozen_string_literal
toshimaru May 3, 2021
6687c24
Change collection config format
toshimaru May 3, 2021
fc51f74
Use just each
toshimaru May 3, 2021
95bdd73
Float to String
toshimaru May 3, 2021
5d9f1aa
Create version directory inside src
toshimaru May 3, 2021
a39ae06
Add: generate_rails_rdoc, generate_src
toshimaru May 3, 2021
e2281a5
Add target_version to generate_src
toshimaru May 3, 2021
99f1ce7
Define INDEX_HTML
toshimaru May 3, 2021
be9cf8c
mv navigation.html
toshimaru May 3, 2021
5f413b1
collections→rails_versions
toshimaru May 4, 2021
62d7516
main: Rails v6, sub: Rails v5
toshimaru May 5, 2021
9628143
Create build_multi task
toshimaru May 5, 2021
4b99562
Set scope for Rails 5.2 path
toshimaru May 5, 2021
ba9cce8
Change navigation path
toshimaru May 5, 2021
2bc59ec
Replace link path
toshimaru May 5, 2021
8b3f31a
Replace path
toshimaru May 5, 2021
c4ac759
Add files for Rails v5.2
toshimaru May 5, 2021
7953137
Bump bootstrap from 4.5 to 4.6
toshimaru May 5, 2021
122cdd5
Set navbar-expand to header
toshimaru May 5, 2021
3fe09c8
Display version selector
toshimaru May 5, 2021
ae17110
target_rails_version→default_rails_version
toshimaru May 5, 2021
ef372d5
Add doc-build to CI
toshimaru May 5, 2021
47c465a
Add require
toshimaru May 5, 2021
55fe56e
Create symbolic link for default version
toshimaru May 5, 2021
8b8574f
Set default page.version
toshimaru May 5, 2021
3b56a72
checkout with submodule
toshimaru May 5, 2021
2aa5826
Use macOS for doc build
toshimaru May 5, 2021
d1fc82b
Bump rails: 6.0.3→6.0.3.6
toshimaru May 5, 2021
ad064b3
sed shell script → ruby File read/write
toshimaru May 5, 2021
6fb4413
Revert "Use macOS for doc build"
toshimaru May 5, 2021
00aa5d6
switch_default_rails→build
toshimaru May 5, 2021
79ac42a
Revert "switch_default_rails→build"
toshimaru May 5, 2021
0c40dad
Update ci.yml
toshimaru May 5, 2021
3eea9fd
Generate Rails v6.0 doc
toshimaru May 5, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
20 changes: 17 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,28 @@
name: CI
on: [push]
on: [push, pull_request]
jobs:
build:
jekyll-build:
runs-on: ubuntu-latest
name: Jekyll Build
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.0
bundler-cache: true
bundler-cache: true
- name: Jekyll Build
run: bundle exec jekyll build
doc-build:
runs-on: ubuntu-latest
name: Rails Doc Build
steps:
- uses: actions/checkout@v2
with:
submodules: true
- uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7
bundler-cache: true
- name: Doc Build
run: |
rake build
78 changes: 62 additions & 16 deletions Rakefile
Original file line number Diff line number Diff line change
@@ -1,31 +1,77 @@
# frozen_string_literal: true

require 'yaml'
require 'bundler'

SOURCE_DIR = "src"
INDEX_HTML = 'files/railties/RDOC_MAIN_rdoc.html'

task :build do
generate_rails_rdoc
generate_src

sh 'bundle exec jekyll build'
end

task :switch_default_rails do
switch_rails(config["default_rails_version"])
end

task :build_multi do
config["rails_versions"].each do |version, detail|
dir = "#{SOURCE_DIR}/#{version}"
mkdir dir unless Dir.exist?(dir)

bulid_version = detail["specific_version"]
switch_rails(bulid_version)
generate_rails_rdoc
generate_src(target_version: version)
end
end

def config
YAML.load_file('./_config.yml')
end

def switch_rails(version)
cd 'rails' do
sh "git reset --hard"
sh "git switch refs/tags/v#{version} -C v#{version}"
end
end

def generate_rails_rdoc
cd 'rails' do
Bundler.with_unbundled_env do
sh %(sed -i '' -e 's/sdoc.*$/sdoc", github: "toshimaru\\/sdoc", branch: "railsdoc"/g' ./Gemfile)
# replace sdoc gem
gemfile = File.read("Gemfile")
gemfile.gsub!(/"sdoc.*$/, '"sdoc", github: "toshimaru/sdoc", branch: "railsdoc"')
File.write("Gemfile", gemfile)

sh 'bundle install && bundle update sdoc'
rm_rf 'doc'
sh 'bundle exec rake rdoc'
end
end
end

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

cd 'src' do
cp 'files/railties/RDOC_MAIN_rdoc.html', 'index.html'
mv 'navigation.html', '_includes/navigation.html', force: true
end

sh 'bundle exec jekyll build'
end
cd target_dir do
cp INDEX_HTML, 'index.html'

task :switch_rails do
require 'yaml'
if target_version.nil?
mv 'navigation.html', '_includes/navigation.html', force: true
else
# Replace absolute path in navigation.html
content = File.read("navigation.html")
content.gsub!("<a href=\"/", "<a href=\"/#{target_version}/")
File.write("navigation.html", content)

config = YAML.load_file('./_config.yml')
target_rails_version = config["target_rails_version"]

cd 'rails' do
sh "git switch v#{target_rails_version} -c v#{target_rails_version}"
mv 'navigation.html', "../_includes/navigation#{target_version}.html", force: true
end
end
end
12 changes: 11 additions & 1 deletion _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,12 @@ title: RailsDoc(β)
description: Ruby on Rails API Documentation.
url: https://railsdoc.github.io
source: src
target_rails_version: 5.2.5
default_rails_version: 6.0.3.6
rails_versions:
# "6.0":
# specific_version: "6.0.3"
"5.2":
specific_version: "5.2.5"
plugins:
- jekyll-include-cache
- jekyll-redirect-from
Expand All @@ -17,5 +22,10 @@ defaults:
- scope:
path: ""
values:
version: 6.0
image: https://avatars.githubusercontent.com/u/4223
toc: true
- scope:
path: "5.2"
values:
version: 5.2
2 changes: 1 addition & 1 deletion rails
Submodule rails updated 2388 files
122 changes: 122 additions & 0 deletions src/5.2/classes/AbstractController.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
---
title: AbstractController
layout: default
---
<div class="main">
<div class="banner">

<span>Ruby on Rails 5.2.5</span><br />

<div class="type">Module</div>
<h1>
AbstractController

</h1>
<ul class="files">

<li><a href="../files/actionpack/lib/abstract_controller/asset_paths_rb.html">actionpack/lib/abstract_controller/asset_paths.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/base_rb.html">actionpack/lib/abstract_controller/base.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/caching_rb.html">actionpack/lib/abstract_controller/caching.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/caching/fragments_rb.html">actionpack/lib/abstract_controller/caching/fragments.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/callbacks_rb.html">actionpack/lib/abstract_controller/callbacks.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/collector_rb.html">actionpack/lib/abstract_controller/collector.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/error_rb.html">actionpack/lib/abstract_controller/error.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/helpers_rb.html">actionpack/lib/abstract_controller/helpers.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/logger_rb.html">actionpack/lib/abstract_controller/logger.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/railties/routes_helpers_rb.html">actionpack/lib/abstract_controller/railties/routes_helpers.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/rendering_rb.html">actionpack/lib/abstract_controller/rendering.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/translation_rb.html">actionpack/lib/abstract_controller/translation.rb</a></li>

<li><a href="../files/actionpack/lib/abstract_controller/url_for_rb.html">actionpack/lib/abstract_controller/url_for.rb</a></li>

<li><a href="../files/actionpack/lib/action_controller/metal/redirecting_rb.html">actionpack/lib/action_controller/metal/redirecting.rb</a></li>

<li><a href="../files/actionpack/lib/action_controller/metal/rendering_rb.html">actionpack/lib/action_controller/metal/rendering.rb</a></li>

<li><a href="../files/railties/lib/rails/mailers_controller_rb.html">railties/lib/rails/mailers_controller.rb</a></li>

</ul>
</div>
<div id="bodyContent">
<div id="content">









<h2 id="namespace">Namespace</h2>


<h3 id="module">Module</h3>
<ul>

<li><a href="AbstractController/Caching.html">AbstractController::Caching</a></li>

<li><a href="AbstractController/Callbacks.html">AbstractController::Callbacks</a></li>

<li><a href="AbstractController/Collector.html">AbstractController::Collector</a></li>

<li><a href="AbstractController/Helpers.html">AbstractController::Helpers</a></li>

<li><a href="AbstractController/Railties.html">AbstractController::Railties</a></li>

<li><a href="AbstractController/Rendering.html">AbstractController::Rendering</a></li>

<li><a href="AbstractController/Translation.html">AbstractController::Translation</a></li>

<li><a href="AbstractController/UrlFor.html">AbstractController::UrlFor</a></li>

</ul>



<h3 id="class">Class</h3>
<ul>

<li><a href="AbstractController/ActionNotFound.html">AbstractController::ActionNotFound</a></li>

<li><a href="AbstractController/Base.html">AbstractController::Base</a></li>

<li><a href="AbstractController/DoubleRenderError.html">AbstractController::DoubleRenderError</a></li>

</ul>
















<!-- Methods -->




</div>

</div>
</div>
66 changes: 66 additions & 0 deletions src/5.2/classes/AbstractController/ActionNotFound.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
title: AbstractController::ActionNotFound
layout: default
---
<div class="main">
<div class="banner">

<span>Ruby on Rails 5.2.5</span><br />

<div class="type">Class</div>
<h1>
AbstractController::ActionNotFound

<span class="parent">&lt;

StandardError

</span>

</h1>
<ul class="files">

<li><a href="../../files/actionpack/lib/abstract_controller/base_rb.html">actionpack/lib/abstract_controller/base.rb</a></li>

</ul>
</div>
<div id="bodyContent">
<div id="content">

<div class="description">

<p>Raised when a non-existing controller action is triggered.</p>

</div>























<!-- Methods -->




</div>

</div>
</div>
Loading