class Bundler::GemVersionPromoter

def post_sort(result, unlock, locked_version)

as not all elements are compared against each other.
Specific version moves can't always reliably be done during sorting
def post_sort(result, unlock, locked_version)
  # default :major behavior in Bundler does not do this
  return result if major?
  if unlock || locked_version.nil?
    result
  else
    move_version_to_end(result, locked_version)
  end
end