IceWalkers.com - Linux Software downloads and news
Name : Password :
Linux SoftwareLinux RPMLinux HowtosLink UsAboutAdvertise

Software Release Practice HOWTO

Search Howtos :Match :

Software Release Practice HOWTO

Eric Steven Raymond

Thyrsus Enterprises

    esr at thyrsus.com
    

Revision History
Revision 3.42002-01-04Revised by: esr
More about good patching practice.
Revision 3.32001-08-16Revised by: esr
New section about how to send good patches.
Revision 3.22001-07-11Revised by: esr
Note about not relying on proprietary components.
Revision 3.12001-02-22Revised by: esr
LDP Styleguide fixes.
Revision 3.02000-08-12Revised by: esr
First DocBook version. Advice on SourceForge and a major section on documentation practice added.

This HOWTO describes good release practices for Linux and other open-source projects. By following these practices, you will make it as easy as possible for users to build your code and use it, and for other developers to understand your code and cooperate with you to improve it.

This document is a must-read for novice developers. Experienced developers should review it when they are about to release a new project. It will be revised periodically to reflect the evolution of good-practice standards.


Table of Contents
1. Introduction
1.1. Why this document?
1.2. New versions of this document
2. Good patching practice
2.1. Do send patches, don't send whole archives or files
2.2. Send patches against the current version of the code.
2.3. Don't include patches for generated files.
2.4. Don't send patch bands that just tweak RCS or SCCS $-symbols.
2.5. Do use -c or -u format, don't use the default (-e) format
2.6. Do include documentation with your patch
2.7. Do include an explanation with your patch
2.8. Do include useful comments in your code
3. Good project- and archive- naming practice
3.1. Use GNU-style names with a stem and major.minor.patch numbering.
3.2. But respect local conventions where appropriate
3.3. Try hard to choose a name prefix that is unique and easy to type
4. Good licensing and copyright practice: the theory
4.1. Open source and copyrights
4.2. What qualifies as open source
5. Good licensing and copyright practice: the practice
5.1. Make yourself or the FSF the copyright holder
5.2. Use a license conformant to the Open Source Definition
5.3. Don't write your own license if you can possibly avoid it.
6. Good development practice
6.1. Write either pure ANSI C or a portable scripting language
6.2. Don't rely on proprietary code
6.3. Follow good C portability practices
6.4. Use autoconf/automake/autoheader
6.5. Sanity-check your code before release
6.6. Sanity-check your documentation and READMEs before release
7. Good distribution-making practice
7.1. Make sure tarballs always unpack into a single new directory
7.2. Have a README
7.3. Respect and follow standard file naming practices
7.4. Design for Upgradability
7.5. Provide RPMs
8. Good documentation practice
8.1. Good practice in the present
8.2. Good practice for the future
9. Good communication practice
9.1. Announce to c.o.l.a and Freshmeat
9.2. Announce to a relevant topic newsgroup
9.3. Have a website
9.4. Host project mailing lists
9.5. Release to major archives
10. Good project-management practice
Search Howtos :Match :
Linux Kernel 2.4 2.4.37.7
Linux Kernel
JEdit 4.3pre18
Programmers text editor
ImageMagick 6.5.7.5
ImageMagick image processing studio
Krusader 2.1.0-beta1
Twin-Panel filemanager for KDE3
LilyPond 2.13.7
Music typesetter.
KDevelop 4.0 beta6
Integrated Development Environment for Unix/X11
KDE 4.3.3
Powerful Open Source graphical desktop environment.
WebGUI 7.7.25
A fully featured content management system.
SimplyMEPIS 8.0.12
Run the Linux operating system from your CD or DVD drive
Fedora 12 rc1
Community-supported open source distribution
Free IT Magazines, White Papers, eBooks, and more !
Oracle Magazine

Contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more.

Vulnerability Management for Dummies

Get all the Facts and See How to Implement a Successful Vulnerability Management Program.

Website Magazine

Has tapped premier talent in the Internet industry for our content and each and every issue will contain practical advice and insights for website owners.

Linux Software Map
Find Linux RPM
Best Rated Linux Software
Most Rated Linux Software
Linux Distributions
Linux Howtos
Quick Survey

Please take our survey and help us improve our website to serve you better.

Thank you.
Linux Software
Linux / IT Resources
Site Resources
Google
Privacy Policy
Contact Us
Submit Software
Advertising info