From Fedora Project Wiki

Revision as of 21:34, 13 February 2009 by Beland (talk | contribs) (move and adapt from Testing)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Rawhide Testing

Some Linux distributions use the terms "unstable" or "development"; Fedora uses the codename "Rawhide" to denote its bleeding-edge branch. Rawhide is a version of Fedora which is updated daily, used to test software which is not yet ready for public consuption. It is intended for developers and testers only, as any package can easily break at any time and without warning. The best way to test it is to have a dedicated partition or system to do installs on. More information on rawhide is available at Releases/Rawhide.

  • Raw: because the packages there are untested and freshly built.
  • Hide: because its your hide that's going to get burned if there is a problem.

Periodically, there will also be Fedora 'test' releases made. If you are not interested in testing Rawhide, test releases are slightly more stable (they are at least tested to install successfully on a few machines). There are typically three test releases before every final release of Fedora, denoted as "alpha", "beta" , and "preview".

How to install Rawhide

Please see Releases/Rawhide.

Where to get alpha, beta releases

See: http://fedoraproject.org/get-prerelease

Riding Rawhide

If you install or run Rawhide, it is expected that:

  • You have a dedicated test system on which you are willing to let things go horribly wrong (not recommended if you need Fedora on that system for reliable daily use)
  • You are actively interested in Fedora development or testing and are willing to file bug reports.
  • You are willing to do a fresh install of a stable release when you are ready to stop participating in the development process, which may involve downgrading software versions.
  • You are subscribed to the fedora-test-list mailing list.

Approach the test release as a valuable chance to learn more about your system. There is a good chance you will run into some bugs in subsystems or components that you are very unfamiliar with as part of the testing process. Use this an opportunity to learn more about that particular subsystem and get familiar with its documentation. Even documentation has bugs, by following up and trying to learn from the documentation you might be able to help clean up badly worded or out of date documentation as well. The more you learn, the more effective you will be in the future if you participate in the development process again. Be as proactive as you can about reading up on how things work and you will have a much more valuable experience overall.

Good Advice

You may find running and reporting bugs against Rawhide easier if you adopt the following practices.

  • When using yum take the time to review the list of package actions before you proceed, don't disable the review step.
  • Get familiar with /var/log/rpmpkgs log file and the /var/log/yum.log file.
  • Get a notebook and make notes about system configuration changes you make. Many problems can be traced to simple configuration errors.. but can appear as package update bugs. When working with other testers to confirm the problem, notes as to the other changes you have made since last update/reboot can be invaluable in tracing the problem down accurately.
  • Keep at least one older kernel around that you are confident works as expected.
  • Reboot daily, to test to see if any of your updates have affected startup. Its much more difficult to track down a boot up problem that was caused by a week+ old update, if you are updating daily but have not rebooted.
  • Get familiar with useful grub features for troubleshooting boot up failures.
  • Don't force or nodeps any package to work around dependency problems. These sorts of shortcuts make it very difficult for other testers to compare their system behavior to yours.

Updates Will Be Bumpy

Because the development tree is not guaranteed to be self-consistent everyday, you will frequently see "yum update" fail with errors. Don't Panic. Most dependency problems will be fixed by the developers in one or two days, sometimes simply by requesting more package rebuilds.

Working Around Update Failures

If you would like to get updates excluding all the potentially broken dependencies in Fedora development tree, use the yum-skip-broken plugin. ("yum update --skip-broken" on the command line.)

You might need to disable GPG check in /etc/yum.conf or the fedora-devel repository in /etc/yum.repos.d if packages are incorrectly signed.

You can also manually suppress yum updates involving specific packages if they are problematic. Here's an example from the timeframe between fc4t1 and fc4t2 test releases:

yum update

...
Error: Missing Dependency: libwnck-1.so.4 is needed by package gnome-applets
Error: Missing Dependency: libpisock.so.8 is needed by package gnome-pilot

First, identify what packages are providing libwnck-1.so.4 and libpisock.so.8 using yum's provides command

yum provides libwnck-1.so.4

...
libwnck.i386                             X.Y.Z-A               installed
yum provides libpisock.so.8
...
pilot-link.i386                          B:X.Y.Z-A.pre0.0      installed


Note the name of the package that provides those libraries and note whether a version of the package is installed. Now you can attempt to exclude packages that were part of the dependancy error message:

yum --exclude=pilot-link --exclude=libwnck --exclude=gnome-applets --exclude=gnome-pilot  update

Repeat the above steps if the exclude options expose more dependency errors. The exclude process runs a very good chance of letting you proceed with the other package updates until the developers rebuild the necessary packages.

When to Report Update Problems

There is a daily build report of the development tree sent to the fedora-test-list every morning as part of the automated push of packages out to the publicly accessible trees. The daily report contains information about new, removed and updated packages. It also contains a summary of known dependency problems for each arch for which the development tree is built for. Please, if you experience any problem updating against the development tree the first thing you should review is the last 2 or 3 build reports. If you are seeing a dependency problem summarized in the latest build report, you can be sure the developers are aware of the problem. Package maintainers receive daily emails when their packages are on this list.

Note that the broken dependency list which is part of the daily rawhide reports only provides the first layer of dependencies and not the entire list to save build time. Unlisted packages might also be affected, but fixed when one or more of the listed packages are rebuilt.

If however the problem lingers longer than a few days on your system, and the problem package is not listed in the daily report, that could be an indication that you have run into a situational bug that not everyone is seeing. This is when you can spring into action as a tester and make a difference. But, before you file a new bug report there is a short recipe you can follow to avoid filing unnecessarily. Please remember that test releases exist primarily to help the developers identify problems so they can be fixed in time for release. Unfortunately, reactionary bug filing of duplicate or well known issues can take developer time away from actually fixing issues.

  1. read fedora-test-list: Go back into your archives or the web archives for fedora-test-list and read over the threads in the last 48 hours and see if there has been any discussion about the specific update errors you have been seeing. Generally, these sorts of errors are seen by most everyone with similar hardware, so its a very good chance that other testers are already discussing it. Please don't just post a new post to fedora-test-list until after you have reviewed the last 48 hours worth of posts. Having multiple discussions about the same issue is a drain on the time of other testers and developers.
  2. search bugzlla.redhat.com: Search to see if there are any reports about the update issue you have seen
  3. drop a note into fedora-test-list: Please only start a new thread only after you attempted to find previous discussion of this problem in the test-list or in bugzilla. Other testers can help you confirm the problem, or if they can't confirm it they can help you determine if its a configuration problem or user error on your part. The test-list is a great way to assistance from other more experienced testers, but please do what you can to use the archives responsibility to avoid duplication of information and discussion.
  4. File a new bug report: If the exact nature of the dependency problem during updating is lingering for several days or if the problem seems specialized to your situation and it doesn't appear that the developer is aware of this problem.... file a new bug. If you are unsure how to file, experienced testers in fedora-test-list can make suggestions. Please don't assume its a yum bug. Most dependency issues are packaging bugs in one of the packages detailed in the error messages.