Closed
Bug 392475
Opened 17 years ago
Closed 17 years ago
Build Venkman as an extension for XUL (toolkit) based apps
Categories
(Other Applications Graveyard :: Venkman JS Debugger, defect)
Other Applications Graveyard
Venkman JS Debugger
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: standard8, Assigned: standard8)
References
Details
Attachments
(1 file)
8.08 KB,
patch
|
timeless
:
review+
|
Details | Diff | Splinter Review |
This patch will let SeaMonkey (and other toolkit based apps) build Venkman into the extensions/ directory, as well as maintaining the existing makexpi.sh build process for other delivery methods. SeaMonkey needs this to be able to make Venkman an optional install in the 2.0.* builds just like it was before. It'll also be nice to have a proper entry in the add-on manager. Some of this was based on the ideas in bug 351715 (the chatzilla version). Just let me know if you don't like anything. I'll deal with packaging/installer updates in another bug.
Attachment #276987 -
Flags: review?(silver)
Updated•17 years ago
|
Attachment #276987 -
Flags: review?(silver)
Assignee | ||
Comment 1•17 years ago
|
||
James, any particular reason why you cancelled the review on this? It'd be useful to know what I need to do to make this happen (or if there's another bug around). Thanks.
Comment 2•17 years ago
|
||
I am no longer working on Venkman within the confines of mozilla.org and associated.
Assignee | ||
Comment 3•17 years ago
|
||
Comment on attachment 276987 [details] [diff] [review] Build Venkman as an extension v1 timeless, would you be able to review this (see above comments)?
Attachment #276987 -
Flags: review?(timeless)
Comment on attachment 276987 [details] [diff] [review] Build Venkman as an extension v1 INSTALL_EXTENSION_ID that this isn't a thing you can easily change (ala version.txt) bothers me +# Make Mozilla Suite / SeaMonkey 1.0/1,1 updates. 1,1 => 1.1 ?
Attachment #276987 -
Flags: review?(timeless) → review+
Assignee | ||
Comment 5•17 years ago
|
||
Patch checked in, I made the 1.0/1,1 into 1.x as suggested by KaiRo on irc.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Comment 6•17 years ago
|
||
timeless: INSTALL_EXTENSION_ID should be a constant for the whole lifetime of venkman, actually.
Comment 7•17 years ago
|
||
I'm getting an alert on startup, do I need to clean up my chrome or something? JS stack follows: 0 [native frame] 1 showMessage(titleKey = "malformedRegistrationTitle", titleParams = , messageKey = "malformedRegistrationMessage", messageParams = SeaMonkey) ["file:///C:/mozilla/dist/bin/components/nsExtensionManager.js":825] extensionStrings = [xpconnect wrapped nsIStringBundle @ 0x4255680 (native @ 0x4253db0)] title = "Chrome Registration Failed" message = "SeaMonkey could not install this item because of a failure in Chrome Registration. Please contact the author about this problem." ps = [xpconnect wrapped nsIPromptService @ 0x425caa8 (native @ 0x425d458)] this = [object BackstagePass @ 0xe41a88 (native @ 0xcae95c)] 2 anonymous() ["file:///C:/mozilla/dist/bin/components/nsExtensionManager.js":1821] manifestFile = [xpconnect wrapped (nsISupports, nsILocalFile, nsIFile, nsILocalFileWin, nsIHashable) @ 0x424eb40 (native @ 0x424e938)] chromeDir = [xpconnect wrapped (nsISupports, nsILocalFile, nsIFile, nsILocalFileWin, nsIHashable) @ 0x424f8d0 (native @ 0x424f6c8)] manifestURI = [xpconnect wrapped nsIURI @ 0x4250c58 (native @ 0x42507e4)] files = [xpconnect wrapped nsISimpleEnumerator @ 0x4250e20 (native @ 0x1237938)] file = [xpconnect wrapped nsIRDFResource @ 0x42512b8 (native @ 0x1236d10)] chromeFile = [xpconnect wrapped (nsISupports, nsILocalFile, nsIFile, nsILocalFileWin, nsIHashable) @ 0x42517d8 (native @ 0x42515d0)] fileName = "venkman.jar" fileURLSpec = "file:///C:/mozilla/dist/bin/extensions/%7Bf13b157f-b174-47e7-a34d-4815ddfdfeb8%7D/chrome/venkman.jar" zipReader = undefined contentsFile = undefined providers = undefined i = undefined items = undefined item = undefined fileURI = undefined contentsFileURI = undefined cr = undefined stageFile = undefined this = [object Object] 3 anonymous(file = null) ["file:///C:/mozilla/dist/bin/components/nsExtensionManager.js":1537] this = [object Object] 4 anonymous(id = "{f13b157f-b174-47e7-a34d-4815ddfdfeb8}", file = null) ["file:///C:/mozilla/dist/bin/components/nsExtensionManager.js":4644] ds = [object Object] type = 2 installLocation = [object Object] entries = undefined i = undefined location = undefined itemLocation = [xpconnect wrapped (nsISupports, nsILocalFile, nsIFile, nsILocalFileWin, nsIHashable) @ 0x424c508 (native @ 0x424c300)] installer = [object Object] this = [object Object] 5 anonymous() ["file:///C:/mozilla/dist/bin/components/nsExtensionManager.js":3363] ds = [object Object] updatedTargetAppInfos = needsRestart = true items = [object Object],[object Object],[object Object],[object Object] i = 0 id = "{f13b157f-b174-47e7-a34d-4815ddfdfeb8}" installLocation = undefined oldLocation = [object Object] newLocation = [object Object] newTargetAppInfo = null ctr = undefined elements = undefined itemResource = undefined value = undefined cr = undefined this = [object Object] 6 anonymous(commandLine = [xpconnect wrapped nsICommandLine @ 0xcd3b50 (native @ 0x10d2010)]) ["file:///C:/mozilla/dist/bin/components/nsExtensionManager.js":2655] isDirty = true forceAutoReg = true componentList = [xpconnect wrapped (nsISupports, nsILocalFile, nsIFile, nsILocalFileWin, nsIHashable) @ 0xe7dab8 (native @ 0xdb99a0)] needsRestart = undefined this = [object Object] 7 [native frame]
Comment 8•17 years ago
|
||
Neil: how did this venkman end up in your suite? Did you install the xpi yourself, did you do a suite build with vnk enabled, or something else? Was the app dir / chrome clean before? What about your profile?
Assignee | ||
Comment 9•17 years ago
|
||
Neil: you might want to try dumping the dist/bin/chrome, dist/bin/extensions, dist/xpi-stage and dist/chrome-stage directories and then rebuilding.
Comment 10•17 years ago
|
||
It might even be enough to only dump anything venkman-related from chrome/ - that is the venmkan.jar (and/or an eventual flat chrome directory) as well as the entries in installed-chrome.txt, and clean up app-chrome.manifest as it will be rebuilt from installed-chrome.txt anyways.
Comment 11•17 years ago
|
||
Reopening, as people are reporting problems all over the place. Can someone please tell me why we can't use the same approach for Venkman outlined in bug 351715 comment 6 for ChatZilla? As far as I can tell, that's exactly what should be used here, so the extension is installed in the user's profile and no problems with write rights ensue.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Updated•17 years ago
|
Comment 12•17 years ago
|
||
Comment on attachment 276987 [details] [diff] [review] Build Venkman as an extension v1 >+INSTALL_EXTENSION_ID = {f13b157f-b174-47e7-a34d-4815ddfdfeb8} >+XPI_PKGNAME = venkman-$(VENKMAN_VERSION) I think you only need one pair of these per extension, you've currently got one in extensions/venkman and one in extensions/venkman/resources The EM alert turns out to be one of the issues due to a missing chrome.manifest; it couldn't find the contents.rdf files where install.rdf said they were because I was building flat chrome, but there are other valid reasons too.
Assignee | ||
Comment 13•17 years ago
|
||
(In reply to comment #11) > Reopening, as people are reporting problems all over the place. Can someone > please tell me why we can't use the same approach for Venkman outlined in bug > 351715 comment 6 for ChatZilla? As far as I can tell, that's exactly what > should be used here, so the extension is installed in the user's profile and no > problems with write rights ensue. That comment/wiki wasn't suggesting that the extension be installed in the user's profile. That was suggesting have the installation into appdir/extensions/... and looking at the consequences of it, and deciding it wasn't too bad overall, but we'd try it out with the user base. However I believe that installing venkman into the app dir is *NOT* the problem that we need to fix. What I think we need to do to fix the problems is to ship a chrome.manifest (which I think means setting USE_EXTENSION_MANIFEST to 1 in the makefiles) and ensuring this doesn't affect updates/user profiles. I hope to do that testing tonight to verify this. (In reply to comment #12) > (From update of attachment 276987 [details] [diff] [review]) > >+INSTALL_EXTENSION_ID = {f13b157f-b174-47e7-a34d-4815ddfdfeb8} > >+XPI_PKGNAME = venkman-$(VENKMAN_VERSION) > I think you only need one pair of these per extension, you've currently got one > in extensions/venkman and one in extensions/venkman/resources I'll check but I believe you need both, otherwise the jar.mn items in resources directory get put in the wrong place (see debugQA for another example). > The EM alert turns out to be one of the issues due to a missing > chrome.manifest; it couldn't find the contents.rdf files where install.rdf said > they were because I was building flat chrome, but there are other valid reasons > too. See above for my comments on fixing this.
Comment 14•17 years ago
|
||
I haven't heard of problems "all over the place", I only heard of the problem that we may not have write permissions to auto-generate a manifest, which we have a patch for in bug 371671
Assignee | ||
Comment 15•17 years ago
|
||
Since we fixed bug 371671, I've not heard of any more problems for this, so marking it as fixed again.
Status: REOPENED → RESOLVED
Closed: 17 years ago → 17 years ago
Resolution: --- → FIXED
Comment 16•17 years ago
|
||
> > >+INSTALL_EXTENSION_ID = {f13b157f-b174-47e7-a34d-4815ddfdfeb8} > > >+XPI_PKGNAME = venkman-$(VENKMAN_VERSION) > > I think you only need one pair of these per extension, you've currently got one > > in extensions/venkman and one in extensions/venkman/resources > > I'll check but I believe you need both, otherwise the jar.mn items in resources > directory get put in the wrong place (see debugQA for another example). "MODULE and XPI_NAME are both set to the name of your extension; they should be repeated in all project makefiles so that all of the files land in the same place in the XPI staging area (see below)." http://developer.mozilla.org/en/docs/Creating_Custom_Firefox_Extensions_with_the_Mozilla_Build_System#Anatomy_of_a_Simple_C.2B.2B_Extension It doesn't suggest repeating INSTALL_EXTENSION_ID and XPI_PKGNAME as well in sub-makefiles.
Updated•6 years ago
|
Product: Other Applications → Other Applications Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•