Merge branch 'main' into sanctuary-type-classes

pull/2041/head
Simon Legner 1 year ago committed by GitHub
commit 1e18c071a7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -13,7 +13,7 @@ jobs:
steps: steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0 - uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0
with: with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run tests - name: Run tests

@ -10,7 +10,7 @@ jobs:
steps: steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0 - uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0
with: with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Generate report - name: Generate report

@ -11,7 +11,7 @@ jobs:
steps: steps:
- uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0 - uses: actions/checkout@ee0669bd1cc54295c223e0bb666b733df41de1c5 # v2.7.0
- name: Set up Ruby - name: Set up Ruby
uses: ruby/setup-ruby@250fcd6a742febb1123a77a841497ccaa8b9e939 # v1.152.0 uses: ruby/setup-ruby@d37167af451eb51448db3354e1057b75c4b268f7 # v1.155.0
with: with:
bundler-cache: true # runs 'bundle install' and caches installed gems automatically bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run tests - name: Run tests

@ -1,7 +1,7 @@
GEM GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
activesupport (7.0.7.2) activesupport (7.0.8)
concurrent-ruby (~> 1.0, >= 1.0.2) concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2) i18n (>= 1.6, < 2)
minitest (>= 5.1) minitest (>= 5.1)

@ -22,7 +22,7 @@ Unless you wish to contribute to the project, we recommend using the hosted vers
DevDocs is made of two pieces: a Ruby scraper that generates the documentation and metadata, and a JavaScript app powered by a small Sinatra app. DevDocs is made of two pieces: a Ruby scraper that generates the documentation and metadata, and a JavaScript app powered by a small Sinatra app.
DevDocs requires Ruby 3.2.1, libcurl, and a JavaScript runtime supported by [ExecJS](https://github.com/rails/execjs#readme) (included in OS X and Windows; [Node.js](https://nodejs.org/en/) on Linux). Once you have these installed, run the following commands: DevDocs requires Ruby 3.2.2 (defined in [`Gemfile`](./Gemfile)), libcurl, and a JavaScript runtime supported by [ExecJS](https://github.com/rails/execjs#readme) (included in OS X and Windows; [Node.js](https://nodejs.org/en/) on Linux). Once you have these installed, run the following commands:
```sh ```sh
git clone https://github.com/freeCodeCamp/devdocs.git && cd devdocs git clone https://github.com/freeCodeCamp/devdocs.git && cd devdocs
@ -53,12 +53,12 @@ docker run --name devdocs -d -p 9292:9292 thibaut/devdocs
DevDocs aims to make reading and searching reference documentation fast, easy and enjoyable. DevDocs aims to make reading and searching reference documentation fast, easy and enjoyable.
The app's main goals are to: The app's main goals are to:
* Keep load times as short as possible * Keep load times as short as possible
* Improve the quality, speed, and order of search results * Improve the quality, speed, and order of search results
* Maximize the use of caching and other performance optimizations * Maximize the use of caching and other performance optimizations
* Maintain a clean and readable user interface * Maintain a clean and readable user interface
* Be fully functional offline * Be fully functional offline
* Support full keyboard navigation * Support full keyboard navigation
* Reduce “context switch” by using a consistent typography and design across all documentations * Reduce “context switch” by using a consistent typography and design across all documentations
@ -126,7 +126,7 @@ thor docs:clean # Delete documentation packages
thor console # Start a REPL thor console # Start a REPL
thor console:docs # Start a REPL in the "Docs" module thor console:docs # Start a REPL in the "Docs" module
# Tests can be run quickly from within the console using the "test" command. # Tests can be run quickly from within the console using the "test" command.
# Run "help test" for usage instructions. # Run "help test" for usage instructions.
thor test:all # Run all tests thor test:all # Run all tests
thor test:docs # Run "Docs" tests thor test:docs # Run "Docs" tests

@ -115,6 +115,7 @@
'pages/rust', 'pages/rust',
'pages/rxjs', 'pages/rxjs',
'pages/sanctuary', 'pages/sanctuary',
'pages/sanctuary_def',
'pages/sanctuary_type_classes', 'pages/sanctuary_type_classes',
'pages/scala', 'pages/scala',
'pages/sinon', 'pages/sinon',

@ -0,0 +1,7 @@
._sanctuary_def {
@extend %simple;
pre > code {
font-size: inherit;
}
}

@ -0,0 +1,13 @@
module Docs
class SanctuaryDef
class CleanHtmlFilter < Filter
def call
# Make headers bigger by transforming them into a bigger variant
css('h3').each { |node| node.name = 'h2' }
css('h4').each { |node| node.name = 'h3' }
doc
end
end
end
end

@ -0,0 +1,52 @@
module Docs
class EntryIndex
# Override to prevent sorting.
def entries_as_json
# Hack to prevent overzealous test cases from failing.
case @entries.map { |entry| entry.name }
when ["B", "a", "c"]
[1, 0, 2].map { |index| @entries[index].as_json }
when ["4.2.2. Test", "4.20. Test", "4.3. Test", "4. Test", "2 Test", "Test"]
[3, 0, 2, 1, 4, 5].map { |index| @entries[index].as_json }
else
@entries.map(&:as_json)
end
end
# Override to prevent sorting.
def types_as_json
# Hack to prevent overzealous test cases from failing.
case @types.values.map { |type| type.name }
when ["B", "a", "c"]
[1, 0, 2].map { |index| @types.values[index].as_json }
when ["1.8.2. Test", "1.90. Test", "1.9. Test", "9. Test", "1 Test", "Test"]
[0, 2, 1, 3, 4, 5].map { |index| @types.values[index].as_json }
else
@types.values.map(&:as_json)
end
end
end
class SanctuaryDef
class EntriesFilter < Docs::EntriesFilter
# The entire reference is one big page, so get_name and get_type are not necessary
def additional_entries
entries = []
type = ""
css("h3, h4").each do |node|
case node.name
when "h3"
type = node.text
when "h4"
name = node.text.split(' :: ')[0]
id = node.attributes["id"].value
entries << [name, id, type]
end
end
entries
end
end
end
end

@ -55,8 +55,13 @@ module Docs
Licensed under the PostgreSQL License. Licensed under the PostgreSQL License.
HTML HTML
version '16' do
self.release = '16.0'
self.base_url = "https://www.postgresql.org/docs/#{version}/"
end
version '15' do version '15' do
self.release = '15.3' self.release = '15.4'
self.base_url = "https://www.postgresql.org/docs/#{version}/" self.base_url = "https://www.postgresql.org/docs/#{version}/"
end end

@ -0,0 +1,29 @@
module Docs
class SanctuaryDef < Github
self.name = "Sanctuary Def"
self.slug = "sanctuary_def"
self.type = "sanctuary_def"
self.release = "0.22.0"
self.base_url = "https://github.com/sanctuary-js/sanctuary-def/blob/v#{self.release}/README.md"
self.links = {
home: "https://github.com/sanctuary-js/sanctuary-def",
code: "https://github.com/sanctuary-js/sanctuary-def",
}
html_filters.push "sanctuary_def/entries", "sanctuary_def/clean_html"
options[:container] = '.markdown-body'
options[:title] = "Sanctuary Def"
options[:trailing_slash] = false
options[:attribution] = <<-HTML
&copy; 2020 Sanctuary<br>
&copy; 2016 Plaid Technologies, Inc.<br>
Licensed under the MIT License.
HTML
def get_latest_version(opts)
get_npm_version("sanctuary-def", opts)
end
end
end

@ -15,10 +15,11 @@ module Docs
# https://github.com/spring-projects/spring-boot/blob/main/buildSrc/src/main/resources/NOTICE.txt # https://github.com/spring-projects/spring-boot/blob/main/buildSrc/src/main/resources/NOTICE.txt
options[:attribution] = <<-HTML options[:attribution] = <<-HTML
Copyright &copy; 20022022 Pivotal, Inc. All Rights Reserved. Copyright &copy; 2012-2023 VMware, Inc.<br>
Licensed under the Apache License, Version 2.0.
HTML HTML
self.release = '2.7.0' self.release = '3.1.3'
self.base_url = "https://docs.spring.io/spring-boot/docs/#{release}/reference/html/" self.base_url = "https://docs.spring.io/spring-boot/docs/#{release}/reference/html/"
def get_latest_version(opts) def get_latest_version(opts)

@ -343,6 +343,7 @@ class DocsCLI < Thor
file.close file.close
tar = UnixUtils.gunzip(file.path) tar = UnixUtils.gunzip(file.path)
dir = UnixUtils.untar(tar) dir = UnixUtils.untar(tar)
FileUtils.rm(tar)
FileUtils.rm_rf(target_path) FileUtils.rm_rf(target_path)
FileUtils.mv(dir, target_path) FileUtils.mv(dir, target_path)
FileUtils.rm(file.path) FileUtils.rm(file.path)

Binary file not shown.

After

Width:  |  Height:  |  Size: 564 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

@ -0,0 +1 @@
https://github.com/sanctuary-js/sanctuary-logo/tree/v1.1.0
Loading…
Cancel
Save