The keytests were previously enabled by default if the necessary
dependencies were found. They require a GUI and mouse so can
sometimes be annoying. Further, they are not currently reliable.
They are thus now disabled by default.
When running the tests with ctest, --rerun-failed can be used to run
the tests that failed on the previous run. However, the same subset
must be specified because it is the test numbers that are used to
index which tests failed on the previous run. For example, it would
be incorrect to do the following:
ctest -R export
ctest --rerun-failed
The following is correct:
ctest -R export
ctest -R export --rerun-failed
Since \output_changes is written again at the original position, we need to
fix those files that have been updated using the intermediate version.
The update was done by running development/tools/updatedocs.py <lyxexe> where
<lyxexe> was the path to an up to date LyX binary. All files that did contain
additional changes were reverted:
lib/doc/LFUNs.lyx
lib/doc/UserGuide.lyx
lib/doc/Shortcuts.lyx
lib/examples/de/beamer.lyx
The \SpecialChar changes are fine, these files have never been saved by LyX
after the update to 483.
Pdflatex is the recommended export tool for the manuals.
Pdflatex brings the best results for hyperlinking.
Some features (e.g. rotated text) are not available in DVI or PS (dvips).
This does not affect export from command line or autotests
(where this setting is ignored and the format must aways be given explicitely).
We do not update the local layout of our .lyx files because users
would then not be able to export to older formats. For example, if a
2.2.0 user exported a template to 2.1.x format and tried to open the
file in LyX 2.1.x, there would be an error because the file would
contain a local layout whose format is too new. The root reason for
this is that we do not convert layouts to older layout formats.
These were fixed manually. I tried to add an option to updatedocs.py to
open and save a file with LyX, but that did not work, since
lyx -x 'command-sequence buffer-write ; lyx-quit' does not write and does
not quit.
Each way might be preferred by a different developer and the more
ways that can be described of running the tests, the higher the
chance is that developers will find a way that works well for them.
Explain why the export tests are enabled for formats that are not
expected to work well with certain document classes, modules, or
packages. The reason is that if a .lyx file goes from compiling
successfully for one format (even if that format is not officially
supported for the combination of features used), if that document
suddenly fails to compile, there is a significant chance that a bug
was introduced in LyX. In other words, there is a high signal/noise
ratio. If it is determined that a test is failing because an
expected incompatibility is exposed, then the test can be inverted.