On Thu, 27 Jan 2005 tony_lambregts@telusplanet.net wrote: [...]
And no, we cannot make 'stable' releases today. Some of the criteria for 0.9 are: completing the window management rewrite, good enough dll separation and stabilizing the wineserver protocol. We're close on some of these goals but there's still work. And as far as I know there won't be stable releases before we reach 0.9.
That's again circular. One of the things that need to be in place for 0.9 is a stable release cycle.
No you have it reversed. There's no point to put in place a complex release cycle if the code itself is not somwehat stable (i.e. we don't rewrite core subsystems anymore).
So first we must make the code stable and that's what 0.9 is about. Once we have stabilized the core code and architecture of Wine we can think about putting into place procedures for making a new Wine release.
Which of these more resonable entry for the "Maintainers Guide"?
Neither. Here's a rough draft.
--- cut here ---
What are the tasks of an application maintainer?
* Give a short description of the application.
This is not the most important task but it's still good to describe what the application does. This description should be short and ideally you would accompany it with screenshots of the application running in Wine (assuming it does run in Wine).
* Find the best way to install and run the application.
The application may not work or even install the first time you try it. Don't give up just yet. Try the tricks described there <link to document describing how to install and run apps>. The goal here is to get the application working as best as possible by tweaking the Wine environment.
* Restart from scratch and optimize your setup.
Once you have found some settings that seem to work, wipe out your .wine directory and start over. This is so you can verify that the result you obtained is reproducible and that you did not forget some steps or configuration tweaks. Also, this time try to only use application-specific settings for dll overrides and such. This is important to minimize the conflicts between applications.
* Describe how to install and run the application.
Hopefully you kept notes while working on the previous task because now you will have to describe what you have done. Configuring Wine so an application runs well is hard, there are a lot of options and combinations to try and most Wine users won't have the time or patience to go through it all. This is why this task is probably the most important: it lets the other Wine users benefit from your hard earned experience in running this application as best as possible. So describe carefully the Wine configuration options to use. Don't hesitate to include the relevant configuration file snippets, especially those application specific sections which users can just drop in at the end of their configuration file. Also, don't forget to mention any pre-requisites to installing the application such as installing Internet Explorer or other software the application depends upon. Finally you may want to provide the command line to use to start the application as this is not always obvious, especially if the application needs a specific working directory.
* Describe what works and what does not.
Potential users of this application will want to know which features are usable and which are not. It is only armed with this information that they will be able to determine whether the application is usable for them or not. Of course if the application does not work this will be simple. If the application does work, then try to exercise its various modules like: opening and saving files, importing and exporting files, printing, the print preview mode, etc. If there is an area that you were not able to test (e.g. printing because you have no printer), mention it too.
* Rate the application.
Rate the application as described there <link to the ratings guidelines>. The work you did in the above step will come in handy to determine the appropriate rating.
* Report the problems.
If in the above steps you have identified reproducible issues, report them in Bugzilla as described there <link to the bug reporting howto>.
* Test the application on a regular basis.
Ideally you would test it once a week so that you can quickly notify the Wine developers of any regression. The earlier a Wine regression is noticed, the easier it will be to locate the change that causing it and the more likely it is to be fixed. At the very least you should test the application with each Wine release. If you detect a regression at that point it is likely you will have to go through regression testing to identify the patch causing the problem. Also mention any stability problem.
* Help users who have trouble getting the application to work as well as you.
People will want to follow in your footsteps but some may stumble along the way. Try to work out with them why stuff that works for you does not work for them. Maybe they changed a global Wine setting that interfers with your application. Maybe that global Wine setting is needed to run another application. Try to see if there's a way to get both applications working. This includes monitoring the application forum to make sure it remains on topic and to remove obsolete information.
While these steps are given in a seemingly logical order, you will probably have to iterate a bit, especially between the application testing and configuration tweaking steps.
--- cut here ---