unifying libdiff2

Jeremy Whiting jpwhiting at kde.org
Fri Jul 12 01:05:09 UTC 2013


Step 1 is complete more or less.  I have created libdiff2 git repo
(currently at scratch/whiting/libdiff2.git) by taking kompare and doing the
following (documenting here since I'll likely need to repeat these steps at
some point)
git checkout -b KDE/X.Y origin/KDE/X.Y for all branches.
git filter-branch --subdirectory-filter libdiff2 --tag-name-filter cat --
--all
then cloning the result with file:/// url to not get the unused objects.

The result is a libdiff2 git repo that only has libdiff2 changes and files.
It includes all tags and branches, however it doesn't build.  There's
currently code in libdiff2 that wants files from other libraries in kompare
(diffsettings.h, kompare_part.h, etc.)  These will need to be removed but
I'd like input from kompare developers on how this should happen before I
make any changes.

thanks,
Jeremy


On Wed, Jul 10, 2013 at 3:39 AM, Aleix Pol <aleixpol at kde.org> wrote:

> On Wed, Jul 10, 2013 at 7:31 AM, Jeremy Whiting <jpwhiting at kde.org> wrote:
>
>> Hello all,
>>
>> Since kdesdk has now safely migrated from svn to git, I thought it would
>> be a good time to get this ball rolling again.  I just reread this thread
>> and would like to suggest the following:
>>
>> 1. Move libdiff2 out of kompare.git into it's own git repository just
>> within kdesdk on projects.kde.org
>> 2. Make sure libdiff2 installs header files and CMakeConfig file, etc. so
>> it can be easily used by kompare, okteta, kdevplatform patchreview plugin,
>> and anything else that wants to use it. (Not sure if this is already the
>> case, Kevin or Konstantin, you guys would know better, or I can investigate)
>> 3. Make kdevplatform patchreview plugin use the new libdiff2 that has
>> everything properly exposed.
>> 4. Review the difference between the two copies of libdiff2 to see if any
>> changes in the kdevplatform copy should be merged into the main one in
>> kdesdk
>> And lastly, nuke the libdiff2 folder in kdevplatform.git
>>
>> Suggestions, questions, or answers to any of the above welcome.
>>
>> thanks,
>> Jeremy
>>
>>
>> On Sun, Dec 11, 2011 at 2:54 PM, Aleix Pol <aleixpol at kde.org> wrote:
>>
>>> Hi Jeremy,
>>> What's the status on this one?
>>>
>>> Aleix
>>>
>>>
>>> On Sat, Oct 29, 2011 at 5:35 PM, David Nolden <
>>> david.nolden.kdevelop at art-master.de> wrote:
>>>
>>>> I was the one who once forked libdiff2 many years ago (probably around
>>>> 2007 or so), and it was mainly for comfort reasons, because libdiff2
>>>> would have needed a quite big refactoring to be nicely usable by both
>>>> Kompare and KDevelop:
>>>> * libdiff2 was a static library living in a subdirectory of the at
>>>> that time unmaintained kde4 kompare port
>>>> * libdiff2 contained a lot of UI code, while we were only interested
>>>> in the 'model' code (that's why I commented out quite a bit of stuff)
>>>>
>>>> While it is nice to share some code, I'm also not in favor of adding
>>>> huge dependencies like 'whole kdesk'.
>>>>
>>>> Having the code shared can also make life significantly harder
>>>> regarding changes in the library: How should the correct versions of
>>>> the library and the application be synced together? We experience this
>>>> again and again through the split between kate and kdevelop. Therefore
>>>> we should ask the question whether KDevelop and Kompare really have so
>>>> much in common, that they will actually _profit_ from each others
>>>> potential future improvements in a shared libdiff2. The word 'fork' is
>>>> often interpreted more evil than it actually is. ;-)
>>>>
>>>> Greetings, David
>>>>
>>>
>>>
>>
> Hi,
> As I've said before, I'd welcome such merge. I'm mostly concerned with
> losing features or introducing new bugs, we should make sure that this
> doesn't happen.
>
> Additionally, if the library can be split between Core and Gui (for
> example :D) it could also be helpful, but we can review this further in the
> future, when the library is in place.
>
> Thanks Jeremy!
> Aleix
>
> PS: Sent again because the e-mail for the kdevelop mailing list was
> outdated.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20130711/96ad1096/attachment-0001.html>


More information about the KDevelop-devel mailing list