فهرست منبع

Fix merge conflicts

Jasper van Merle 5 سال پیش
والد
کامیت
7ca18dd5d4

+ 1 - 1
Gemfile.lock

@@ -26,7 +26,7 @@ GEM
     eventmachine (1.2.7)
     execjs (2.7.0)
     exifr (1.3.6)
-    ffi (1.11.1)
+    ffi (1.12.2)
     fspath (3.1.2)
     highline (2.0.3)
     html-pipeline (2.12.0)

+ 7 - 7
assets/javascripts/templates/pages/about_tmpl.coffee

@@ -22,7 +22,7 @@ app.templates.aboutPage = -> """
 
   <h2 class="_block-heading" id="copyright">Copyright and License</h2>
   <p class="_note">
-    <strong>Copyright 2013&ndash;2019 Thibaut Courouble and <a href="https://github.com/freeCodeCamp/devdocs/graphs/contributors">other contributors</a></strong><br>
+    <strong>Copyright 2013&ndash;2020 Thibaut Courouble and <a href="https://github.com/freeCodeCamp/devdocs/graphs/contributors">other contributors</a></strong><br>
     This software is licensed under the terms of the Mozilla Public License v2.0.<br>
     You may obtain a copy of the source code at <a href="https://github.com/freeCodeCamp/devdocs">github.com/freeCodeCamp/devdocs</a>.<br>
     For more information, see the <a href="https://github.com/freeCodeCamp/devdocs/blob/master/COPYRIGHT">COPYRIGHT</a>
@@ -83,9 +83,9 @@ app.templates.aboutPage = -> """
 
 credits = [
   [ 'Angular<br>Angular.js',
-    '2010-2019 Google, Inc.',
-    'CC BY',
-    'https://creativecommons.org/licenses/by/4.0/'
+    '2010-2020 Google, Inc.',
+    'CC BY 3.0',
+    'https://creativecommons.org/licenses/by/3.0/'
   ], [
     'Ansible',
     '2012-2018 Michael DeHaan<br>&copy; 2018–2019 Red Hat, Inc.',
@@ -378,7 +378,7 @@ credits = [
     'https://raw.githubusercontent.com/jekyll/jekyll/master/LICENSE'
   ], [
     'Jest',
-    'Facebook, Inc. and its affiliates.',
+    '2020 Facebook, Inc.',
     'MIT',
     'https://raw.githubusercontent.com/facebook/jest/master/LICENSE'
   ], [
@@ -448,7 +448,7 @@ credits = [
     'https://raw.githubusercontent.com/lodash/lodash/master/LICENSE'
   ], [
     'Lua',
-    '1994–2017 Lua.org, PUC-Rio',
+    '1994–2020 Lua.org, PUC-Rio',
     'MIT',
     'http://www.lua.org/license.html'
   ], [
@@ -603,7 +603,7 @@ credits = [
     'https://raw.githubusercontent.com/ponylang/ponyc/master/LICENSE'
   ], [
     'PostgreSQL',
-    '1996-2019 The PostgreSQL Global Development Group<br>&copy; 1994 The Regents of the University of California',
+    '1996-2020 The PostgreSQL Global Development Group<br>&copy; 1994 The Regents of the University of California',
     'PostgreSQL',
     'https://www.postgresql.org/about/licence/'
   ], [

+ 1 - 1
assets/stylesheets/application.css.scss

@@ -3,7 +3,7 @@
 //= depend_on sprites/docs.json
 
 /*!
- * Copyright 2013-2019 Thibaut Courouble and other contributors
+ * Copyright 2013-2020 Thibaut Courouble and other contributors
  *
  * This source code is licensed under the terms of the Mozilla
  * Public License, v. 2.0, a copy of which may be obtained at:

+ 4 - 2
lib/docs/filters/haxe/clean_html.rb

@@ -2,7 +2,7 @@ module Docs
   class Haxe
     class CleanHtmlFilter < Filter
       def call
-        css('.viewsource', 'hr', 'h1 > small', '.inherited-fields').remove
+        css('.viewsource', 'hr', 'h1 > small', '.inherited-fields', '.label-meta').remove
 
         css('h4 + h1').each do |node|
           node.after(node.previous_element)
@@ -28,8 +28,10 @@ module Docs
         end
 
         css('.field').each do |node|
+          h3 = node.at_css('h3:not(:empty)')
+          next unless h3.present?
           link = node.at_css('a[name]')
-          node.at_css('h3:not(:empty)')['id'] = link['name']
+          h3['id'] = link['name']
           link.before(link.children).remove
           node.before(node.children).remove
         end

+ 1 - 0
lib/docs/filters/jest/entries.rb

@@ -19,6 +19,7 @@ module Docs
 
       def additional_entries
         return [] unless !root_page? && self.type == self.name # api page
+        return [] if self.slug == 'environment-variables'
 
         entries = []
 

+ 7 - 7
lib/docs/filters/leaflet/clean_html.rb

@@ -8,25 +8,25 @@ module Docs
           node.name = 'h2'
         end
 
-        at_css('> h2:first-child').name = 'h1'
-
-        # remove "This reference reflects Leaflet 1.2.0."
-        css('h1 ~ p').each do |node|
+        # remove "This reference reflects Leaflet"
+        css('p:contains("This reference reflects Leaflet")').each do |node|
           node.remove
           break
         end
 
+        at_css('> h2:first-child').name = 'h1'
+
         css('section', 'code b', '.accordion', '.accordion-overflow', '.accordion-content').each do |node|
           node.before(node.children).remove
         end
 
         css('pre > code').each do |node|
           node['class'] ||= ''
-          lang = if node['class'].include?('lang-html') || node.content =~ /\A</
+          lang = if node['class'].include?('lang-html') || node['class'].include?('language-html') || node.content =~ /\A</
             'html'
-          elsif node['class'].include?('lang-css')
+          elsif node['class'].include?('lang-css') || node['class'].include?('language-css')
             'css'
-          elsif node['class'].include?('lang-js') || node['class'].include?('lang-javascript')
+          elsif node['class'].include?('lang-js') || node['class'].include?('language-js') || node['class'].include?('lang-javascript')
             'javascript'
           end
           node.parent['data-language'] = lang if lang

+ 7 - 2
lib/docs/scrapers/angularjs.rb

@@ -38,8 +38,8 @@ module Docs
     ]
 
     options[:attribution] = <<-HTML
-      &copy; 2010&ndash;2018 Google, Inc.<br>
-      Licensed under the Creative Commons Attribution License 4.0.
+      &copy; 2010&ndash;2020 Google, Inc.<br>
+      Licensed under the Creative Commons Attribution License 3.0.
     HTML
 
     stub '' do
@@ -49,6 +49,11 @@ module Docs
       capybara.execute_script("return document.querySelector('.side-navigation').innerHTML")
     end
 
+    version '1.8' do
+      self.release = '1.8.2'
+      self.base_url = "https://code.angularjs.org/#{release}/docs/partials/"
+    end
+
     version '1.7' do
       self.release = '1.7.8'
       self.base_url = "https://code.angularjs.org/#{release}/docs/partials/"

+ 2 - 1
lib/docs/scrapers/dart.rb

@@ -32,7 +32,8 @@ module Docs
 
     def get_latest_version(opts)
       doc = fetch_doc('https://api.dartlang.org/', opts)
-      doc.at_css('footer > span').content.sub(/Dart/, '').strip
+      label = doc.at_css('footer > span').content.strip
+      label.sub(/Dart\s*/, '')
     end
   end
 end

+ 3 - 2
lib/docs/scrapers/gnuplot.rb

@@ -38,8 +38,9 @@ module Docs
     HTML
 
     def get_latest_version(opts)
-      doc = fetch_doc('https://sourceforge.net/projects/gnuplot/files/gnuplot/', opts)
-      doc.at_css('#files_list > tbody > tr:nth-child(2)')['title']
+      doc = fetch_doc('http://www.gnuplot.info/download.html', opts)
+      label = doc.at_css('h2').content.strip
+      label.sub(/[^0-9.]*/, '')
     end
   end
 end

+ 1 - 1
lib/docs/scrapers/go.rb

@@ -1,7 +1,7 @@
 module Docs
   class Go < UrlScraper
     self.type = 'go'
-    self.release = '1.13'
+    self.release = '1.15'
     self.base_url = 'https://golang.org/pkg/'
     self.links = {
       home: 'https://golang.org/',

+ 7 - 3
lib/docs/scrapers/haxe.rb

@@ -2,7 +2,7 @@ module Docs
   class Haxe < UrlScraper
     self.name = 'Haxe'
     self.type = 'simple'
-    self.release = '3.4.7'
+    self.release = '4.1.3'
     self.base_url = 'https://api.haxe.org/'
 
     html_filters.push 'haxe/clean_html', 'haxe/entries'
@@ -10,7 +10,7 @@ module Docs
     options[:container] = '.span9'
 
     options[:attribution] = <<-HTML
-      &copy; 2005&ndash;2018 Haxe Foundation<br>
+      &copy; 2005&ndash;2020 Haxe Foundation<br>
       Licensed under a MIT license.
     HTML
 
@@ -20,7 +20,7 @@ module Docs
         code: 'https://github.com/HaxeFoundation/haxe'
       }
 
-      options[:skip_patterns] = [/\A(?:cpp|cs|flash|java|js|neko|php|python|lua|hl|sys)/i]
+      options[:skip_patterns] = [/\A(?:cpp|cs|flash|java|js|neko|php|python|lua|hl|sys|eval)/i]
     end
 
     version 'C++' do
@@ -67,6 +67,10 @@ module Docs
       self.base_url = 'https://api.haxe.org/python/'
     end
 
+    version 'Eval' do
+      self.base_url = 'https://api.haxe.org/eval/'
+    end
+
     def get_latest_version(opts)
       doc = fetch_doc('https://api.haxe.org/', opts)
       label = doc.at_css('.container.main-content h1 > small').content

+ 2 - 2
lib/docs/scrapers/jest.rb

@@ -1,7 +1,7 @@
 module Docs
   class Jest < UrlScraper
     self.type = 'simple'
-    self.release = '24.9'
+    self.release = '26.6'
     self.base_url = 'https://jestjs.io/docs/en/'
     self.root_path = 'getting-started'
     self.links = {
@@ -14,7 +14,7 @@ module Docs
     options[:container] = '.docMainWrapper'
 
     options[:attribution] = <<-HTML
-      &copy; 2019 Facebook, Inc. and its affiliates.<br>
+      &copy; 2020 Facebook, Inc.<br>
       Licensed under the MIT License.
     HTML
 

+ 5 - 0
lib/docs/scrapers/leaflet.rb

@@ -19,6 +19,11 @@ module Docs
       Maps &copy; OpenStreetMap contributors.
     HTML
 
+    version '1.7' do
+      self.release = '1.7.1'
+      self.base_url = "https://leafletjs.com/reference-#{release}.html"
+    end
+
     version '1.6' do
       self.release = '1.6.0'
       self.base_url = "https://leafletjs.com/reference-#{release}.html"

+ 7 - 2
lib/docs/scrapers/lua.rb

@@ -8,12 +8,17 @@ module Docs
     options[:skip_links] = true
 
     options[:attribution] = <<-HTML
-      &copy; 1994&ndash;2017 Lua.org, PUC-Rio.<br>
+      &copy; 1994&ndash;2020 Lua.org, PUC-Rio.<br>
       Licensed under the MIT License.
     HTML
 
+    version '5.4' do
+      self.release = '5.4.1'
+      self.base_url = 'https://www.lua.org/manual/5.4/'
+    end
+
     version '5.3' do
-      self.release = '5.3.4'
+      self.release = '5.3.6'
       self.base_url = 'https://www.lua.org/manual/5.3/'
     end
 

+ 6 - 1
lib/docs/scrapers/node.rb

@@ -23,7 +23,12 @@ module Docs
     HTML
 
     version do
-      self.release = '12.9.1'
+      self.release = '14.15.0'
+      self.base_url = 'https://nodejs.org/dist/latest-v14.x/docs/api/'
+    end
+
+    version '12 LTS' do
+      self.release = '12.19.0'
       self.base_url = 'https://nodejs.org/dist/latest-v12.x/docs/api/'
     end
 

+ 1 - 2
lib/docs/scrapers/pandas.rb

@@ -62,8 +62,7 @@ module Docs
     end
 
     def get_latest_version(opts)
-      doc = fetch_doc('http://pandas.pydata.org/pandas-docs/stable/', opts)
-      doc.at_css('#pandas-documentation').content.scan(/Version: ([0-9.]+)/)[0][0]
+      get_latest_github_release('pandas-dev', 'pandas', opts)
     end
   end
 end

+ 6 - 1
lib/docs/scrapers/postgresql.rb

@@ -51,10 +51,15 @@ module Docs
       /\Aunsupported-features/ ]
 
     options[:attribution] = <<-HTML
-      &copy; 1996&ndash;2019 The PostgreSQL Global Development Group<br>
+      &copy; 1996&ndash;2020 The PostgreSQL Global Development Group<br>
       Licensed under the PostgreSQL License.
     HTML
 
+    version '13' do
+      self.release = '13.1'
+      self.base_url = "https://www.postgresql.org/docs/#{version}/"
+    end
+
     version '12' do
       self.release = '12.1'
       self.base_url = "https://www.postgresql.org/docs/#{version}/"

+ 11 - 3
lib/docs/scrapers/python.rb

@@ -23,22 +23,30 @@ module Docs
       Licensed under the PSF License.
     HTML
 
+    # mkdir -p docs/python~3.9 && cd docs/python~3.9 && curl -L https://docs.python.org/3.9/archives/python-3.9.0-docs-html.tar.bz2 | tar xj --strip-components=1
+    version '3.9' do # docs.python.org/3.9/download.html
+      self.release = '3.9.0'
+      self.base_url = 'https://docs.python.org/3.9/'
+
+      html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
+    end
+
     version '3.8' do # docs.python.org/3.8/download.html
-      self.release = '3.8.1'
+      self.release = '3.8.6'
       self.base_url = 'https://docs.python.org/3.8/'
 
       html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
     end
 
     version '3.7' do # docs.python.org/3.7/download.html
-      self.release = '3.7.6'
+      self.release = '3.7.9'
       self.base_url = 'https://docs.python.org/3.7/'
 
       html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
     end
 
     version '3.6' do # docs.python.org/3.6/download.html
-      self.release = '3.6.10'
+      self.release = '3.6.12'
       self.base_url = 'https://docs.python.org/3.6/'
 
       html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'

+ 1 - 1
lib/docs/scrapers/sqlite.rb

@@ -2,7 +2,7 @@ module Docs
   class Sqlite < FileScraper
     self.name = 'SQLite'
     self.type = 'sqlite'
-    self.release = '3.30.1'
+    self.release = '3.33.0'
     self.base_url = 'https://sqlite.org/'
     self.root_path = 'docs.html'
     self.initial_paths = %w(keyword_index.html)

+ 1 - 1
public/icons/docs/postgresql/SOURCE

@@ -1 +1 @@
-http://www.postgresql.org/about/press/presskit93/#logos
+https://www.postgresql.org/about/press/presskit93/#logos