[DRE-maint] Bug#746677: handling file conflicts with generators being installed in top level directory

Antonio Terceiro terceiro at debian.org
Fri May 2 14:25:00 UTC 2014


On Fri, May 02, 2014 at 07:32:32PM +0530, Pirate Praveen wrote:
> Hi,
> 
> I think the upstream should keep it in a sub-directory like temple, but
> strong_parameters upstream seems adamant on not changing.
> 
> Should this be handled at gem2deb level? Moving to debian-ruby for wider
> comments.
> 
> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=746677
> 
> Or should we handle the exceptions with patches?

the problem is deeper than that:

ruby-rails-observers:      /usr/lib/ruby/vendor_ruby/generators/active_record/observer/observer_generator.rb
ruby-rails-observers:      /usr/lib/ruby/vendor_ruby/generators/active_record/observer/templates/observer.rb
ruby-asset-sync:           /usr/lib/ruby/vendor_ruby/generators/asset_sync/install_generator.rb
ruby-asset-sync:           /usr/lib/ruby/vendor_ruby/generators/asset_sync/templates/asset_sync.rb
ruby-asset-sync:           /usr/lib/ruby/vendor_ruby/generators/asset_sync/templates/asset_sync.yml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/controller.rb
ruby-factory-girl-rails:   /usr/lib/ruby/vendor_ruby/generators/factory_girl/model/model_generator.rb
ruby-factory-girl-rails:   /usr/lib/ruby/vendor_ruby/generators/factory_girl/model/templates/fixtures.erb
ruby-factory-girl-rails:   /usr/lib/ruby/vendor_ruby/generators/factory_girl.rb
ruby-jquery-rails:         /usr/lib/ruby/vendor_ruby/generators/jquery/install/install_generator.rb
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/layout.rb
ruby-markerb:              /usr/lib/ruby/vendor_ruby/generators/markerb/mailer/mailer_generator.rb
ruby-markerb:              /usr/lib/ruby/vendor_ruby/generators/markerb/mailer/templates/view.markerb
ruby-simple-navigation:    /usr/lib/ruby/vendor_ruby/generators/navigation_config/navigation_config_generator.rb
ruby-jbuilder:             /usr/lib/ruby/vendor_ruby/generators/rails/jbuilder_generator.rb
ruby-rails-observers:      /usr/lib/ruby/vendor_ruby/generators/rails/observer/observer_generator.rb
ruby-rails-observers:      /usr/lib/ruby/vendor_ruby/generators/rails/observer/USAGE
ruby-jbuilder:             /usr/lib/ruby/vendor_ruby/generators/rails/scaffold_controller_generator.rb
ruby-strong-parameters:    /usr/lib/ruby/vendor_ruby/generators/rails/strong_parameters_controller_generator.rb
ruby-jbuilder:             /usr/lib/ruby/vendor_ruby/generators/rails/templates/controller.rb
ruby-strong-parameters:    /usr/lib/ruby/vendor_ruby/generators/rails/templates/controller.rb
ruby-jbuilder:             /usr/lib/ruby/vendor_ruby/generators/rails/templates/index.json.jbuilder
ruby-jbuilder:             /usr/lib/ruby/vendor_ruby/generators/rails/templates/show.json.jbuilder
ruby-strong-parameters:    /usr/lib/ruby/vendor_ruby/generators/rails/USAGE
ruby-remotipart:           /usr/lib/ruby/vendor_ruby/generators/remotipart/install/install_generator.rb
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/resource_controller.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/controller/controller_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/controller/templates/controller_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/controller/templates/view_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/helper/helper_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/helper/templates/helper_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/install/install_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/install/templates/spec/spec_helper.rb.tt
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/integration/integration_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/integration/templates/request_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/mailer/mailer_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/mailer/templates/fixture
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/mailer/templates/mailer_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/model/model_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/model/templates/fixtures.yml
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/model/templates/model_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/observer/observer_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/observer/templates/observer_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/scaffold_generator.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/templates/controller_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/templates/edit_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/templates/index_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/templates/new_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/templates/routing_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/scaffold/templates/show_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/view/templates/view_spec.rb
ruby-rspec-rails:          /usr/lib/ruby/vendor_ruby/generators/rspec/view/view_generator.rb
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/controller/app/views/%file_name%/index.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/layout/app/views/layout/%file_name%.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/activerecord/app/views/%file_name%/edit.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/activerecord/app/views/%file_name%/index.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/activerecord/app/views/%file_name%/new.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/activerecord/app/views/%file_name%/show.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/datamapper/app/views/%file_name%/edit.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/datamapper/app/views/%file_name%/index.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/datamapper/app/views/%file_name%/new.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/datamapper/app/views/%file_name%/show.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/none/app/views/%file_name%/edit.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/none/app/views/%file_name%/index.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/none/app/views/%file_name%/new.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/none/app/views/%file_name%/show.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/sequel/app/views/%file_name%/edit.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/sequel/app/views/%file_name%/index.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/sequel/app/views/%file_name%/new.html.haml
ruby-merb-haml:            /usr/lib/ruby/vendor_ruby/generators/templates/resource_controller/sequel/app/views/%file_name%/show.html.haml
ruby-carrierwave:          /usr/lib/ruby/vendor_ruby/generators/templates/uploader.rb
ruby-rails-observers:      /usr/lib/ruby/vendor_ruby/generators/test_unit/observer/observer_generator.rb
ruby-rails-observers:      /usr/lib/ruby/vendor_ruby/generators/test_unit/observer/templates/unit_test.rb
ruby-carrierwave:          /usr/lib/ruby/vendor_ruby/generators/uploader_generator.rb

There is just one file conflict, but several directory conflicts about
to explode in new upstream versions.

rspec-rails plays nice by namespacing inside generators/ but others just
don't care.

I doubt we will be able to handle all cases automatically. Even if
dh_ruby handled moving stuff in generators to package-specific
locations, the code would still need to be patched anyway.

I would love to be proven wrong and will would welcome concrete
suggestions on how to handle this in gem2deb.

-- 
Antonio Terceiro <terceiro at debian.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-ruby-extras-maintainers/attachments/20140502/532f5344/attachment-0003.sig>


More information about the Pkg-ruby-extras-maintainers mailing list