Gallery3:Automatic version checking - Gallery Codex
Personal tools

Gallery3:Automatic version checking

From Gallery Codex


Gallery 3.0.1 and newer automatically checks to see if it is up to date!

For Users

To see if you have the newest version of Gallery, head to Admin > Dashboard and notice the new block with version information.

To update, click the "check now" button. This asks our website what the newest version of Gallery is and lets you know if you need to upgrade!

We don't send any information about your install back to the server with this request! As best we can, this is all one way traffic from the Gallery website down to your Gallery install.

By default, this checking happens automatically once a week. You can disable the automatic checking at Admin > Dashboard. However, it's a good idea to keep this on so that you don't miss any security updates.

For Developers

Each Gallery 3 install now has a new file called ".build_number". This contains a number that only increases and lets you know the "build" that you have for a particular branch. Every time you do a "git pull" or get a new snapshot, you're going to see this number go up.

When Gallery notices that the build number has gone up on your development branch, or that the release version has gone up, it'll notify you and give you links to upgrade or be reminded later.

When you do an upgrade, we automatically clear the version check string in your Gallery 3 install assuming that you have the latest code. So if you're a git user and you do "git pull", it will get cleared when you run "php index.php upgrade" (which you should be running after you do git pull anyway).

The Technical Details

The Gallery website has a version checking service called "versioncheck" that we've been using for years. If you go to this url:

http://galleryproject.org/versioncheck/gallery3

It lists version and build info for the official release and each development branch.

Behind the scenes there's some tricky bits in getting the .build_number file to be updated. Unlike subversion and other centralized revision control systems, git has no single version number. So to get the .build_number file to have an ever-increasing number, we're running an automated script that scans for changes in any of the branches (currently it's only looking at 3.0.x and master) and bumps the .build_number when sees a change. It also bumps the versioncheck number in the database.