Release 2.4.0: what changed
Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.
Title: Release 2.4.0
| Old | New | Line | |
|---|---|---|---|
| 1 | + | ### Release Issues | |
| 2 | + | ||
| 3 | + | The issues page is [[Issues 2.4.0]] | |
| 4 | + | ||
| 5 | + | ### Release preparations | |
| 6 | + | ||
| 7 | + | 1. Agree on deadline for changes and date for release candidate building | |
| 8 | + | 1. Contact platform maintainers who are not subscribed to the core list and notify them about upcoming release and ask them for their inputs into the release schedule | |
| 9 | + | 1. <s>Legolas aka Francesco Lombardi</s> - GBA/NDS | |
| 10 | + | 2. <s>Sekel aka Felipe Monteiro de Carvalho</s> - Symbian | |
| 11 | + | 3. <s>Olivier Coursiere</s> - Haiku | |
| 12 | + | 4. <s>Karl-Michael Schindler</s> - Mac OS X - fink | |
| 13 | + | 2. #FPC-2.4.0rc1 deadline: | |
| 14 | + | 3. #FPC-2.4.0 deadline: | |
| 15 | + | 2. See also [[2.4.0 Release preparation]] | |
| 16 | + | 3. Check the [[Detailed 2.4.0 Todo]] list for the particular release (should be linked from [[To Do lists]]) for status of individual todo items | |
| 17 | + | 4. Check status of [bugs assigned to that particular release](http://bugs.freepascal.org/roadmap_page.php) in the bugtracker | |
| 18 | + | 5. <s> New page in Wiki named "Release_X.Y.Z" for release procedure with steps needed and their status (based on [[Release Template]]), at the beginning consisting of (at least) RC1 and final release sections</s> | |
| 19 | + | 6. <s>Create new page in Wiki with issue log for documentation of issues encountered in release candidates and their status ("Issues_X.Y.Z" based on [[Issues Template]])</s> | |
| 20 | + | 7. <s> Move merged changes from [[User Changes Trunk]] to the appropriate [[User Changes 2.4.0]] page, possibly adding changes that were merged but not added to the trunk page </s> | |
| 21 | + | 8. Ask platform maintainers and [[External maintainers|external maintainers]] about including their platforms/builds in the new release | |
| 22 | + | 9. Check and update all .msg files | |
| 23 | + | 1. errore.msg | |
| 24 | + | 2. <s>errord.msg</s> | |
| 25 | + | 3. errorf.msg | |
| 26 | + | 4. errorn.msg | |
| 27 | + | 5. errorr.msg | |
| 28 | + | 6. errorrw.msg | |
| 29 | + | 7. errorues.msg | |
| 30 | + | 8. errores.msg | |
| 31 | + | 9. errorct.msg | |
| 32 | + | 10. errorhe.msg | |
| 33 | + | 11. errorheu.msg | |
| 34 | + | 12. errorptd.msg | |
| 35 | + | 13. errorptw.msg | |
| 36 | + | 14. errorpli.msg | |
| 37 | + | 15. errorpl.msg | |
| 38 | + | 16. errorid.msg | |
| 39 | + | 10. Check tools | |
| 40 | + | 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 | |
| 41 | + | 2. Repackage and upload additional tools where needed | |
| 42 | + | 11. Update whatsnew.txt (/install/doc/whatsnew.txt) | |
| 43 | + | 12. Find testers | |
| 44 | + | 1. <s>Create a [[Testers 2.4.0|testers]] page in Wiki (based on [[Testers Template]])</s> | |
| 45 | + | 2. Ask in fpc-devel list for volunteers interested in testing the individual platforms / builds and list them on the newly created page (they can add themselves) | |
| 46 | + | 13. Update path and file names in /install/macosx/*.info for the new version | |
| 47 | + | 14. Update path and file names in /install/fpc.ist for the new version | |
| 48 | + | 15. Finish all source file updates | |
| 49 | + | 16. <s>convert /html/faq.fp to /install/doc/faq.htm and /install/doc/faq.txt ([[Release engineering|more info]])</s> | |
| 50 | + | ||
| 51 | + | ### RC1 | |
| 52 | + | ||
| 53 | + | 1. New directories ([[Release engineering|more info]]) | |
| 54 | + | 1. <s>Create new directories on ftp (/pub/fpc/beta/2.4.0-rcN or /pub/fpc/dist/2.4.0 and cpu-os under that) </s> | |
| 55 | + | 2. Copy the extra files (asld*.zip, gdb*.zip, make*.zip) from previous release (unless updated with new versions) | |
| 56 | + | 2. <s>Add new section for the upcoming build in /install/debian/changelog ([[Release engineering|more info]])</s> | |
| 57 | + | 3. <s>Create new branch in SVN (release_X_Y_Z_rcN or release_X_Y_Z) ([[Release engineering|more info]])</s> | |
| 58 | + | 4. <s>Update version number in release branch (and, if necessary also in main branch (trunk or fixes)) ([[Release engineering|more info]]) </s> | |
| 59 | + | 1. <s>/compiler/version.pas</s> | |
| 60 | + | 2. <s>/install/doc/readme.txt</s> | |
| 61 | + | 3. <s>/install/doc/whatsnew.txt</s> | |
| 62 | + | 4. <s>/installer/install.dat (header)</s> | |
| 63 | + | 5. <s>/installer/install.pas (installer version)</s> | |
| 64 | + | 6. <s>/docs/fpc.sty (macro fpcversion)</s> | |
| 65 | + | 7. <s>All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles) ([[Release engineering|more info]])</s> | |
| 66 | + | 8. <s> All version-numbers in fpmake.pp files ([[Release engineering|more info]])</s> | |
| 67 | + | 5. <s>Create and upload exported fpcbuild</s> ([[Release engineering|more info]]) | |
| 68 | + | 1. fpcbuild-%{version}.zip | |
| 69 | + | 2. fpcbuild-%{version}.tar.gz | |
| 70 | + | 3. fpc-%{version}-source.zip | |
| 71 | + | 4. fpc-%{version}-source.tar.gz | |
| 72 | + | 6. Create and upload the documentation ([[Release engineering|more info]]) | |
| 73 | + | 1. doc-pdf.zip | |
| 74 | + | 2. doc-html.zip | |
| 75 | + | 3. <i>doc-htm.zip</i> (not included) | |
| 76 | + | 4. doc-txt.zip | |
| 77 | + | 5. doc-ps.zip | |
| 78 | + | 6. doc-pdf.tar.gz | |
| 79 | + | 7. doc-html.tar.gz | |
| 80 | + | 8. doc-ps.tar.gz | |
| 81 | + | 7. Create and upload source zips ([[Release engineering|more info]]) | |
| 82 | + | 1. <s>short name version for binary packages</s> (done) | |
| 83 | + | 2. docs source (including link for short name version) | |
| 84 | + | 3. long name version for binary packages | |
| 85 | + | 8. Create and upload binary releases (place the bame of the person who aggreed to build a release behind the name of the target below) | |
| 86 | + | - <s>i386-go32v2/basic</s> zip (just binaries) | |
| 87 | + | - <s>i386-go32v2/full zip</s> (including docs and sources) | |
| 88 | + | - <s>i386-os2/basic zip (just binaries)</s> (done) | |
| 89 | + | - <s>i386-os2/full zip (including docs and sources)</s> (done) | |
| 90 | + | - <s>i386-win32/exe</s> | |
| 91 | + | - <s>x86_64-win64/exe</s> | |
| 92 | + | - <s>arm-wince/exe</s> (cross-release) | |
| 93 | + | - arm-symbian (cross-release) | |
| 94 | + | - i386-symbian (cross-release) | |
| 95 | + | - <s>arm-gba (cross-release)</s> | |
| 96 | + | - <s>arm-nds (cross-release)</s> | |
| 97 | + | - <s>i386-freebsd/tgz</s> | |
| 98 | + | - <s>i386-linux/tar</s> ([[Release engineering|more info]]) | |
| 99 | + | - <s>i386-linux/deb</s> ([[Release engineering|more info]]) | |
| 100 | + | - <s>i386-linux/rpm</s> ([[Release engineering|more info]]) | |
| 101 | + | - <s>x86_64-linux/tar</s> ([[Release engineering|more info]]) | |
| 102 | + | - x86_64-linux/deb ([[Release engineering|more info]]) | |
| 103 | + | - <s>x86_64-linux/rpm</s> ([[Release engineering|more info]]) | |
| 104 | + | - <s>powerpc-linux/tar</s> ([[Release engineering|more info]]) | |
| 105 | + | - <s>powerpc64-linux/tar</s> ([[Release engineering|more info]]) | |
| 106 | + | - <s>powerpc32-macosx/dmg</s> (done) | |
| 107 | + | - <s>powerpc32-\>powerpc64-macosx/dmg</s> (done) | |
| 108 | + | - <s>i386-macosx/dmg</s> (done) | |
| 109 | + | - <s>i386-\>x86_64-macosx/dmg</s> (done) | |
| 110 | + | - <s>i386-\>ARM-macosx/dmg</s> (done) | |
| 111 | + | - <s>i386-macosx/.info for fink</s> (done) | |
| 112 | + | - powerpc-macos | |
| 113 | + | - sparc-linux/tar ([[Release engineering|more info]]) | |
| 114 | + | - <s>sparc-linux/deb</s> ([[Release engineering|more info]]) | |
| 115 | + | - arm-linux/tar (cross-release) | |
| 116 | + | - powerpc-morphos | |
| 117 | + | - powerpc-amiga | |
| 118 | + | - i386-netware | |
| 119 | + | - i386-netwlibc | |
| 120 | + | - <s>i386-haiku</s> | |
| 121 | + | - sparc-sunos/tar | |
| 122 | + | 9. Get it tested | |
| 123 | + | 1. Ask dedicated testers for testing their platforms | |
| 124 | + | 2. Consider announcing availability of the new RC in fpc-devel list | |
| 125 | + | 10. Keep track of issues [[Issues 2.4.0|here]] and testing [[Testers 2.4.0|here]] in the wiki. | |
| 126 | + | ||
| 127 | + | ### RC2 | |
| 128 | + | ||
| 129 | + | 1. Section for new RC on release pages in Wiki | |
| 130 | + | 1. Release procedure | |
| 131 | + | 2. Issue log | |
| 132 | + | 2. Look at unmerged changes in fpc and fpcbuild since the last RC and consider/ask for necessity of their inclusion in the release | |
| 133 | + | ||
| 134 | + | ### Final release | |
| 135 | + | ||
| 136 | + | 1. Look at unmerged changes in fpc and fpcbuild since the last RC and consider/ask for necessity of their inclusion in the release (only cosmetic changes should be included, otherwise a new RC is needed instead of final release) | |
| 137 | + | ||
| 138 | + | 1. New directories ([[Release engineering|more info]]) | |
| 139 | + | 1. <s>Create new directories on ftp (/pub/fpc/beta/2.4.0-rcN or /pub/fpc/dist/2.4.0 and cpu-os under that) </s> | |
| 140 | + | 2. Copy the extra files (asld*.zip, gdb*.zip, make*.zip) from previous release (unless updated with new versions) | |
| 141 | + | 2. Add new section for the upcoming build in /install/debian/changelog ([[Release engineering|more info]]) | |
| 142 | + | 3. <s>Create new branch in SVN (release_X_Y_Z_rcN or release_X_Y_Z) ([[Release engineering|more info]])</s> | |
| 143 | + | 4. <s>Update version number in release branch (and, if necessary also in main branch (trunk or fixes)) ([[Release engineering|more info]]) </s> | |
| 144 | + | 1. <s>/compiler/version.pas</s> | |
| 145 | + | 2. <s>/install/doc/readme.txt</s> | |
| 146 | + | 3. <s>/install/doc/whatsnew.txt</s> | |
| 147 | + | 4. <s>/installer/install.dat (header)</s> | |
| 148 | + | 5. <s>/installer/install.pas (installer version)</s> | |
| 149 | + | 6. <s>/docs/fpc.sty (macro fpcversion)</s> | |
| 150 | + | 7. <s>All Makefile.fpc files containing version=... (plus regenerate all corresponding Makefiles) ([[Release engineering|more info]])</s> | |
| 151 | + | 8. <s> All version-numbers in fpmake.pp files ([[Release engineering|more info]])</s> | |
| 152 | + | 5. Create and upload exported fpcbuild ([[Release engineering|more info]]) | |
| 153 | + | 1. fpcbuild-%{version}.zip | |
| 154 | + | 2. fpcbuild-%{version}.tar.gz | |
| 155 | + | 3. fpc-%{version}-source.zip | |
| 156 | + | 4. fpc-%{version}-source.tar.gz | |
| 157 | + | 6. Create and upload the documentation ([[Release engineering|more info]]) | |
| 158 | + | 1. doc-pdf.zip | |
| 159 | + | 2. doc-html.zip | |
| 160 | + | 3. <i>doc-htm.zip</i> (not included) | |
| 161 | + | 4. doc-txt.zip | |
| 162 | + | 5. doc-ps.zip | |
| 163 | + | 6. doc-pdf.tar.gz | |
| 164 | + | 7. doc-html.tar.gz | |
| 165 | + | 8. doc-ps.tar.gz | |
| 166 | + | 7. Create and upload source zips ([[Release engineering|more info]]) | |
| 167 | + | 1. short name version for binary packages | |
| 168 | + | 2. docs source (including link for short name version) | |
| 169 | + | 3. long name version for binary packages | |
| 170 | + | 8. Create and upload binary releases (place the bame of the person who aggreed to build a release behind the name of the target below) | |
| 171 | + | - i386-go32v2/basic zip (just binaries) | |
| 172 | + | - i386-go32v2/full zip (including docs and sources) | |
| 173 | + | - i386-os2/basic zip (just binaries) (done) | |
| 174 | + | - i386-os2/full zip (including docs and sources) (done) | |
| 175 | + | - i386-win32/exe | |
| 176 | + | - x86_64-win64/exe | |
| 177 | + | - arm-wince/exe (cross-release) | |
| 178 | + | - arm-symbian (cross-release) | |
| 179 | + | - i386-symbian (cross-release) | |
| 180 | + | - <s>arm-gba (cross-release)</s> | |
| 181 | + | - <s>arm-nds (cross-release)</s> | |
| 182 | + | - i386-freebsd/tgz | |
| 183 | + | - i386-linux/tar ([[Release engineering|more info]]) | |
| 184 | + | - i386-linux/deb ([[Release engineering|more info]]) | |
| 185 | + | - i386-linux/rpm ([[Release engineering|more info]]) | |
| 186 | + | - x86_64-linux/tar ([[Release engineering|more info]]) | |
| 187 | + | - x86_64-linux/deb ([[Release engineering|more info]]) | |
| 188 | + | - x86_64-linux/rpm ([[Release engineering|more info]]) | |
| 189 | + | - powerpc-linux/tar ([[Release engineering|more info]]) | |
| 190 | + | - powerpc64-linux/tar ([[Release engineering|more info]]) | |
| 191 | + | - <s>powerpc32-macosx/dmg</s> | |
| 192 | + | - <s>powerpc32-\>powerpc64-macosx/dmg</s> | |
| 193 | + | - <s>i386-macosx/dmg</s> | |
| 194 | + | - <s>i386-\>x86_64-macosx/dmg</s> | |
| 195 | + | - <s>i386-\>ARM-macosx/dmg</s> | |
| 196 | + | - i386-macosx/.info for fink | |
| 197 | + | - powerpc-macos | |
| 198 | + | - sparc-linux/tar ([[Release engineering|more info]]) | |
| 199 | + | - sparc-linux/deb ([[Release engineering|more info]]) | |
| 200 | + | - arm-linux/tar (cross-release) | |
| 201 | + | - powerpc-morphos | |
| 202 | + | - powerpc-amiga | |
| 203 | + | - i386-netware | |
| 204 | + | - i386-netwlibc | |
| 205 | + | - i386-haiku | |
| 206 | + | - sparc-sunos/tar | |
| 207 | + | 9. Get it tested | |
| 208 | + | 1. Ask dedicated testers for testing their platforms | |
| 209 | + | 10. Keep track of issues [[Issues 2.4.0|here]] and testing [[Testers 2.4.0|here]] in the wiki. | |
| 210 | + | ||
| 211 | + | ### Going public | |
| 212 | + | ||
| 213 | + | 1. Make new version numbers (release plus next odd patch number for continuing fixes) available in bug tracker | |
| 214 | + | 2. Make new version numbers (release plus next odd patch number for continuing fixes) available in testsuite db | |
| 215 | + | 3. Make new files on FTP available to wide public | |
| 216 | + | 1. <i>update symlinks</i> (no symlinks any more?) | |
| 217 | + | 2. move the old version to the olddist/\<version\> (not done anymore!) | |
| 218 | + | 3. upload files to SourceForge.net and add them to new "releases" for individual platforms | |
| 219 | + | 4. make new "releases" on SourceForge.net accessible for users (change status to "active") | |
| 220 | + | 5. Allow automated notifications on individual SourceForge.net file release pages to be sent | |
| 221 | + | 4. Submit darwin packages to fink | |
| 222 | + | 5. Update WWW pages | |
| 223 | + | 1. /html/news.fp | |
| 224 | + | 2. /html/down/* (links to all individual files & file sizes) | |
| 225 | + | 3. /html/download.fp (version number and list of platforms) | |
| 226 | + | 4. /html/fpc.fp | |
| 227 | + | 5. /html/faq.fp (things like "the latest version is ...") | |
| 228 | + | 6. <s>Create new fixes branch (only after a major release - 2.4.0)</s> | |
| 229 | + | 1. <s>Update version number in the trunk branch (only after a major release - ?.?.0)</s> | |
| 230 | + | 1. /compiler/version.pas | |
| 231 | + | 2. All Makefile.fpc files containing "version=..." (plus regenerate the corresponding Makefiles) | |
| 232 | + | 7. Update version number in the fixes branch (increase the patch to next odd number) | |
| 233 | + | 1. /compiler/version.pas | |
| 234 | + | 2. all Makefile.fpc files containing "version=..." (plus regenerate the corresponding Makefiles) | |
| 235 | + | 8. Check the WWW pages | |
| 236 | + | 1. make sure <http://www.freepascal.org> contains the new version already | |
| 237 | + | 2. read news.html | |
| 238 | + | 3. read fpc.html | |
| 239 | + | 4. read download.html and check links to individual files | |
| 240 | + | 9. Send announcement to our mailing lists | |
| 241 | + | 10. Post announcement on the community site | |
| 242 | + | 11. Post announcement on Sourceforge.net (only "Project Administrators" may do it) | |
| 243 | + | 12. Make sure that all unfixed issues encountered during RC testing and listed on dedicated page in Wiki are documented in bug tracker too | |
| 244 | + | 13. Revise / update /html/future.fp after major versions (2.4.0) | |
| 245 | + | 14. Remove unneeded RC builds from FTP | |
| 246 | + | ||
| 247 | + | --- | |
| 248 | + | *From the Free Pascal wiki, page "Release 2.4.0", as it stood on 2020-09-18 after a change by Trev, 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).* | |
| 249 | + | Category: FPC release |
