Re: [PATCH] do not use stat() in DepTable

2017-03-11 Thread Enrico Forestieri
On Sat, Mar 11, 2017 at 08:36:08PM +0100, Jean-Marc Lasgouttes wrote:
> Le 11/03/2017 à 19:21, Enrico Forestieri a écrit :
> > I think that a problem could arise only if the file is a symlink.
> > In this case, stat() resolves it and returns information about the
> > pointed-to file. It is not very clear what QFileInfo::lastModified()
> > does. Skimming the docs, it maybe does the same, possibly except on
> > native Windows.
> 
> Does native windows support symlinks?

Yes, since Vista. But not Qt, seemingly.
https://msdn.microsoft.com/it-it/library/windows/desktop/aa365680(v=vs.85).aspx

> > BTW, what's the problem in considering the file as non
> > existing if stat() does not return 0?
> 
> That's what I began to do, and then it occurred to me that we were mixing
> FileName stuff with raw unix calls.

Uh? stat() is posix and has always worked also on windows.

> If FileName::lastModified does not work
> correctly, I'd say that we should fix it rather than avoid using it.

Then, go for it. Personally, I am inclined to follow the principle
of not fixing it if it is not broken, but I don't want stop you.

BTW, I just verified that both stat() and QFileInfo::lastModified()
don't follow symlinks on native windows, while both do on *nix.
So, there will not be changed behavior, AFAICS.

-- 
Enrico


Re: How far is 2.3.0?

2017-03-11 Thread José Abílio Matos
On Saturday, 11 March 2017 20.48.02 WET Richard Heck wrote:
> And I'll second that. You did an excellent job last time, which is why
> we all want you to do it again.

+1

-- 
José Abílio


Re: Crash in File-Open

2017-03-11 Thread Kornel Benko
Am Samstag, 11. März 2017 um 14:47:37, schrieb Scott Kostyshak 

> On Mon, Mar 06, 2017 at 07:09:16PM -0500, Scott Kostyshak wrote:
> > On Mon, Mar 06, 2017 at 12:19:48PM +0100, Kornel Benko wrote:
> > 
> > > Looks like nobody seems to to be interested.
> > 
> > I'm interested and will test in a week when I'm home and have access to
> > the computer where I have Qt 5.8 installed.
> 
> I can't reproduce with Qt 5.8.1dev (compiled a few weeks ago).
> 
> Scott

I tried to compile Qt 5.9.0-alpha, but unfortunately I was unable to do it.
Did not even come trough the configuration phase
(You cannot configure qt separately within a top-level build)

Should probably try with Qt 5.8.

Kornel

signature.asc
Description: This is a digitally signed message part.


Re: cmake compilation error

2017-03-11 Thread Guillaume Munch

Le 11/03/2017 à 18:07, Jean-Pierre Chrétien a écrit :

Le 11/03/2017 à 17:57, Kornel Benko a écrit :


I see the same with installed QT5.2.1. But no problems with QT5.7.


Seems that I've got 5.3.2 here, Debian Jessie (up to date stable).


Indeed the function is introduced in qt5.4. It is now fixed. Note that
from what I remember, LyX suffers various bugs with early releases of
qt5, which is why the release notes strongly advises qt>=5.4. CMake
should select qt4.8 over qt5.3 when possible.

Guillaume



Re: How far is 2.3.0?

2017-03-11 Thread Richard Heck
On 03/11/2017 03:14 PM, Scott Kostyshak wrote:
> On Sat, Mar 11, 2017 at 08:56:01PM +0100, Jean-Marc Lasgouttes wrote:
>> Le 08/03/2017 à 01:26, Scott Kostyshak a écrit :
>>> So yes, I am willing to be the release manager, but I am also willing to
>>> have a more knowledgeable developer as the release manager if one
>>> volunteers.
>> FWIW, I think you will do (again) a good release maintainer.
> Thanks, to me it is worth a lot!

And I'll second that. You did an excellent job last time, which is why
we all want you to do it again.

>> And Pavel is right that you are not supposed to know everything, but to lean 
>> on the right people.
> I am learning that this is indeed the most important. But I would lean 
> (fall?) on people more than others.

I wouldn't be so sure. Many of us know the bits of code we know, and we
fake it about the rest.

Richard



Re: How far is 2.3.0?

2017-03-11 Thread Scott Kostyshak
On Sat, Mar 11, 2017 at 08:56:01PM +0100, Jean-Marc Lasgouttes wrote:
> Le 08/03/2017 à 01:26, Scott Kostyshak a écrit :
> > So yes, I am willing to be the release manager, but I am also willing to
> > have a more knowledgeable developer as the release manager if one
> > volunteers.
> 
> FWIW, I think you will do (again) a good release maintainer.

Thanks, to me it is worth a lot!

> And Pavel is
> right that you are not supposed to know everything, but to lean on the right
> people.

I am learning that this is indeed the most important. But I would lean
(fall?) on people more than others.

Scott


signature.asc
Description: PGP signature


Re: AGUTeX

2017-03-11 Thread Scott Kostyshak
On Sat, Mar 11, 2017 at 01:36:48PM +0100, Jean-Pierre Chrétien wrote:
> Hello Scott,
> 
> Sorry to have committed an update of AGUTeX.lyx to master without asking (at
> ac06a541), I wanted to commit a small change in contrast with changes in
> fr.po.

Hi Jean-Pierre,

No need to ask regarding documentation changes like this, as far as I am
concerned. However, I think we try to keep the format of the files as
2.2.x format (even on master) unless an update is necessary. I don't
think you need to go back and change it this time, but keep it in mind
in the future (I know it's hard to remember, I forget also). It is up to
Uwe I think, though.

> I stressed that agutex.cls is an obsolete version of the class for AGU
> documents (and I was not able to find agutex.cls on the web), the class is
> now agujournal.cls. I changed also the AGU wikipage to reflect this change
> and give the right links to get the package:
> 
> http://wiki.lyx.org/Examples/AGUTeX
> 
> I'm currently working on a layout and template for the agujournal.cls class.

Great!

Scott


signature.asc
Description: PGP signature


Re: How far is 2.3.0?

2017-03-11 Thread Jean-Marc Lasgouttes

Le 08/03/2017 à 01:26, Scott Kostyshak a écrit :

So yes, I am willing to be the release manager, but I am also willing to
have a more knowledgeable developer as the release manager if one
volunteers.


FWIW, I think you will do (again) a good release maintainer. And Pavel 
is right that you are not supposed to know everything, but to lean on 
the right people.


JMarc



Re: [LyX/master] buffer-export without argument exports the default format

2017-03-11 Thread Scott Kostyshak
On Sat, Mar 11, 2017 at 01:39:06PM +0100, Guillaume Munch wrote:
> Le 11/03/2017 à 08:37, Scott Kostyshak a écrit :
> > 
> > It looks like Guillaume made the change at 3dec5826.
> > 
> 
> Yes, and thanks for the feedback.

I just tested from the CL with -e and -E and it works well.

Thanks,

Scott


signature.asc
Description: PGP signature


Re: Crash in File-Open

2017-03-11 Thread Scott Kostyshak
On Mon, Mar 06, 2017 at 07:09:16PM -0500, Scott Kostyshak wrote:
> On Mon, Mar 06, 2017 at 12:19:48PM +0100, Kornel Benko wrote:
> 
> > Looks like nobody seems to to be interested.
> 
> I'm interested and will test in a week when I'm home and have access to
> the computer where I have Qt 5.8 installed.

I can't reproduce with Qt 5.8.1dev (compiled a few weeks ago).

Scott


signature.asc
Description: PGP signature


Re: [PATCH] do not use stat() in DepTable

2017-03-11 Thread Jean-Marc Lasgouttes

Le 11/03/2017 à 19:21, Enrico Forestieri a écrit :

I think that a problem could arise only if the file is a symlink.
In this case, stat() resolves it and returns information about the
pointed-to file. It is not very clear what QFileInfo::lastModified()
does. Skimming the docs, it maybe does the same, possibly except on
native Windows.


Does native windows support symlinks?


BTW, what's the problem in considering the file as non
existing if stat() does not return 0?


That's what I began to do, and then it occurred to me that we were 
mixing FileName stuff with raw unix calls. If FileName::lastModified 
does not work correctly, I'd say that we should fix it rather than avoid 
using it.


JMarc



Re: LyX 2.2.3 crashes repeatably when displaying section 2.1.1 of the tutorial

2017-03-11 Thread Jean-Marc Lasgouttes

Le 11/03/2017 à 17:25, Richard Heck a écrit :

Here is a proposed patch, which sounds clear to me (no status.22x
needed). Richard?


Yes, please.


Done.

JMarc



Re: [LyX/master] Nonsense for whoever insists on using gcc4.6 & qt4.8 in 2017

2017-03-11 Thread Pavel Sanda
Guillaume Munch wrote:
> On the other hand, for graphics, the
> idea of the previous FileMonitor could be adapted to refresh graphics
> when they appear on the screen

Perhaps. But it should do that when window gets active (we already catch that
signal for redrawing graphics). 
Typical scenario I am in: plotting routine in terminal window changes figs
and I want to see them updated after I switch from terminal back to lyx.

> (but stop doing it when they leave the screen).

Of course, there is no reason for that.

> In that case, I even wonder whether it is useful to use the file 
> monitor for graphics files.

It seems to me safer still use them, but don't have strong opinion.

BTW do you think it would be hard to paralelize the load of the figures
in the previewer machinery? I have lot of reports with hundreds of figs
and loading the document with all figs takes mins while only one of my
cores is busy.

Pavel


Re: [PATCH] do not use stat() in DepTable

2017-03-11 Thread Enrico Forestieri
On Fri, Mar 10, 2017 at 11:28:45AM +0100, Jean-Marc Lasgouttes wrote:

> Hello,
> 
> The attached patch looks straightforward to me, but since this is a
> sensitive area in terms of portability, I would like some people to take a
> quick look at it.

I think that a problem could arise only if the file is a symlink.
In this case, stat() resolves it and returns information about the
pointed-to file. It is not very clear what QFileInfo::lastModified()
does. Skimming the docs, it maybe does the same, possibly except on
native Windows. BTW, what's the problem in considering the file as non
existing if stat() does not return 0?

-- 
Enrico


Re: cmake compilation error

2017-03-11 Thread Jean-Pierre Chrétien

Le 11/03/2017 à 17:57, Kornel Benko a écrit :


I see the same with installed QT5.2.1. But no problems with QT5.7.


Seems that I've got 5.3.2 here, Debian Jessie (up to date stable).

--
Jean-Pierre




Re: cmake compilation error

2017-03-11 Thread Kornel Benko
Am Samstag, 11. März 2017 um 17:43:54, schrieb Jean-Pierre Chrétien 

> Hello,
> 
> I get this with a clean build of up-to-date master:
> 
> /ext/lyx/master/src/support/FileMonitor.cpp: In member function ‘void 
> lyx::support::FileMonitorGuard::refresh(bool)’:
> /ext/lyx/master/src/support/FileMonitor.cpp:115:6: error: no matching 
> function 
> for call to ‘QTimer::singleShot(int, lyx::support::FileMonitorGuard*, 
> lyx::support::FileMonitorGuard::refresh(bool)::)’
>   });
>^

I see the same with installed QT5.2.1. But no problems with QT5.7.

Kornel

signature.asc
Description: This is a digitally signed message part.


cmake compilation error

2017-03-11 Thread Jean-Pierre Chrétien

Hello,

I get this with a clean build of up-to-date master:

/ext/lyx/master/src/support/FileMonitor.cpp: In member function ‘void 
lyx::support::FileMonitorGuard::refresh(bool)’:
/ext/lyx/master/src/support/FileMonitor.cpp:115:6: error: no matching function 
for call to ‘QTimer::singleShot(int, lyx::support::FileMonitorGuard*, 
lyx::support::FileMonitorGuard::refresh(bool)::)’

 });
  ^
/ext/lyx/master/src/support/FileMonitor.cpp:115:6: note: candidates are:
In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/QTimer:1:0,
 from /ext/lyx/master/src/support/FileMonitor.cpp:22:
/usr/include/x86_64-linux-gnu/qt5/QtCore/qtimer.h:81:17: note: static void 
QTimer::singleShot(int, const QObject*, const char*)

 static void singleShot(int msec, const QObject *receiver, const char 
*member);
 ^
/usr/include/x86_64-linux-gnu/qt5/QtCore/qtimer.h:81:17: note:   no known 
conversion for argument 3 from 
‘lyx::support::FileMonitorGuard::refresh(bool)::’ to ‘const char*’
/usr/include/x86_64-linux-gnu/qt5/QtCore/qtimer.h:82:17: note: static void 
QTimer::singleShot(int, Qt::TimerType, const QObject*, const char*)
 static void singleShot(int msec, Qt::TimerType timerType, const QObject 
*receiver, const char *member);

 ^
/usr/include/x86_64-linux-gnu/qt5/QtCore/qtimer.h:82:17: note:   candidate 
expects 4 arguments, 3 provided
src/support/CMakeFiles/support.dir/build.make:557: recipe for target 
'src/support/CMakeFiles/support.dir/FileMonitor.cpp.o' failed


--
Jean-Pierre


Re: LyX 2.2.3 crashes repeatably when displaying section 2.1.1 of the tutorial

2017-03-11 Thread Richard Heck
On 03/10/2017 02:02 PM, Jean-Marc Lasgouttes wrote:
> Le 08/03/2017 à 10:45, Helge Hafting a écrit :
>>> FWIW, I can reproduce it. I'll have a look when I can.
>> I have debugged some more, and the problem is with explicit linebreaks
>> (ctrl+enter)
>
> Thanks Helge for the nice analysis. This problem is not in master and
> is new to 2.2.3dev.
>
> Here is a proposed patch, which sounds clear to me (no status.22x
> needed). Richard?

Yes, please.

rh



Re: [LyX/master] buffer-export without argument exports the default format

2017-03-11 Thread Guillaume Munch

Le 11/03/2017 à 08:37, Scott Kostyshak a écrit :


It looks like Guillaume made the change at 3dec5826.



Yes, and thanks for the feedback.




Re: [LyX/master] Nonsense for whoever insists on using gcc4.6 & qt4.8 in 2017

2017-03-11 Thread Guillaume Munch

Le 11/03/2017 à 08:34, Pavel Sanda a écrit :

Guillaume Munch wrote:

commit 24f68aff8d2ba9139017ca3927eda1f1aaf039af
Author: Guillaume Munch 
Date:   Sat Mar 11 00:11:02 2017 +0100

Nonsense for whoever insists on using gcc4.6 & qt4.8 in 2017


Does it mean it is not supposed to work with those two or it should?


With this commit, it works with gcc4.6 and qt4.8, though it required
imaginative workarounds that I hope we can delete at some point. My only
worry is that QFileSystemWatcher has been rewritten in qt5, so it is
possible that it behaves differently with qt4.8.



I just quickly checked that the new monitor does not work on networked fs.
To reproduce: mount via sshfs to another machine and load lyx document
from there. After that change some image which was loaded within
the document. The new monitor machiner does not catch it anymore.

gcc 4.9.4 & qt 4.8.


Thanks for testing. This is a limitation of inotify. For the same reason
you will not be warned if the file is modified externally until you try
to save it. The same happens with gedit. MacOS and Windows use other
backends so it might be different (but at best they will only tell about
modifications made from the same machine).

The previous FileMonitor worked by querying the modification time every
two seconds per graphics, and computing the checksum if the timestamp
changed. This is expensive especially over the network, and there is a
reason why inotify does not do it. On the other hand, for graphics, the
idea of the previous FileMonitor could be adapted to refresh graphics
when they appear on the screen (but stop doing it when they leave the
screen). In that case, I even wonder whether it is useful to use the 
file monitor for graphics files.


Guillaume



AGUTeX

2017-03-11 Thread Jean-Pierre Chrétien

Hello Scott,

Sorry to have committed an update of AGUTeX.lyx to master without asking (at 
ac06a541), I wanted to commit a small change in contrast with changes in fr.po.


I stressed that agutex.cls is an obsolete version of the class for AGU documents 
(and I was not able to find agutex.cls on the web), the class is now 
agujournal.cls. I changed also the AGU wikipage to reflect this change and give 
the right links to get the package:


http://wiki.lyx.org/Examples/AGUTeX

I'm currently working on a layout and template for the agujournal.cls class.

--
Jean-Pierre