texlive[57875] trunk: 2021 pretest setup

commits+karl at tug.org commits+karl at tug.org
Wed Feb 24 19:27:49 CET 2021


Revision: 57875
          http://tug.org/svn/texlive?view=revision&revision=57875
Author:   karl
Date:     2021-02-24 19:27:49 +0100 (Wed, 24 Feb 2021)
Log Message:
-----------
2021 pretest setup

Modified Paths:
--------------
    trunk/Build/source/README
    trunk/Master/.mkisofsrc
    trunk/Master/release-texlive.txt
    trunk/Master/texmf-dist/web2c/texmf.cnf
    trunk/Master/texmf-dist/web2c/texmfcnf.lua
    trunk/Master/tlpkg/TeXLive/TLConfig.pm
    trunk/Master/tlpkg/TeXLive/TLUtils.pm
    trunk/Master/tlpkg/bin/tl-update-images
    trunk/Master/tlpkg/bin/tl-update-messages
    trunk/Master/tlpkg/bin/tl-update-tlnet
    trunk/Master/tlpkg/doc/graphics/texlive-installer-graphics-horiz.png
    trunk/Master/tlpkg/doc/graphics/texlive-installer-graphics-vert.png
    trunk/Master/tlpkg/doc/graphics/texlive-installer-graphics.pdf
    trunk/Master/tlpkg/doc/releng.txt
    trunk/Master/tlpkg/installer/texlive.png

Added Paths:
-----------
    trunk/Master/tlpkg/archive/tlnet-by-hand.txt

Modified: trunk/Build/source/README
===================================================================
--- trunk/Build/source/README	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Build/source/README	2021-02-24 18:27:49 UTC (rev 57875)
@@ -43,12 +43,9 @@
   Except that we take Nelson's asy build.
 
 i386-freebsd, amd64-freebsd:
-  http://anthesphoria.net/FreeBSD/TeXLive-2018/ has details for 2018.
-  2019 and forward built on contextgarden (see below).
-  In 2020: FreeBSD 12.1-RELEASE-p1
-  (e.g.,
-https://build.contextgarden.net/#/builders/56/builds/141/steps/2/logs/build _info
-  ) Except that we take Nelson's asy build.
+  Built on contextgarden, see below.
+  FreeBSD 11.4
+  Except that we take Nelson's asy build.
 
 i386-linux: see travis below.
 

Modified: trunk/Master/.mkisofsrc
===================================================================
--- trunk/Master/.mkisofsrc	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/.mkisofsrc	2021-02-24 18:27:49 UTC (rev 57875)
@@ -1,4 +1,4 @@
 APPI=Complete TeX system
 COPY=LICENSE.TL
 PUBL=TeX Live <tex-live at tug.org>
-VOLI=TeXLive2020
+VOLI=TeXLive2021

Modified: trunk/Master/release-texlive.txt
===================================================================
--- trunk/Master/release-texlive.txt	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/release-texlive.txt	2021-02-24 18:27:49 UTC (rev 57875)
@@ -1,4 +1,4 @@
-TeX Live (https://tug.org/texlive) version 2020
+TeX Live (https://tug.org/texlive) version 2021
 
 This file is public domain.  It is read by install-tl --version,
 tlmgr --version, and texconfig conf, and a final line appended with

Modified: trunk/Master/texmf-dist/web2c/texmf.cnf
===================================================================
--- trunk/Master/texmf-dist/web2c/texmf.cnf	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/texmf-dist/web2c/texmf.cnf	2021-02-24 18:27:49 UTC (rev 57875)
@@ -4,8 +4,8 @@
 % If you modify this original file, YOUR CHANGES WILL BE LOST when it is
 % updated.  Instead, put your changes -- and only your changes, not an
 % entire copy! -- in ../../texmf.cnf.  That is, if this file is
-% installed in /some/path/to/texlive/2020/texmf-dist/web2c/texmf.cnf,
-% add your custom settings to /some/path/to/texlive/2020/texmf.cnf.
+% installed in /some/path/to/texlive/2021/texmf-dist/web2c/texmf.cnf,
+% put your custom settings in /some/path/to/texlive/2021/texmf.cnf.
 % (Below, we use YYYY in place of the specific year.)
 % 
 % What follows is a super-summary of what this .cnf file can
@@ -84,10 +84,10 @@
 TEXMFHOME = ~/texmf
 
 % TEXMFVAR, where texconfig/updmap/fmtutil store cached runtime data.
-TEXMFVAR = ~/.texlive2020/texmf-var
+TEXMFVAR = ~/.texlive2021/texmf-var
 
 % TEXMFCONFIG, where texconfig/updmap/fmtutil store configuration data.
-TEXMFCONFIG = ~/.texlive2020/texmf-config
+TEXMFCONFIG = ~/.texlive2021/texmf-config
 
 % This is the value manipulated by tlmgr's auxtrees subcommand in the
 % root texmf.cnf. Kpathsea warns about a literally empty string for a
@@ -764,9 +764,7 @@
 % 
 Part 3: Array and other sizes for TeX, Metafont, etc.
 %
 % If you want to change some of these sizes only for a certain TeX
-% variant, the usual dot notation works, e.g.,
-% main_memory.hugetex = 20000000
-%
+% variant, the usual dot notation works, as shown below for ConTeXt.
 % If a change here appears to be ignored, try redumping the format file.
 
 % Memory. Must be less than 8,000,000 total.
@@ -809,8 +807,10 @@
 string_vacancies = 90000
 % Maximum number of strings.
 max_strings = 500000
-% min pool space left after loading .fmt
+% Min pool space left after loading .fmt.
 pool_free = 47500
+% Ensure at least this many strings are free after loading .fmt.
+strings_free = 100
 
 % Buffer size.  TeX uses the buffer to contain input lines, but macro
 % expansion works by writing material into the buffer and reparsing the
@@ -825,8 +825,9 @@
 %
 trie_size = 1000000
 
-hyph_size = 8191        % prime number of hyphenation exceptions, >610, <32767.
+hyph_size = 8191        % prime number of hyphenation exceptions, >610, <65535
                         % http://primes.utm.edu/curios/page.php/8191.html
+                        % dynamically increased as necessary, so not important.
 nest_size = 500         % simultaneous semantic levels (e.g., groups)
 max_in_open = 15        % simultaneous input files and error insertions, 
                         % also applies to MetaPost
@@ -834,11 +835,20 @@
 save_size  = 200000     % for saving values outside current group
 stack_size = 5000       % simultaneous input sources
 
+% Limit on recursive expansion calls so TeX has a chance to quit nicely
+% before stack space runs out. The default is 10000. Normally there is no
+% reason to change it. The web2c manual has a bit more about this.
+%expand_depth = 10000
+
 % These are Omega-specific.
 ocp_buf_size = 500000   % character buffers for ocp filters.
 ocp_stack_size = 10000  % stacks for ocp computations.
 ocp_list_size = 1000    % control for multiple ocps.
 
+% For pdftex and luatex: default resolution for bitmaps;
+% commonly set via \pdfpkresolution when needed to be changed.
+%pk_dpi = 72
+
 % These work best if they are the same as the I/O buffer size, but it
 % doesn't matter much.  Must be a multiple of 8.
 dvi_buf_size = 16384 % TeX

Modified: trunk/Master/texmf-dist/web2c/texmfcnf.lua
===================================================================
--- trunk/Master/texmf-dist/web2c/texmfcnf.lua	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/texmf-dist/web2c/texmfcnf.lua	2021-02-24 18:27:49 UTC (rev 57875)
@@ -45,13 +45,13 @@
             -- only used for FONTCONFIG_PATH & TEXMFCACHE in TeX Live
 
             TEXMFSYSVAR     = "selfautoparent:texmf-var",
-            TEXMFVAR        = "home:.texlive2020/texmf-var",
+            TEXMFVAR        = "home:.texlive2021/texmf-var",
 
             -- We have only one cache path but there can be more. The first writable one
             -- will be chosen but there can be more readable paths.
 
             TEXMFCACHE      = "$TEXMFSYSVAR;$TEXMFVAR",
-            TEXMFCONFIG     = "home:.texlive2020/texmf-config",
+            TEXMFCONFIG     = "home:.texlive2021/texmf-config",
 
             -- I don't like this texmf under home and texmf-home would make more
             -- sense. One never knows what installers put under texmf anywhere and

Modified: trunk/Master/tlpkg/TeXLive/TLConfig.pm
===================================================================
--- trunk/Master/tlpkg/TeXLive/TLConfig.pm	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/tlpkg/TeXLive/TLConfig.pm	2021-02-24 18:27:49 UTC (rev 57875)
@@ -1,6 +1,6 @@
 # $Id$
 # TeXLive::TLConfig.pm - module exporting configuration values
-# Copyright 2007-2020 Norbert Preining
+# Copyright 2007-2021 Norbert Preining
 # This file is licensed under the GNU General Public License version 2
 # or any later version.
 
@@ -59,7 +59,7 @@
 
 # the year of our release, will be used in the location of the
 # network packages, and in menu names, and other places.
-$ReleaseYear = 2020;
+$ReleaseYear = 2021;
 
 # users can upgrade from this year to the current year; might be the
 # same as the release year, or any number of releases earlier.

Modified: trunk/Master/tlpkg/TeXLive/TLUtils.pm
===================================================================
--- trunk/Master/tlpkg/TeXLive/TLUtils.pm	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/tlpkg/TeXLive/TLUtils.pm	2021-02-24 18:27:49 UTC (rev 57875)
@@ -342,13 +342,13 @@
     # We have two versions of Mac binary sets.
     # 10.x and newer -> x86_64-darwin [MacTeX]
     # 10.6/Snow Leopard through 10.x -> x86_64-darwinlegacy, if 64-bit
-    # x changes every year. In 2020 (Big Sur) Apple started with 11.x.
+    # x changes every year. As of TL 2021 (Big Sur) Apple started with 11.x.
     #
     # (BTW, uname -r numbers are larger by 4 than the Mac minor version.
     # We don't use uname numbers here.)
     #
     # this changes each year, per above:
-    my $mactex_darwin = 13;  # lowest minor rev supported by x86_64-darwin.
+    my $mactex_darwin = 14;  # lowest minor rev supported by x86_64-darwin.
     #
     # Most robust approach is apparently to check sw_vers (os version,
     # returns "10.x" values), and sysctl (processor hardware).
@@ -359,7 +359,7 @@
            . " (from sw_vers -productVersion: $sw_vers)\n";
       return "unknownmac-unknownmac";
     }
-    if ($os_major >= 11) {
+    if ($os_major >= 11) { # have to refine after enough years
       $CPU = "x86_64";
       $OS = "darwin";
     } elsif ($os_minor >= $mactex_darwin) {

Added: trunk/Master/tlpkg/archive/tlnet-by-hand.txt
===================================================================
--- trunk/Master/tlpkg/archive/tlnet-by-hand.txt	                        (rev 0)
+++ trunk/Master/tlpkg/archive/tlnet-by-hand.txt	2021-02-24 18:27:49 UTC (rev 57875)
@@ -0,0 +1,58 @@
+
 Part II.5: As a special case, we need to update tlnet even after the
+final freeze.
+  pretest is going on. To do that, the idea is to make a tag+branch for
+  the last update before switching to the pretest, check that out,
+  and use it for such critical updates. To do that,
+  a) look at https://tug.org/svn/texlive/tags/ to choose the right
+     tag name. For TL19 (during the TL20 pretest), it was texlive-2019.4,
+     since .0-3 were used during the release.
+  b) look at https://tug.org/pipermail/tex-live-commits/ to determine
+     the right revision number: probably the "autoupdate" during the
+     last build before the pretest setup. For TL19, that was 53984.
+  c) run the svn commands given below to create the tag and branch.
+  d) make working checkout of the new branch (at this point we should
+     be fine to wipe out the old branch checkout, if there was one).
+mkdir /home/texlive/branch 
+cd !$
+tlyear=2019
+subnum=4
+nice -19 svn co -q svn://tug.org/texlive/branches/branch$tlyear.$subnum .
+
+  e) make the required update, probably most easily by copying the
+     affected files from the trunk. Running ctan2tl (or c2l) inside the
+     branch checkout should also work, if no other changes have intervened.
+  
+  f) remake tlnet (not tlpretest); cron.tl does too much overhead for
+     this delicate situation, so run the commands by hand.
+     1) update tlpdb so we'll get the new revision number;
+        must run from branch, not trunk, or all will be wrong!
+cd /home/texlive/branch/Master/tlpkg/bin # must be in branch directory
+        Use Catalogue snapshot saved above (at "preserve Catalogue")
+          to avoid myriad Catalogue changes.
+        If files have been removed without any other changes to a given
+          package (hopefully not), add --fix-reverse-revisions.
+catdir=/home/texlive/catalogue-freeze
+./tl-update-tlpdb --catalogue=$catdir
+        Check that only expected changes are made. 
+        Might be easier to run this, get the new revision number(s),
+        then revert and manually edit if there are additional unneeded
+        changes. Don't worry about 00texlive.*, they aren't distributed.
+
+     2) for safety, make a backup of tlnet:
+tar -cf /tmp/tlnet.tar -C /home/ftp/texlive/tlnet .  # remove when done
+
+     3) update tlnet, again from the branch, not trunk. Double check!
+        we don't want to update the installer packages, as they have
+        already been getting updated from trunk, so are newer.
+cd /home/texlive/branch/Master/tlpkg/bin
+./tl-update-tlnet --no-install-pkgs
+        It will take about an hour to run. hopefully only the intended
+        packages will get updated. if not, that's why we made the tar backup.
+
+  g) Update the tlnet-final directory in historic:
+tlnet_live=/home/ftp/texlive/tlnet
+tlnet_historic=/home/ftp/historic/systems/texlive/2019/tlnet-final
+rsync -av -n $tlnet_live/ $tlnet_historic/ # trailing /'s needed
+# remove the -n after checking that only expected files are updated.
+
+


Property changes on: trunk/Master/tlpkg/archive/tlnet-by-hand.txt
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tl-update-images
===================================================================
--- trunk/Master/tlpkg/bin/tl-update-images	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/tlpkg/bin/tl-update-images	2021-02-24 18:27:49 UTC (rev 57875)
@@ -2,7 +2,7 @@
 # $Id$
 # Create the .iso image(s) for TeX Live.
 # 
-# Copyright 2007-2020 Karl Berry.
+# Copyright 2007-2021 Karl Berry.
 # Copyright 2003, 2004, 2005 Sebastian Rahtz.
 #
 # This file is licensed under the GNU General Public License version 2
@@ -22,7 +22,7 @@
 trap "rm -f $lockfile; exit 0;" 0 1 2 15
 
 NAME=texlive
-V=2020
+V=2021
 D=`date +%Y%m%d`
 target=/home/ftp/texlive/Images/test
 

Modified: trunk/Master/tlpkg/bin/tl-update-messages
===================================================================
--- trunk/Master/tlpkg/bin/tl-update-messages	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/tlpkg/bin/tl-update-messages	2021-02-24 18:27:49 UTC (rev 57875)
@@ -23,7 +23,7 @@
 xgettext -o tlpkg/translations/messages.pot	\
 	--copyright-holder="TeX Live Team"	\
 	--msgid-bugs-address=tex-live at tug.org	\
-	--package-version=2020			\
+	--package-version=2021			\
 	--package-name="TeX Live"		\
         -k__ -k\$__ -k%__ -k__x -k__n:1,2 -k__nx:1,2 -k__xn:1,2 -kN__ -k  \
        tlpkg/installer/tracked-install.pl \

Modified: trunk/Master/tlpkg/bin/tl-update-tlnet
===================================================================
--- trunk/Master/tlpkg/bin/tl-update-tlnet	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/tlpkg/bin/tl-update-tlnet	2021-02-24 18:27:49 UTC (rev 57875)
@@ -1,5 +1,5 @@
 #!/bin/sh -e
-# Copyright 2008-2020 Norbert Preining
+# Copyright 2008-2021 Norbert Preining
 # This file is licensed under the GNU General Public License version 2
 # or any later version.
 # 
@@ -13,7 +13,7 @@
 unset CDPATH
 unset LS_COLORS
 
-yyyy=2020
+yyyy=2021
 
 check_consistency=true
 chicken=false

Modified: trunk/Master/tlpkg/doc/graphics/texlive-installer-graphics-horiz.png
===================================================================
(Binary files differ)

Modified: trunk/Master/tlpkg/doc/graphics/texlive-installer-graphics-vert.png
===================================================================
(Binary files differ)

Modified: trunk/Master/tlpkg/doc/graphics/texlive-installer-graphics.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/tlpkg/doc/releng.txt
===================================================================
--- trunk/Master/tlpkg/doc/releng.txt	2021-02-24 18:19:47 UTC (rev 57874)
+++ trunk/Master/tlpkg/doc/releng.txt	2021-02-24 18:27:49 UTC (rev 57875)
@@ -19,17 +19,20 @@
 To run test builds without affecting production dirs, see:
  tlpkg/bin/tltestnet
 
-
 I. Preparing, can be done before pretest starts.
+
 Part I. Preparing, can/should be done before pretest starts.
 
-1. doc: write updates for pretest.html, leave commented out until start.
- - check NEWS/CHANGES/etc. files for all engines and major programs.
+1. doc: write updates for pretest.html, but leave commented out until start.
+ - check NEWS/CHANGES/etc. files for all engines and major programs;
+   ask developers as needed.
  - diff new and old bindirs to see if there are interesting new programs:
-  \ls $lb >/tmp/now
+  \ls /usr/local/texlive-rel/bin/x86_64-linux >/tmp/now
   \ls $ib >/tmp/new
   comm -3 /tmp/now /tmp/new >/tmp/cm
+ - in general, writing these news items takes considerable time, but
+   it's important, because this summary of changes is what users want to know.
  - if new kpathsea file types (kpsewhich --help-formats), update kpathsea.texi.
  - see also doc item below for more necessary updates after pretest starts.
-
+ 
 2. Ask tldistro for patches.
 
 2. No /dev suffix: Build/source/{version.ac,texk/{kpathsea,ptexenc}/version.ac
@@ -61,29 +64,45 @@
   run ~karl/bin/tlversions to see+compare engine/etc. versions
   commit updates.
 
+6. During the pretest, we want to keep updating tlnet. But we cannot do
+that from the trunk, since the trunk will have the new binaries and
+other changes. Therefore, we set up a branch for release YYYY where we
+will continue to commit normal package updates and update tlnet, while
+the trunk is updating tlpretest for YYYY+1.
 
-
 II. Building pretest instead of regular release.
+The best time to create the branch is right before the first
+pretest-specific commit (the next item, in Part II).
+cd /home/texlive/branch
+rm -rf * .svn # clean out completely; trunk should also be clean
+rev=... # svn info in trunk
+tlyear=`date +%Y -d "last year"` # presumably
+svn copy -r $rev \
+  -m"branch$tlyear branch based on r$rev" \
+  svn://tug.org/texlive/trunk svn://tug.org/texlive/branches/branch$tlyear
 
-0. On the day of the last tlnet update,
- Set frozen=>1 in TLConfig.pm.
- Freeze should happen at that night's rebuild.
+# If you created the branch earlier for testing or whatever, no problem,
+# just merge from trunk before starting the double commits. Add @REV
+# after trunk if needed. Probably have to M(erge) some not-really-conflicts.
+nice -19 svn merge svn://tug.org/texlive/trunk >&/tmp/merge
 
-1. Then, the next day, start building tlpretest: reset
-  frozen=>0 in TLConfig.pm
-and
-  option adjustrepo 0 in tl-update-tlnet
-(since pretest users shouldn't go to CTAN for updates).
+# Alternatively, if you forgot to create the branch at the time, also
+# no problem, just choose the right $rev and run the svn copy above.
+# For TL2021, we made the branch independent at r57871 (created earlier).
 
-1a. Then preserve final tlnet of current release YYYY:
-cd /home/ftp/texlive/tlnet
-cp -ar ../tlnet /home/ftp/historic/systems/texlive/YYYY/tlnet-final
-# if and when post-freeze updates are needed, see below.
 
-1b. Also preserve Catalogue as of the freeze, again for the sake of
-    post-freeze updates:
-rsync -ar /home/httpd/html/catalogue /home/texlive/catalogue-freeze
+
 Part II. Building pretest from trunk (and tlnet from branch).
 
-1c. Set up tlpretest:
+0. Ensure that /home/texlive/branch from before last pretest-specific
+commit is created, clean, and up to date: see item 6 just above.
+
+0b. In crontab, disable trunk->tlnet entries.
+
+1. When ready to start building tlpretest: on trunk, set
+  option adjustrepo 0
+in tl-update-tlnet since pretest users shouldn't go to CTAN for updates.
+This change should not go to the branch.
+
+1b. Set up tlpretest:
 Update /home/ftp/texlive/tlpretest/README.
 Empty tlpretest except for that README and 00_TIME.txt (used for mirmon).
 
@@ -104,7 +123,7 @@
 Master/tlpkg/bin/tl-update-tlnet
 Master/tlpkg/installer/texlive.png
   (make -C Master/tlpkg/doc/graphics -W texlive-installer-graphics.tex texlive.png)
-  then move into place.
+  then mv into place.
 Master/texmf-dist/web2c/texmfcnf.lua
 Master/texmf-dist/web2c/texmf.cnf  # from Build/.../kpathsea
 
@@ -132,7 +151,7 @@
   force_rebuild=true cron.tl
 This will fail because the pretest dir is not completely set up, but
 that's ok; the idea is to check the output and ensure all is basically ok.
-It's likely that .tlpsrc files will need to be adjusted.
+It's likely that .tlpsrc files will need to be adjusted for new binaries.
 
 8a. svn commit all the above.
 
@@ -140,7 +159,7 @@
   cd /home/ftp/texlive/tlpretest
   cp -ar ../tlnet/[a-u]* . # omit tlnet/README*
   env force_rebuild=true cron.tl
-We use cp because we want to start with exactly the last tlnet,
+We use cp -a because we want to start with exactly the last tlnet,
 and not recreate all packages, so that a file with a given name is never
 rewritten. See recreate comments in tl-update-tlpdb and tl-update-containers.
 
@@ -153,11 +172,11 @@
 10. Web pages: make new pretest.html live; mention pretest has started
     on texlive/index.html and tug's home page (at least).
 
-11. Life and daily updates go on. In cron.tl, set:
-  net_frozen=false
-  catalogue_compare=true # maybe not every day?
+11. Life and daily updates go on. In cron.tl, set net_frozen=false.
+    In the crontab, enable the pretest entries.
+    
 
-A. At some point, after tlnet freeze:
+A. At some point during the pretest:
   Update gpg expiration, see tlpkg/gpg/tl-key-extension.txt;
     do not fail to do this, or the key will expire and cause lots of hassle.
   Run tl-update-linked-scripts to ensure consistency.
@@ -190,64 +209,7 @@
   After successful image build, email tldistro at tug.org for info/review.
   Can disable image building again after the initial build for a while.
 
-

-L. It may be that we need to update the "frozen" release while the
-  pretest is going on. To do that, the idea is to make a tag+branch for
-  the last update before switching to the pretest, check that out,
-  and use it for such critical updates. To do that,
-  a) look at https://tug.org/svn/texlive/tags/ to choose the right
-     tag name. For TL19 (during the TL20 pretest), it was texlive-2019.4,
-     since .0-3 were used during the release.
-  b) look at https://tug.org/pipermail/tex-live-commits/ to determine
-     the right revision number: probably the "autoupdate" during the
-     last build before the pretest setup. For TL19, that was 53984.
-  c) run the svn commands given below to create the tag and branch.
-  d) make working checkout of the new branch (at this point we should
-     be fine to wipe out the old branch checkout, if there was one).
-mkdir /home/texlive/branch 
-cd !$
-tlyear=2019
-subnum=4
-nice -19 svn co -q svn://tug.org/texlive/branches/branch$tlyear.$subnum .
-
-  e) make the required update, probably most easily by copying the
-     affected files from the trunk. Running ctan2tl (or c2l) inside the
-     branch checkout should also work, if no other changes have intervened.
-  
-  f) remake tlnet (not tlpretest); cron.tl does too much overhead for
-     this delicate situation, so run the commands by hand.
-     1) update tlpdb so we'll get the new revision number;
-        must run from branch, not trunk, or all will be wrong!
-cd /home/texlive/branch/Master/tlpkg/bin # must be in branch directory
-        Use Catalogue snapshot saved above (at "preserve Catalogue")
-          to avoid myriad Catalogue changes.
-        If files have been removed without any other changes to a given
-          package (hopefully not), add --fix-reverse-revisions.
-catdir=/home/texlive/catalogue-freeze
-./tl-update-tlpdb --catalogue=$catdir
-        Check that only expected changes are made. 
-        Might be easier to run this, get the new revision number(s),
-        then revert and manually edit if there are additional unneeded
-        changes. Don't worry about 00texlive.*, they aren't distributed.
-
-     2) for safety, make a backup of tlnet:
-tar -cf /tmp/tlnet.tar -C /home/ftp/texlive/tlnet .  # remove when done
-
-     3) update tlnet, again from the branch, not trunk. Double check!
-        we don't want to update the installer packages, as they have
-        already been getting updated from trunk, so are newer.
-cd /home/texlive/branch/Master/tlpkg/bin
-./tl-update-tlnet --no-install-pkgs
-        It will take about an hour to run. hopefully only the intended
-        packages will get updated. if not, that's why we made the tar backup.
-
-  e) Update the tlnet-final directory in historic:
-tlnet_live=/home/ftp/texlive/tlnet
-tlnet_historic=/home/ftp/historic/systems/texlive/2019/tlnet-final
-rsync -av -n $tlnet_live/ $tlnet_historic/ # trailing /'s needed
-# remove the -n after checking that only expected files are updated.
-
-M. As work proceeds, update the doc:
+M. As pretest proceeds, update the doc:
   MetaPost (in texmf-dist), other engine (in source) NEWS.
   Ensure all engine manuals updated in texmf-dist.
   Update texlive-en.tex (+ .pdf, .html), tell tldoc to translate.
@@ -295,8 +257,8 @@
   tlmgr version number in texmf-dist/scripts/texlive/NEWS.
   In cron.tl, set catalogue_compare=true for final syncs.
   Rebuild test images so we get the new source.
-  Tell developers no more commits: tldev + 
-    hironobu, luigi, mojca, takuji.
+  Tell developers no more commits: tldev +
+    hirata, hironori, luigi, mojca, takuji, 
 
 P. The day before the final pretest:
   option adjustrepo 1 in tl-update-tlnet, else install-tl-unx won't go to ctan
@@ -303,22 +265,35 @@
   Update Master/source (if not earlier):
     xz wget w32tex-src texlive*source mactexdoc install-tl-unx.tar.gz 
 
-Q. After final build, to do total freeze:
+Q. The day of the final tlnet-from-branch build, which may or may not
+   also be the day of the final tlpretest-from-trunk build:
+ Set frozen=>1 in branch TLConfig.pm.
+ Freeze of tlnet should happen at that night's rebuild.
+
+R. After final build, to do total freeze:
   In cron.tl, set *_frozen=true.
   Also, set catalogue_compare=false now or at some point earlier.
-  Don't disable the cron entry, since we want to see if any commits
-   are mistakenly made. Nothing more than svn update will happen
-   with everything frozen.  
+  For double protection, disable the nightly cron jobs.
   Also, in /l/bin/mirror-ctan, disable Catalogue updates,
    to avoid unnecessary changes if we have to rebuild the final image.
 
-R. Ask for torrents to be created. In 2019,
+S. Ask for torrents to be created. In 2020,
   Tim Stewart <timoteostewart1977 at gmail.com>
   made the one that worked.
 
+T. Preserve final tlnet of current release YYYY:
+cd /home/ftp/texlive/tlnet
+cp -ar ../tlnet /home/ftp/historic/systems/texlive/YYYY/tlnet-final
+# if post-freeze updates are required (let's hope not),
+# see tlpkg/archive/tlnet-by-hand.txt.
 
-
 III. Making the big release:
+T2. Also preserve Catalogue as of the freeze, again for the sake of
+    post-freeze updates:
+rsync -ar /home/httpd/html/catalogue /home/texlive/catalogue-freeze
 
+
+
 Part III. Making the big release:
+
 - unmount live install of last year's:
 umount /home/ftp/texlive/Contents/live
 
@@ -449,7 +424,7 @@
 svn copy -r $rev \
   -m"branch$tlyear branch based on r$rev" \
   svn://tug.org/texlive/trunk svn://tug.org/texlive/branches/branch$tlyear
-  # add .$subnum to branch name (and in comment) if making 
+  # add .$subnum to branch name (and in comment) if not making the first.
 
   It's the same command, just different destinations.
   http://svnbook.red-bean.com/en/1.8/svn.branchmerge.html

Modified: trunk/Master/tlpkg/installer/texlive.png
===================================================================
(Binary files differ)



More information about the tex-live-commits mailing list.