Bug 77200 - [npapi] Master bug to synchronize with npapi-sdk
Summary: [npapi] Master bug to synchronize with npapi-sdk
Status: UNCONFIRMED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: All All
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on: 40782 40783 67675 40785 77297
Blocks: 38666
  Show dependency treegraph
 
Reported: 2012-01-27 04:05 PST by vanuan
Modified: 2012-01-29 07:41 PST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description vanuan 2012-01-27 04:05:21 PST
Currently WebKit maintains its own npapi headers set. And it is difficult to use is for plugin development.
Is there any possibility to use official npapi-sdk svn and synchronize with it? http://code.google.com/p/npapi-sdk/

I saw several bugs with patches to do that, but none of them succeeded.

I'll try to gather all related bugs here.
Comment 1 vanuan 2012-01-27 04:19:12 PST
Existing bug https://bugs.webkit.org/show_bug.cgi?id=38666 is resolved as fixed, but it is not. And I wouldn't close this bug until headers from http://code.google.com/p/npapi-sdk/ are taken from its trunk (maybe with help of svn externals).
Comment 2 Stuart Morgan 2012-01-27 04:35:29 PST
> And it is difficult to use is for plugin development.

Why would you use it for plugin development? The whole point of the npapi-sdk project is that plugin developers can (and should) use those headers instead of using one random browser's headers.

> Existing bug https://bugs.webkit.org/show_bug.cgi?id=38666 is resolved as fixed, but it is not.

FWIW, I closed that bug because I got from "wildly different" (to the point that diffing the files was essentially meaningless) to "specific points of divergence", after which point having a meta-bug was not particularly useful.

> And I wouldn't close this bug until headers from http://code.google.com/p/npapi-sdk/ are taken
> from its trunk (maybe with help of svn externals).

That makes this bug uncloseable. Source-compatibility is not a requirement for the npapi-sdk project, which means that if a project always pulls trunk then it is subject to breakage at any moment for reasons beyond its control. It also makes building a specific older revision of the project as it existed at that time impossible. Doing that in WebKit would be a *terrible* idea. The best-case scenario for browser vendors would be to pull specific revisions, using something like Chromium's DEPS system.
Comment 3 vanuan 2012-01-27 05:03:19 PST
>> Source-compatibility is not a requirement for the npapi-sdk project
>> The whole point of the npapi-sdk project is that plugin developers can (and should) use those headers instead of using one random browser's headers.

Well, you may be right, but as specified in https://wiki.mozilla.org/NPAPI#NPAPI_SDK the goal of this project is to use the header files to develop not only NPAPI plugins, but browsers as well. And "[they] are working on standardizing [headers] (the major differences are source-compatibility issues)." Did I misunderstand something?

>> The best-case scenario for browser vendors would be to pull specific revisions, using something like Chromium's DEPS system.

Yes, of course I meant to pull the specific revision from the "trunk" folder.
Comment 4 Stuart Morgan 2012-01-27 05:56:24 PST
(In reply to comment #3)
> Did I misunderstand something?

No, "the whole point" was poor word choice. npapi-sdk has a few major goals:
1) Have a single source of "truth" for these headers, which is always up to date with the latest NPAPI spec changes.
2) Give plugin developers a single source for headers that they should use in development
3) Make it easy for browser developers to maintain their headers.

The less forking there is in the browser sources, the easier 3 is for the browser vendors, thus bug 38666 and follow-ups (and all the similar work I did in Chromium).


I'm not arguing that continuing unforking is a bad idea; obviously I don't think that or I wouldn't have filed the follow-up bugs. I'm just confused about the assertion that doing so would help plugin development; given 1 and 2, plugin developers should *not* be using the WebKit project as a source of NPAPI headers. There shouldn't be any reason for anyone not maintaining the WebKit NPAPI implementation to care about WebKit's copies of these headers at this point.