Parcourir la source

Merge pull request #2082 from thewheat/allow-python-empty-spans

Allow Python scraper to keep empty spans with ids
Simon Legner il y a 1 an
Parent
commit
783e5dc502
2 fichiers modifiés avec 13 ajouts et 5 suppressions
  1. 5 3
      lib/docs/filters/sphinx/clean_html.rb
  2. 8 2
      lib/docs/scrapers/python.rb

+ 5 - 3
lib/docs/filters/sphinx/clean_html.rb

@@ -36,9 +36,11 @@ module Docs
           node.replace(pre)
         end
 
-        css('span[id]:empty').each do |node|
-          (node.next_element || node.previous_element)['id'] ||= node['id'] if node.next_element || node.previous_element
-          node.remove
+        unless context[:sphinx_keep_empty_ids]
+          css('span[id]:empty').each do |node|
+            (node.next_element || node.previous_element)['id'] ||= node['id'] if node.next_element || node.previous_element
+            node.remove
+          end
         end
 
         css('.section').each do |node|

+ 8 - 2
lib/docs/scrapers/python.rb

@@ -7,6 +7,12 @@ module Docs
       code: 'https://github.com/python/cpython'
     }
 
+    # bypass the clean_text filter as it removes empty span with ids
+    options[:clean_text] = false
+
+    # bypass sphinx modifying empty ids
+    options[:sphinx_keep_empty_ids] = true
+
     options[:skip_patterns] = [/whatsnew/]
     options[:skip] = %w(
       library/2to3.html
@@ -22,14 +28,14 @@ module Docs
     HTML
 
     version '3.12' do
-      self.release = '3.12.0'
+      self.release = '3.12.1'
       self.base_url = "https://docs.python.org/#{self.version}/"
 
       html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'
     end
 
     version '3.11' do
-      self.release = '3.11.5'
+      self.release = '3.11.7'
       self.base_url = "https://docs.python.org/#{self.version}/"
 
       html_filters.push 'python/entries_v3', 'sphinx/clean_html', 'python/clean_html'