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 72463 - Specification version missing for nb.org projects
Summary: Specification version missing for nb.org projects
Status: VERIFIED FIXED
Alias: None
Product: apisupport
Classification: Unclassified
Component: Project (show other bugs)
Version: 5.x
Hardware: All All
: P2 blocker (vote)
Assignee: Jesse Glick
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-02-09 12:40 UTC by Milan Kubec
Modified: 2006-03-24 15:45 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Milan Kubec 2006-02-09 12:40:19 UTC
[release50 FCS, JDK 1.5.0_06]

Adding Library dependency on modules Ant and Project UI API doesn't add
specification number to project.xml for nb.org projects (I mean projects under
nb.org CVS). When adding the same dependencies to nb modules that are not part
of nb.org CVS Specification number is correct - 3.24.1.1 for Ant and 1.13.1.5
for Project UI API. I was using Default platform for nb modules (those not under
nb.org CVS). It looks like it's happening only for modules with four numbers in
Specification number.
Comment 1 Jesse Glick 2006-02-09 17:47:21 UTC
True. ModuleEntry.getSpecificationVersion() is null for source modules which use
spec.version.base. ModuleList.scanPossibleProject should check for that.
Comment 2 Jesse Glick 2006-02-09 21:14:33 UTC
Note: patch reverts part of issue #72427.
Comment 3 Jesse Glick 2006-02-09 21:33:28 UTC
Would appreciate code review and QA verification that there no associated
regressions before merging.

Checking in
src/org/netbeans/modules/apisupport/project/universe/AbstractEntryWithSources.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/AbstractEntryWithSources.java,v
 <--  AbstractEntryWithSources.java
new revision: 1.4; previous revision: 1.3
done
Checking in
src/org/netbeans/modules/apisupport/project/universe/NetBeansOrgEntry.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/NetBeansOrgEntry.java,v
 <--  NetBeansOrgEntry.java
new revision: 1.7; previous revision: 1.6
done
Checking in src/org/netbeans/modules/apisupport/project/universe/ExternalEntry.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/ExternalEntry.java,v
 <--  ExternalEntry.java
new revision: 1.6; previous revision: 1.5
done
Checking in src/org/netbeans/modules/apisupport/project/universe/ModuleList.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/ModuleList.java,v
 <--  ModuleList.java
new revision: 1.27; previous revision: 1.26
done
Checking in src/org/netbeans/modules/apisupport/project/NbModuleProject.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/NbModuleProject.java,v
 <--  NbModuleProject.java
new revision: 1.137; previous revision: 1.136
done
Checking in
test/unit/src/org/netbeans/modules/apisupport/project/universe/ModuleListTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/universe/ModuleListTest.java,v
 <--  ModuleListTest.java
new revision: 1.16; previous revision: 1.15
done
Checking in
test/unit/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependencyTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependencyTest.java,v
 <--  ModuleDependencyTest.java
new revision: 1.5; previous revision: 1.4
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependency.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependency.java,v
 <--  ModuleDependency.java
new revision: 1.21; previous revision: 1.20
done
Comment 4 Martin Krauskopf 2006-02-10 09:51:31 UTC
1) This caused a regression that when you edit a dependency (no matter from
where) children in Libraries node are not refreshed. Since
Children.setKeys(Collection) merges currents with just set keys i.e. removes
non-present, adds new and *keep current*. So it will keep old ones - since there
is no difference between two different ModuleDependencies with the same CNB. But
this may be probably solved by better implementation of Libraries children.
(probably should be simple fix somewhere in LibrariesNode).

2) ModuleDependency.CNB_COMPARATOR is now redundant (is used in
ProjectXMLManager for sorting dependencies in project.xmlr). Now just used
natural ordering may be used.

Regarding of reverting 72427, I though that we should use CNB.eqauls(CNB) for
ModuleEntries in the same universe. For dependencies "ant r.v. 3" and "ant r.v.
2" should not be count as the same dependencies. This seemed clear to me. When
somebody wants to use different approach then there are
ModuleDependency.[CNB|LOCALIZED_NAME|...]_COMPARATORS (though does not work for
non-sorted sets). This was the reason. But....

"...AFAIK there will never be two MD's with the same code name base in one set
at once. And supporting lazy evaluation of the specification version..." is
true. And anybody may provide something like DETAILED_COMPARATOR.

I'm reopening this one as the fix needs to be polished to not cause that regression.
Comment 5 Jesse Glick 2006-02-10 18:13:41 UTC
I redid the patch to ModuleDependency. Hopefully should be better now.
Comparator can force resolution of spec version, but normally this won't happen;
specifically it does not happen inside the Add Module Dependency dialog, where
it was a problem without any patch. Again, review appreciated.

Checking in
test/unit/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependencyTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependencyTest.java,v
 <--  ModuleDependencyTest.java
new revision: 1.6; previous revision: 1.5
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependency.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependency.java,v
 <--  ModuleDependency.java
new revision: 1.22; previous revision: 1.21
done
Comment 6 Martin Krauskopf 2006-02-11 09:32:09 UTC
Reviewed
Comment 7 Jesse Glick 2006-02-14 19:51:06 UTC
Checking in
src/org/netbeans/modules/apisupport/project/universe/NetBeansOrgEntry.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/NetBeansOrgEntry.java,v
 <--  NetBeansOrgEntry.java
new revision: 1.6.2.1; previous revision: 1.6
done
Checking in
src/org/netbeans/modules/apisupport/project/universe/AbstractEntryWithSources.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/AbstractEntryWithSources.java,v
 <--  AbstractEntryWithSources.java
new revision: 1.3.2.1; previous revision: 1.3
done
Checking in src/org/netbeans/modules/apisupport/project/universe/ModuleList.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/ModuleList.java,v
 <--  ModuleList.java
new revision: 1.26.2.1; previous revision: 1.26
done
Checking in src/org/netbeans/modules/apisupport/project/universe/ExternalEntry.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/universe/ExternalEntry.java,v
 <--  ExternalEntry.java
new revision: 1.5.2.1; previous revision: 1.5
done
Checking in
test/unit/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependencyTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependencyTest.java,v
 <--  ModuleDependencyTest.java
new revision: 1.3.6.2; previous revision: 1.3.6.1
done
Checking in src/org/netbeans/modules/apisupport/project/NbModuleProject.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/NbModuleProject.java,v
 <--  NbModuleProject.java
new revision: 1.136.2.1; previous revision: 1.136
done
Checking in
src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependency.java;
/shared/data/ccvs/repository/apisupport/project/src/org/netbeans/modules/apisupport/project/ui/customizer/ModuleDependency.java,v
 <--  ModuleDependency.java
new revision: 1.19.2.2; previous revision: 1.19.2.1
done
Checking in
test/unit/src/org/netbeans/modules/apisupport/project/universe/ModuleListTest.java;
/shared/data/ccvs/repository/apisupport/project/test/unit/src/org/netbeans/modules/apisupport/project/universe/ModuleListTest.java,v
 <--  ModuleListTest.java
new revision: 1.15.2.1; previous revision: 1.15
done
Comment 8 pzajac 2006-03-24 15:45:17 UTC
verified in release50 cvs.