<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Do we need extension dependencies?</title>
	<atom:link href="http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies/feed" rel="self" type="application/rss+xml" />
	<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies</link>
	<description>Spouting nonsense from the depths of my spare time</description>
	<lastBuildDate>Sat, 14 Jan 2012 22:20:26 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: orate</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-52811</link>
		<dc:creator>orate</dc:creator>
		<pubDate>Sun, 18 Jul 2010 06:58:13 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-52811</guid>
		<description>why not?  one word:

Piro

https://addons.mozilla.org/en-US/firefox/user/9480

Fractionalized features across multiple extensions.

Dropping these features will lead to greater extension bloatware (tendancies)

ugh</description>
		<content:encoded><![CDATA[<p>why not?  one word:</p>
<p>Piro</p>
<p><a href="https://addons.mozilla.org/en-US/firefox/user/9480" rel="nofollow">https://addons.mozilla.org/en-US/firefox/user/9480</a></p>
<p>Fractionalized features across multiple extensions.</p>
<p>Dropping these features will lead to greater extension bloatware (tendancies)</p>
<p>ugh</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nathan</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-44637</link>
		<dc:creator>Nathan</dc:creator>
		<pubDate>Thu, 01 Apr 2010 16:03:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-44637</guid>
		<description>Just an observation, but wouldn&#039;t this have been a moot point in the old &quot;install.js&quot; days? This does raise the question of why this was deprecated. The RDF version of installation is warm and fluffy and &quot;easy&quot;, but it also lacks a lot of functionality, IMO. I do not see there being a &quot;security risk&quot; with install.js primarily because once an extension is installed, the JavaScript therein has unrestricted access to XPConnect, anyway.

Here&#039;s a real-world example illustrating the problem. I&#039;m writing a new extension for Firefox 3.x for a contract job. The extension *requires* that Java Applets be available. How do I make my XPI test for the dependency? Good luck with that.

As a result, I have to end up writing a bunch of tests on the browser-side itself before even offering the XPI for installation. Although there is a solution, it&#039;s a butt-ugly one.</description>
		<content:encoded><![CDATA[<p>Just an observation, but wouldn&#8217;t this have been a moot point in the old &#8220;install.js&#8221; days? This does raise the question of why this was deprecated. The RDF version of installation is warm and fluffy and &#8220;easy&#8221;, but it also lacks a lot of functionality, IMO. I do not see there being a &#8220;security risk&#8221; with install.js primarily because once an extension is installed, the JavaScript therein has unrestricted access to XPConnect, anyway.</p>
<p>Here&#8217;s a real-world example illustrating the problem. I&#8217;m writing a new extension for Firefox 3.x for a contract job. The extension *requires* that Java Applets be available. How do I make my XPI test for the dependency? Good luck with that.</p>
<p>As a result, I have to end up writing a bunch of tests on the browser-side itself before even offering the XPI for installation. Although there is a solution, it&#8217;s a butt-ugly one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Morgan</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39610</link>
		<dc:creator>Jonathan Morgan</dc:creator>
		<pubDate>Thu, 14 Jan 2010 12:08:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39610</guid>
		<description>For extensions in other languages (e.g. using PyXPCOM) a dependency for an extension providing that other language is going to be necessary.  I&#039;m not sure how much we really want to encourage this though (I like Python myself, but it adds a fairly big burden on the browser having a huge monolithic platform specific extension).</description>
		<content:encoded><![CDATA[<p>For extensions in other languages (e.g. using PyXPCOM) a dependency for an extension providing that other language is going to be necessary.  I&#8217;m not sure how much we really want to encourage this though (I like Python myself, but it adds a fairly big burden on the browser having a huge monolithic platform specific extension).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Brett Zamir</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39507</link>
		<dc:creator>Brett Zamir</dc:creator>
		<pubDate>Wed, 13 Jan 2010 03:11:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39507</guid>
		<description>Although I can understand your temporarily taking it out, I truly hope you will add a revamped version in the future--one which, including at the AMO site, automatically downloads missing dependencies, at least with user permission. That part is critical.

I would also like to see the ability to share smaller dependencies such as JavaScript modules (if not components). I think such modularization would greatly inspire more and faster innovation, code reuse, collaboration (since people are motivated to report bugs, etc.), and support users adding more extensions, since they won&#039;t notice as much of a performance impact with modules being shared. Besides this, I think the awareness that one&#039;s extension&#039;s APIs can be exposed can lead to more interesting extension interactions (e.g., if Lightning exposed its APIs, an extension could make its own interface to add events).

As you make any move to Jetpack, I also really hope other rich support will not be dropped. Please don&#039;t dumb down things, whether due to making APIs more accessible or for security! While many of the masses might not care (or think they don&#039;t care) about power features, a lot of us got into Firefox and develop for it because of its powerful platform. If there&#039;s anything that could ever kill Firefox, it is driving away developers with too many platform feature regressions (though I don&#039;t think this particular case would be a very significant one, I am nervous about the herd going this route, as I know some can take a &quot;let&#039;s protect them from themselves&quot; attitude which may be ok for the web, but not for trusted extensions if it means less powerful APIs; likewise, I&#039;ve also seen even top and otherwise admirable developers be a little patronizing in assuming they alone know what&#039;s good for the web and use that to justify neglecting bugs or dropping niche but well-loved features). &quot;It&#039;s the Add-on power, dummies!&quot; ;)  

You can&#039;t please anyone, no doubt, but hopefully one can try... I think extension dependencies (if done thoroughly) is very directly related to enabling that...</description>
		<content:encoded><![CDATA[<p>Although I can understand your temporarily taking it out, I truly hope you will add a revamped version in the future&#8211;one which, including at the AMO site, automatically downloads missing dependencies, at least with user permission. That part is critical.</p>
<p>I would also like to see the ability to share smaller dependencies such as JavaScript modules (if not components). I think such modularization would greatly inspire more and faster innovation, code reuse, collaboration (since people are motivated to report bugs, etc.), and support users adding more extensions, since they won&#8217;t notice as much of a performance impact with modules being shared. Besides this, I think the awareness that one&#8217;s extension&#8217;s APIs can be exposed can lead to more interesting extension interactions (e.g., if Lightning exposed its APIs, an extension could make its own interface to add events).</p>
<p>As you make any move to Jetpack, I also really hope other rich support will not be dropped. Please don&#8217;t dumb down things, whether due to making APIs more accessible or for security! While many of the masses might not care (or think they don&#8217;t care) about power features, a lot of us got into Firefox and develop for it because of its powerful platform. If there&#8217;s anything that could ever kill Firefox, it is driving away developers with too many platform feature regressions (though I don&#8217;t think this particular case would be a very significant one, I am nervous about the herd going this route, as I know some can take a &#8220;let&#8217;s protect them from themselves&#8221; attitude which may be ok for the web, but not for trusted extensions if it means less powerful APIs; likewise, I&#8217;ve also seen even top and otherwise admirable developers be a little patronizing in assuming they alone know what&#8217;s good for the web and use that to justify neglecting bugs or dropping niche but well-loved features). &#8220;It&#8217;s the Add-on power, dummies!&#8221; <img src='http://www.oxymoronical.com/wp/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />   </p>
<p>You can&#8217;t please anyone, no doubt, but hopefully one can try&#8230; I think extension dependencies (if done thoroughly) is very directly related to enabling that&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mossop</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39466</link>
		<dc:creator>Mossop</dc:creator>
		<pubDate>Tue, 12 Jan 2010 17:27:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39466</guid>
		<description>It does become a complete nightmare if you start considering multiple add-on types. Imagine a scenario where we support Jetpack like features that don&#039;t require a restart to use. If we allow XPI extensions to depend on Jetpack features then all of a sudden you can&#039;t disable/uninstall the Jetpack feature without a restart since it must disable the XPI extension.</description>
		<content:encoded><![CDATA[<p>It does become a complete nightmare if you start considering multiple add-on types. Imagine a scenario where we support Jetpack like features that don&#8217;t require a restart to use. If we allow XPI extensions to depend on Jetpack features then all of a sudden you can&#8217;t disable/uninstall the Jetpack feature without a restart since it must disable the XPI extension.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mossop</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39464</link>
		<dc:creator>Mossop</dc:creator>
		<pubDate>Tue, 12 Jan 2010 17:23:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39464</guid>
		<description>My own experiences of apt and yum say that this isn&#039;t a solved problem at all. It is fine so long as you are working from a single repository where all of the dependencies are managed properly (and even that isn&#039;t necessarily true of the Linux distributions). As soon as you start to use repositories from different people you get conflicting dependencies that make it impossible to install or uninstall anything. To take your example I could easily predict that different extensions would end up requiring different versions of jQuery, we can only install one version of an extension at a time so you end up in a place where installing one extension necessitates the uninstall or disabling of another.

But this is besides the point. Even if we had an example of a perfectly working system and we knew how to represent the complications in a way that the user could understand this would still not be a solved problem, there would still be work to implement that in Firefox and as I&#039;ve said right now that is not on the cards.</description>
		<content:encoded><![CDATA[<p>My own experiences of apt and yum say that this isn&#8217;t a solved problem at all. It is fine so long as you are working from a single repository where all of the dependencies are managed properly (and even that isn&#8217;t necessarily true of the Linux distributions). As soon as you start to use repositories from different people you get conflicting dependencies that make it impossible to install or uninstall anything. To take your example I could easily predict that different extensions would end up requiring different versions of jQuery, we can only install one version of an extension at a time so you end up in a place where installing one extension necessitates the uninstall or disabling of another.</p>
<p>But this is besides the point. Even if we had an example of a perfectly working system and we knew how to represent the complications in a way that the user could understand this would still not be a solved problem, there would still be work to implement that in Firefox and as I&#8217;ve said right now that is not on the cards.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39458</link>
		<dc:creator>James</dc:creator>
		<pubDate>Tue, 12 Jan 2010 16:20:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39458</guid>
		<description>Dependencies would be useful to cut down on duplication - quite a few extensions ship jquery for example, having a common extension for that would be nice. Dependency resolution is a solved problem, see apt or yum.</description>
		<content:encoded><![CDATA[<p>Dependencies would be useful to cut down on duplication &#8211; quite a few extensions ship jquery for example, having a common extension for that would be nice. Dependency resolution is a solved problem, see apt or yum.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob Campbell</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39454</link>
		<dc:creator>Rob Campbell</dc:creator>
		<pubDate>Tue, 12 Jan 2010 15:23:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39454</guid>
		<description>This works as long as you&#039;re the publisher of both addons. If you want to rely on another that you *don&#039;t* own, this becomes more problematic.</description>
		<content:encoded><![CDATA[<p>This works as long as you&#8217;re the publisher of both addons. If you want to rely on another that you *don&#8217;t* own, this becomes more problematic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wladimir Palant</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39174</link>
		<dc:creator>Wladimir Palant</dc:creator>
		<pubDate>Sat, 09 Jan 2010 14:13:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39174</guid>
		<description>Why should I require the user to install a bundle if in most cases he already has the required extension? Not to mention that I am not aware of any way to publish an extension bundle on AMO - and that&#039;s still the main distribution channel for extensions.</description>
		<content:encoded><![CDATA[<p>Why should I require the user to install a bundle if in most cases he already has the required extension? Not to mention that I am not aware of any way to publish an extension bundle on AMO &#8211; and that&#8217;s still the main distribution channel for extensions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Wladimir Palant</title>
		<link>http://www.oxymoronical.com/blog/2010/01/Do-we-need-extension-dependencies#comment-39173</link>
		<dc:creator>Wladimir Palant</dc:creator>
		<pubDate>Sat, 09 Jan 2010 14:10:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.oxymoronical.com/?p=683#comment-39173</guid>
		<description>Malte, querying AMO was the idea from the very start - but some features turn out everything but simple when you start thinking about the details. In particular, this one has lots of nasty edge cases that need to be considered (nested dependencies, circular dependencies, updates for an extension but not its dependencies etc. etc.). Given the current state of the add-on manager I can understand that nobody wants to solve all these issues just yet. But - sure, I would be glad if somebody did nevertheless.</description>
		<content:encoded><![CDATA[<p>Malte, querying AMO was the idea from the very start &#8211; but some features turn out everything but simple when you start thinking about the details. In particular, this one has lots of nasty edge cases that need to be considered (nested dependencies, circular dependencies, updates for an extension but not its dependencies etc. etc.). Given the current state of the add-on manager I can understand that nobody wants to solve all these issues just yet. But &#8211; sure, I would be glad if somebody did nevertheless.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

