Ok, here's an answer as the main developer of tlmgr and the whole TeX Live infrastructure. You have to decide two things:
- the freeze period before release of a new version
- upgradability from one release to the next
Concerning the former, freeze period: Normally during the year we do not make updates to the actual binaries, but only to scripts and the packaging. That means, that in preparation of a new release all the binaries have to be recompiled, which is a huge tasks and involved lots of time, and iterations. Bugs are fixed, code adapted so that it builds on all platforms (and there are many!). During this time we do not want to make partial upgrades of some binaries, because sometimes that needs to be accompanied with library file updates.
Another point is that during the freeze period critical new features are sometimes included in the texlive infrastructure and the tlmgr, which would be too dangerous to be released to the world in the normal course.
And finally, it is also about getting into a state that can be pressed onto DVD.
Now for the upgradability between releases: The reason in the first years were changes in the internals that did not allow upgrades (like format of the internal coding of options, etc.). This was in the first years (say 2008-2010) the most common reason. A normal upgrade was simply not trivially possible. Of course, one could write an upgrade script and make an NSIS installer for Windows, but we do not have time for that. We are volunteers and have to concentrate on the important things.
In the last years (say since 2010) there always was an upgrade procedure, although we normally didn't give it a lot of testing; that is the reason why we don't recommend it. Disk space is nowadays quite abundant, and having two installations in parallel is thus not such a pain. But still, there always was the way to upgrade.
On Windows this is unfortunately not so trivial, as the uninstaller and the registry etc etc is linked to release years, it is simply a pain on Windows, but that is a special case.
Finally, one more reason: In many cases in the last year, an update or a new installation would not have changed much in the amount of downloaded data, as often all the packages were updated in one way or the other (due to internal changes), which meant an upgrade would have involved downloading all packages, just like the installation.
I hope that all this makes our intention a bit more clear, and if there is anything unclear, or if someone has better ideas how to deal with it, we are open to suggestions!
Yes, you can uninstall 2012 and then install 2013 first.
As long as you change the path variable, Emacs will find it. The path variable can be found by:
1. right clicking my computer
2. going to properties
3. then advanced system settings
4. and in the systems properties window go to environmental variables
Once there, you will see a systems variables box with a scroll bar and this is where you can set and change path variables in Windows.
I don't use Windows so I have not idea what you would change the variable too but that is where you will find it. Also, I am not sure what it will be called but it should be obviously related to TeXLive.
Best Answer
Let's say you had a more specific question, like: "what new LaTeX packages are there in TeX Live 2013?"
After TL2013 comes out and you install it side by side to TL2012, assuming you've not changed the default install directory, you could do something like this (UNIX systems only):
followed by
you'll get something like this inside the file named "difflist":
(this is the difference from the last TL 2012 update and the latest 2013 pretest release, if you repeat this same procedure after the TL2013 relase you'll get the complete list of new LaTeX packages).
The
grep
stuff is used to remove some reference numbers automatically printed by the diff command.Items marked with
<
are present in TL2012 but not in TL2013 (may have been removed, renamed, etc.); items marked with>
are present in TL2013 but not in TL2012 (again, may be new packages, renamed packages, etc.).If you also wanted to know what, e.g., new libraries that don't deserve a new directory have been added you could make the
ls
command recursive, like this:again followed by the same
diff
command as before. If instead of LaTeX you want to know the new XeTeX additions, you have to point yourls
commands to/usr/local/texlive/2012/texmf-dist/xetex
, etc. You could also do a complete screening of/usr/local/texlive/2012/texmf-dist
, but that would produce a looooooong list, also because in TL2013 the content of thetexmf
directory has been merged withtexmf-dist
.This is not rocket science and I'm not sure it also produces useful information for, e.g. ConTeXt.
If you have TL2011 installed you can do the same to find what packages have been added in TL2012.
Probably there are commands to do something like this in Windows also and directly in the SVN repository as well.
Using a tlmgr based approach
as suggested by texenthusiast an even better result is obtained using the command
tlmgr list > <namefile>
. This is how I did it:tlmgr list > 2013list
withPATH
pointing to/usr/local/texlive/2013/bin/
PATH
to/usr/local/texlive/2012/bin/
tlmgr list > 2012list
diff 2012list 2013list | grep -v "^---" | grep -v "^[0-9c0-9]" > difflist
FC 2012list 2013list
(not tested)In my test I restricted the search to installed packages only with
--only-installed
afterlist
so to keep the list shorter. The result is:as you can see it now finds also additions which are not in the
latex
directory (asxetexko
, which is missing in the previous list). And now we also got pretty descriptions!Or you could just subscribe to the CTAN-ann RSS Feed and mail-archive :)