Azureus CVS
From AzureusWiki
Contents |
What is CVS?
CVS (Concurrent Versions System) is a tool used by many software developers to manage changes within their source code tree. CVS provides the means to store not only the current version of a piece of source code, but a record of all changes (and who made those changes) that have occurred to that source code. Use of CVS is particularly common on projects with multiple developers, since CVS ensures changes made by one developer are not accidentally removed when another developer posts their changes to the source tree.
Every day or so a snapshot is taken of the Azureus code in the CVS. That snapshot is compiled into a .jar (java zip) file, which can then replace the one you're currently using. Think of it as a daily beta. CVS versions often include many features, changes, and bug-fixes added since the last release version. But they can also often include bugs and less tested code and therefore be less stable than the release versions. CVS versions generally exist so various volunteers can test changes in the code and shake out the bugs, report errors, and help optimize the code for the next official release.
AZCVSUpdater
Thanks to some great work by Omschaub, there's a plugin that automates the CVS updating process. You can find it on the plugin page here: http://azureus.sourceforge.net/plugin_details.php?plugin=azcvsupdater
Some of the features of this plugin include
- Automatic CVS checking and optional auto-downloading
- Optional Automatic restarting
- Automatic backup of important user information and previous CVS versions
- The ability to switch to any previously downloaded build at the click of a button
- Simple CVS build management including the ability to add comments to any particular build
- Memory usage reporting for monitoring resources between builds
For updates and questions, please visit the Azureus plugin forum on SF @ http://sourceforge.net/forum/forum.php?forum_id=377614
How to install the latest Beta build of Azureus
Caution: The latest CVS builds have no guarantee of stability, and contain code that might be untested. You use them at your own risk. While there rarely is a severe problem with the CVS versions, make sure you're backing up your user information and config settings before using a CVS build. Note: when you decide to use the CVS you should update it again at least weekly, since there are always changes being made and if you run into problems that could have already been fixed in a new CVS.
The CVS is located @ http://azureus.sourceforge.net/index_CVS.php and can also be found on the wiki @ SnapshotJar. On that page there will be some information, including the list of changes made since the last release (ChangeLog). The CVS .jar files are titled Azureus2-Bxx.jar where xx is the current build number since the last release.
(If you're on a Mac, there are Mac OS X specific instructions available here: Change the Azureus 2 jar file)
Installing the latest Beta .jar manually
- Close your Azureus client completely
- Download the latest Azureus2-Bxx.jar file from the CVS page
- Do not try to extract it, just rename the .jar file to Azureus2.jar (remove the -Bxx part; note that you don't see the .jar if Windows hides known file-extensions!)
- Move the .jar file to your Azureus program directory, overwriting the one currently there (it is recommended you back up the previous .jar file in case the new version causes problems - make sure you rename the "jar" extension of the previous file to something else)
- Start Azureus - you should now see the new version number in the bottom left of the window.
- Go to Azureus > Help > Check for Updates - if there are any, install them and restart Azureus (also install any "Automatic Updates" Azureus suggests to download)
That's it.
How to install the Azureus Beta using AZCVSUpdater
1. Get the AZCVSUpdater Plugin.
- Start Azureus, and go to the Plugins pulldown. If the AZCVSUpdater is listed, skip to step 2.
- Pick Installation Wizard. The radio button for By list from sourceforge.net should be selected. Pick Next>.
- Put a check in the box next to the AZCVSUpdater plugin. Pick Next>.
- Choose whether to install the plugin for all users, or only for yourself. The default is all users. Pick Finish.
- A new window will appear showing what plugins were selected, and their version and size. Pick the Install button. It should only take a minute or so for the plugin to download and install, at which time you can pick Close to close the plugin installer window.
2. Go to the Azureus Plugins pulldown, and choose the AZCVSUpdater.
3. On the CVS Update tab, and CVS Web Information tab, you will see the latest version information. If you do not, pick the refresh button to the right. The information shown here updates automatically every 60 minutes.
4. Compare the latest CVS version available to the current version of Azureus you have installed. If the CVS is newer, you can download and install it. If not, check back here each day and review the latest version information again.
5. If there is a new version, you can download it by clicking the manual download button to the right. This starts a torrent in Azureus, and it should only take a few minutes to finish. Once it is done downloading you can proceed to install it.
6. To install the latest CVS of Azureus, go to the AZCVSUpdater plugin, and the Insert/Backup Files tab. Pick Yes for 'Would you like to insert a backup file as Azureus2.jar?'. In the pulldown, choose the CVS version you downloaded.
7. Always make a backup of your current configuration. Pick Yes for 'Would you like to make a backup of your current config files?', and in the pull down below, give it a name relevant to your currently installed version of Azureus. (i.e. 2.3.0.6 or 2.3.0.7_B5, etc.)
8. Leave 'Would you like to restore a previously saved backup config directory?' set to No.
9. Click Submit. Then choose whether to accept and restart now, later or exit. Depending on your choice, Azureus will either restart with the new CVS, or put the CVS in place but not restart, requiring you to restart Azureus manually, or simply exit, and the new CVS will be in place for the next time you start Azureus.
10. Once Azureus is restarted, the new CVS version should be displayed in the lower left corner of Azureus.
You can then repeat this process when a new release of the CVS comes out. There are also options in the AZCVSUpdater to automatically download, install and restart Azureus when a new release is discovered. However, if you're unsure about letting Azureus do it automatically, it's best to do it by hand when you can afford to deal with a problem the latest release may cause. Azureus beta releases are usually very stable and rarely cause problems, although it is possible.
Reporting CVS bugs
Register and post it in the CVS bug reports forum.
Please include your CVS build version in the subject line. Make sure you use the latest CVS before reporting a bug! Before posting, try to isolate the problem as much as possible. See if the bug exists in other builds or if it's something new and include that information. Be as detailed as you can and include instructions others can use to attempt to recreate the bug on their systems in order to confirm it. And finally, check the forums and the wiki first to see if anyone else has already posted about it. You also may want to ask in the IRC channel.
How can I tell what's changed from snapshot to snapshot?
There is no easy way to tell, however, you can get subscribe to the CVS mailing list and get e-mails every time a developer changes something in the code. Usually there's a comment on what they are trying to fix, or what they are doing. The mailing list is at http://sourceforge.net/mail/?group_id=84122 and is called "azureus-commitlog Archives". You can also browse past commit logs from that page.
Read the Azureus FAQ
