From e4f1dc11a290b87479b77207aae3d4067665b824 Mon Sep 17 00:00:00 2001 From: spamguy Date: Thu, 2 Jul 2026 12:38:55 -0700 Subject: [PATCH 1/3] Fix GitHub scraper. --- lib/docs/scrapers/github.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/docs/scrapers/github.rb b/lib/docs/scrapers/github.rb index dcadcec865..144dbd7802 100644 --- a/lib/docs/scrapers/github.rb +++ b/lib/docs/scrapers/github.rb @@ -23,7 +23,7 @@ def parse(response) &.first parsed = JSON.parse(embedded_json) - [parsed['payload']['blob']['richText'], parsed['title']] + [parsed['payload']['codeViewBlobRoute']['richText'], parsed['title']] end end end From b6b6e8563c49d6e4f8d772bc64bb005fa000a31e Mon Sep 17 00:00:00 2001 From: spamguy Date: Fri, 3 Jul 2026 13:06:49 -0700 Subject: [PATCH 2/3] Add RabbitMQ scraper. --- assets/stylesheets/application.css.scss | 1 + assets/stylesheets/pages/_rabbit_mq.scss | 17 +++++++++++++ lib/docs/filters/rabbit_mq/clean_html.rb | 24 +++++++++++++++++++ lib/docs/filters/rabbit_mq/entries.rb | 19 +++++++++++++++ lib/docs/scrapers/rabbit_mq.rb | 29 +++++++++++++++++++++++ public/icons/docs/rabbitmq/16.png | Bin 0 -> 318 bytes public/icons/docs/rabbitmq/16@2x.png | Bin 0 -> 424 bytes public/icons/docs/rabbitmq/SOURCE | 1 + 8 files changed, 91 insertions(+) create mode 100644 assets/stylesheets/pages/_rabbit_mq.scss create mode 100644 lib/docs/filters/rabbit_mq/clean_html.rb create mode 100644 lib/docs/filters/rabbit_mq/entries.rb create mode 100644 lib/docs/scrapers/rabbit_mq.rb create mode 100644 public/icons/docs/rabbitmq/16.png create mode 100644 public/icons/docs/rabbitmq/16@2x.png create mode 100644 public/icons/docs/rabbitmq/SOURCE diff --git a/assets/stylesheets/application.css.scss b/assets/stylesheets/application.css.scss index 95a1b3a9a6..34a0833fae 100644 --- a/assets/stylesheets/application.css.scss +++ b/assets/stylesheets/application.css.scss @@ -99,6 +99,7 @@ @use 'pages/pygame'; @use 'pages/python'; @use 'pages/qt'; +@use 'pages/rabbit_mq'; @use 'pages/ramda'; @use 'pages/rdoc'; @use 'pages/react'; diff --git a/assets/stylesheets/pages/_rabbit_mq.scss b/assets/stylesheets/pages/_rabbit_mq.scss new file mode 100644 index 0000000000..fe29e8a41e --- /dev/null +++ b/assets/stylesheets/pages/_rabbit_mq.scss @@ -0,0 +1,17 @@ +@use 'pages/simple'; + +._rabbit_mq { + @extend %simple; + + .alert--info, .alert--warning, .alert--success, .alert--secondary { + @extend %note; + .admonitionHeading_Gvgb { + font-weight: 700; + text-transform: uppercase; + } + } + .alert--success { @extend %note, %note-green; } + .alert--info { @extend %note, %note-blue; } + .alert--warning { @extend %note, %note-orange; } + .alert--secondary { @extend %note, %note-gray; } +} diff --git a/lib/docs/filters/rabbit_mq/clean_html.rb b/lib/docs/filters/rabbit_mq/clean_html.rb new file mode 100644 index 0000000000..1513f2395a --- /dev/null +++ b/lib/docs/filters/rabbit_mq/clean_html.rb @@ -0,0 +1,24 @@ +module Docs + class RabbitMq + class CleanHtmlFilter < Filter + def call + @doc = at_css('.theme-doc-markdown.markdown') + + css('.theme-admonition svg').remove + + css('pre').each do |node| + node.content = node.css('.token-line').map(&:content).join("\n") + + node['data-language'] = + if node['class'].include?('language-bash') + 'bash' + elsif node['class'].include?('language-java') + 'java' + end + end + + doc + end + end + end +end diff --git a/lib/docs/filters/rabbit_mq/entries.rb b/lib/docs/filters/rabbit_mq/entries.rb new file mode 100644 index 0000000000..eb4a73c6e5 --- /dev/null +++ b/lib/docs/filters/rabbit_mq/entries.rb @@ -0,0 +1,19 @@ +module Docs + class RabbitMq + class EntriesFilter < Docs::EntriesFilter + def get_name + at_css('h1').content + end + + def get_type + breadcrumb = css('.breadcrumbs__item') + + if breadcrumb.length > 1 + breadcrumb[1].inner_text + else + 'Other' + end + end + end + end +end diff --git a/lib/docs/scrapers/rabbit_mq.rb b/lib/docs/scrapers/rabbit_mq.rb new file mode 100644 index 0000000000..9ce23eca3b --- /dev/null +++ b/lib/docs/scrapers/rabbit_mq.rb @@ -0,0 +1,29 @@ +module Docs + class RabbitMq < UrlScraper + self.name = 'RabbitMQ' + self.type = 'rabbit_mq' + self.links = { + home: 'https://www.rabbitmq.com/', + code: 'https://github.com/rabbitmq/rabbitmq-server' + } + + html_filters.push 'rabbit_mq/entries', 'rabbit_mq/clean_html' + + options[:root_path] = '/docs' + options[:skip_patterns] = [/\/next|\/\d\.\d*/, /rabbitmq\//] + options[:attribution] = <<-HTML + Copyright © 2005-2026 Broadcom. All Rights Reserved. The term “Broadcom” refers to Broadcom Inc. and/or its subsidiaries.
+ Licensed under the Apache License, Version 2.0. + HTML + + version do + self.base_url = 'https://www.rabbitmq.com/docs' + self.release = '4.3.2' + end + + def get_latest_version(opts) + tags = get_github_tags("rabbitmq", "rabbitmq-server", opts) + tags[0]['name'][1..-1] + end + end +end diff --git a/public/icons/docs/rabbitmq/16.png b/public/icons/docs/rabbitmq/16.png new file mode 100644 index 0000000000000000000000000000000000000000..0f99414aabe6a3ab2942c2ab2757695c8a8cf551 GIT binary patch literal 318 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#X!0Ogc)Cb%K8RmNS3%p zlmzFem6RtIr81P4m+NKbWfvzW7NqLs7p2dBXCnnvblTI!F~p+x>?K=2ra}SM5BE2O zgqdx-5b;7$=L1)q1NTF|TeB+IY#I$ea*0g~lXJ9a6uofbhR&1yUK>+%Yp%}TQ>j0* z|HMXqo{a}qW}Z8!l2^!nskeR4c4k|ith$7^D=x4_i?!`OGrPg>M?Pci)oJMmO)Hou zCTF|kRteu*>b2uQ;@$6>w%qade>SHb_;=!*^^5IqqCNc&aXq)Vr>|f$>zU|`BOLnD zEAMh-Muv0;Wmz9OQ95U(&eGFGPji|5zU=YZ|L&{$e2e!F=GQWNHtC*urte`7^cI7s LtDnm{r-UW|-jjg$ literal 0 HcmV?d00001 diff --git a/public/icons/docs/rabbitmq/16@2x.png b/public/icons/docs/rabbitmq/16@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..e0b7027dfaa77354fb5fc974d55b40f891bf56d0 GIT binary patch literal 424 zcmV;Z0ayNsP)(w8$hkK$+GPN20G2O303G)A7FXM*!H`p+>8zabLWe_r z{^p6u0_#pVz#OpRbqrbbgaa&5V_}-`F@PIBR^hFh;Qshp1R$#_fC``jm}!8Tw<^@9 z_C#c~ivY&6b_w(l9zQDubzm1|)!R)uLD>UdCnlE&4X$DUKQHAx?+h54Gd+YAz^|xG z-0vRPLAV1x9w?U9=+pH6BhmsWJr4BPsa~*Y=7BArCG8Ou+yua`Lze6_kQU%A&@b{> zO$%UI4gj=5mehB_6G|UDI&-1K(neVe?AN@P5$Hb~!oLb28S}-W9A$zK41;$dJ48>e S Date: Fri, 3 Jul 2026 23:17:11 +0200 Subject: [PATCH 3/3] rabbit_mq: news entry --- assets/javascripts/news.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/javascripts/news.json b/assets/javascripts/news.json index fdc35997ff..f9fd497a03 100644 --- a/assets/javascripts/news.json +++ b/assets/javascripts/news.json @@ -1,7 +1,7 @@ [ [ "2026-07-03", - "New documentation: Celery" + "New documentations: Celery, RabbitMQ" ], [ "2026-06-02",