Komodo / KomodoEdit

Komodo Edit is a fast and free multi-language code editor. Written in JS, Python, C++ and based on the Mozilla platform.
http://www.komodoide.com/komodo-edit
Other
2.16k stars 303 forks source link

Filemerge Pops Up Every Time a VCCS function is called #1332

Open andresrs opened 8 years ago

andresrs commented 8 years ago

Short Summary

When the Filemerge utility is set up as the diff command for Subversion (as described here), Komodo IDE constantly opens the Filemerge window.

Steps to Reproduce

  1. Set up Subversion to use Apple's Filemerge as its diff command.
  2. Wait for the 15 minute SVN check status.
    OR
  3. Interact with the Version Control pane.
    OR
  4. Save a file

    Expected results

    • Behind the scenes changes on the 15 minutes status check.
    • Allow interaction with Version Control pane.
    • Nothing visible during the Save.

      Actual results

Filemerge window pops up on every interaction.

Platform Information

Komodo Edit or IDE? IDE
Komodo Version? 10.0.0-alpha1, build 88986
Operating System (and version)? Mac OS X 10.11.4

Additional Information

-- eg. Error logs, screenshots, workarounds --

Naatan commented 8 years ago

The issue here is that you're using a desktop app to perform the diff. The svn feature that allows you to use an alternative diff command is intended to return the diff output, not launch an app. If you wish to use a GUI to perform a diff then you should ideally use a GUI to actually view the diff to begin with. Alternatively you could set up an alias that passes the svn diff output right into filemerge.

Either way, this is not an issue in Komodo but rather with your configuration.

andresrs commented 8 years ago

That's what I understand I was doing. I set up the ~/.subversion/config file to use Filemerge. Internally, Komodo is calling svn diff either on the trunk, or on the opened files, when there's no need for a diff. The new Check for status changes from outside of Komodo functionality could be using svn status instead of the svn diff.

Edit: I don't have this problem with Komodo IDE 9.

Naatan commented 8 years ago

I've responded to the other ticket you created, but let's use this one for any further comments.

Edit: I don't have this problem with Komodo IDE 9.

Komodo 9 doesnt have a version control widget.

Again the issue here is created due to your configuration of SVN. You are using SVN in a way that it was not intended to.

andresrs commented 8 years ago

If, as you mention in #1334, it's not possible to use svn status, perhaps svn diff --internal-diff (source)? I can't find the version control widget source code, so I can't see what it's using the svn diff for and if this option would fix the issue.

I don't think the way I'm using SVN is unintended, since the official documentation goes into details explaining how to set up external diff tools in general, and the fmdiff wrapper has been mentioned in the old Komodo forums.

Naatan commented 8 years ago

That article actually explicitly calls out what I'm saying:

It didn't take long for folks to realize that having such easy configuration mechanisms for specifying that Subversion should use the external GNU diff and diff3 utilities located at a particular place on the system could be applied toward the use of other differencing tools, too. After all, Subversion didn't actually verify that the things it was being told to run were members of the GNU diffutils toolchain.

The fact remains that svn commands are not meant to run any GUI utilities.

However it does appear that this is a widely "abused" feature of SVN, as such we should handle it properly. --internal-diff does look like a good option.

Naatan commented 8 years ago

Targeted this for 10.1 as it would need additional logic that checks the SVN version. Sadly the --internal-diff argument is not available in SVN 1.6 and before.

tonyattwood commented 8 years ago

Hi,

I think I 've just found some information that may be helpfull to you, read it here please http://example.ronbuckner.com/e4odb

Sincerely yours, tony.attwood@ntlworld.com

tonyattwood commented 8 years ago

Hello!

Just take a look at these awesome creatures, I love them! More info here http://jodelyce.checkthisshitout.net/e4eoc

Bests, tony.attwood