Giter Club home page Giter Club logo

asset_packager's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

asset_packager's Issues

Cannot build production package

Hi,
I've installed your plugin and uses it for development, but on attempt to create production package i see following error

 $ rake asset:packager:build_all
 (in /Users/alec/Documents/Projects/Workspaces/my_projects/cyberberry_geeks)
 rake aborted!
 No such file or directory - /Users/alec/Documents/Projects/Workspaces/my_projects/cyberberry_geeks/tmp/base_packaged_uncompressed.js

How can i solve it?

Helpers should return safe html

All HTML strings should be marked as safe on Rails 3; otherwise, the tags will be escaped.

You can do this by calling the "html_safe" method before returning the strings.

Move tasks directory

The Rails 3 requires the "tasks" directory to be inside "lib". This can be safely moved out since it works on previous versions as well.

prototype-1.7_rc2 unable to place inside of asset_package

I have to exclude prototype.js (v 1.7_rc2) from the asset package, and load it with javascript_include_tag in order to get prototype to load. The rake task asset:packager:build_all succeeds with prototype in the package, but it still fails to load.

Javascript line continuations in strings causes errors

vendor/plugins/asset_packager/lib/jsmin.rb:113:in `action': Unterminated string literal (RuntimeError)
    from vendor/plugins/asset_packager/lib/jsmin.rb:195:in `jsmin'
    from vendor/plugins/asset_packager/lib/jsmin.rb:205

Which is caused by code such as:
styleSheet.addRule(
'.typeface-js-selected-text',
'-ms-filter:
"Chroma(color=black)
progid:DXImageTransform.Microsoft.MaskFilter(Color=white)
progid:DXImageTransform.Microsoft.MaskFilter(Color=blue)
alpha(opacity=30)" !important;
color: black;
font-family: Modern;
position: absolute;
white-space: pre;
filter: alpha(opacity=0);'
);

file list from package

I've run into an interesting use case where I'd like to get back an array of files included in the package (instead of the style tags).

For instance, if the method were called stylesheet_files_merged, one could do:

# in development
stylesheet_files_merged(:base) = ["/stylesheets/screen.css", "/stylesheets/header.css"]

# in production
stylesheet_files_merged(:base) = ["/stylesheets/base_packaged.css"]

I took a look through the source, but the right combination of methods didn't jump out at me. Any advice?

rails 2.3.8 deprecation warning

DEPRECATION WARNING: Rake tasks in vendor/plugins/asset_packager/tasks are deprecated. Use lib/tasks instead. (called from [...]/vendor/isolated/gems/rails-2.3.8/lib/tasks/rails.rb:10)

package broken when hash is followed by jquery plugin

JS package is broken when merging a hash followed by a typical jquery plugin.
Example:

<first.js>
Tools={
myfn: function() {}
}

<second.js>
(function($){...})(jQuery)

after packaging this essentially produces the following:
Tools={...}(function($){...})(jQuery)

which, upon execution, crashes with the following error:
({myfn:(function () {...}) is not a function

...and the rest of the package may be broken as well to a varying extent.

to fix that, one must explicitly separate the hash and the plugin with a semicolon:

<first.js>
Tools={
...
}; //<-- !!!


bottomline is - that sucks

no such file to load -- asset_packager (LoadError)

installing with rails plugin install git://github.com/sbecker/asset_packager.git

i see this error:

~/.rvm/gems/ruby-1.9.2-p180/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in `require': no such file to load -- asset_packager (LoadError)

undefined local variable or method `config' for Synthesis::AssetPackag

Hi,
I'm getting this error when I try to run my app. Any suggestion ?

=> Booting WEBrick
=> Rails 2.3.5 application starting on http://0.0.0.0:3000
/var/lib/gems/1.8/gems/rails-2.3.5/lib/rails/gem_dependency.rb:119:Warning: Gem::Dependency#version_requirements is deprecated and will be removed on or after August 2010. Use #requirement
/var/lib/gems/1.8/gems/asset_packager-0.2.0/lib/synthesis/asset_package.rb:6: undefined local variable or method `config' for Synthesis::AssetPackage:Class (NameError)

Thanks in advance

How to package stylesheets with local images?

I'm using jquery plugins. Each is a separate folder in my javascript directory. These folders contain css files and images that are referred to from the css files.
When asset_packager combined these files the path to the images is not adapted to find the images in their original folder. An example:
Part of my .yml file:

  • ../javascripts/tools/styles

Given the following files
javascript/tools/styles.css => in this file a reference to url(tooltip.png) refers to the following file:
javascript/tools/tooltip.png

After packaging the image reference hasn't changed and the image can't be found.

Can this be accomplished?

Thanks

Rails 3: Have to use Rails.env instead RAILS_ENV

The helpers (with the should_merge? method) always consider the env to development, consequently the compressed files are never included in production.
The RAILS_ENV var does not exist anymore in rails 3.
You may should Rails.env instead.

issue include jquery.cookie

I have the jquery.cookie.js file in my public javascripts folder and here is my yml, It seem to include the rest of the .js files but for some reason does not include the jquery.cookie in the development environment pages, it does seem to include it in the base_packaged.js file?

--- 
javascripts: 
- base: 
  - jquery.tools.min
  - jquery.cookie
  - application
stylesheets: 
- base:
  - custom
  - screen
  - formtastic
  - jquery-ui-1.8.2.custom
#  - reset
#  - ie

Can't load non-file resources

If you have a js file that's rendered through a controller, or use the js_named_routes(http://github.com/jsierles/js_named_routes ) plugin, there doesn't seem to be a way to get them packaged.

Perhaps instead of opening files, it could call for the resources the regular way (through a url) then build them from there. That way it would work for absolutely any method of serving resources.

Issue with using inline_attachment when asset packager plugin is installed

Hi,

I am new to Rails and my question may be very trivial.

I have asset_packager plugin installed in my app. I installed JasonKing's inline_attachment plugin for sending out emails with inline images. But when I try to send a email I am getting a error message (undefined method 'request') and this error seems to happen in 'compute_public_path' in asset_package_helper class of asset_packager plugin and it is working fine when asset packager is uninstalled.

Is there any workaround for this? Please let me know if you need more details.

Thanks,
Sivakumar.

assets in subdirectories…?

I'm compulsively organized—organized to a fault, some might say—and I was trying to organize my JavaScript files according to the section of the site they pertain to:

javascripts
javascripts/application.js
javascripts/section1/base.js
javascripts/section2/base.js
etc.

but they don't seem to be loading at all with the configuration I have set up:


---
javascripts:
- section1:
  - application
  - section1/base

Is there any support for nested assets on the horizon? Or does such a thing already exist and I'm a complete moron?

Any help or just a general reply would be great!

Dallas

Google Closure: Error(22): Too many compiles performed recently. Try again later.

We have several apps that get deployed in serial. When using Google's Closure service to compile JS, the resulting JavaScript files contained only the following:

Error(22): Too many compiles performed recently. Try again later.

This was obviously causing catastrophic failure with our JS. To avoid this problem, perhaps asset_packager should check for the presence of this string in resulting JS files and re-try after a set period?

Run build_all whenever assets changed

The problem:

  • it is easy to forget to run the build_all rake task
  • this creates hours of chasing one's tail trying to find the bug in deployment for things that worked fine in development.

A solution:

  • Store the most recent datetime of any asset and use that to detect whether anything has been updated since the rake task last ran. Automatically rebuild the assets in this is detected.
  • Two ideas for storing the most recent datetime:
  • As an extension to the file name (eg. base_packaged_200904051314.css)
  • As the actual datetime stamp (last modified) of the of the base_packaged.css file

Create timestamped assets.

I really like your tool and it works great with the default rails cache busting approach of adding a timestamp after ?. However when you use with the amazon CDN the ?timestamp part of the URL is not taken into account.

It would be great if the asset packager could help busting the CDN cache without requiring additional steps to the current workflow. One approach would be to:

  1. save the build timestamp into a configuration file, asset_manager_auto.yml
  2. create a file with a timestamped name
  3. in production when generating the link automatically append the timestamp, for example base_1562827.css, base_1562827.js

I can help with the implementation once we reach a consensus on an approach that works...

Escaped link/include tags on Rails 3.0.3

It's simple to fix in lib/synthesis/asset_package_helper.rb:

sources.collect {|source| javascript_include_tag(source, options) }.join("\n").html_safe

... and ...

sources.collect { |source| stylesheet_link_tag(source, options) }.join("\n").html_safe

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.