Sign in Join
Wiki copytemporary

Release 2.2.0: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: Release 2.2.0

OldNewLine
1+## Release organization
2+
3+1. Before releasing 2.2.0 there will be a public beta available for about two months. The version number of the beta will be 2.1.4 (aka 2.2.0-beta)
4+2. Before the beta there will be an 'internal' release, 2.1.2 to test the build-proces on all platforms. The release of 2.1.2 is the 'feature freeze' for version 2.2.0. In principle between version 2.1.2 and 2.1.4 only build-related patches are allowed.
5+3. Version 2.1.4 will be public and announced. From the release of 2.1.4 on, no new features will be added and no functionality will be removed. Only bug fixes are allowed.
6+4. About two months after version 2.1.4, there will be (at least one) release candidate for version 2.2.0.
7+5. Is the release canidates are satisfactory, 2.2.0 will be released
8+
9+Merging patches should be done by the developers who are 'responsible' for that part of the code.
10+
11+Timeline so far:
12+
13+1. Friday the 16th version 2.1.2 will be tagged from the fixes_2_2 branch.
14+2. If things go well, 2.1.4 will be tagged friday the 30th. If we are lucky, the release of 2.1.4 can be in the week thereafter.
15+
16+## Release procedure ([[Release Template]])
17+
18+Note that detailed information for some tasks can be found in [[Release engineering]]. These two pages should be eventually merged (or probably rather better interlinked) in the future.
19+
20+### Release preparations
21+
22+These things has to be done only once for each release-cycle.
23+
24+1. ~~Agree on deadline for changes~~
25+2. ~~New page in Wiki for release procedure with steps needed and their status (this page), at the beginning consisting of the beta (2.1.) release.~~ Later the final release sections has to be added.
26+3. Check tools
27+ 1. Check version of the above mentioned tools (GNU tools, helper DLLs, UPX, etc.), and decide whether it isn't time to update some of these tools
28+ 2. Repackage and upload additional tools where needed
29+4. Update whatsnew.txt (/install/doc/whatsnew.txt)
30+5. Update readme.txt (/install/doc/readme.txt)
31+6. Update /html/faq.fp and convert it to /install/doc/faq.htm and /install/doc/faq.txt
32+
33+### 2.1.2
34+
35+1. Create new page in Wiki with issue log for documentation of issues encountered in release candidates and their status
36+2. Update whatsnew.txt (/install/doc/whatsnew.txt)
37+3. Update readme.txt (/install/doc/readme.txt)
38+4. Update /html/faq.fp and convert it to /install/doc/faq.htm and /install/doc/faq.txt
39+5. ~~New [[Release engineering|directories]]~~
40+ 1. ~~Create new directories on ftp~~
41+ 2. ~~Copy the extra files (asld*.zip, gdb*.zip, make*.zip) from previous release (unless updated with new versions)~~
42+6. ~~Finish all source file updates~~
43+7. Convert /html/faq.fp to /install/doc/faq.htm and /install/doc/faq.txt
44+8. ~~[[Release engineering|Update version number]] to new release number~~
45+ 1. fpcbuild: All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles)
46+ 2. fpc: All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles)
47+ 3. ~~/install/doc/readme.txt~~
48+ 4. ~~/installer/install.dat (header)~~
49+ 5. ~~/installer/install.pas (installer version)~~
50+ 6. ~~/install/fpc.spec~~
51+ 7. /install/debian/changelog
52+ 8. /docs/fpc.sty (macro fpcversion)
53+ 9. ~~/compiler/version.pas~~
54+9. ~~[[Release engineering|Tag version]] 2.1.2~~
55+10. ~~Create and upload exported [[Release engineering|fpcbuild.zip]]~~
56+11. ~~Create and upload the documentation - Michael~~
57+ 1. ~~doc-pdf.zip~~
58+ 2. ~~doc-html.zip~~
59+ 3. ~~doc-htm.zip~~
60+ 4. ~~doc-txt.zip~~
61+ 5. ~~doc-ps.zip~~
62+ 6. ~~doc-pdf.tar.gz~~
63+ 7. ~~doc-html.tar.gz~~
64+ 8. ~~doc-ps.tar.gz~~
65+12. Create and upload source zips
66+ 1. short name version for binary packages
67+ 2. short name version for docs source
68+ 3. long name version for binary packages
69+ 4. long name version for docs source
70+13. Create and upload source tars
71+14. [[Release engineering|Build]] and upload the following releases:
72+ 1. native i386-go32v2 (basic zip, full zip)
73+ 2. ~~native i386-win32 (installer) (Florian)~~
74+ 3. ~~native i386-linux (tar, deb:mazen, rpm)~~
75+ 4. native i386-freebsd (tgz)
76+ 5. native i386-netware (zip)
77+ 6. native i386-netware libc (zip)
78+ 7. ~~native i386-os2 (basic zip, full zip)~~ (import libraries still broken, release not possible now)
79+ 8. native i386-mac os x + cross powerpc-mac os x (dmg, ~~.info for fink~~) (jonas~~/mischi~~)
80+ 9. native x86_64-linux (tar, deb, rpm)
81+ 10. ~~cross i386-win32 -\> arm-wince (Florian)~~
82+ 11. ~~cross i386-win32 -\> x86_64-win64 (Florian)~~
83+ 12. ~~native arm-linux (tar) (Florian)~~
84+ 13. native powerpc-mac os x (dmg, ~~.info for fink~~) (jonas~~/mischi~~)
85+ 14. ~~native powerpc-linux (tar) (tom_at_work)~~
86+ 15. ~~native powerpc64-linux (tar) (tom_at_work)~~
87+ 16. native powerpc-morphos (?)
88+ 17. ~~native sparc-linux (deb:mazen)~~
89+15. Run makereleasezips (combine small ZIP files together)
90+16. Consider announcing availability of the new RC in fpc-devel list and/or ask there for dedicated testers for individual platforms
91+17. [[Release engineering|Test]] the following releases:
92+ 1. native i386-go32v2
93+ 2. native i386-win32
94+ 3. native i386-linux
95+ 4. native i386-freebsd
96+ 5. native i386-netware
97+ 6. native i386-netware libc
98+ 7. native i386-os2
99+ 8. native i386-mac os x
100+ 9. native x86_64-linux
101+ 10. cross i386-win32 -\> arm-wince
102+ 11. cross i386-win32 -\> x86_64-win64
103+ 12. native arm-linux
104+ 13. native powerpc-mac os x
105+ 14. native powerpc-morphos (?)
106+ 15. native powerpc-linux
107+ 16. native powerpc64-linux
108+ 17. native sparc-linux (mazen)
109+
110+### 2.1.4 (2.2.0 beta)
111+
112+1. Section for new beta on release pages in Wiki
113+2. ~~Look at unmerged changes in fpc and fpcbuild since the last RC and consider/ask for necessity of their inclusion in the release~~
114+3. ~~Create new page in Wiki with issue log for documentation of [[Issues 2.1.4|issues]] encountered in release candidates and their status~~
115+4. ~~Update whatsnew.txt (/install/doc/whatsnew.txt)~~
116+5. ~~Update readme.txt (/install/doc/readme.txt)~~
117+6. ~~New [[Release engineering|directories]]~~
118+ 1. ~~Create new directories on ftp~~
119+ 2. ~~Copy the extra files (asld*.zip, gdb*.zip, make*.zip) from previous release (unless updated with new versions) <i>only done for go32v2 since there is no OS/2 release</i>~~
120+7. ~~Finish all source file updates~~
121+8. Convert /html/faq.fp to /install/doc/faq.htm and /install/doc/faq.txt
122+9. ~~[[Release engineering|Update version number]] to new release number~~
123+ 1. ~~fpcbuild: All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles)~~
124+ 2. ~~fpc: All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles)~~
125+ 3. ~~/install/doc/readme.txt~~
126+ 4. ~~/installer/install.dat (header)~~
127+ 5. ~~/installer/install.pas (installer version)~~
128+ 6. ~~/install/fpc.spec <i>not needed anymore, done by make rpm</i>~~
129+ 7. ~~/install/debian/changelog~~
130+ 8. ~~/docs/fpc.sty (macro fpcversion) <i>The documentation version number is already set to 2.2.0</i>~~
131+ 9. ~~/compiler/version.pas~~
132+10. ~~[[Release engineering|Tag version]] 2.1.4~~
133+11. ~~Create and upload exported [[Release engineering|fpcbuild.zip]]~~
134+12. ~~Create and upload the documentation - Michael~~
135+ 1. ~~doc-pdf.zip~~
136+ 2. ~~doc-html.zip~~
137+ 3. doc-htm.zip
138+ 4. ~~doc-txt.zip~~
139+ 5. ~~doc-ps.zip~~
140+ 6. ~~doc-pdf.tar.gz~~
141+ 7. ~~doc-html.tar.gz~~
142+ 8. ~~doc-ps.tar.gz~~
143+ 9. ~~doc-dvi.zip~~
144+13. Create and upload source zips
145+ 1. short name version for binary packages
146+ 2. short name version for docs source
147+ 3. long name version for binary packages
148+ 4. long name version for docs source
149+14. Create and upload source tars
150+15. [[Release engineering|Build]] and upload the following releases:
151+ 1. native i386-go32v2 (basic zip, full zip)
152+ 2. ~~native i386-win32 (installer) (Florian)~~
153+ 3. ~~native i386-linux (tar, deb:mazen, rpm)~~
154+ 4. ~~native i386-freebsd (tgz)~~
155+ 5. ~~native i386-netware (zip)<i>a netware version in not released</i>~~
156+ 6. ~~native i386-netware libc (zip)<i>a netware version in not released</i>~~
157+ 7. ~~native i386-os2 (basic zip, full zip) (import libraries still broken, release not possible now)~~
158+ 8. ~~native i386-mac os x + cross powerpc-mac os x (dmg, .info for fink) (jonas/mischi)~~
159+ 9. ~~native x86_64-linux (tar, deb, rpm~~)
160+ 10. ~~cross i386-win32 -\> arm-wince (Florian)~~
161+ 11. ~~cross i386-win32 -\> x86_64-win64 (Florian)~~
162+ 12. ~~native arm-linux (tar) (Florian)~~
163+ 13. ~~native powerpc-mac os x (dmg, .info for fink) (jonas/mischi)~~
164+ 14. ~~native powerpc-linux (tar) (tom_at_work)~~
165+ 15. ~~native powerpc64-linux (tar) (tom_at_work)~~
166+ 16. ~~native powerpc-morphos (?)<i>a morphos version in not released</i>~~
167+ 17. ~~native sparc-linux (deb:mazen)~~
168+16. Run makereleasezips (combine small ZIP files together)
169+17. Consider announcing availability of the new RC in fpc-devel list and/or ask there for dedicated testers for individual platforms
170+18. [[Release engineering|Test]] the following releases:
171+ 1. native i386-go32v2
172+ 2. native i386-win32
173+ 3. native i386-linux
174+ 4. native i386-freebsd
175+ 5. native i386-netware
176+ 6. native i386-netware libc
177+ 7. native i386-os2
178+ 8. native i386-mac os x
179+ 9. native x86_64-linux
180+ 10. cross i386-win32 -\> arm-wince
181+ 11. cross i386-win32 -\> x86_64-win64
182+ 12. native arm-linux
183+ 13. native powerpc-mac os x
184+ 14. native powerpc-morphos (?)
185+ 15. native powerpc-linux
186+ 16. native powerpc64-linux
187+ 17. native sparc-linux (mazen)
188+
189+### During the beta
190+
191+1. Check and update all .msg files
192+ 1. errore.msg - John?
193+ 2. errorct.msg
194+ 3. errord.msg, errordu.msg - Karl-Michael Schindler aka mischi
195+ 4. errorda.msg - Christian Iversen?
196+ 5. errores.msg
197+ 6. errorf.msg - Remi Dorlet and "Oro06"/"Olivier"?
198+ 7. errorfi.msg
199+ 8. errorhe.msg, errorheu.msg - Ido Kanner?
200+ 9. errorid.msg - Zaenal Mutaqin?
201+ 10. errorn.msg - Matthijs Willemstein?
202+ 11. errorpl.msg - Wojciech Malinowski?
203+ 12. errorpli.msg - Wojciech Malinowski?
204+ 13. errorptd.msg - Ari Ricardo Ody?
205+ 14. errorptw.msg - Ari Ricardo Ody?
206+ 15. errorr.msg - Michail Baikov?
207+ 16. errorrw.msg - Michail Baikov?
208+ 17. errorues.msg
209+
210+### 2.2.0
211+
212+1. ~~Section for the final build on release page in Wiki~~
213+2. ~~Look at unmerged changes in fpc and fpcbuild since the last RC and consider/ask for necessity of their inclusion in the release~~
214+3. New [[Release engineering|directories]]
215+ 1. Create new directories on ftp
216+ 2. Copy the extra files (asld*.zip, gdb*.zip, make*.zip) from previous release (unless updated with new versions) <i>only done for go32v2 since there is no OS/2 release</i>
217+4. ~~Finish all source file updates~~
218+5. ~~Convert /html/faq.adp to /install/doc/faq.htm and /install/doc/faq.txt~~
219+6. ~~[[Release engineering|Update version number]] to new release number~~
220+ 1. ~~fpcbuild: All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles)~~
221+ 2. ~~fpc: All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles)~~
222+ 3. ~~/install/doc/readme.txt~~
223+ 4. ~~/installer/install.dat (header)~~
224+ 5. ~~/installer/install.pas (installer version)~~
225+ 6. ~~/install/fpc.spec <i>not needed anymore, done by make rpm</i>~~
226+ 7. ~~/install/debian/changelog~~
227+ 8. ~~/docs/fpc.sty (macro fpcversion) <i>The documentation version number is already set to 2.2.0</i>~~
228+ 9. ~~/compiler/version.pas~~
229+7. ~~[[Release engineering|Tag version]] 2.2.0~~
230+8. ~~Create and upload exported [[Release engineering|fpcbuild.zip]]~~
231+9. Create and upload the documentation - Michael
232+ 1. ~~doc-pdf.zip~~
233+ 2. ~~doc-html.zip~~
234+ 3. doc-htm.zip
235+ 4. ~~doc-txt.zip~~
236+ 5. ~~doc-ps.zip~~
237+ 6. ~~doc-pdf.tar.gz~~
238+ 7. ~~doc-html.tar.gz~~
239+ 8. ~~doc-ps.tar.gz~~
240+ 9. ~~doc-dvi.zip~~
241+10. ~~Create and upload source zips~~
242+ 1. short name version for binary packages
243+ 2. short name version for docs source
244+ 3. long name version for binary packages
245+ 4. long name version for docs source
246+11. ~~Create and upload source tars~~
247+12. [[Release engineering|Build]] and upload the following releases:
248+ 1. native i386-go32v2 (basic zip, full zip)
249+ 2. ~~native i386-win32 (installer)~~
250+ 3. ~~native i386-linux (tar, deb:mazen, rpm)~~
251+ 4. ~~native i386-freebsd (tar in Marco's homedir on Idefix)~~
252+ 5. ~~cross i386-netware (zip)<i>a netware version in not released</i>~~
253+ 6. ~~cross i386-netware libc (zip)<i>a netwlibc version in not released</i>~~
254+ 7. ~~native i386-os2 (basic zip, full zip) <i>(import libraries still broken, release not possible now)</i>~~
255+ 8. ~~native i386-mac os x + cross powerpc-mac os x (dmg, .info for fink)~~
256+ 9. ~~native x86_64-linux (tar,~~ deb~~, rpm)~~
257+ 10. cross i386-win32 -\> arm-wince
258+ 11. cross i386-win32 -\> x86_64-win64
259+ 12. native arm-linux (tar)
260+ 13. native powerpc-mac os x (~~dmg~~, .info for fink)
261+ 14. ~~native powerpc-linux (tar)~~
262+ 15. ~~native powerpc64-linux (tar)~~
263+ 16. ~~native powerpc-morphos (?)<i>a morphos version in not released</i>~~
264+ 17. ~~native sparc-linux (deb:mazen)~~
265+13. Run makereleasezips (combine small ZIP files together)
266+14. Consider announcing availability of the new RC in fpc-devel list and/or ask there for dedicated testers for individual platforms
267+15. [[Release engineering|Test]] the following releases:
268+ 1. native i386-go32v2
269+ 2. native i386-win32
270+ 3. native i386-linux
271+ 4. native i386-freebsd
272+ 5. native i386-netware
273+ 6. native i386-netware libc
274+ 7. native i386-os2
275+ 8. native i386-mac os x
276+ 9. native x86_64-linux
277+ 10. cross i386-win32 -\> arm-wince
278+ 11. cross i386-win32 -\> x86_64-win64
279+ 12. native arm-linux
280+ 13. ~~native powerpc-mac os x~~
281+ 14. native powerpc-morphos (?)
282+ 15. native powerpc-linux
283+ 16. native powerpc64-linux
284+ 17. native sparc-linux
285+
286+### Going public of the beta
287+
288+1. Make new version numbers (release plus next odd patch number for continuing fixes) available in bug tracker
289+2. Make new version numbers (release plus next odd patch number for continuing fixes) available in testsuite db
290+3. Make new files on FTP available to wide public
291+ 1. <i>update symlinks</i> (no symlinks any more?)
292+ 2. move the old version to the olddist/\<version\>
293+ 3. upload files to SourceForge.net and add them to new "releases" for individual platforms
294+ 4. make new "releases" on SourceForge.net accessible for users (change status to "active")
295+ 5. Allow automated notifications on individual SourceForge.net file release pages to be sent
296+4. Submit darwin packages to fink
297+5. Update WWW pages
298+ 1. /html/news.fp
299+ 2. /html/down/* (links to all individual files & file sizes)
300+ 3. /html/download.fp (version number and list of platforms)
301+ 4. /html/fpc.fp
302+ 5. /html/faq.fp (things like "the latest version is ...")
303+6. ~~Create new fixes branch (only after a major release - ?.?.0)~~ (already done at the beginning of the release cycle)
304+ 1. ~~Update version number in the trunk branch (only after a major release - ?.?.0)~~ (already done at the beginning of the release cycle)
305+ 1. ~~/compiler/version.pas~~ (already done at the beginning of the release cycle)
306+ 2. ~~All Makefile.fpc files containing "version=..." (plus regenerate the corresponding Makefiles)~~ (already done at the beginning of the release cycle)
307+7. Update version number in the fixes branch (increase the patch to next odd number)
308+ 1. /compiler/version.pas
309+ 2. All Makefile.fpc files containing "version=..." (plus regenerate the corresponding Makefiles)
310+8. Check the WWW pages
311+ 1. make sure <http://www.freepascal.org> contains the new version already
312+ 2. read news.html
313+ 3. read fpc.html
314+ 4. read download.html and check links to individual files
315+9. Send announcement to our mailing lists
316+10. Post announcement on the community site
317+11. Post announcement on Sourceforge.net (only "Project Administrators" may do it)
318+12. Make sure that all unfixed issues encountered during RC testing and listed on dedicated page in Wiki are documented in bug tracker too
319+13. Revise / update /html/future.fp after major versions (?.?.0)
320+
321+---
322+*From the Free Pascal wiki, page "Release 2.2.0", as it stood on 2012-08-01 after a change by BigChimp, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
323+Category: FPC release

Back to history