cocoapods 0.38.0.beta.1 → 0.38.0.beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2feed1ca56697903e9fd3849cded89caf79d34f2
4
- data.tar.gz: e1394343cb071b7a16c575f401fdbc6cc338afe2
3
+ metadata.gz: 923ec63f64a122d95ab696516d46354779740e21
4
+ data.tar.gz: 20c71f489b0a564f487095d9110da01e6d7cbead
5
5
  SHA512:
6
- metadata.gz: b35df5747f1ab5083110017ab5409d10e7222b7be3c9c83f358d3b7f3768cc94c8b37476c51ba7e34e3259bf54ee5a8e7dcc11aedafa596d80beaaf0a424a4ac
7
- data.tar.gz: 9c6bfce82407c052d93e9670afafce88dff908329cbd92f7be63e1f5dad74c7e90aeca8ff9fc26ca022d21439f8f4fbbd83786b2579a66bfd9c7b5636312f393
6
+ metadata.gz: d183a05940a1b9db8499cec101f047cc3b75d8e5c63af41e92bfa17742c326a2d5a1608b31e3af6b8bbb26e20cb753cd4ad24b2b0d198194a7bb3fcc1647951e
7
+ data.tar.gz: 39e91c4ac906c500aac52ff62315bca3234945ccb57cf5f3fdc0787304755a3078195b43e7be42d26e78412c8723eaedb702925c787defe0120a3b566f0ac2bc
@@ -4,6 +4,50 @@ To install or update CocoaPods see this [guide](http://docs.cocoapods.org/guides
4
4
 
5
5
  To install release candidates run `[sudo] gem install cocoapods --pre`
6
6
 
7
+ ## 0.38.0.beta.2
8
+
9
+ ##### Enhancements
10
+
11
+ * The resolver will now take supported platform deployment targets into account
12
+ when resolving dependencies.
13
+ [Samuel Giddins](https://github.com/segiddins)
14
+ [#2443](https://github.com/CocoaPods/CocoaPods/issues/2443)
15
+
16
+ * `Pods.xcodeproj` will now be written with deterministic UUIDs, vastly reducing
17
+ project churn and merge conflicts. This behavior can be disabled via the new
18
+ `COCOAPODS_DISABLE_DETERMINISTIC_UUIDS` environment variable.
19
+ [Samuel Giddins](https://github.com/segiddins)
20
+
21
+ * [`cocoapods-stats`](https://github.com/CocoaPods/cocoapods-stats)
22
+ is now a default plugin.
23
+ [Samuel Giddins](https://github.com/segiddins)
24
+
25
+ ##### Bug Fixes
26
+
27
+ * Ensure that the `prepare_command` is run even when skipping the download
28
+ cache.
29
+ [Samuel Giddins](https://github.com/segiddins)
30
+ [#3674](https://github.com/CocoaPods/CocoaPods/issues/3674)
31
+
32
+ * Public headers inside a directory named `framework` should be linked in the
33
+ sandbox.
34
+ [Vincent Isambart](https://github.com/vincentisambart)
35
+ [#3751](https://github.com/CocoaPods/CocoaPods/issues/3751)
36
+
37
+ * Properly support targets with spaces in their name in the embed frameworks
38
+ script.
39
+ [Samuel Giddins](https://github.com/segiddins)
40
+ [#3754](https://github.com/CocoaPods/CocoaPods/issues/3754)
41
+
42
+ * Don't add the `-ObjC` linker flag if it's unnecessary.
43
+ [Samuel Giddins](https://github.com/segiddins)
44
+ [#3537](https://github.com/CocoaPods/CocoaPods/issues/3537)
45
+
46
+ * Ensure that no duplicate framework or target dependencies are created.
47
+ [Samuel Giddins](https://github.com/segiddins)
48
+ [#3763](https://github.com/CocoaPods/CocoaPods/issues/3763)
49
+
50
+
7
51
  ## 0.38.0.beta.1
8
52
 
9
53
  ##### Highlighted Enhancement That Needs Testing
@@ -20,6 +20,7 @@ module Pod
20
20
  :clean => true,
21
21
  :integrate_targets => true,
22
22
  :deduplicate_targets => true,
23
+ :deterministic_uuids => ENV['COCOAPODS_DISABLE_DETERMINISTIC_UUIDS'].nil?,
23
24
  :lock_pod_source => true,
24
25
  :new_version_message => ENV['COCOAPODS_SKIP_UPDATE_MESSAGE'].nil?,
25
26
 
@@ -95,6 +96,12 @@ module Pod
95
96
  attr_accessor :deduplicate_targets
96
97
  alias_method :deduplicate_targets?, :deduplicate_targets
97
98
 
99
+ # @return [Bool] Whether CocoaPods should give the pods project
100
+ # deterministic UUIDs.
101
+ #
102
+ attr_accessor :deterministic_uuids
103
+ alias_method :deterministic_uuids?, :deterministic_uuids
104
+
98
105
  # @return [Bool] Whether the installer should skip the repos update.
99
106
  #
100
107
  attr_accessor :skip_repo_update
@@ -33,7 +33,9 @@ module Pod
33
33
  cache = Cache.new(cache_path)
34
34
  result = cache.download_pod(request)
35
35
  else
36
+ require 'cocoapods/installer/pod_source_preparer'
36
37
  result, _ = download_request(request, target)
38
+ Installer::PodSourcePreparer.new(result.spec, result.location).prepare!
37
39
  end
38
40
 
39
41
  if target && result.location && target != result.location
@@ -1,5 +1,5 @@
1
1
  module Pod
2
2
  # The version of the cocoapods command line tool.
3
3
  #
4
- VERSION = '0.38.0.beta.1' unless defined? Pod::VERSION
4
+ VERSION = '0.38.0.beta.2' unless defined? Pod::VERSION
5
5
  end
@@ -55,11 +55,11 @@ module Pod
55
55
 
56
56
  if [ -L "${source}" ]; then
57
57
  echo "Symlinked..."
58
- source=$(readlink "${source}")
58
+ source="$(readlink "${source}")"
59
59
  fi
60
60
 
61
61
  # use filter instead of exclude so missing patterns dont' throw errors
62
- echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" ${source} ${destination}"
62
+ echo "rsync -av --filter \\"- CVS/\\" --filter \\"- .svn/\\" --filter \\"- .git/\\" --filter \\"- .hg/\\" --filter \\"- Headers\\" --filter \\"- PrivateHeaders\\" --filter \\"- Modules\\" \\"${source}\\" \\"${destination}\\""
63
63
  rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
64
64
 
65
65
  # Resign the code if required by the build settings to avoid unstable apps
@@ -67,7 +67,7 @@ module Pod
67
67
 
68
68
  # Embed linked Swift runtime libraries
69
69
  local basename
70
- basename=$(basename $1 | sed -E s/\\\\..+// && exit ${PIPESTATUS[0]})
70
+ basename="$(basename "$1" | sed -E s/\\\\..+// && exit ${PIPESTATUS[0]})"
71
71
  local swift_runtime_libs
72
72
  swift_runtime_libs=$(xcrun otool -LX "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/${basename}.framework/${basename}" | grep --color=never @rpath/libswift | sed -E s/@rpath\\\\/\\(.+dylib\\).*/\\\\1/g | uniq -u && exit ${PIPESTATUS[0]})
73
73
  for lib in $swift_runtime_libs; do
@@ -82,7 +82,7 @@ module Pod
82
82
  if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
83
83
  # Use the current code_sign_identitiy
84
84
  echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
85
- echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements $1"
85
+ echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements \\"$1\\""
86
86
  /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} --preserve-metadata=identifier,entitlements "$1"
87
87
  fi
88
88
  }
@@ -49,8 +49,10 @@ module Pod
49
49
  # @return [Xcodeproj::Config]
50
50
  #
51
51
  def generate
52
+ includes_static_libs = !target.requires_frameworks?
53
+ includes_static_libs ||= target.pod_targets.flat_map(&:file_accessors).any? { |fa| !fa.vendored_libraries.empty? }
52
54
  config = {
53
- 'OTHER_LDFLAGS' => '$(inherited) ' + XCConfigHelper.default_ld_flags(target),
55
+ 'OTHER_LDFLAGS' => '$(inherited) ' + XCConfigHelper.default_ld_flags(target, includes_static_libs),
54
56
  'PODS_ROOT' => target.relative_pods_root,
55
57
  'GCC_PREPROCESSOR_DEFINITIONS' => '$(inherited) COCOAPODS=1',
56
58
  }
@@ -31,13 +31,14 @@ module Pod
31
31
  # while `-fobjc-arc` is included only if requested in the
32
32
  # Podfile.
33
33
  #
34
- def self.default_ld_flags(target)
35
- ld_flags = '-ObjC'
34
+ def self.default_ld_flags(target, includes_static_libraries = false)
35
+ ld_flags = ''
36
+ ld_flags << '-ObjC' if includes_static_libraries
36
37
  if target.podfile.set_arc_compatibility_flag? &&
37
38
  target.spec_consumers.any?(&:requires_arc?)
38
39
  ld_flags << ' -fobjc-arc'
39
40
  end
40
- ld_flags
41
+ ld_flags.strip
41
42
  end
42
43
 
43
44
  # Configures the given Xcconfig
@@ -67,6 +67,8 @@ module Pod
67
67
  @sandbox = sandbox
68
68
  @podfile = podfile
69
69
  @lockfile = lockfile
70
+
71
+ @use_default_plugins = true
70
72
  end
71
73
 
72
74
  # @return [Hash, Boolean, nil] Pods that have been requested to be
@@ -76,6 +78,12 @@ module Pod
76
78
  #
77
79
  attr_accessor :update
78
80
 
81
+ # @return [Boolean] Whether default plugins should be used during
82
+ # installation. Defaults to true.
83
+ #
84
+ attr_accessor :use_default_plugins
85
+ alias_method :use_default_plugins?, :use_default_plugins
86
+
79
87
  # Installs the Pods.
80
88
  #
81
89
  # The installation process is mostly linear with a few minor complications
@@ -418,7 +426,7 @@ module Pod
418
426
  #
419
427
  def run_plugins_pre_install_hooks
420
428
  context = PreInstallHooksContext.generate(sandbox, podfile, lockfile)
421
- HooksManager.run(:pre_install, context, podfile.plugins)
429
+ HooksManager.run(:pre_install, context, plugins)
422
430
  end
423
431
 
424
432
  # Performs any post-installation actions
@@ -434,7 +442,7 @@ module Pod
434
442
  #
435
443
  def run_plugins_post_install_hooks
436
444
  context = PostInstallHooksContext.generate(sandbox, aggregate_targets)
437
- HooksManager.run(:post_install, context, podfile.plugins)
445
+ HooksManager.run(:post_install, context, plugins)
438
446
  end
439
447
 
440
448
  # Ensures that all plugins specified in the {#podfile} are loaded.
@@ -453,6 +461,21 @@ module Pod
453
461
  end
454
462
  end
455
463
 
464
+ DEFAULT_PLUGINS = { 'cocoapods-stats' => {} }
465
+
466
+ # Returns the plugins that should be run, as indicated by the default
467
+ # plugins and the podfile's plugins
468
+ #
469
+ # @return [Hash<String, Hash>] The plugins to be used
470
+ #
471
+ def plugins
472
+ if use_default_plugins?
473
+ DEFAULT_PLUGINS.merge(podfile.plugins)
474
+ else
475
+ podfile.plugins
476
+ end
477
+ end
478
+
456
479
  # Prints a warning for any pods that are deprecated
457
480
  #
458
481
  # @return [void]
@@ -603,7 +626,7 @@ module Pod
603
626
  if pod_target.requires_frameworks?
604
627
  product_ref = frameworks_group.files.find { |f| f.path == pod_dependency_target.product_name } ||
605
628
  frameworks_group.new_product_ref_for_target(pod_dependency_target.product_basename, pod_dependency_target.product_type)
606
- pod_target.native_target.frameworks_build_phase.add_file_reference(product_ref)
629
+ pod_target.native_target.frameworks_build_phase.add_file_reference(product_ref, true)
607
630
  end
608
631
  end
609
632
  end
@@ -621,6 +644,7 @@ module Pod
621
644
  pods_project.development_pods.remove_from_project if pods_project.development_pods.empty?
622
645
  pods_project.sort(:groups_position => :below)
623
646
  pods_project.recreate_user_schemes(false)
647
+ pods_project.predictabilize_uuids if config.deterministic_uuids?
624
648
  pods_project.save
625
649
  end
626
650
  end
@@ -115,7 +115,7 @@ module Pod
115
115
  UI.message '- Linking headers' do
116
116
  pod_targets.each do |pod_target|
117
117
  pod_target.file_accessors.each do |file_accessor|
118
- framework_exp = /.framework\//
118
+ framework_exp = /\.framework\//
119
119
  headers_sandbox = Pathname.new(file_accessor.spec.root.name)
120
120
  pod_target.build_headers.add_search_path(headers_sandbox, pod_target.platform)
121
121
  sandbox.public_headers.add_search_path(headers_sandbox, pod_target.platform)
@@ -126,7 +126,7 @@ module Pod
126
126
  new_product_ref = frameworks.files.find { |f| f.path == target.product_name } ||
127
127
  frameworks.new_product_ref_for_target(target_basename, target.product_type)
128
128
  build_file = build_phase.build_file(new_product_ref) ||
129
- build_phase.add_file_reference(new_product_ref)
129
+ build_phase.add_file_reference(new_product_ref, true)
130
130
  if target.requires_frameworks?
131
131
  # Weak link the aggregate target's product, because as it contains
132
132
  # no symbols, it isn't copied into the app bundle. dyld will so
@@ -37,6 +37,7 @@ module Pod
37
37
  @podfile = podfile
38
38
  @locked_dependencies = locked_dependencies
39
39
  @sources = Array(sources)
40
+ @platforms_by_dependency = Hash.new { |h, k| h[k] = [] }
40
41
  end
41
42
 
42
43
  #-------------------------------------------------------------------------#
@@ -52,7 +53,11 @@ module Pod
52
53
  # definition.
53
54
  #
54
55
  def resolve
55
- dependencies = podfile.target_definition_list.map(&:dependencies).flatten
56
+ dependencies = podfile.target_definition_list.flat_map do |target|
57
+ target.dependencies.each do |dep|
58
+ @platforms_by_dependency[dep].push(target.platform).uniq!
59
+ end
60
+ end
56
61
  @cached_sets = {}
57
62
  @activated = Molinillo::Resolver.new(self, self).resolve(dependencies, locked_dependencies)
58
63
  specs_by_target.tap do |specs_by_target|
@@ -181,7 +186,7 @@ module Pod
181
186
  requirement_satisfied && !(
182
187
  spec.version.prerelease? &&
183
188
  existing_vertices.flat_map(&:requirements).none? { |r| r.prerelease? || r.external_source || r.head? }
184
- )
189
+ ) && spec_is_platform_compatible?(activated, requirement, spec)
185
190
  end
186
191
 
187
192
  # Sort dependencies so that the ones that are easiest to resolve are first.
@@ -395,6 +400,31 @@ module Pod
395
400
  raise Informative, error.message
396
401
  end
397
402
 
403
+ # Returns whether the given spec is platform-compatible with the dependency
404
+ # graph, taking into account the dependency that has required the spec.
405
+ #
406
+ # @param [Molinillo::DependencyGraph] dependency_graph
407
+ #
408
+ # @param [Dependency] dependency
409
+ #
410
+ # @param [Specification] specification
411
+ #
412
+ # @return [Bool]
413
+ def spec_is_platform_compatible?(dependency_graph, dependency, spec)
414
+ all_predecessors = ->(vertex) do
415
+ pred = vertex.predecessors
416
+ pred + pred.map(&all_predecessors).reduce(Set.new, &:&) << vertex
417
+ end
418
+ vertex = dependency_graph.vertex_named(dependency.name)
419
+ predecessors = all_predecessors[vertex].reject { |v| v.explicit_requirements.empty? }
420
+ platforms_to_satisfy = predecessors.flat_map(&:explicit_requirements).flat_map { |r| @platforms_by_dependency[r] }
421
+
422
+ platforms_to_satisfy.all? do |platform_to_satisfy|
423
+ spec.available_platforms.select { |spec_platform| spec_platform.name == platform_to_satisfy.name }.
424
+ all? { |spec_platform| platform_to_satisfy.supports?(spec_platform) }
425
+ end
426
+ end
427
+
398
428
  # Returns the target-appropriate nodes that are `successors` of `node`,
399
429
  # rejecting those that are scoped by target platform and have incompatible
400
430
  # targets.
@@ -153,9 +153,9 @@ module Pod
153
153
  # depends.
154
154
  #
155
155
  def dependencies
156
- spec_consumers.map do |consumer|
156
+ spec_consumers.flat_map do |consumer|
157
157
  consumer.dependencies.map { |dep| Specification.root_name(dep.name) }
158
- end.flatten
158
+ end.uniq
159
159
  end
160
160
 
161
161
  # Checks if the target should be included in the build configuration with
@@ -342,6 +342,7 @@ module Pod
342
342
  podfile = podfile_from_spec(consumer.platform_name, deployment_target, use_frameworks)
343
343
  sandbox = Sandbox.new(config.sandbox_root)
344
344
  installer = Installer.new(sandbox, podfile)
345
+ installer.use_default_plugins = false
345
346
  installer.install!
346
347
 
347
348
  file_accessors = installer.aggregate_targets.map do |target|
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.38.0.beta.1
4
+ version: 0.38.0.beta.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eloy Duran
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2015-06-26 00:00:00.000000000 Z
14
+ date: 2015-07-05 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: cocoapods-core
@@ -19,208 +19,222 @@ dependencies:
19
19
  requirements:
20
20
  - - '='
21
21
  - !ruby/object:Gem::Version
22
- version: 0.38.0.beta.1
22
+ version: 0.38.0.beta.2
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - '='
28
28
  - !ruby/object:Gem::Version
29
- version: 0.38.0.beta.1
29
+ version: 0.38.0.beta.2
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: claide
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  requirements:
34
- - - ~>
34
+ - - "~>"
35
35
  - !ruby/object:Gem::Version
36
- version: 0.8.2
36
+ version: 0.9.1
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
40
40
  requirements:
41
- - - ~>
41
+ - - "~>"
42
42
  - !ruby/object:Gem::Version
43
- version: 0.8.2
43
+ version: 0.9.1
44
44
  - !ruby/object:Gem::Dependency
45
45
  name: xcodeproj
46
46
  requirement: !ruby/object:Gem::Requirement
47
47
  requirements:
48
- - - ~>
48
+ - - "~>"
49
49
  - !ruby/object:Gem::Version
50
- version: 0.25.0
50
+ version: 0.26.1
51
51
  type: :runtime
52
52
  prerelease: false
53
53
  version_requirements: !ruby/object:Gem::Requirement
54
54
  requirements:
55
- - - ~>
55
+ - - "~>"
56
56
  - !ruby/object:Gem::Version
57
- version: 0.25.0
57
+ version: 0.26.1
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: cocoapods-downloader
60
60
  requirement: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - ~>
62
+ - - "~>"
63
63
  - !ruby/object:Gem::Version
64
64
  version: 0.9.1
65
65
  type: :runtime
66
66
  prerelease: false
67
67
  version_requirements: !ruby/object:Gem::Requirement
68
68
  requirements:
69
- - - ~>
69
+ - - "~>"
70
70
  - !ruby/object:Gem::Version
71
71
  version: 0.9.1
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: cocoapods-plugins
74
74
  requirement: !ruby/object:Gem::Requirement
75
75
  requirements:
76
- - - ~>
76
+ - - "~>"
77
77
  - !ruby/object:Gem::Version
78
78
  version: 0.4.2
79
79
  type: :runtime
80
80
  prerelease: false
81
81
  version_requirements: !ruby/object:Gem::Requirement
82
82
  requirements:
83
- - - ~>
83
+ - - "~>"
84
84
  - !ruby/object:Gem::Version
85
85
  version: 0.4.2
86
+ - !ruby/object:Gem::Dependency
87
+ name: cocoapods-stats
88
+ requirement: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - "~>"
91
+ - !ruby/object:Gem::Version
92
+ version: 0.5.3
93
+ type: :runtime
94
+ prerelease: false
95
+ version_requirements: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: 0.5.3
86
100
  - !ruby/object:Gem::Dependency
87
101
  name: cocoapods-try
88
102
  requirement: !ruby/object:Gem::Requirement
89
103
  requirements:
90
- - - ~>
104
+ - - "~>"
91
105
  - !ruby/object:Gem::Version
92
106
  version: 0.4.5
93
107
  type: :runtime
94
108
  prerelease: false
95
109
  version_requirements: !ruby/object:Gem::Requirement
96
110
  requirements:
97
- - - ~>
111
+ - - "~>"
98
112
  - !ruby/object:Gem::Version
99
113
  version: 0.4.5
100
114
  - !ruby/object:Gem::Dependency
101
115
  name: cocoapods-trunk
102
116
  requirement: !ruby/object:Gem::Requirement
103
117
  requirements:
104
- - - ~>
118
+ - - "~>"
105
119
  - !ruby/object:Gem::Version
106
120
  version: 0.6.1
107
121
  type: :runtime
108
122
  prerelease: false
109
123
  version_requirements: !ruby/object:Gem::Requirement
110
124
  requirements:
111
- - - ~>
125
+ - - "~>"
112
126
  - !ruby/object:Gem::Version
113
127
  version: 0.6.1
114
128
  - !ruby/object:Gem::Dependency
115
129
  name: molinillo
116
130
  requirement: !ruby/object:Gem::Requirement
117
131
  requirements:
118
- - - ~>
132
+ - - "~>"
119
133
  - !ruby/object:Gem::Version
120
- version: 0.2.3
134
+ version: 0.3.0
121
135
  type: :runtime
122
136
  prerelease: false
123
137
  version_requirements: !ruby/object:Gem::Requirement
124
138
  requirements:
125
- - - ~>
139
+ - - "~>"
126
140
  - !ruby/object:Gem::Version
127
- version: 0.2.3
141
+ version: 0.3.0
128
142
  - !ruby/object:Gem::Dependency
129
143
  name: colored
130
144
  requirement: !ruby/object:Gem::Requirement
131
145
  requirements:
132
- - - ~>
146
+ - - "~>"
133
147
  - !ruby/object:Gem::Version
134
148
  version: '1.2'
135
149
  type: :runtime
136
150
  prerelease: false
137
151
  version_requirements: !ruby/object:Gem::Requirement
138
152
  requirements:
139
- - - ~>
153
+ - - "~>"
140
154
  - !ruby/object:Gem::Version
141
155
  version: '1.2'
142
156
  - !ruby/object:Gem::Dependency
143
157
  name: escape
144
158
  requirement: !ruby/object:Gem::Requirement
145
159
  requirements:
146
- - - ~>
160
+ - - "~>"
147
161
  - !ruby/object:Gem::Version
148
162
  version: 0.0.4
149
163
  type: :runtime
150
164
  prerelease: false
151
165
  version_requirements: !ruby/object:Gem::Requirement
152
166
  requirements:
153
- - - ~>
167
+ - - "~>"
154
168
  - !ruby/object:Gem::Version
155
169
  version: 0.0.4
156
170
  - !ruby/object:Gem::Dependency
157
171
  name: activesupport
158
172
  requirement: !ruby/object:Gem::Requirement
159
173
  requirements:
160
- - - '>='
174
+ - - ">="
161
175
  - !ruby/object:Gem::Version
162
176
  version: 3.2.15
163
177
  type: :runtime
164
178
  prerelease: false
165
179
  version_requirements: !ruby/object:Gem::Requirement
166
180
  requirements:
167
- - - '>='
181
+ - - ">="
168
182
  - !ruby/object:Gem::Version
169
183
  version: 3.2.15
170
184
  - !ruby/object:Gem::Dependency
171
185
  name: nap
172
186
  requirement: !ruby/object:Gem::Requirement
173
187
  requirements:
174
- - - ~>
188
+ - - "~>"
175
189
  - !ruby/object:Gem::Version
176
190
  version: '0.8'
177
191
  type: :runtime
178
192
  prerelease: false
179
193
  version_requirements: !ruby/object:Gem::Requirement
180
194
  requirements:
181
- - - ~>
195
+ - - "~>"
182
196
  - !ruby/object:Gem::Version
183
197
  version: '0.8'
184
198
  - !ruby/object:Gem::Dependency
185
199
  name: bundler
186
200
  requirement: !ruby/object:Gem::Requirement
187
201
  requirements:
188
- - - ~>
202
+ - - "~>"
189
203
  - !ruby/object:Gem::Version
190
204
  version: '1.3'
191
205
  type: :development
192
206
  prerelease: false
193
207
  version_requirements: !ruby/object:Gem::Requirement
194
208
  requirements:
195
- - - ~>
209
+ - - "~>"
196
210
  - !ruby/object:Gem::Version
197
211
  version: '1.3'
198
212
  - !ruby/object:Gem::Dependency
199
213
  name: rake
200
214
  requirement: !ruby/object:Gem::Requirement
201
215
  requirements:
202
- - - '>='
216
+ - - ">="
203
217
  - !ruby/object:Gem::Version
204
218
  version: '0'
205
219
  type: :development
206
220
  prerelease: false
207
221
  version_requirements: !ruby/object:Gem::Requirement
208
222
  requirements:
209
- - - '>='
223
+ - - ">="
210
224
  - !ruby/object:Gem::Version
211
225
  version: '0'
212
226
  - !ruby/object:Gem::Dependency
213
227
  name: bacon
214
228
  requirement: !ruby/object:Gem::Requirement
215
229
  requirements:
216
- - - ~>
230
+ - - "~>"
217
231
  - !ruby/object:Gem::Version
218
232
  version: '1.1'
219
233
  type: :development
220
234
  prerelease: false
221
235
  version_requirements: !ruby/object:Gem::Requirement
222
236
  requirements:
223
- - - ~>
237
+ - - "~>"
224
238
  - !ruby/object:Gem::Version
225
239
  version: '1.1'
226
240
  description: |-
@@ -349,12 +363,12 @@ require_paths:
349
363
  - lib
350
364
  required_ruby_version: !ruby/object:Gem::Requirement
351
365
  requirements:
352
- - - '>='
366
+ - - ">="
353
367
  - !ruby/object:Gem::Version
354
368
  version: 2.0.0
355
369
  required_rubygems_version: !ruby/object:Gem::Requirement
356
370
  requirements:
357
- - - '>='
371
+ - - ">="
358
372
  - !ruby/object:Gem::Version
359
373
  version: '0'
360
374
  requirements: []