Bug 7795

Native SVN: Locked status of file is not shown 20 January, 2022

Robert Rahn
14 January, 2022
Product: PowerBuilder Category: IDE
Version: 2021 Build: 1311
Classification: Enhancement Publishing: Public
Priority: P3
Status: Scheduling Reason:
Communication Status: Waiting for Appeon
Robert Rahn 20 January, 2022
#7
Hi Tom,

thanks for the answer and for encouraging this feature to the devs. You are of course correct concerning merges. Sadly at this moment we have several very big objects with multiple changes a day from multiple developers. Merging can get very confusing for those files. Especially if we change method parameters and methods are reordered in the file. We are planning to decrease the size of those objects to enable us to switch to merging and probably use git later on.
For now i will just wait and hope we may receive a locked symbol until our code problems are fixed, because fixing those may take some time ... :-)

Best Regards,

Robert
Tom Jiang @Appeon 20 January, 2022
#6
Hi Robert,

The behavior you observed is not a bug. The SVN integration is designed  to work in offline mode. Similar to TortoiseSVN, it doesn't show the lock status of other users to the current workspace. But we do understand the benefits to have this feature. We've summited it to our development team to analyze if they can implement it in a future release. 

BTW, with the new SVN integration, you are encouraged to use the merge feature as opposite to traditional check out/check in process. In other words, you can still work on an object even when it is locked. After the lock is released from the other person, you can do an update on the object and it will merge the other person's changes automatically with your changes into the object in your workspace. 

We also suggest that you try the SVN diff and SVN Edit Conflicts on the workspace context menu that helps in the merging process whenever needed. 

Regards,

Tom Jiang
Robert Rahn 18 January, 2022
#5
- I have also reproduced this with another machine and another user. 
- I have tried using a newer version of VisualSVN locally and was able to reproduce this.
Chris Pollach @Appeon 17 January, 2022
#4
Hi Robert;

  Thank you for the extra information provided.

  I will now transfer this ticket over to the main Support / Engineering team for an SVN specialist to provide further feedback on this issue.

Regards .... Chris
Robert Rahn 17 January, 2022
#3
Hi Chris,

we are using  :

1. Apache Subversion version 1.9.3 (r1718519) 
2 . I followed the steps here : https://docs.appeon.com/pb2017r2/pbug/ch03s02.html. I dont know the correct name. To browse our repository and check file status i use TortoiseSVN 1.14 (r29080)
3. Currently i am evaluating if this SVN Plugin works for us. I will have to check with another developer. I will add the results as soon as i have more info :-)
Chris Pollach @Appeon 14 January, 2022
#2
Hi Robert;

  On my test PC using VisualSVN I can lock an object on one PB2021 IDE#1 and then after a REFRESH see the lock on PB2021 IDE #2

  Can you tell us  ....

1) What SVN software, version & build you are using?
2) What SVN client software, version & build you are using?
3) Do app PB developers have this issue?

Regards .... Chris
Robert Rahn 14 January, 2022
#1
svn_lock.PNG (57KB)

*Phenomenon:
If a file is locked in SVN by User A there is no icon to represent this lock on the object in User B's IDE.
If you try to get the lock of an already locked file there is a very small message shown in the Error tab at the Bottom that shows there was an error locking this file. Most of the time users will not see this, edit the file and not be able to commit later, because it is locked by another user.

*Reproduce Steps:
- Have two different workspaces that are connected to the same SVN Repo
- Open one with Powerbuilder instance A, right click an object in Tree View, click SVN Get Lock
- File is successfully locked (both shown in the tab at the bottom as well as in the SVN Repo Browser) as well as with an icon in PB IDE
- Open another Powerbuilder instance B, Check the object that was locked with Instance A
- a locked status is not represented by an icon
- Right click the object and click refresh 
- a locked status is not represented by an icon
- Right click the object and click SVN Update
- a locked status is not represented by an icon
- Right click the object and click SVN Get Lock
- The icon does not change, there is obvious error message displayed
- An error message is displayed at the bottom "Errors" tab that this file could not be locked.

Remarks:

Added a screenshot of Instance B's point of view after the reproduction steps above have been done.
OS:
All
Platform:
All
Database Type:
No database needed to reproduce
Database Version:
No database needed to reproduce