From f997f0d12d7a9f05bdc10b67ad08726090500220 Mon Sep 17 00:00:00 2001 From: Daniel Jalkut Date: Mon, 30 Oct 2023 13:56:42 -0700 Subject: [PATCH] Remove unused iExploder scripts https://bugs.webkit.org/show_bug.cgi?id=263900 Reviewed by Alexey Proskuryakov. Since the removal of iExploder from the repository a few years ago, these scripts have only been cruft with no apparent value. Removing them will make the Scripts folder ever-so-slightly more comprehensible. * Tools/Scripts/run-iexploder-tests: Removed. * Tools/Scripts/update-iexploder-cssproperties: Removed. Canonical link: https://commits.webkit.org/269975@main --- Tools/Scripts/run-iexploder-tests | 142 ------------------- Tools/Scripts/update-iexploder-cssproperties | 130 ----------------- 2 files changed, 272 deletions(-) delete mode 100755 Tools/Scripts/run-iexploder-tests delete mode 100755 Tools/Scripts/update-iexploder-cssproperties diff --git a/Tools/Scripts/run-iexploder-tests b/Tools/Scripts/run-iexploder-tests deleted file mode 100755 index bccf5e543a502..0000000000000 --- a/Tools/Scripts/run-iexploder-tests +++ /dev/null @@ -1,142 +0,0 @@ -#!/usr/bin/env perl - -# Copyright (C) 2006 Alexey Proskuryakov (ap@nypop.com) -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of Apple Inc. ("Apple") nor the names of -# its contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -# A script to semi-automatically run iExploder tests. - -use strict; -use warnings; - -use Cwd; -use File::Spec; -use FindBin; -use Getopt::Long; -use IPC::Open2; - -use lib $FindBin::Bin; -use webkitperl::httpd; -use webkitdirs; - -sub configureAndOpenHTTPDIfNeeded(); -sub runSafariWithIExploder(); - -# Argument handling -my $guardMalloc = ''; -my $httpdPort = 8000; -my $downloadTest; -my $iExploderTestDirectory = "/tmp/iExploderTest"; - -GetOptions( - 'guard-malloc|g' => \$guardMalloc, - 'get=s' => \$downloadTest, - 'port=i' => \$httpdPort -); - - -setConfiguration(); -my $productDir = productDir(); - -chdirWebKit(); - -checkFrameworks(); - -my $isHttpdOpen = 0; -configureAndOpenHTTPDIfNeeded(); - -if ($downloadTest) { - system "/usr/bin/curl -o ~/Desktop/iexploder$downloadTest.html \"http://127.0.0.1:$httpdPort/iexploder.cgi?lookup=1&test=$downloadTest\""; - print "Saved the test as iexploder$downloadTest.html on the desktop\n"; -} else { - runSafariWithIExploder(); - print "Last generated tests:\n"; - system "grep 'iexploder.cgi' $iExploderTestDirectory/access_log.txt | tail -n -5 | awk -F'[ =&\\?]' '{if (\$8 == \"lookup\") print \$11; else print \$9}'"; -} - -rmtree $iExploderTestDirectory; -$isHttpdOpen = !closeHTTPD(); - -sub runSafariWithIExploder() -{ - my $redirectTo; - if (@ARGV) { - $redirectTo = "http://127.0.0.1:$httpdPort/iexploder.cgi?lookup=1&test=$ARGV[0]"; - } else { - $redirectTo = "http://127.0.0.1:$httpdPort/index.html"; - } - - open REDIRECT_HTML, ">", "$iExploderTestDirectory/redirect.html" or die; - print REDIRECT_HTML "\n"; - print REDIRECT_HTML " \n"; - print REDIRECT_HTML " \n"; - print REDIRECT_HTML " \n"; - print REDIRECT_HTML " \n"; - print REDIRECT_HTML " \n"; - print REDIRECT_HTML " \n"; - print REDIRECT_HTML "\n"; - close REDIRECT_HTML; - - if (!isAppleWebKit()) { - system "Tools/Scripts/run-minibrowser", "$iExploderTestDirectory/redirect.html"; - } else { - local %ENV; - $ENV{DYLD_INSERT_LIBRARIES} = "/usr/lib/libgmalloc.dylib" if $guardMalloc; - system "Tools/Scripts/run-safari", "-NSOpen", "$iExploderTestDirectory/redirect.html"; - } -} - -sub configureAndOpenHTTPDIfNeeded() -{ - return if $isHttpdOpen; - mkdir $iExploderTestDirectory; - my $webkitDirectory = getcwd(); - my $testDirectory = $webkitDirectory . "/LayoutTests"; - my $iExploderDirectory = $webkitDirectory . "/Tools/iExploder/iExploder-1.3.2"; - - my $httpdConfig = getHTTPDConfigPathForTestDirectory($testDirectory); - - my $documentRoot = "$iExploderDirectory/htdocs"; - my $typesConfig = "$testDirectory/http/conf/mime.types"; - my $sslCertificate = "$testDirectory/http/conf/webkit-httpd.pem"; - my $listen = "127.0.0.1:$httpdPort"; - - - my @args = ( - "-f", "$httpdConfig", - "-C", "DocumentRoot \"$documentRoot\"", - "-C", "Listen $listen", - "-c", "TypesConfig \"$typesConfig\"", - "-c", "CustomLog \"$iExploderTestDirectory/access_log.txt\" common", - "-c", "ErrorLog \"$iExploderTestDirectory/error_log.txt\"", - "-c", "SSLCertificateFile \"$sslCertificate\"", - # Apache wouldn't run CGIs with permissions==700 otherwise - "-c", "User \"#$<\"" - ); - - $isHttpdOpen = openHTTPD(@args); -} diff --git a/Tools/Scripts/update-iexploder-cssproperties b/Tools/Scripts/update-iexploder-cssproperties deleted file mode 100755 index 16f0f8756d108..0000000000000 --- a/Tools/Scripts/update-iexploder-cssproperties +++ /dev/null @@ -1,130 +0,0 @@ -#!/usr/bin/env perl - -# Copyright (C) 2007 Apple Inc. All rights reserved. -# Copyright (C) 2010 Holger Hans Peter Freyther -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# 3. Neither the name of Apple Inc. ("Apple") nor the names of -# its contributors may be used to endorse or promote products derived -# from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY -# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES -# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; -# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -# This script updates Tools/iExploder/iExploder-1.3.2/htdocs/*.in based on -# WebCore/css/CSSPropertyNames.in, WebCore/html/HTMLTagNames.in -# and WebCore/html/HTMLAttributeNames.in - -use warnings; -use strict; - -use FindBin; -use lib $FindBin::Bin; -use VCSUtils; -use webkitdirs; - -use File::Basename; -use File::Spec; - -sub generateEntityListFromFile($); -sub readiExploderFile($); -sub update($$); -sub writeiExploderFile($@); - -update("cssproperties.in", "css/CSSPropertyNames.in"); -update("htmlattrs.in", "html/HTMLAttributeNames.in"); -update("htmltags.in", "html/HTMLTagNames.in"); -print "Successfully updated!\n"; - -exit 0; - -sub generateEntityListFromFile($) -{ - my ($filename) = @_; - - my $revision = svnRevisionForDirectory(dirname($filename)); - my $path = File::Spec->abs2rel($filename, sourceDir()); - my $result = "# From WebKit svn r" . $revision . " (" . $path . ")\n"; - - my @entities = (); - my $in_namespace = 0; - - open(IN, $filename) || die "$!"; - while (my $l = ) { - chomp $l; - if ($l =~ m/^namespace=\"/) { - $in_namespace = 1; - } elsif ($in_namespace && $l =~ m/^$/) { - $in_namespace = 0; - } - - next if $in_namespace; - next if $l =~ m/^\s*#/ || $l =~ m/^\s*$/; - - # For HTML Tags that can have additional information - if ($l =~ m/ /) { - my @split = split / /, $l; - $l = $split[0] - } - - push(@entities, $l); - } - close(IN); - - $result .= join("\n", sort { $a cmp $b } @entities) . "\n\n"; - - return $result; -} - -sub readiExploderFile($) -{ - my ($filename) = @_; - - my @sections = (); - local $/ = "\n\n"; - - open(IN, $filename) || die "$!"; - @sections = ; - close(IN); - - return @sections; -} - -sub update($$) -{ - my ($iexploderPath, $webcorePath) = @_; - - $iexploderPath = File::Spec->catfile(sourceDir(), "Tools", "iExploder", "iExploder-1.3.2", "htdocs", split("/", $iexploderPath)); - $webcorePath = File::Spec->catfile(sourceDir(), "Source", "WebCore", split("/", $webcorePath)); - - my @sections = readiExploderFile($iexploderPath); - $sections[0] = generateEntityListFromFile($webcorePath); - writeiExploderFile($iexploderPath, @sections); -} - - -sub writeiExploderFile($@) -{ - my ($filename, @sections) = @_; - - open(OUT, "> $filename") || die "$!"; - print OUT join("", @sections); - close(OUT); -} -