Uploaded image for project: 'Facter'
  1. Facter
  2. FACT-567

Support Bundler workflow on x64

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: FACT 2.1.0
    • Component/s: None
    • Labels:
    • Template:
    • Story Points:
      2
    • Sprint:
      Week 2014-6-11 to 2014-6-18, Week 2014-6-18 to 2014-6-25

      Description

      Facter expresses Windows gem dependencies, but it only applies to ruby x86. When running on x64, the gem dependencies do not apply, so you can't use bundler to install gems, and run specs.

      Currently, facter's Gemfile uses the bundler `mingw` platform identifier, effectively:

      platform :mingw do
        gem 'ffi'
        ...
      end
      

      Bundler::Dependency::PLATFORM_MAP maps that to the rubygems platform MINGW:

            :mingw    => Gem::Platform::MINGW,
      

      When run on ruby 1.9.3 x86, the MINGW gem platform is a match:

      irb(main):010:0> Gem::Platform.local.to_s
      => "x86-mingw32"
      irb(main):011:0> Gem::Platform.match(Gem::Platform::MINGW)
      => true
      

      But on ruby 2 x64, it is not:

      irb(main):011:0> Gem::Platform.local.to_s
      => "x64-mingw32"
      irb(main):012:0> Gem::Platform.match(Gem::Platform::MINGW)
      => false
      

      As a result, dependencies that are currently expressed for x86-mingw, do not apply when run on ruby 2 x64.

        Attachments

          Issue Links

            Activity

              jsd-sla-details-panel

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  josh Josh Cooper
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: