mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
- Fixes some html validation issues. - Fixes links on security basics blog post. - Adds rel=noopener to links with target=_blank and adds a check to htmlproofer. - Add favicon check to htmlproofer. Fixes #3286 Fixes #3284 PiperOrigin-RevId: 321892602
37 lines
818 B
Ruby
37 lines
818 B
Ruby
#!/usr/local/bin/ruby
|
|
#
|
|
# HTMLProofer checks for the gVisor website.
|
|
#
|
|
require 'html-proofer'
|
|
|
|
# NoOpenerCheck checks to make sure links with target=_blank include the
|
|
# rel=noopener attribute.
|
|
class NoOpenerCheck < ::HTMLProofer::Check
|
|
def run
|
|
@html.css('a').each do |node|
|
|
link = create_element(node)
|
|
line = node.line
|
|
|
|
rel = link.respond_to?(:rel) ? link.rel.split(' ') : []
|
|
|
|
if link.respond_to?(:target) && link.target == "_blank" && !rel.include?("noopener")
|
|
return add_issue("You should set rel=noopener for links with target=_blank", line: line)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
|
|
def main()
|
|
options = {
|
|
:check_html => true,
|
|
:check_favicon => true,
|
|
:disable_external => true,
|
|
}
|
|
|
|
HTMLProofer.check_directories(ARGV, options).run
|
|
end
|
|
|
|
if __FILE__ == $0
|
|
main
|
|
end
|