Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [subversive-dev] Some more bugs with "compare with branch"

Hello!

I was busy with all the planned API changes for the 4.0 version. So, for now I did just address a single issue that is related to the compare functionality in general (and could potentially be the cause of some of the problems you did encounter):
https://bugs.eclipse.org/bugs/show_bug.cgi?id=492399
As for details - the JavaHL API comparison function diffSummarize (and few others) do not support peg revisions (in all three major versions - from 1.7 to 1.9), so, they may fail in some cases (for example when resource was copied to another path after the last change to it was made). For that reason I added URL conversion code that should resolve URL to the state in which the selected revision could be accessed.

So, now I'll start checking the cases you suggested and try to find the way fix them. Then I plan to backport the fixes to the 3.0 plug-in version.

P.S.
4.0 version development now is in trunk:
https://dev.eclipse.org/svnroot/technology/org.eclipse.subversive/trunk

while 3.0 version development was moved to the branch:
https://dev.eclipse.org/svnroot/technology/org.eclipse.subversive/branches/3.0.x-bug-fix

27.04.2016 12:09, Florent Angebault пишет:
Hi!

As you suggested earlier ([1]) a good solution to those issues could be
to simplify the code by comparing the resources specified directly with
2-way comparision instead of 3-way comparison.

I'm currently trying to implement this by myself and I couldn't find any
working solution yet.
It seems that the whole subversive comparison API is designed to
manipulate only remote resources. Modifying the API to allow
manipulating local resources as well seems a huge refactoring hell.

Have you already investigated in that direction?


[1]: http://dev.eclipse.org/mhonarc/lists/subversive-dev/msg00269.html

Le 2016-03-06 07:50, Alexander Gurov a écrit :
Hi,

Thank you very much. I'll check everything and see what could and
should be done.

Best regards,
Alexander Gurov,
Subversive Team.

25.02.2016 15:34, Florent Angebault пишет:
Hi,

starting with subversive 3.0.4, we encountered a few bugs and glitches
that seem to come from the fix for bug [484929] (Weird behavior of the
"Compare with branch" feature).
Even though each of these problems should be declared as separate bug
reports I guess it would be interesting to have them all described
here
since they will probably be fixed all at once.

The attached file svnrepo.tar.gz is a sample svn repository that I use
to describe some of the use cases below.
All the tests were made with Eclipse Mars, SVNKit connector 1.8, under
linux (and sometimes under Windows when specified).


1. compare with branch lists files with no actual differences

This is already described in bug [326694].
To reproduce this, checkout the trunk from the attached svnrepo and
use
compare with branch -> 'mybranch'.
You'll see the file Main.java listed and when you double-click on it,
no
differences are shown.
I wrote a dirty patch for subversive-2.0.4 (see attached file
remove-false-diffs-from-compare-view.patch).


2. new local files are not listed

Before 3.0.4, comparing with a branch would list new local files in
compare editor.
This is not true anymore.
To reproduce this, create a new file, for instance src/Foo.java.
Then compare with branch "mybranch" once again and you won't see the
new
file listed in compare editor.

Adding the new file to version control solves the problem and is
actually the behavior of the svn command line client (which I consider
as a reference).
But I'm afraid users will consider this is a regression however.


3. changes with wrong direction

As said in a previous discussion ([msg00269] and [msg00273]) the patch
is not perfect because we loose the information concerning the
"direction" of changes.
Is there a way to improve this?
I think it really needs to be fixed because it can be really
confusing.


4. a file existing in branch but not in trunk

A file existing in branch but not in trunk is listed as outgoing
deletion.
Then double-clicking it throws popup with this message:
      Get content for 'Baz.java' failed.
      svn: E200005: '/tmp/eclipse/ws/fakeproject/src/Baz.java' is not
under version control


5. NPE on windows

This is the bug already reported as [SVNKIT-646].
I recently attached a patch to the bug report (I forgot to create an
account before posting therefore my comment was posted as user Guest).


I'm happy to help on these topics.
Actually I already created some patches for our customers using
subversive 2.0.4 as you can see.
But I'm not 100% confident on these patches because Eclipse is a big
piece of software and I'm still new to plugin development.


[326694]: https://bugs.eclipse.org/bugs/show_bug.cgi?id=326694
[484929]: https://bugs.eclipse.org/bugs/show_bug.cgi?id=484929
[msg00269]:
http://dev.eclipse.org/mhonarc/lists/subversive-dev/msg00269.html
[msg00273]:
http://dev.eclipse.org/mhonarc/lists/subversive-dev/msg00273.html
[SVNKIT-646]: https://issues.tmatesoft.com/issue/SVNKIT-646


--
Best regards,
Alexander Gurov,
Subversive Team.



Back to the top