Re: [Lazarus] Debugging on macOS

2019-03-09 Thread Martin Frb via lazarus

On 09/03/2019 18:25, Zoë Peterson via lazarus wrote:
Are there still obvious optimizations/improvements to be done with the 
"LLDB with fpdebug" debugger on macOS? We're on trunk and it's largely 
not usable right now.  I'm sure it has something to do with the size 
of our project, but it currently has random, lengthy hangs when doing 
things like single stepping.  If I wait long enough it does eventually 
come back, but it is very much in the range of "Is this hung?" and not 
just sluggish.  It adds 10+ seconds to actually launching the app too, 
which is unpleasant, but at least something I can expect and work around.



It all depends on usable bug/issue reports.

There are steps on how to generate a logfile.
http://forum.lazarus-ide.org/index.php/topic,42869.0.html

Startup is known to take some time. Both the IDE, and lldb need to parse 
the debug info, and both take some time to do so. (both running in 
parallel threads for this).
To speed up, make sure that you disable debug info for any package, you 
do not need to step into.


In case of hangs while stepping, it would be useful to know the 
start/endpoint (file/line). So it can be found in the log.


It may be the debugger is evaluating locals, watches or stack, and that 
any of them have large objects.
1) Do you have locals/watches windows open? Are there any variables that 
may have a bigger size? Or objects with plenty of strings?

2) Try to
 - close the locals window
 - close or disable the watches window
 - open the history window, and disable it (this is important, for else 
it will go and start reading locals and watches)


When you press step, the debugger will (should?) abort reading locals 
and watches. But it will only do so between 2 watches.

If a single watch takes a lot of time, this may add delays.


If it is for speed only, you can try the lldb without fpdebug (there is 
a package under components/lazdebuggers/lazdebuggerlldb  ; with NO "fp" 
in it)

This package comes "as is".
All watches expect lldb readable (c-style) input: form1->fvalue
And results are displayed as llbd likes.

But for an object with lots of strings, lldb gets the entire value. THe 
IDE only needs to do a single request.
FpDebug, needs to first read the mem of the object, and because strings 
are pointer, it then needs a further request to lldb for each string.




--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] Debugging on macOS

2019-03-09 Thread Zoë Peterson via lazarus
Are there still obvious optimizations/improvements to be done with the 
"LLDB with fpdebug" debugger on macOS? We're on trunk and it's largely 
not usable right now.  I'm sure it has something to do with the size of 
our project, but it currently has random, lengthy hangs when doing 
things like single stepping.  If I wait long enough it does eventually 
come back, but it is very much in the range of "Is this hung?" and not 
just sluggish.  It adds 10+ seconds to actually launching the app too, 
which is unpleasant, but at least something I can expect and work around.


--
Zoë Peterson
Scooter Software

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] How to increase the font size of the content of Project Inspector

2019-03-09 Thread Anthony Walter via lazarus
In the event you're having a problem seeing an item, this a brief overview
of how the application explorer works.

Application Explorer takes all components owned by the global Application
instance and enumerates them recursively. It then presents those components
in a tree view, where the child nodes are components owned by the parent
component.

So if component is not found by either component name or type name in the
search function, then the component you are searching for either has not
been created or is not in the ownership chain of the global Application
instance,

It may make sense to review the IDE source code and make sure that all
forms and the related components they create set the owner argument in
their constructor to something other than nil. For both consistency and
safety. We don't want to end up with any orphaned components being created.
As such the tool under discussion might be helpful for people who work on
the IDE so they can correct this issue among other things.
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] How to increase the font size of the content of Project Inspector

2019-03-09 Thread Dennis via lazarus



Anthony Walter via lazarus wrote:

Try doing this:

https://cache.getlazarus.org/videos/font-size.mp4




It is strange that on my Lazarus 2.0 Win64, the search on "project" does 
not show Project Inspector like your video in Ubuntu



Maybe the App.Explore works differently in win 64 Lazarus. :-(

Dennis
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus