the rails present not images bootstrap asset ruby-on-rails sass asset-pipeline

ruby-on-rails - present - sass ruby on rails



Perfilando activos lentos en desarrollo (2)

Hay una gema llamada quiet_assets que suprime el registro de carga de activos. En tiempos de rails 3.x, aceleró drásticamente mi modo de desarrollo. Avíseme si esto ayuda.

Cada vez que realizo un cambio en mi SASS en desarrollo, obtengo 20s + tiempos de carga al cargar mi application.css .

He leído algunas otras preguntas y he intentado:

  • Configuración config.assets.debug = false .
  • Cambiando las importaciones y requiere (yo uso las variables SASS)
  • Usando Miniprof y su diagrama de hogos
  • Uso de rails-asset_profile

Esto es lo que leo:

He estado teniendo este problema de Rails 3.2 y ahora en 4.2.

Me estoy volviendo loco aquí. ¿Cómo encuentro el cuello de botella en este lío?

Estoy buscando una solución que me permita identificar con precisión dónde se gasta el tiempo y sugiere formas de reducir ese tiempo de compilación.


Mire la fuente de los sprockets en el método de búsqueda en la clase Sprockets :: Manifest. Puede cambiarlo a lo siguiente:

paths.each do |path| start = Time.now puts "Start #{path}" environment.find_all_linked_assets(path) do |asset| yield asset end puts "Finished: #{Time.now - start}" end

Por lo tanto, imprimirá todo el tiempo requerido para compilar cada activo. Espero que ayude :)

Editar: Este fragmento de código es de la rama master . Puede ver y editar su versión actual de sprockets mediante el uso de

bundle open sprockets

Salida después de los cambios:

$ rake assets:precompile Start admin.css I, Ä2015-11-28T10:45:26.986231 #45492Ü INFO -- : Writing /Users/sky/projects/photo_school/public/assets/admin-0e445dcfdc3bd3029943b7d3621b4156c9838eed229c3628f8c558cbb3ce1a59.css Finished: 10.165564

EDITAR: cambió el código un poco y cambió el enlace (ayer puso el enlace a un tenedor equivocado: tenía prisa, descubrió su pregunta solo en 15 minutos antes del cierre de la recompensa :)). Revisé este código en mi proyecto y funciona correctamente (el proyecto usa la versión 3.3.3 de piñones).