This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 268813 - There should be a provider for VCS forbidden folders
Summary: There should be a provider for VCS forbidden folders
Status: VERIFIED FIXED
Alias: None
Product: versioncontrol
Classification: Unclassified
Component: Code (show other bugs)
Version: Dev
Hardware: All All
: P3 normal (vote)
Assignee: Vladimir Kvashin
URL:
Keywords: API_REVIEW
Depends on:
Blocks: 268772
  Show dependency tree
 
Reported: 2016-11-03 19:14 UTC by Vladimir Kvashin
Modified: 2016-12-14 14:19 UTC (History)
3 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Proposed patch (4.85 KB, patch)
2016-11-03 19:14 UTC, Vladimir Kvashin
Details | Diff
We would also need an additional patch that deprecates org.netbeans.modules.versioning.util.Utils.isForbiddenFolder(String) and changes it to isForbiddenFolder(File) (7.97 KB, patch)
2016-11-03 19:31 UTC, Vladimir Kvashin
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Kvashin 2016-11-03 19:14:09 UTC
Created attachment 162755 [details]
Proposed patch

Now there is a notion of forbidden folders (see org.netbeans.modules.versioning.core.Utils.isForbiddenFolder). 

But the only way of setting these folders is via setting the system property "versioning.forbiddenFolders" (which usually is done via  -J-Dversioning.forbiddenFolders command line parameter).

There should be a more flexible way of determining forbidden folders. For example, I have a way of determining automount directories for each particular remote host - but can not share this knowledge with VCS core.

So the proposal is to add an SPI - VCSForbiddenFolderProvider - see the proposed patch.
Comment 1 Vladimir Kvashin 2016-11-03 19:31:29 UTC
Created attachment 162756 [details]
We would also need an additional patch that deprecates org.netbeans.modules.versioning.util.Utils.isForbiddenFolder(String) and changes it to isForbiddenFolder(File)
Comment 2 Vladimir Kvashin 2016-11-17 11:48:12 UTC
Dear api review
Comment 3 Ondrej Vrabec 2016-11-17 12:26:48 UTC
I have no objection against that, especially when versioning.core is a friend API (at least I think it is).
Comment 4 Vladimir Kvashin 2016-11-17 15:23:18 UTC
Ondra, thank you for fast response.
So I can push it into cnd-main, correct?
Comment 5 Ondrej Vrabec 2016-11-17 18:03:03 UTC
(In reply to Vladimir Kvashin from comment #4)
> So I can push it into cnd-main, correct?
Right. You may push it.
Comment 6 Vladimir Kvashin 2016-11-21 12:55:09 UTC
I was going to push it into cnd-main, but faced the following question.

The problem is that we need this badly for the upcoming release of Oracle Developer Studio. This release will be based on 8.2.x

My plan was to first it into cnd-main, then, after changes are verified in trunk, come to an agreement and backport it releases.

The problem is that the new interface should have something in "since". 

In trunk the module spec version is    1.31.1
In releases/release82 spec version is  1.30.1

I propose that I do the following:

- Integrate into trunk (cnd-main), upgrade spec version to 1.31.2, set this version in "since". 

- After the changes are verified in trunk and backported into releases, module spec version in releases becomes 1.30.2, and I change "since" to 1.30.2 (both in trunk and releases).

Changing "since" is basically not right thing to do, but changing it "back" after backporting is OK, I think.

Do you have objections?
Comment 7 Ondrej Vrabec 2016-11-21 13:08:30 UTC
(In reply to Vladimir Kvashin from comment #6)
> Do you have objections?
Just one, trunk module version should not be 1.31.2 but 1.32 AFAIK. The third version number is reserved for backports only: supposed to change only in release updates.
So change trunk to 1.32 or 1.31.1.1. And in the release82 branch change it to 1.30.2 Besides this updating @since when backported makes sense.
Comment 8 Vladimir Kvashin 2016-11-21 14:36:55 UTC
Agreed.

Just to understand each other correct: starting from 684b6b084445 (July 22 2015) there are 3 digits in versioning.core spec version. But last number in trunk is always 0.  So in trunk I'll upgrade to 1.32.0 instead of 1.32 

Please correct me if I'm wrong.
Comment 9 Vladimir Kvashin 2016-11-25 17:07:55 UTC
I've pushed changes into cnd-main
http://hg.netbeans.org/cnd-main/rev/79ea0e10d247
http://hg.netbeans.org/cnd-main/rev/fc843f9149ff
Comment 10 Vladimir Kvashin 2016-11-25 18:47:36 UTC
We need this in the 8.2 patch because the upcoming release of Oracle Developer Studio will be based on 8.2.x. So as soon as the fix gets to main-silver and I double check that everything works as expected and nothing is broken, I'm going to backport it into releases/release82
Comment 11 Quality Engineering 2016-11-27 02:51:28 UTC
Integrated into 'main-silver', will be available in build *201611270001* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)

Changeset: http://hg.netbeans.org/main-silver/rev/79ea0e10d247
User: Vladimir Kvashin <vkvashin@netbeans.org>
Log: Fixed #268813 - There should be a provider for VCS forbidden folders - code changes