After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 644811 - Add support for fossil
Add support for fossil
Status: RESOLVED FIXED
Product: meld
Classification: Other
Component: general
unspecified
Other All
: Normal enhancement
: ---
Assigned To: meld-maint
meld-maint
Depends on:
Blocks:
 
 
Reported: 2011-03-15 10:58 UTC by Jan Danielsson
Modified: 2011-03-19 03:25 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
vc plugin for fossil support (6.07 KB, application/octet-stream)
2011-03-15 10:58 UTC, Jan Danielsson
  Details
Slightly updated patch (according to suggestions) (6.03 KB, patch)
2011-03-17 11:44 UTC, Jan Danielsson
none Details | Review

Description Jan Danielsson 2011-03-15 10:58:01 UTC
Created attachment 183416 [details]
vc plugin for fossil support

Attached is a plugin which adds support for the fossil source management system (http://www.fossil-scm.org/). This fossil plugin is heavily based on the monotone.py plugin.

I must admit I didn't fully put the time and effort into fully understanding the vc plugin system, so someone should take a quick look at it to see if there are any obvious problems.

The somewhat limited tests I have run have worked fine (it detects newly added files, modified files, deleted files, and diffing files works).
Comment 1 Kai Willadsen 2011-03-17 08:22:53 UTC
As it's not attached as a patch, I can't use the usual bugzilla patch review stuff, so I'm just giving initial comments here. These are based just on the code, not on testing the VC functionality.

__init__ reinitialises stuff defined at the class level for no apparent reason. It's also not immediately obvious why it has to call normpath?

Please remove unused/unsupported code rather than commenting it out.

_get_dirsandfiles appears to hardcode '/' as a path separator. I know some VCs do this on windows, etc., so I'm just checking that that was intentional. Also, the conditional test on the empty directory ignorelist should go.

Finally, I know that the code you're basing this plugin on might have bad white space habits, but all of the pre-PEP8 code in Meld is slowly being fixed, so please try to keep to that coding style. Specifically, from the patch: a line between functions, wrap at column 80, spaces after commas, no spaces immediately inside braces, etc.
Comment 2 Jan Danielsson 2011-03-17 11:44:33 UTC
Created attachment 183622 [details] [review]
Slightly updated patch (according to suggestions)

Removed some commentified dead code. PEP8:ified (although not perfect; I'm not 100% sure how long strings are supposed to be handled -- backslash continuation for long lines is apparently not the preferred way). Removed normpath() (no idea why it was there, nor do I know if there are any side-effects from its removal; it came with the original monotone plug-in).

I'll need to check how path separator characters are handled in fossil on Windows, so there might be an updated patch for that. Apart from the potential path separator issue, are there any more problems in this patch which should be fixed/polished?
Comment 3 Kai Willadsen 2011-03-19 03:25:33 UTC
Looks good. I fixed a couple of minor issues, checked that the basics worked, and pushed the result. Thanks very much for the patch (and yes, this will go into the next release).