<?xml version="1.0" encoding="UTF-8"?>
<ticket>
  <assigned-user-id type="integer">15553</assigned-user-id>
  <attachments-count type="integer">2</attachments-count>
  <closed type="boolean">false</closed>
  <created-at type="datetime">2009-02-11T22:19:35+01:00</created-at>
  <creator-id type="integer">15553</creator-id>
  <milestone-due-on type="datetime" nil="true"></milestone-due-on>
  <milestone-id type="integer">32011</milestone-id>
  <number type="integer">5</number>
  <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
  <priority type="integer">1</priority>
  <project-id type="integer">8888</project-id>
  <raw-data type="binary" nil="true" encoding="base64"></raw-data>
  <state>discuss</state>
  <tag>compression feature suggestion</tag>
  <title>Integrate the YUI Compressor</title>
  <updated-at type="datetime">2009-11-13T16:39:14+01:00</updated-at>
  <user-id type="integer">46611</user-id>
  <user-name>jwheare</user-name>
  <creator-name>Sam Stephenson</creator-name>
  <assigned-user-name>Sam Stephenson</assigned-user-name>
  <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
  <milestone-title>1.1.0</milestone-title>
  <original-body>Sprockets should offer a feature to pass the resulting concatenation through the [YUI Compressor](http://developer.yahoo.com/yui/compressor/). 

YUI Compressor is distributed as an 830 KB .jar and requires Java &gt;= 1.4 to run. Shelling out to it from Sprockets is easy; the difficult problem, as I see it, is figuring out how to a) bundle the compressor with Sprockets or b) make use of existing installations of the compressor with minimal configuration.</original-body>
  <latest-body>Sprockets should offer a feature to pass the resulting concatenation through the [YUI Compressor](http://developer.yahoo.com/yui/compressor/). 

YUI Compressor is distributed as an 830 KB .jar and requires Java &gt;= 1.4 to run. Shelling out to it from Sprockets is easy; the difficult problem, as I see it, is figuring out how to a) bundle the compressor with Sprockets or b) make use of existing installations of the compressor with minimal configuration.</latest-body>
  <original-body-html>&lt;div&gt;&lt;p&gt;Sprockets should offer a feature to pass the resulting
concatenation through the &lt;a href=&quot;http://developer.yahoo.com/yui/compressor/&quot;&gt;YUI
Compressor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;YUI Compressor is distributed as an 830 KB .jar and requires
Java &amp;gt;= 1.4 to run. Shelling out to it from Sprockets is easy;
the difficult problem, as I see it, is figuring out how to a)
bundle the compressor with Sprockets or b) make use of existing
installations of the compressor with minimal configuration.&lt;/p&gt;&lt;/div&gt;</original-body-html>
  <versions type="array">
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>Sprockets should offer a feature to pass the resulting concatenation through the [YUI Compressor](http://developer.yahoo.com/yui/compressor/). 

YUI Compressor is distributed as an 830 KB .jar and requires Java &gt;= 1.4 to run. Shelling out to it from Sprockets is easy; the difficult problem, as I see it, is figuring out how to a) bundle the compressor with Sprockets or b) make use of existing installations of the compressor with minimal configuration.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Sprockets should offer a feature to pass the resulting
concatenation through the &lt;a href=&quot;http://developer.yahoo.com/yui/compressor/&quot;&gt;YUI
Compressor&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;YUI Compressor is distributed as an 830 KB .jar and requires
Java &amp;gt;= 1.4 to run. Shelling out to it from Sprockets is easy;
the difficult problem, as I see it, is figuring out how to a)
bundle the compressor with Sprockets or b) make use of existing
installations of the compressor with minimal configuration.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-11T22:19:36+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>new</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-11T22:21:51+01:00</updated-at>
      <user-id type="integer">15553</user-id>
      <user-name>Sam Stephenson</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>I wonder if we can just download the YUI compressor with an extra, optional step and install it into the sprockets lib folder. 

As it requires Java it might not run everywhere (This is a sentence I long wanted to use).</body>
      <body-html>&lt;div&gt;&lt;p&gt;I wonder if we can just download the YUI compressor with an
extra, optional step and install it into the sprockets lib
folder.&lt;/p&gt;
&lt;p&gt;As it requires Java it might not run everywhere (This is a
sentence I long wanted to use).&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-11T22:41:23+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>new</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-11T22:41:25+01:00</updated-at>
      <user-id type="integer">15560</user-id>
      <user-name>Thomas Fuchs</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">0</attachments-count>
      <body>How about something like the attached? This makes a path to the YUI jar a Secretary option (so you don't have to distribute the jar, and you get all the baked-in Secretary config goodness), and makes the main calls to secretary use &quot;processed&quot; instead of &quot;concatenation&quot; which is really just a naming thing - if the YUI jar is set, it will try to minify the concatenation, if not it will just give the concatenation. For the minify method there may be a cleaner way than a popen that just assumes &quot;java&quot; is on the path.</body>
      <body-html>&lt;div&gt;&lt;p&gt;How about something like the attached? This makes a path to the
YUI jar a Secretary option (so you don't have to distribute the
jar, and you get all the baked-in Secretary config goodness), and
makes the main calls to secretary use &quot;processed&quot; instead of
&quot;concatenation&quot; which is really just a naming thing - if the YUI
jar is set, it will try to minify the concatenation, if not it will
just give the concatenation. For the minify method there may be a
cleaner way than a popen that just assumes &quot;java&quot; is on the
path.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-19T23:28:34+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>new</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-19T23:28:39+01:00</updated-at>
      <user-id type="integer">29461</user-id>
      <user-name>Ryan Baumann</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">1</attachments-count>
      <body>Ryan, that approach seems OK to me. I'd also suggest that the path to the YUI can be set by environment variable &#8212; though a command-line argument would take precedence.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Ryan, that approach seems OK to me. I'd also suggest that the
path to the YUI can be set by environment variable &amp;#8212; though a
command-line argument would take precedence.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-21T03:59:32+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- 
:state: new
</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>open</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-21T03:59:36+01:00</updated-at>
      <user-id type="integer">15556</user-id>
      <user-name>Andrew Dupont</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">1</attachments-count>
      <body>Here's a slightly improved version of the patch. The YUI path can now be set by an environment variable, and Concatenation.save_to has been pulled out into Secretary (would also affect sprockets-rails in a few places). The minify method has been made a little bit more robust. A stub conditional test (using the YUI path environment variable) for minification has been dropped in.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Here's a slightly improved version of the patch. The YUI path
can now be set by an environment variable, and
Concatenation.save_to has been pulled out into Secretary (would
also affect sprockets-rails in a few places). The minify method has
been made a little bit more robust. A stub conditional test (using
the YUI path environment variable) for minification has been
dropped in.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-22T02:33:03+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>open</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-22T02:33:05+01:00</updated-at>
      <user-id type="integer">29461</user-id>
      <user-name>Ryan Baumann</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>Thanks Ryan. Good call on moving Concatenation#save_to into Secretary. I'm not so keen on the name Secretary#processed.</body>
      <body-html>&lt;div&gt;&lt;p&gt;Thanks Ryan. Good call on moving Concatenation#save_to into
Secretary. I'm not so keen on the name Secretary#processed.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-22T20:01:07+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>open</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-22T20:01:09+01:00</updated-at>
      <user-id type="integer">15553</user-id>
      <user-name>Sam Stephenson</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body></body>
      <body-html></body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-22T20:17:05+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- 
:state: open
</diffable-attributes>
      <milestone-id type="integer" nil="true"></milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-22T20:17:08+01:00</updated-at>
      <user-id type="integer">15553</user-id>
      <user-name>Sam Stephenson</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title nil="true"></milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body></body>
      <body-html></body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-02-22T20:23:30+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- 
:milestone: 
</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-02-22T20:23:31+01:00</updated-at>
      <user-id type="integer">15553</user-id>
      <user-name>Sam Stephenson</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>As an alternative, could Sprockets use a Ruby javascript compressor? Say, something like Douglas Crockford's: http://www.crockford.com/javascript/jsmin.rb</body>
      <body-html>&lt;div&gt;&lt;p&gt;As an alternative, could Sprockets use a Ruby javascript
compressor? Say, something like Douglas Crockford's: &lt;a href=&quot;http://www.crockford.com/javascript/jsmin.rb&quot;&gt;http://www.crockford.com/javascr...&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-03-18T03:25:52+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>feature</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-03-18T03:25:55+01:00</updated-at>
      <user-id type="integer">40611</user-id>
      <user-name>Thomas Bukowski</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>I agree with Thomas Bukowski that YUI should not be the only option. I think Ryan's patch would be a good solution, as long as it does not only apply to YUI. It could be a configuration option that allows you to pass the output file to any shell command - this broadens the usage of the option beyond compression.

@@@ ruby
Sprockets::Secretary.new(
  :post_process_command =&gt; 'java -jar /path/to/yui -o #{file} #{file}'
)
@@@

An alternative approach could be to provide various compressors as *plugins* in the form of gems (sprockets-compressor-yui, sprockets-compressor-jsmin etc.) - each of these gems would contain the compressor script/binary and provide configuration options in the Secretary class to enable the compressor.

I have used something similar to the latter approach in [a Rails plugin](http://github.com/logandk/sprockets-compressor/tree/master) that enables compression through YUI by overriding the `save_to` method (a temporary solution until Sprockets supports compression).</body>
      <body-html>&lt;div&gt;&lt;p&gt;I agree with Thomas Bukowski that YUI should not be the only
option. I think Ryan's patch would be a good solution, as long as
it does not only apply to YUI. It could be a configuration option
that allows you to pass the output file to any shell command - this
broadens the usage of the option beyond compression.&lt;/p&gt;


&lt;pre&gt;&lt;code class=&quot;ruby&quot;&gt;
Sprockets::Secretary.new(
  :post_process_command =&amp;gt; 'java -jar /path/to/yui -o #{file} #{file}'
)
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;An alternative approach could be to provide various compressors
as &lt;em&gt;plugins&lt;/em&gt; in the form of gems (sprockets-compressor-yui,
sprockets-compressor-jsmin etc.) - each of these gems would contain
the compressor script/binary and provide configuration options in
the Secretary class to enable the compressor.&lt;/p&gt;
&lt;p&gt;I have used something similar to the latter approach in &lt;a href=&quot;http://github.com/logandk/sprockets-compressor/tree/master&quot;&gt;a
Rails plugin&lt;/a&gt; that enables compression through YUI by overriding
the &lt;code&gt;save_to&lt;/code&gt; method (a temporary solution until
Sprockets supports compression).&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-04-20T12:43:07+02:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- 
:tag: feature
</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>compression feature suggestion</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-04-20T12:43:11+02:00</updated-at>
      <user-id type="integer">54591</user-id>
      <user-name>Logan Raarup</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>I like the idea of gem-based plugins, which would remove the hassle of configuring. Install the plugin, and you've a command line option available for compression. We'd need a &quot;API&quot; in Sprockets for registering a plugin command-line option, and we can just use Ruby to alias/override methods in the plugins.</body>
      <body-html>&lt;div&gt;&lt;p&gt;I like the idea of gem-based plugins, which would remove the
hassle of configuring. Install the plugin, and you've a command
line option available for compression. We'd need a &quot;API&quot; in
Sprockets for registering a plugin command-line option, and we can
just use Ruby to alias/override methods in the plugins.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-04-20T13:08:49+02:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>compression feature suggestion</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-04-20T13:08:50+02:00</updated-at>
      <user-id type="integer">15560</user-id>
      <user-name>Thomas Fuchs</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>I'm not sure it's worth it to support several minifiers. 
As Sam already wrapped up YUI Compressor as a gem, I decided to try integrate it and it works like a charm.

The patch consists in two commits: http://github.com/samleb/sprockets/tree/minification</body>
      <body-html>&lt;div&gt;&lt;p&gt;I'm not sure it's worth it to support several minifiers.&lt;br&gt;
As Sam already wrapped up YUI Compressor as a gem, I decided to try
integrate it and it works like a charm.&lt;/p&gt;
&lt;p&gt;The patch consists in two commits: &lt;a href=
&quot;http://github.com/samleb/sprockets/tree/minification&quot;&gt;http://github.com/samleb/sprockets/tree/minification&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-10-23T18:42:21+02:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>compression feature suggestion</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-10-23T18:42:25+02:00</updated-at>
      <user-id type="integer">17913</user-id>
      <user-name>Samuel Lebeau</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>Thanks to @jwheare I fixed support for minification in `nph-sprockets.cgi`.
The third commit is available on my minification branch here : http://github.com/samleb/sprockets/commit/fc8fdff18e0d86969da4517728f57e696be4cce5

I forgot to notice that you can use either `:minify =&gt; true` which uses ruby-yui-compressor gem default options, or give an explicit hash of options like `:minify =&gt; { :munge =&gt; true }`.

What do you guys think about integrating this ?</body>
      <body-html>&lt;div&gt;&lt;p&gt;Thanks to @jwheare I fixed support for minification in
&lt;code&gt;nph-sprockets.cgi&lt;/code&gt;.&lt;br&gt;
The third commit is available on my minification branch here :
&lt;a href=
&quot;http://github.com/samleb/sprockets/commit/fc8fdff18e0d86969da4517728f57e696be4cce5&quot;&gt;
http://github.com/samleb/sprockets/commit/fc8fdff18e0d86969da451772...&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;I forgot to notice that you can use either &lt;code&gt;:minify =&amp;gt;
true&lt;/code&gt; which uses ruby-yui-compressor gem default options, or
give an explicit hash of options like &lt;code&gt;:minify =&amp;gt; { :munge
=&amp;gt; true }&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;What do you guys think about integrating this ?&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-11-13T16:08:09+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>compression feature suggestion</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-11-13T16:08:13+01:00</updated-at>
      <user-id type="integer">17913</user-id>
      <user-name>Samuel Lebeau</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
    <version type="Ticket::Version">
      <assigned-user-id type="integer">15553</assigned-user-id>
      <attachments-count type="integer">2</attachments-count>
      <body>+1 Samuel's patch. This would be great to have in the main gem.</body>
      <body-html>&lt;div&gt;&lt;p&gt;+1 Samuel's patch. This would be great to have in the main
gem.&lt;/p&gt;&lt;/div&gt;</body-html>
      <closed type="boolean">false</closed>
      <created-at type="datetime">2009-11-13T16:39:12+01:00</created-at>
      <creator-id type="integer">15553</creator-id>
      <diffable-attributes type="yaml">--- {}

</diffable-attributes>
      <milestone-id type="integer">32011</milestone-id>
      <number type="integer">5</number>
      <permalink>sprockets-should-integrate-the-yui-compressor</permalink>
      <priority type="integer">0</priority>
      <project-id type="integer">8888</project-id>
      <state>discuss</state>
      <tag>compression feature suggestion</tag>
      <title>Integrate the YUI Compressor</title>
      <updated-at type="datetime">2009-11-13T16:39:14+01:00</updated-at>
      <user-id type="integer">46611</user-id>
      <user-name>jwheare</user-name>
      <creator-name>Sam Stephenson</creator-name>
      <assigned-user-name>Sam Stephenson</assigned-user-name>
      <url>http://prototype.lighthouseapp.com/projects/8888/tickets/5</url>
      <milestone-title>1.1.0</milestone-title>
    </version>
  </versions>
  <attachments type="array">
    <attachment type="Attachment">
      <code>a11ea41137cd4a66ab520be7397828b711540806</code>
      <content-type>text/plain</content-type>
      <created-at type="datetime">2009-02-19T23:28:34+01:00</created-at>
      <filename>yui-sketch.patch</filename>
      <height type="integer" nil="true"></height>
      <id type="integer">90885</id>
      <size type="integer">2799</size>
      <uploader-id type="integer">29461</uploader-id>
      <width type="integer" nil="true"></width>
      <url>http://prototype.lighthouseapp.com/attachments/90885/yui-sketch.patch</url>
    </attachment>
    <attachment type="Attachment">
      <code>a40d243900d55e5b6334561ce4928e1d0f1f1a93</code>
      <content-type>text/plain</content-type>
      <created-at type="datetime">2009-02-22T02:33:04+01:00</created-at>
      <filename>yui-compressor.patch</filename>
      <height type="integer" nil="true"></height>
      <id type="integer">91495</id>
      <size type="integer">6190</size>
      <uploader-id type="integer">29461</uploader-id>
      <width type="integer" nil="true"></width>
      <url>http://prototype.lighthouseapp.com/attachments/91495/yui-compressor.patch</url>
    </attachment>
  </attachments>
</ticket>
