Homebrew / homebrew-core

🍻 Default formulae for the missing package manager for macOS (or Linux)
https://brew.sh
BSD 2-Clause "Simplified" License
13.77k stars 12.45k forks source link

Google Code Migration to Archive #4280

Closed DomT4 closed 8 years ago

DomT4 commented 8 years ago

They've finally shunted (possibly) everything over to an archive link, with existing links hitting 404s. The following formulae will need checking/rewriting:

ilovezfs commented 8 years ago

or we could boneyard the entire lot since still being on google code means upstream is basically dead

DomT4 commented 8 years ago

Meh. If the software still works and isn't a security risk, happy to keep shipping it. We could probably kill over half of Homebrew's formulae because upstream has gone dead lol.

ilovezfs commented 8 years ago

We could probably kill over half of Homebrew's formulae because upstream has gone dead lol.

not a bad idea.

ilovezfs commented 8 years ago

@DomT4 since the link mapping is deterministic why isn't this a scripted single PR just changing the URLs?

DomT4 commented 8 years ago

Because doing it individually allows me to check:

ilovezfs commented 8 years ago

If you want to cleanup these specific formulae in individual PRs for whatever reason, might I suggest doing that after updating all the URLs en masse first? ;)

DomT4 commented 8 years ago

You can suggest it, but since I haven't looked at some of these formulae over my entire time maintaining Homebrew, I honestly wouldn't be bothering if the URLs didn't need fixing. It's a one-time offer, fixing other stuff whilst fixing URLs. At the moment I'm outrunning the CI & it's giving me something simple to do whilst babysitting, so πŸ™ˆ.

You're more than welcome to join in the fun if you wish to.

DomT4 commented 8 years ago

Essentially, if you want to run a script through, feel free, I won't go to the trouble of reverting it or anything πŸ˜„, but I'm happy doing it this way for now.

ilovezfs commented 8 years ago

@DomT4 here you go https://gist.github.com/ilovezfs/f3fa35a23d3260d084a227f4f47fe89d

a one-liner (ahem)

$ ag .googlecode.com|while read u; do f=`echo $u|awk -F ':' '{print $1}'`; l=`echo $u|awk -F ':' '{print "https:"$4}'|tr -d '"'`; brew ruby -e "my = \"$l\"; mysplit = my.split(\"/\"); mysplit[-2]=mysplit[2].sub(\".googlecode.com\", \"\"); mysplit[2] = \"storage.googleapis.com/google-code-archive-downloads/v2/code.google.com\"; mynew = mysplit.join(\"/\"); Utils::Inreplace.inreplace \"$f\", my, mynew" ; done

failed for darkice, game-music-emu, gmail-backup, httperf, libkml, ppss, s3sync

DomT4 commented 8 years ago

Any chance you want to automatically poke the homepage redirects as well and save me the whole job? πŸ‘Ό. Not everything has been set to redirect automatically, but some things have.

ilovezfs commented 8 years ago

@DomT4 https://gist.github.com/ilovezfs/1ea704d8a1d53e711897ecd3ec629cb1

DomT4 commented 8 years ago

Pushed, just for you. Shall see how many actually point elsewhere now I guess πŸ˜….

ilovezfs commented 8 years ago

@DomT4 perfect. We can probably extract the redirects too :grinning:

DomT4 commented 8 years ago

Some aren't automatic, despite Google providing that utility, apparently people decided to dump it in the README instead a lot πŸ‘€.

DomT4 commented 8 years ago

I can't seem to get jing or trang to build, if you fancy taking a swing at them before I decide they smell like death.

DomT4 commented 8 years ago

Can't get radamsa to build either. This is going well so far for new upstream code working.

ilovezfs commented 8 years ago

@DomT4 jing: https://github.com/Homebrew/homebrew-core/pull/4312

ilovezfs commented 8 years ago

@DomT4 ditto for trang ... it's in the build directory also after ant runs.

ilovezfs commented 8 years ago

@DomT4 radamsa seems fine as is, no?

iMac-TMP:homebrew-core joe$ brew instal -dvs radamsa
/usr/local/Library/Homebrew/brew.rb (Formulary::FormulaLoader): loading /usr/local/Library/Taps/homebrew/homebrew-core/Formula/radamsa.rb
==> Using the sandbox
/usr/bin/sandbox-exec -f /tmp/homebrew20160828-7160-irsdjh.sb nice /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -W0 -I /usr/local/Library/Homebrew -- /usr/local/Library/Homebrew/build.rb /usr/local/Library/Taps/homebrew/homebrew-core/Formula/radamsa.rb --verbose --debug
/usr/local/Library/Homebrew/build.rb (Formulary::FromPathLoader): loading /usr/local/Library/Taps/homebrew/homebrew-core/Formula/radamsa.rb
==> Downloading https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/ouspg/radamsa-0.3.tar.gz
/usr/bin/curl --fail --remote-time --location --user-agent Homebrew/0.9.9 (Macintosh; Intel Mac OS X 10.11.5) curl/7.43.0 https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/ouspg/radamsa-0.3.tar.gz -C 0 -o /Users/joe/Library/Caches/Homebrew/radamsa-0.3.tar.gz.incomplete
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  113k  100  113k    0     0   377k      0 --:--:-- --:--:-- --:--:--  376k
==> Verifying radamsa-0.3.tar.gz checksum
tar xvzf /Users/joe/Library/Caches/Homebrew/radamsa-0.3.tar.gz
x radamsa-0.3/
x radamsa-0.3/tests/
x radamsa-0.3/tests/tr.sh
x radamsa-0.3/tests/li.sh
x radamsa-0.3/tests/sr.sh
x radamsa-0.3/tests/run
x radamsa-0.3/tests/tr2.sh
x radamsa-0.3/tests/ls.sh
x radamsa-0.3/tests/ts1.sh
x radamsa-0.3/tests/benchmark
x radamsa-0.3/tests/lr2.sh
x radamsa-0.3/tests/ft.sh
x radamsa-0.3/tests/ld.sh
x radamsa-0.3/tests/bd.sh
x radamsa-0.3/tests/num.sh
x radamsa-0.3/tests/ts2.sh
x radamsa-0.3/readme.txt
x radamsa-0.3/rad/
x radamsa-0.3/rad/main.scm
x radamsa-0.3/rad/patterns.scm
x radamsa-0.3/rad/generators.scm
x radamsa-0.3/rad/shared.scm
x radamsa-0.3/rad/generic.scm
x radamsa-0.3/rad/output.scm
x radamsa-0.3/rad/fuse.scm
x radamsa-0.3/rad/mutations.scm
x radamsa-0.3/radamsa.c
x radamsa-0.3/doc/
x radamsa-0.3/doc/radamsa.1
x radamsa-0.3/Makefile
==> make
mkdir -p bin
clang -Wall -O3 -o bin/radamsa radamsa.c
mkdir -p tmp
sh tests/run bin/radamsa
Testing bin/radamsa:
-n  o tests/bd.sh: 
ok
-n  o tests/ft.sh: 
ok
-n  o tests/ld.sh: 
ok
-n  o tests/li.sh: 
ok
-n  o tests/lr2.sh: 
ok
-n  o tests/ls.sh: 
ok
-n  o tests/num.sh: 
ok
-n  o tests/sr.sh: 
ok
-n  o tests/tr.sh: 
ok
-n  o tests/tr2.sh: 
ok
-n  o tests/ts1.sh: 
ok
-n  o tests/ts2.sh: 
ok
touch .seal-of-quality
==> Cleaning
Fixing /usr/local/Cellar/radamsa/0.3/bin/radamsa permissions from 755 to 555
rmdir: /usr/local/Cellar/radamsa/0.3/tmp (empty)
rmdir: /usr/local/Cellar/radamsa/0.3/doc (empty)
==> Finishing up
ln -s ../Cellar/radamsa/0.3/bin/radamsa radamsa
ln -s ../../../Cellar/radamsa/0.3/share/man/man1/radamsa.1 radamsa.1
==> Caveats
The Radamsa binary has been installed.
The Lisp source code has been copied to:
  /usr/local/Cellar/radamsa/0.3/rad

To be able to recompile the source to C, you will need run:
  $ make get-owl

Tests can be run with:
  $ make .seal-of-quality

==> Summary
🍺  /usr/local/Cellar/radamsa/0.3: 28 files, 928.3K, built in 8 seconds
DomT4 commented 8 years ago

radamsa seems fine as is, no?

Yeah, it's the new update available on GitHub I couldn't get happy.

ilovezfs commented 8 years ago

@DomT4 I'm not sure what the deal is with upstream and the fork, but I'm assuming you hit this issue: https://github.com/aoh/radamsa/issues/5

So this works:

diff --git a/Formula/radamsa.rb b/Formula/radamsa.rb
index 286d653..745cd4e 100644
--- a/Formula/radamsa.rb
+++ b/Formula/radamsa.rb
@@ -1,8 +1,9 @@
 class Radamsa < Formula
   desc "Test case generator for robustness testing (a.k.a. a \"fuzzer\")"
-  homepage "https://code.google.com/p/ouspg/archive/p/Radamsa/"
-  url "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/ouspg/radamsa-0.3.tar.gz"
-  sha256 "17131a19fb28e5c97c28bf0b407a82744c251aa8aedfa507967a92438cd803be"
+  homepage "https://github.com/aoh/radamsa/"
+  url "https://github.com/aoh/radamsa/releases/download/v0.5/radamsa-0.5.tar.gz"
+  sha256 "e21a86aa6dca7e4619085fc60fb664d0a1bd067ca6ebfbcb16ab2d57c8854cb4"
+  head "https://github.com/aoh/radamsa.git"

   bottle do
     cellar :any_skip_relocation
@@ -12,9 +13,7 @@ class Radamsa < Formula
   end

   def install
-    system "make"
-    man1.install "doc/radamsa.1"
-    prefix.install Dir["*"]
+    system "make", "PREFIX=#{prefix}", "install"
   end

   def caveats; <<-EOS.undent
DomT4 commented 8 years ago

Other people are welcome to finish this off.