Bug#879602: [lyx] Broken svn auto-detecion
Am 07.12.20 um 15:27 schrieb Pavel Sanda: > On Mon, 23 Oct 2017 12:14:41 +0200 Philipp Klaus Krause wrote: >> lyx tries to autodetect if a file is under verison control. When lyx >> 2.2.3 reads an input file, it recursively checks parent directories for >> .svn, .git, etc. >> >> In case it find a .svn directory, it invokes svn info to parse the >> output to see if the file is under version control. For svn, the code is >> in SVN::findFile in lines 1154ff of src/VCBackend.cpp. >> >> However, there is a bug in checking if a file is in svn. If the file is >> in a directory that is not under svn, but a parent directory is under >> svn, lyx will invoke svn info. Since the directory itself is not under >> svn, svn info will fail "svn: E155007: >> '/home/philipp/sdcc-2/build/doc/sdccman.lyx' is not a working copy"; lyx >> considers this an error. > > Looks like correct analysis. > >> This issue makes out-of-tree builds fail. Example: the sdcc manual is a >> .lyx file. When checking out sdcc from svn, and then trying to do an >> out-of-tree build in a directory build, it fails due to this bug. > > Despite the warning from svn info, lyx normally loads up the file, > exports it etc. > So I do not follow what "out-of-tree builds fail" exactly means > or what kind of problem you actually encounter. AFAIR, when I reported the bug three years ago, it wasn't just a warning, it was an error; lyx -e would fail and not produce output. I just tried again, on my current Debian GNU/Linux system, and it now indeed is just a warning and output is produced by lyx -e. The problem I encountered when I reported the bug: I checked out sdcc from svn, created a subdirectory "build" under it, and built in that directory. That failed, since back then there was an error from lyx -e that stopped the build (the directory "build" not being under version control, but the parent directory being in svn), when I invoked "make" in build/doc to build the manual. I guess the downgrade from error to warning happened in some lyx or svn update during the three years since I reported the bug. Philipp
Bug#879602: [lyx] Broken svn auto-detecion
On Mon, 23 Oct 2017 12:14:41 +0200 Philipp Klaus Krause wrote: > lyx tries to autodetect if a file is under verison control. When lyx > 2.2.3 reads an input file, it recursively checks parent directories for > .svn, .git, etc. > > In case it find a .svn directory, it invokes svn info to parse the > output to see if the file is under version control. For svn, the code is > in SVN::findFile in lines 1154ff of src/VCBackend.cpp. > > However, there is a bug in checking if a file is in svn. If the file is > in a directory that is not under svn, but a parent directory is under > svn, lyx will invoke svn info. Since the directory itself is not under > svn, svn info will fail "svn: E155007: > '/home/philipp/sdcc-2/build/doc/sdccman.lyx' is not a working copy"; lyx > considers this an error. Looks like correct analysis. > This issue makes out-of-tree builds fail. Example: the sdcc manual is a > .lyx file. When checking out sdcc from svn, and then trying to do an > out-of-tree build in a directory build, it fails due to this bug. Despite the warning from svn info, lyx normally loads up the file, exports it etc. So I do not follow what "out-of-tree builds fail" exactly means or what kind of problem you actually encounter. Pavel
Bug#879602: [lyx] Broken svn auto-detecion
Package: lyx Version: 2.2.3-2 Severity: important --- Please enter the report below this line. --- lyx tries to autodetect if a file is under verison control. When lyx 2.2.3 reads an input file, it recursively checks parent directories for .svn, .git, etc. In case it find a .svn directory, it invokes svn info to parse the output to see if the file is under version control. For svn, the code is in SVN::findFile in lines 1154ff of src/VCBackend.cpp. However, there is a bug in checking if a file is in svn. If the file is in a directory that is not under svn, but a parent directory is under svn, lyx will invoke svn info. Since the directory itself is not under svn, svn info will fail "svn: E155007: '/home/philipp/sdcc-2/build/doc/sdccman.lyx' is not a working copy"; lyx considers this an error. This issue makes out-of-tree builds fail. Example: the sdcc manual is a .lyx file. When checking out sdcc from svn, and then trying to do an out-of-tree build in a directory build, it fails due to this bug. Philipp --- System information. --- Architecture: Kernel: Linux 4.13.0-1-amd64 Debian Release: buster/sid 500 unstableftp.de.debian.org 500 testing ftp.de.debian.org 1 experimentalftp.de.debian.org --- Package information. --- Depends (Version) | Installed ==-+- libboost-signals1.62.0 | 1.62.0+dfsg-4+b1 libc6(>= 2.15) | libenchant1c2a (>= 1.6.0) | libgcc1 (>= 1:3.0) | libmagic1 (>= 5.12) | libmythes-1.2-0 | libqt5core5a (>= 5.9.0~beta) | libqt5gui5 (>= 5.8.0) | libqt5svg5 (>= 5.6.0~beta) | libqt5widgets5 (>= 5.7.0) | libstdc++6 (>= 5.2) | zlib1g(>= 1:1.1.4) | lyx-common (= 2.2.3-2) | xdg-utils | Recommends (Version) | Installed ==-+-=== texlive-latex-recommended | 2017.20171004-1 texlive-latex-extra| 2017.20171004-1 texlive-science| 2017.20171004-1 texlive-generic-recommended| texlive-generic-extra | texlive-fonts-recommended | 2017.20171004-1 preview-latex-style| 11.91-1 dvipng | 1.14-2+b3 imagemagick| 8:6.9.7.4+dfsg-16 psutils| 1.17.dfsg-4 ghostscript| 9.22~dfsg-1 poppler-utils | 0.57.0-2 fonts-lyx | 2.2.3-2 evince | 3.26.0-1 OR pdf-viewer | Suggests(Version) | Installed =-+-=== rcs | groff | libtiff-tools | gnuhtml2latex | wv | chktex| noweb | sgmltools-lite| linuxdoc-tools | writer2latex | latex2rtf | librsvg2-bin | OR inkscape | 0.92.2-1+b1 texlive-xetex | 2017.20171004-1 tex4ht| OR hevea | OR tth | OR latex2html|