diff options
Diffstat (limited to 'Master/tlpkg/doc/releng.txt')
-rw-r--r-- | Master/tlpkg/doc/releng.txt | 88 |
1 files changed, 49 insertions, 39 deletions
diff --git a/Master/tlpkg/doc/releng.txt b/Master/tlpkg/doc/releng.txt index f9094442209..c066e1ed3af 100644 --- a/Master/tlpkg/doc/releng.txt +++ b/Master/tlpkg/doc/releng.txt @@ -39,18 +39,19 @@ diff new and old bindirs to see if there are interesting new programs: comm -3 /tmp/now /tmp/new >/tmp/cm 2. Then switch to pretest in cron.tl: -recreate=--recreate # just once! (to get catalogue updates) critical=--critical # push tlcritical pretest=--pretest # update tlpretest, not tlnet (if not frozen) net_frozen=false # update tlnet|tlpretest (per $pretest) (tlcritical will remain getting updated daily, even though it doesn't work with tlnet any more. That's ok. Or disable if you prefer.) +First build will happen below. 3. option adjustrepo 0 in tl-update-tlnet, since pretest shouldn't go to CTAN for updates. 4a. When starting trial builds (earlier): Build/source/{version.ac,texk/{kpathsea,ptexenc}/version.ac: no /dev +Also good to do other version/year updates as below. 4b. When starting pretest, basic updates for release year: Master/.mkisofsrc @@ -67,7 +68,7 @@ Master/texmf-dist/web2c/texmf.cnf # from Build/.../kpathsea Then commit new binaries with tl-update-bindir. 6. After committing, run tex \\end to check that mktexfmt works. Run -fmtutil-sys --all to check that all formats build, no config file +fmtutil --all to check that all formats build, no config file problems. Then, so things will get redone later as another check: rm -rf ~/.texlive`date +%Y` # the new one @@ -80,6 +81,34 @@ for p in *conv hbf2gf; do cp /home/ftp/mirror/rsync.tex.ac.uk/CTAN/language/chin 8. Now, ready to do first update of tlpretest: force_rebuild=true cron.tl +9. After first successful pretest build, do +recreate=--recreate # just once! to get catalogue updates. + +A. After tlnet freeze: + Run tl-update-linked-scripts for consistency. + In Master/tlpkg, update bundled Windows programs as needed: + dviout texworks tlgs tlperl tlpsv + In tlpkg/installer, update xz and wget if needed + Update readme-html.dir/readme.en.html if needed + run tlpkg/bin/htmltext to create readme-txt.dir/README.EN. + Update texcollection DVD text: + http://tug.org/texcollection/ + http://puszcza.gnu.org.ua/projects/texcollection/ + +A.0. Specifics for tlperl update: + cd $pg + find tlperl -type f | sort >/tmp/now + tar tf newperl.tgz | \grep -v /\$ | sort >/tmp/new + comm -13 /tmp/now /tmp/new >/tmp/c2 + comm -23 /tmp/now /tmp/new >/tmp/c1 + svn rm `cat /tmp/c1` + svn add --parents --no-auto-props `cat /tmp/c2` + svn status | fgrep \? # shouldn't be any + find tlperl -name \*.dll | xargs svn propset svn:executable 1 + find . -type d -empty | xargs svn rm # repeat until no output + svn commit when ready ... + + M. As work proceeds, update the doc: Update texlive-en.tex (+ .pdf, .html), tell tldoc to translate. Consider updates of core man pages in Build/source/texk/web2c/man. @@ -101,54 +130,35 @@ O. Really test during pretest (really! don't leave it for knuth!): .fmt's sharable across endian-different platforms (including luatex). interactive mf '\drawdot (50,50); showit;' % and from * prompt +P. Just before the final pretest (i.e., to-be-published) build: + option adjustrepo 1 in tl-update-tlnet, else install-tl-unx won't go to ctan + Update Master/source: + xz wget w32tex-src texlive*source mactexdoc install-tl-unx.tar.gz + Tell developers no more commits: akira, takuji, luigi, taco. + Put date into NEWS and ChangeLog files for above.. + +Q. After final build, to do total freeze: + In cron.tl, set *_frozen=true. + Probably also just disable the cron entry. + + When finalizing sources (any time in the new year, can be early, before initial builds in any case): -- update version numbers and years and copyright years in: +- update version numbers, years, and copyright years in: top level version.ac - dvipdfm-x:configure.ac ChangeLog - dvips: configure.ac ChangeLog NEWS dvips.c dvips.h afm2tfm.c dvips.texi - kpathsea: version.ac ChangeLog NEWS kpsewhich.c doc/kpathsea.texi texmf.cnf - ptexenc: version.ac ChangeLog + dvipdfm-x:configure.ac + dvips: configure.ac NEWS dvips.c dvips.h afm2tfm.c dvips.texi + kpathsea: version.ac NEWS kpsewhich.c doc/kpathsea.texi texmf.cnf + ptexenc: version.ac web2c: NEWS doc/web2c.texi ptexdir/ptex-base.ch,ptex_version.h texk/*/version.ac, libs/*/version.ac, utils/*/version.ac then reautoconf (6min), rebuild. install-tl, tlmgr.pl (copyright only) + check *.c *.h sources in above for needed copyright year updates too. run ~karl/bin/tlversions to see+compare engine/etc. versions - if new kpathsea file types (kpsewhich --help), update kpathsea.texi. - ask tldistro for patches. -Specifics for tlperl update: -cd $pg -find tlperl -type f | sort >/tmp/now -tar tf newperl.tgz | \grep -v /\$ | sort >/tmp/new -comm -13 /tmp/now /tmp/new >/tmp/c2 -comm -23 /tmp/now /tmp/new >/tmp/c1 -svn rm `cat /tmp/c1` -svn add --parents --no-auto-props `cat /tmp/c2` -svn status | fgrep \? # shouldn't be anyway -svn commit when ready ... - -After tlnet freeze: - run tl-update-linked-scripts for consistency. - in Master/tlpkg, update bundled Windows programs as needed: - dviout texworks tlgs tlperl tlpsv - update readme-html.dir/readme.en.html - run tlpkg/bin/htmltext to create readme-txt.dir/README.EN. - update texcollection DVD text: - http://tug.org/texcollection/ - http://puszcza.gnu.org.ua/projects/texcollection/ - eventually: akira, takuji, luigi, taco, laurens: no commits. - when even more stable: put date into NEWS and ChangeLog files. - -Just before the final pretest (i.e., to-be-published) build: - option adjustrepo 1 in tl-update-tlnet, else install-tl-unx won't go to ctan - update Master/source: - xz w32tex-src texlive*source mactexdoc install-tl-unx.tar.gz - -After final build, to do total freeze: - in cron.tl, set *_frozen=true. - probably also just disable the cron entry. - Making the big release: |