SlickEdit Community

SlickEdit Product Discussion => SlickEdit® => Topic started by: GaryFerland on December 06, 2017, 08:59:29 pm

Title: SlickEdit on MacOS
Post by: GaryFerland on December 06, 2017, 08:59:29 pm
I have the trial version of SlickEdit 2017 Pro and am on MacOS 10.13.1.  i have tried running vsdiff from the command prompt by including /Applications/SlickEditPro2017.app/Contents/MacOS on my path.  Mostly it works.

Two concerns, one a major usability issue.  The bigger problem is that the app does not save state when I quit.  In vsdiff go to options and under Date and Size Optimization I want (really want) "always compare files" when doing a directory comparison.  i . set this then click on "save options" and it works, until I quit the app.  When I restart it the options have gone back to "assume match if date and size match" which is fatal in what I am doing.  Is there a way to permanently set this option?

Another problem, possibly related, is the host of debug prints in the teminal used to launch it.  The first set are
2017-12-06 15:45:56.307 vs[39224:25971801] Got a gesture event of 18
2017-12-06 15:45:56.307 vs[39224:25971801] Got a gesture event of 30
2017-12-06 15:45:56.318 vs[39224:25971801] Got a gesture event of 18
2017-12-06 15:45:56.319 vs[39224:25971801] Got a gesture event of 30
2017-12-06 15:45:56.329 vs[39224:25971801] Got a gesture event of 30
2017-12-06 15:45:56.340 vs[39224:25971801] Got a gesture event of 30
2017-12-06 15:45:56.352 vs[39224:25971801] Got a gesture event of 18
2017-12-06 15:45:56.352 vs[39224:25971801] Got a gesture event of 30
2017-12-06 15:45:56.363 vs[39224:25971801] Got a gesture event of 18
2017-12-06 15:45:56.363 vs[39224:25971801] Got a gesture event of 30
2017-12-06 15:45:56.374 vs[39224:25971801] Got a gesture event of 18
2017-12-06 15:45:56.385 vs[39224:25971801] Got a gesture event of 18
2017-12-06 15:45:56.386 vs[39224:25971801] Got a gesture event of 30

and it ends with the following when I quit:
lightning ~:2017-12-06 15:47:30.276 vs[39253:25973757] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2017-12-06 15:57:12.945 vs[39253:25973757] modalSession has been exited prematurely - check for a reentrant call to endModalSession:

This last looks ominous and I wonder if it is related to the fact that vsdiff cannot save state?
thanks,
Gary
Title: Re: SlickEdit on MacOS
Post by: Clark on December 06, 2017, 11:01:09 pm
That option always seems to stay if I set it. Try pressing the "Save Options" button to save it immediately. I thought it also stayed if I changed the option and also did a diff. It will not stay if you change the option, don't press the "Save Options" button, then just exit.
Title: Re: SlickEdit on MacOS
Post by: gary_ferland on December 07, 2017, 02:12:30 am
Well, I have been doing "save" without effect. 
Are you launching vsdiff directly, from the command prompt, or some other way?  Do you sudo launch it or with normal permissions?  If from the command prompt do you get the string of errors I see?
thanks!
Gary
Title: Re: SlickEdit on MacOS
Post by: Clark on December 07, 2017, 02:40:09 am
I'm launching vsdiff from a terminal. I do get the modalSession error. I don't get the gesture event errors you're seeing (I'm on high Sierra 10.13.1).

I just noticed that sometimes when I press the "Save Options", the options don't get saved unless I do a diff. Try changing your settings and then diffing two files.

When running vsdiff, seems like clicking on the "Save Options" button does nothing other than switch to the Diff tab. You have to diff two files (or do a folder diff) to get your options saved when using vsdiff.

We will be looking into this.
Title: Re: SlickEdit on MacOS
Post by: gary_ferland on December 07, 2017, 01:00:50 pm
Thanks - doing the diff after setting options in a directory compare does indeed save state.  There is now only this debug statement in the terminal:
2017-12-07 07:56:38.554 vs[22175:3170996] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
Title: Re: SlickEdit on MacOS
Post by: Clark on December 07, 2017, 01:59:38 pm
The way vsdiff saves options isn't obvious. I think it does it this way because it has to save/restore your settings when you do a diff. It also saves diff history so you can go back and restore a previous diff (even if you don't explicitly name and save a session).

The modalSession error message is a Qt error message we haven't been able to work around.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on December 07, 2017, 03:55:05 pm
I am trying to use it on two systems, a Macbook Pro at home and an iMac at work.  The suggested trick did get vsdiff to save state on the laptop.  I have tried repeatedly and cannot get it to save state on the iMac.  Both machines are at MacOS 10.13.1

On the iMac this is what I did:
start vsdiff from the terminal, with two directories as the target
under options set always compare, and then save
do the diff of a couple of files
confirm options still correct
exit
restart with save directories
option has gone back to just checking size and time.

any other ideas?
Title: Re: SlickEdit on MacOS
Post by: Clark on December 07, 2017, 05:43:13 pm
We've been looking at this. It's not working right. The stand-alone "vsdiff" tool is supposed to work like using the file differencing menu item (Tools>File Difference) in SlickEdit. It's clearly not working the same. It's especially broken when setting options for diffing folders.

We will be working on a hotfix for this. Sorry this isn't working right.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on December 07, 2017, 09:27:37 pm
is there an ini file that I could edit to adjust it manually?

A couple of newbie questions - maybe you could point me to the right documentation.
The SlickEdit website says it offers debugging with both GCC and LLVM.  The Macs have apple command line tools LLVM and homebrew gcc-6.  LLVM does have a command line debugger but homebrew does not offer gdb.  How does Slickedit do debugging in this case?  Does it have its own Mac version of gdb with hooks into it from the IDE?  Does Slickedit provide a ddd-like graphical top end to both debuggers?

We are set up with gnu makefiles (not cmake).  Can SlickEdit ingest a standard makefile to control the build?

thanks!
Gary
Title: Re: SlickEdit on MacOS
Post by: Clark on December 07, 2017, 10:01:02 pm
I don't think there is a great workaround for the diff settings issue. It shouldn't take us long to fix this. We will update this post when we have something.

If homebrew gcc-6 generates objects that are compatible with gdb, then you should be able to get full debugging support for it using SlickEdit. SlickEdit ships with a gdb for macOS (macos/gdb). Try using it as a command line debugger. If that works, you should be able to use SlickEdits GUI debugger with it. As long as homebrew gcc-6 command line works similar to standard gcc, then you can also take advantage of all of SlickEdit's build support. After creating a GNU C/C++ project in SlickEdit, configure the compiler here (Project>Project Properties, choose the Tools tab, select the "Build" tool, Click "Options...", set the Compiler field in the Compiler tab).
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on December 08, 2017, 01:25:37 pm
Turns out there is a gdb available from homebrew - but getting it to work requires signing system security certificates, as described in the following:
https://sourceware.org/gdb/wiki/BuildingOnDarwin
Can SlickEdit only use the gdb that comes with it or can it use the homebrew version?  The SlickEdit gdb would likely need this same certificate signing process.

What compiler do most people use when developing with SlickEdit on MacOS?  The Apple command line tools LLVM?  Does SlickEdit have hooks into that version of the LLVM debugger?

What about the makefiles?
thanks!
Title: Re: SlickEdit on MacOS
Post by: Clark on December 08, 2017, 03:53:45 pm
You can configure the gdb that SlickEdit uses when debugging GDB projects.

SlickEdit doesn't provide anything for code signing.

Most people use clang on macOS but if you need to use GDB, it really won't make much difference. As for hooks into LLVM hooks, you can change the compiler used but you can't really replace the debugger (it would be a hack by replacing a shared library included with SlickEdit).

When you create a Clang or GNU project in SlickEdit, the wizard will ask you how you want to do your builds. One of the options is to use your on manually maintained makefile that you provide. The default option is not to use a makefile at all and use SlickEdit's build system. Another option is provided where SlickEdit generates the makefile and updates it for you (don't choose that for a pre-existing makefile).
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on December 08, 2017, 04:16:59 pm
so the simplest "working straight out of the box" experience would be to use clang++ and lldb?
thanks
Title: Re: SlickEdit on MacOS
Post by: Clark on December 08, 2017, 04:21:42 pm
For macOS, if you don't need to use GNU, use clang++. clang++ isn't any easier to use but I think it is a little faster. More people definitely use clang++ on macOS.
Title: Re: SlickEdit on MacOS
Post by: Clark on December 13, 2017, 02:40:44 am
22.0.1 now available.

Download 22.0.1 for the vsdiff fixes.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on January 17, 2018, 02:33:58 pm
coming back to this. 

The 22.0.1 update fixes the directory issues with vsdiff?

Has the C++ debugger been tested on macOS?  The gdb provided with the software did not seem compatible with the gcc obtained via homebrew.  The leaves the LLVM provided by Apple with the command line tools.  The IDE will work with the lldb debugger provided by Apple?

My trial license ran out in December.  Can I get another trial license for this version?

thanks!
Gary
Title: Re: SlickEdit on MacOS
Post by: SlickEdit Support on January 17, 2018, 03:34:13 pm
Trial License extension emailed to you Gary.

Best,
SlickEdit Support
Title: Re: SlickEdit on MacOS
Post by: gary_ferland on January 17, 2018, 08:38:50 pm
the new version did seem to install and slickedit itself launches.  But vsdiff from the command prompt has regressed, I get this error

Pro15 data:vsdiff Badnell_DR_17.txt badnell_dr.dat
Pro15 data:2018-01-17 15:33:27.697 vs[93595:23155721] modalSession has been exited prematurely - check for a reentrant call to endModalSession:

Then nothing else.  No window launches.

I had set the path to the app in .bashrc, so

 Pro15 data:which vsdiff
/Applications/SlickEditPro2017.app/Contents/MacOS/vsdiff

The OS is a fully patched current macOS running on a MacBook Pro mid 2015.
Title: Re: SlickEdit on MacOS
Post by: Clark on January 17, 2018, 10:35:07 pm
This isn't hot fixable. 22.0.2 will definitely fix this and will be available in about 2-3 weeks.

In the mean time, you'll need to run the diff from inside SlickEdit. Sorry for the inconvenience.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on February 28, 2018, 08:55:24 pm
Hi there,
Any updates on vsdiff for Mac?  Does it work now?
thanks,
Gary
Title: Re: SlickEdit on MacOS
Post by: Clark on February 28, 2018, 09:03:11 pm
Download 22.0.2. It’s available now
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on February 28, 2018, 10:49:22 pm
I saw the post of the hotfix but vsdiff & Macos were not mentioned.  Could I please get a temporary license to give it a try?  The workflow really does need a command line lauch of vsdiff.
thanks,
Gary
Title: Re: SlickEdit on MacOS
Post by: SlickEdit Support on February 28, 2018, 11:03:21 pm
Trial License for SlickEdit 22.0.2 emailed to you.

Best,
SlickEdit Support
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on March 01, 2018, 03:03:02 am
first success, vsdiff DID launch from the command prompt.  But with these errors:

Pro15 ~:vsdiff
Pro15 ~:2018-02-28 21:59:03.780 vs[12737:2114930] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-02-28 22:00:34.950 vs[12737:2114930] modalSession has been exited prematurely - check for a reentrant call to endModalSession:

Title: Re: SlickEdit on MacOS
Post by: Dan on March 01, 2018, 11:31:17 am
Did the dialog immediately close, or did it work?

I just checked the code and the fix certainly seems to be there.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on March 01, 2018, 06:35:46 pm
I have a Macbook Pro at home, which produced the above error.   This iMac at work produces much more verbose errors - see below.  In both cases, I launched vsdiff from the command line with no arguments.  Both have the current Macos and apple command line tools.  homebrew gcc is also installed.

lightning ~:vsdiff
lightning ~:objc[8734]: Class FIFinderSyncExtensionHost is implemented in both /System/Library/PrivateFrameworks/FinderKit.framework/Versions/A/FinderKit (0x7fffaf39eb68) and /System/Library/PrivateFrameworks/FileProvider.framework/OverrideBundles/FinderSyncCollaborationFileProviderOverride.bundle/Contents/MacOS/FinderSyncCollaborationFileProviderOverride (0x11e997cd8). One of the two will be used. Which one is undefined.
2018-03-01 13:29:53.839 vs[8734:42248869] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-01 13:30:06.280 vs[8734:42248869] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on March 01, 2018, 06:49:06 pm
launching vsdiff from the command line, with two different directories as the arguments, the right directory comes up "read only".  This is new to me and was not a problem in the older X11 Mac versions.  The "read only" option is greyed out so I cannot uncheck it.  I have full permissions in both directories.  The good news is that the app does launch.

the on-screen errors at as follows:
lightning LAMDA:vsdiff ~gary/cloudy/trunk/data/lamda/ 17_10_08_datafiles/
lightning LAMDA:2018-03-01 13:40:45.930 vs[8928:42330322] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-01 13:41:10.127 vs[8928:42330322] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-01 13:43:44.025 vs[8928:42330322] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-01 13:44:50.097 vs[8928:42330322] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
Title: Re: SlickEdit on MacOS
Post by: Clark on March 01, 2018, 08:26:10 pm
To work around the read-only issue click on the "Line Diff" button. Unfortunately, the "Line Diff" button isn't present for files which aren't color coding (like .txt files). To work around that issue, you need to turn off the "Source Diff" check box which is in the diff options (not accessible when in the diff dialog). We've identified this  handling of non-color coded files as a bug since it should be handling the files as if source diff was turned off.
Title: Re: SlickEdit on MacOS
Post by: Dan on March 02, 2018, 11:47:56 am
I put in a fix for this in the next hotfix.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on March 02, 2018, 11:11:38 pm
thanks - that seemed to do the trick.  In a few minutes of testing, no obvious show stoppers. 

Will these screen-filling errors be fixed, or is this now normal operation?
lightning LAMDA:vsdiff ~gary/cloudy/trunk/data/lamda/ 17_10_08_datafiles/
lightning LAMDA:2018-03-02 18:07:18.324 vs[26578:2155609] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-02 18:07:48.957 vs[26578:2155609] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-02 18:09:04.431 vs[26578:2155609] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
2018-03-02 18:09:09.626 vs[26578:2155609] modalSession has been exited prematurely - check for a reentrant call to endModalSession:
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on March 05, 2018, 10:03:54 pm
are these onscreen errors something that will be fixed, or is that the expected operation?
thanks,
Gary
Title: Re: SlickEdit on MacOS
Post by: Clark on March 05, 2018, 11:58:39 pm
At the moment, these Qt warnings are normal. We've looked into this in the past and haven't figured at work around for it. It does not mean anything actually didn't work. At some point, we modify the Qt source to simply remove the message. If it was our source, it would have been changed already.
Title: Re: SlickEdit on MacOS
Post by: GaryFerland on March 07, 2018, 09:28:39 pm
thanks for the help, I bought a professional license.  Sounds like I am the only one using it on a Mac?  I used it for years on Windows but have moved on to Macs, due to the need to be linux compatible.  The code i am developing has its big runs on MPI clusters.

I bought the license with one year of maintenance.  I do see the license in my accounts, but it says that the maintenance expired eight years ago.  The maintenance add-on did not kick in.  It is on the invoice.
thanks,
Gary
Title: Re: SlickEdit on MacOS
Post by: Rodney on March 08, 2018, 01:39:06 am
Maintenance expiration should be fixed on your web account now.

++rodney
Title: Re: SlickEdit on MacOS
Post by: Dan on March 08, 2018, 11:58:49 am
Sounds like I am the only one using it on a Mac?

I think our Mac user base has been growing pretty steadily since we got a native Mac version in version 17.  Before that we had an X11 product that ran on Mac and it wasn't as popular.