Thread: [Freemind-developer] New beta version(s): the process to be defined
A premier mind-mapping software written in Java
Brought to you by:
christianfoltin,
danielpolansky
From: Dimitry P. <dpo...@gm...> - 2007-06-24 12:41:59
|
Hello everybody, many people ask themselves why the last beta version was published in February and no other versions have been released afterwards. I ask myself too, and I would like to discuss it with you. Currently no process is defined and consequently no process can work. Dear Chris, Dan and Eric, I know that you everyone is very busy. The aim of this discussion is reducing of the time each of you has to spend for producing the next release, because defining of standard makes anybody (like me) able to perform the steps once they are defined. I ask you to acknowledge the importance of these questions and to submit your answers to my proposals, so that both release cycles and amount of time spent for producing next releases can be kept minimal. I see two basic problems: 1. How the decision to release the next beta based on some CVS stand can be generally taken, and 2. What should be done in order to produce the release, who is allowed to do it and what steps and standards should be considered. I want to say that I would spend my time for producing the release, if the above questions were clarified. But nowadays I do not use the Program so intensively that I could see whether current code stand is stable enough. I also do not know, what packages should be prepared for a beta (I suppose WindowsInstaller.exe, src.tg.z, bin-max.zip and the Mac - package, but I currently do not know how to create it). Let me describe a process which I hope could be a good solution. If you accept it, it opens a way to producing the new beta versions avoiding the blocks. You are highly welcome to make your comments and suggestions. ==== The release process ==== 1. Every developer is allowed to produce a alpha version any time he wants. No tests are mandatory for it. The alpha versions are published on the FreeMind web site. In order to reduce the amount of the used disk space only one alpha version per developer is allowed to be offered at the same time, the old versions should be deleted before publishing the new one. The minimum release package should contain the source code (src.tg.z or src.zip)and one compiled version (bin-max.tg.z or bin-max.zip). A CVS tag may be created for each new alpha version. 2. Every developer is allowed to propose release of beta version any time he wants. The beta versions are always published in the download section in package "freemind-unstable". If no other developer reports significant bugs or objections within a week, the developer makes smoke tests defined below, creates a CVS tag, prepares and uploads the release files and writes messages in Forum "Open discussion" and FreeMind Wiki main page. The minimum release package should contain the source code (src.tg.z or src.zip), one compiled version (bin-max.tg.z or bin-max.zip) and one browser version. A CVS tag should be created for each new beta version. The installer for windows, mac and debian may be omitted for beta versions or be created later without performing the smoke tests again, because the CVS tag is known. 3. Every developer is allowed to propose to convert any beta version published at least one month ago to release candidate, if no critical bugs has been reported for this beta version. The code of the release candidate may contain only minimal changes against the beta version, in the other case new beta version should be released. 4. Every developer is allowed to propose to convert any release candidate published at least one month ago to release, if no critical bugs has been reported for this release candidate. The FreeMind documentation mind map should be updated to containg a description of all new features. The Wiki should be updated too. The release has to be published in the main download package. ==== The mandatory smoke tests before release of a beta version ==== 1. Open the freemind documentation, check that every node is shown correctly. 2. Test creation, modification, deletion, change of geometrical position of nodes, clouds, attributes using mouse and using keyboard only. 3. Test copy&paste, cut&paste, drag&drop of nodes using mouse and using keyboard only 4. Define an attribute based filter and apply it. 5. Create a new map, test switching between the old and the new map. 6. Test export of the documentation map to HTML and to browser, check navigation in the browser. 7. What plug-ins should be explicitly tested ? What about Search / Replace / Links ? Even more items? ==== Mandatory Memory Profiling before producing a release candidate / release ==== 1. No map objects may remain in memory after closing a map (the test should be performed with the documentation map 2. No child NodeViews / AttributeViews / MainViews may remain in memory after folding a node 3. No NodeViews / AttributeViews / MainViews may remain in memory after deleting a node ========================================================== I am sure that defining and performing of the smoke test are necessary for insuring the quality of the published FreeMind versions. The list of the smoke tests has to be modified as our experience grows. I suppose that the lack of the smoke test and release process definition is the main reason for long development cycles of FreeMind. Best regards, Dimitry |
From: Christian F. (GMX) <chr...@gm...> - 2007-06-25 19:54:31
|
Dear Dimitri, thanks for your proposal. I love the list of tests!! Please, put them immediately into the Wiki into a dedicated FreeMind Testing page or the like. I would love to enhance this page (well, or let it been enhanced), to get a well defined testing list. About the exact release cycle times: I'm not quite convinced that putting such exact times as "one month" is helpful. Perhaps, we can say: after a considerable time or after a joined descicion to publish... HTH,Chris PS: I'm currently publishing beta10. Any obstructions??? |
From: Eric L. <Eric@Lavar.de> - 2007-06-25 23:10:52
|
Hi Dimitry, I mostly agree with all your points, so I don't reply below the lines but only have a few comments: 1. I think that a CVS tag _must_ be created for each release, even an Alpha one. It's a simple quality factor and should be followed. 2. Concerning point 4, translations with owner _must_ have been made before a RC can become a release (unless owner doesn't react), packages _should_ be ready (they can be slightly delayed). This implies that translations and packages are requested from the owners just after RC1, asking them to try to be finished within one month. As package owner, I find this OK that you ask, even though I might tell you that I can't meet the deadline. :-) 3. SmokeTest: we should have one test map for each version, and the new version must be able to open the map from the nth and nth-1 version and save both as nth version. I would also create/encrypt/decrypt an encrypted node. A good and easy test might be also: open the test map, don't modify anything, save as, compare files (normally, there shouldn't be any difference, or!?). The browser should be tested as well, the browse mode also. Else you have my go. Thanks for your engagement, Eric |
From: Dan P. <dan...@gm...> - 2007-06-26 06:52:16
|
Chris wrote: : PS: I'm currently publishing beta10. Any obstructions??? Hi all, no time now to answer in detail, so just for the present moment: I have no objections to releasing 0.9.0 beta 10. That is probably no surprise as I do not have any picture of its state anyway. --Dan |
From: Dimitry P. <dpo...@gm...> - 2007-06-26 22:23:07
|
Wiki Page with the Process Description and Smoke Test Description is created here: http://freemind.sourceforge.net/wiki/index.php/FreeMind_release_process I have condidered Eric's ideas too. Currently only wiki admins are allowed to write on the page. Dimitry |
From: Dan P. <dan...@gm...> - 2007-06-27 06:26:15
|
Hi, I have moved the page to Release process and edited it a bit. --Dan On 6/27/07, Dimitry Polivaev <dpo...@gm...> wrote: > > Wiki Page with the Process Description and Smoke Test Description is > created here: > > http://freemind.sourceforge.net/wiki/index.php/FreeMind_release_process > > I have condidered Eric's ideas too. > > Currently only wiki admins are allowed to write on the page. > > Dimitry > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Freemind-developer mailing list > Fre...@li... > https://lists.sourceforge.net/lists/listinfo/freemind-developer > |
From: Dan P. <dan...@gm...> - 2007-06-27 06:30:11
|
Hello all, : Every developer is allowed to propose to convert any release candidate published at least one month ago to release, if no critical bugs has been reported for this release candidate. I cannot agree with this one. As long as I am the project director, there should only be the final release when I have personally approved of the release candidate in question. But we may leave the wording on the wiki anyway, as I will no longer be the project director after 0.9.0. Best regards, Dan |
From: Christian F. (GMX) <chr...@gm...> - 2007-06-26 20:31:48
|
Dear all, I've created a new Beta10 in the sourceforge release section, but it is hidden. Can anybody perform the "smoke tests"? Thanks, Chris |
From: Dimitry P. <dpo...@gm...> - 2007-06-26 21:57:19
|
Hi Chris, I have two reasons to ask you to recreate the beta10. First I have seen that a part of my recent bug fixes from yesterday considering the simplyHtml - Warnings was not committed until now. Second, I have added one urgently needed feature: now it is possible to define not only the background color of selected node but also its text color. After I had seen some attempts to use FreeMind as a presentation tool, the need of such feature has been evident. Further I use the system colors instead of FreeMind default colors for default window background color, default node text color, default selected node background and text colors. It would be really nice to have this changes included in the coming beta. Best regards, Dimitry |
From: Dan P. <dan...@gm...> - 2007-06-27 07:06:27
|
Hi all, I have extensively edited the Release process page, hopefully to your acceptance. I have above all made it highly structured, with only minor changes to the content, like adding that file mode should be tested. --Dan |
From: Dimitry P. <dpo...@gm...> - 2007-06-28 22:03:02
|
Hi all, > Hi all, I have extensively edited the Release process page, hopefully to your acceptance. I have moved definitions of Alpha, Beta and RC from development page to the release process page. I also like the changes made by Dan. Dimitry |