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 101017 - User should only need to accept distinct licenses
Summary: User should only need to accept distinct licenses
Status: RESOLVED FIXED
Alias: None
Product: platform
Classification: Unclassified
Component: Plugin Manager (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker (vote)
Assignee: Jiri Rechtacek
URL:
Keywords: REGRESSION
Depends on:
Blocks: 102289
  Show dependency tree
 
Reported: 2007-04-13 20:28 UTC by Jesse Glick
Modified: 2007-09-13 18:23 UTC (History)
3 users (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 Jesse Glick 2007-04-13 20:28:50 UTC
070413. When updating many modules that only use one or two licenses among them,
only one copy of each distinct license should be displayed.
Comment 1 Jiri Rechtacek 2007-04-24 16:33:34 UTC
AFAIK only once approved per each license is required. It's worksforme. Please
describe a test-case to reproduce if I'm wrong. Thanks
Comment 2 Jesse Glick 2007-04-24 18:17:14 UTC
Start 070424 on fresh user dir. Run Plugin Manager. Under Developing NetBeans,
check netbeans.org Source Browser and System Properties, click Install. Click
Next. The "Display license for" combo has two entries, even though both modules
share the exact same license (the default CDDL). If you are asking the user to
"accept the terms in all license agreements" then you should not show the same
license agreement several times.
Comment 3 Jiri Rechtacek 2007-04-25 13:47:04 UTC
It's UI decision to show License agreement for each installed plugin but an user
has the possibility to approve all license at once. As same license as was
approved won't be show again (in running IDE session).
Comment 4 Jesse Glick 2007-04-25 17:51:04 UTC
This is no good, IMO.

1. It is perfectly normal to be downloading a dozen or more modules at once, all
of which have the same license (e.g. plain CDDL). The current wizard shows them
all as distinct entries. This is confusing and wrong.

2. Remembering which licenses have been approved in the same IDE session, with
no persistence, is nearly useless. All updates will normally involve an IDE
restart anyway.

3. It is no excuse that the user can approve all licenses at once. In fact I
think this is poor UI and a regression from the older Update Wizard. If you are
going to accept a bunch of licenses and be sure you will not be sued or
imprisoned, you need to at least see them all, meaning you need to select each
item from the combo box in sequence. Which would be cumbersome enough (compared
to just hitting the Enter key once for each new license, as in the old wizard)
without #1 and #2, but much worse with those problems too.

I recommend the following UI: one wizard panel is shown per distinct license
text which has never been accepted before (keep an SHA-1 hash of license text in
NbPreferences), with that license in a scroll pane below some text such as "By
continuing, you indicate agreement with the following license terms:". The panel
also shows the list of modules in the current download set which use that
license. "Next >" moves to the next panel, accepting the license ("Cancel"
obviously declines it). In the normal case that someone agrees with each
license, they can breeze through them by just hitting Enter repeatedly, but
everyone will at least see each license once. Could also have a checkbox
indicating explicit acceptance of the license, but I don't know if it's
necessary, and it would make the wizard slower to use.

BTW I think you meant WONTFIX, not WORKSFORME, since the problem is easily
reproducible.
Comment 5 Jiri Rechtacek 2007-09-12 20:29:28 UTC
Fixed in beta1.
Comment 6 Jesse Glick 2007-09-13 18:23:10 UTC
Better. We may eventually need to enhance the Info.xml & UC.xml format to allow you to specify multiple licenses per
NBM, as you see too many distinct licenses when you update a number of lib wrapper modules at once, even if they are all
using (e.g.) Apache-2.0 license.