Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
A script to speed up reviewing homebrew packages for updates.
Python Shell
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
LICENSE
README.md skip github diff patch urls
_batch.sh
hydrometer.py

README.md

Hydrometer

Want to submit package updates to homebrew?

Don't want to find packages that need updating by hand?

This is a script to help automate the review process for over a thousand packages!

Installation

This is python3 code. Install python3 (and pip3) from brew like so:

brew install python3

Now you can install BeautifulSoup, a python3 html parser the scripts rely on:

pip3 install beautifulsoup4

Goto the terminal and type 'python3' to start a new shell. Then type 'import bs4'.

If this looks like what you see (no angry messages about errors), you're good to go!

$ python3
Python 3.3.0 (default, Nov  3 2012, 09:45:08) 
[GCC 4.2.1 Compatible Apple Clang 4.1 ((tags/Apple/clang-421.11.66))] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import bs4
>>> 

Basic usage

Currently hydrometer supports the following options:

-s, --sourceforge:  scan for sourceforge updates (~600 packages)
-g, --github:  scan for github tag updates (~750 packages)
-c, --googlecode:  scan for googlecode updates (~150 packages)
-n, --gnuftp:  scan for gnu ftpmirror updates (~80 packages sans aspell)

You're more than welcome to run the script interactively, but you'll probably want something like:

./hydrometer.py -s > sourceforge_updates.txt

The end result will be a file that contains:

1) a line from sourceforge packages
2) hydrometer's best guess for the corresponding package's latest version/downloads
3) some spacing to keep things sane

Now, you just need to look through sourceforge_updates.txt for packages that need updating.

Final step

Update the package. Submit a patch. Have a beer to celebrate. :3

Future improvements

The googlecode/github parsers could be made less verbose. More error checking, perhaps. Things are hardcoded to /usr/local.

Something went wrong with that request. Please try again.