[I planed to send this over one week ago, but many things got in my way, sorry]
I think we should make a 0.4.0 distro release pretty soon. To prevent problems like last time, I'd like to have the release process formalized more than it is (which is not at all). I believe this will benefit us all. I plan to add a section to the documenation/policy on this eventually. Following some thoughts of mine, not yet complete. I) Distro Release Frequency =========================== Full distro releases should occur roughly every 2 months. This ensures the binary distro doesn't lag behind to much (see point III). II) Time table for distro release ================================= After each release, we'll publish the date of the estimated time for the next release. Ideally we'd even give estimates for the next couple of dates. These dates will not be guranteed to be met, but we'll try our best to keep close to the scheduled date for the next release. I propose our next release be on Saturday, 13th April. (This gives us enough time to follow the procedure outlined below; also it means that in case of screw up, I have the sunday to fix up; feel free to suggest other dates, but make sure to include proper reasons as to why you think that date is better suited). Before each release, we'll undergo the following phases [to be refined]: 1) Stable-Move-Phase We try to get as many package to stable. This way we can ensure a big binary distro, plus stable users have more current stuff. Of course, we still must be careful doing so, it's no use to have packages in stable that don't work properly. So don't rush! 2) Freeze Roughly one week before the scheduled release date, we make freeze stable. This means no changes may be made to stable in this time, except to fix bugs. In this time, I (and ideally others developers, too) will switch to a clean stable-only system to verify stable works as promised, and do test all packages (to this end we could need a scripted batch test system). Any problem encountered will be reported and have to be fixed ASAP. Packages not fixed by the end of this phase will be temporarily removed from stable. Also during this period, I will compile a list of packages that do not conform the license policy and will make that list public, to give maintainers a last chance to get their package compliant. Only packages that comply to the license policy can get into the bin dist. If required, this phase can be prolonged, if sever problem occur which have to be resolved first. The decision to do so will be made by the core developers, via discussion & consent on fink-devel. 3) Deep freeze Two days before the scheduled release date, we go into deep freeze mode. No change may be made to CVS in this time, except to fix mission critical bugs. That includes unstable. CVS will be tagged with a special tag at the beginning of this period. Ideally, a prerelease distro will be made available, too, but I am not sure how and whether at all this will work out (gotta think about it). I'll upload the bin dist in this time, and prepare everything else for the actual release. In the case of severe problems during this phase, we'll go back to phase 2 until the problems are resolved, at which point phase three 3 anew (with a new CVS tag). 4) Release If all worked out in the steps above, CVS will be tagged for the release version, and the binary installer/source distro will be released on SourceForge, the bin dist will be enabled for public use (ideally this means change of a single file) III) Binary Distro ================== For now, the binary distro will continue to be only updated on each full distro release. In the future, we may try to come up with a system that allows for greater update frequency. Some parameters: 1) The build enviroment will be fixed (i.e. I'll mark the exact machine/OS revision/compiler version). We will note these and other parameter so that we can reproduce the build setting later on if required. 2) For now, packages will probably still be built only by me. In the future, we'll want to extend this to a couple of other people. However, it's mandatory that these be team members, available, and guranteed to be trusted. We can't just take binaries from everybody, for security reaons. Identify of people submitting packages will have to be verified before their binaries can be put into the bindist. I'd like to encourage others to do likewise. BTW; you don't need a full clean system for this; you can also rename your /sw dir for the testing period, and bootstrap a new one (you can restore you real sw dir back later on this way). The idea of this phase is to catch any stable-only problems (like dependencies that can only be fullfiled in unstable, etc., happens easily). UPDATE: Finally, thanks to recent events, I am now always testing a stable system on an external Dual-800 G4. More on this in another mail soon. Cheers, Max -- ----------------------------------------------- Max Horn Software Developer email: <mailto:[EMAIL PROTECTED]> phone: (+49) 6151-494890 _______________________________________________ Fink-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/fink-devel