xcres 0.4.4 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (109) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +12 -9
  3. data/README.md +43 -5
  4. data/lib/xcres/analyzer/strings_analyzer.rb +1 -1
  5. data/lib/xcres/builder/resources_builder.rb +77 -12
  6. data/lib/xcres/command/build_command.rb +6 -1
  7. data/lib/xcres/command/install_command.rb +23 -16
  8. data/lib/xcres/command/project_command.rb +1 -0
  9. data/lib/xcres/version.rb +1 -1
  10. data/spec/fixtures/Example/Example/en.lproj/Localizable.strings +1 -0
  11. data/spec/integration.rb +8 -0
  12. data/spec/integration/build-keyword-clash/after/R.h +1 -3
  13. data/spec/integration/build-keyword-clash/after/R.m +0 -2
  14. data/spec/integration/build-swift/after/Example/Example.xcodeproj.yaml +168 -0
  15. data/spec/integration/build-swift/after/Example/Example/AppDelegate.h +15 -0
  16. data/spec/integration/build-swift/after/Example/Example/AppDelegate.m +49 -0
  17. data/spec/integration/build-swift/after/Example/Example/Example-Info.plist +38 -0
  18. data/spec/integration/build-swift/after/Example/Example/Example-Prefix.pch +16 -0
  19. data/spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_list.png +0 -0
  20. data/spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png +0 -0
  21. data/spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_map.png +0 -0
  22. data/spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png +0 -0
  23. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +28 -0
  24. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/Contents.json +23 -0
  25. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat.jpg +0 -0
  26. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@2x.jpg +0 -0
  27. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@3x.jpg +0 -0
  28. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/Contents.json +22 -0
  29. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  30. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  31. data/spec/integration/build-swift/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  32. data/spec/integration/build-swift/after/Example/Example/Images/doge.jpeg +0 -0
  33. data/spec/integration/build-swift/after/Example/Example/Images/nyanCat.png +0 -0
  34. data/spec/integration/build-swift/after/Example/Example/de.lproj/Localizable.strings +12 -0
  35. data/spec/integration/build-swift/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  36. data/spec/integration/build-swift/after/Example/Example/en.lproj/Localizable.strings +15 -0
  37. data/spec/integration/build-swift/after/Example/Example/main.m +18 -0
  38. data/spec/integration/build-swift/after/R.swift +47 -0
  39. data/spec/integration/build-swift/after/execution_output.txt +19 -0
  40. data/spec/integration/build-swift/before/Example/Example.xcodeproj/project.pbxproj +453 -0
  41. data/spec/integration/build-swift/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  42. data/spec/integration/build-swift/before/Example/Example/AppDelegate.h +15 -0
  43. data/spec/integration/build-swift/before/Example/Example/AppDelegate.m +49 -0
  44. data/spec/integration/build-swift/before/Example/Example/Example-Info.plist +38 -0
  45. data/spec/integration/build-swift/before/Example/Example/Example-Prefix.pch +16 -0
  46. data/spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_list.png +0 -0
  47. data/spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png +0 -0
  48. data/spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_map.png +0 -0
  49. data/spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png +0 -0
  50. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +28 -0
  51. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/Contents.json +23 -0
  52. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat.jpg +0 -0
  53. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@2x.jpg +0 -0
  54. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@3x.jpg +0 -0
  55. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/Contents.json +22 -0
  56. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/doge.png +0 -0
  57. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png +0 -0
  58. data/spec/integration/build-swift/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  59. data/spec/integration/build-swift/before/Example/Example/Images/doge.jpeg +0 -0
  60. data/spec/integration/build-swift/before/Example/Example/Images/nyanCat.png +0 -0
  61. data/spec/integration/build-swift/before/Example/Example/de.lproj/Localizable.strings +12 -0
  62. data/spec/integration/build-swift/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  63. data/spec/integration/build-swift/before/Example/Example/en.lproj/Localizable.strings +15 -0
  64. data/spec/integration/build-swift/before/Example/Example/main.m +18 -0
  65. data/spec/integration/build-var-infoplist/after/R.h +1 -1
  66. data/spec/integration/build/after/R.h +1 -1
  67. data/spec/integration/install-again/after/Example/Example.xcodeproj.yaml +1 -1
  68. data/spec/integration/install-again/after/Example/Example/Resources/R.h +1 -3
  69. data/spec/integration/install-again/after/Example/Example/Resources/R.m +0 -2
  70. data/spec/integration/install-again/after/execution_output.txt +0 -1
  71. data/spec/integration/install-again/before/Example/Example/Resources/R.h +1 -1
  72. data/spec/integration/install-again/before/Example/Example/Resources/R.m +0 -2
  73. data/spec/integration/install-moved-supporting-files/after/Example/Example.xcodeproj.yaml +1 -1
  74. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/Resources/R.h +1 -3
  75. data/spec/integration/install-moved-supporting-files/after/Example/Supporting_Files/Resources/R.m +0 -2
  76. data/spec/integration/install-no-supporting-files/after/Example/Example.xcodeproj.yaml +1 -1
  77. data/spec/integration/install-no-supporting-files/after/Example/Resources/R.h +1 -3
  78. data/spec/integration/install-no-supporting-files/after/Example/Resources/R.m +0 -2
  79. data/spec/integration/install-swift/after/Example/Example.xcodeproj.yaml +171 -0
  80. data/spec/integration/install-swift/after/Example/Example.xcodeproj/project.pbxproj +898 -0
  81. data/spec/integration/install-swift/after/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  82. data/spec/integration/install-swift/after/Example/Example/AppDelegate.h +15 -0
  83. data/spec/integration/install-swift/after/Example/Example/AppDelegate.m +49 -0
  84. data/spec/integration/install-swift/after/Example/Example/Example-Info.plist +38 -0
  85. data/spec/integration/install-swift/after/Example/Example/Example-Prefix.pch +16 -0
  86. data/spec/integration/install-swift/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  87. data/spec/integration/install-swift/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  88. data/spec/integration/install-swift/after/Example/Example/Resources/R.swift +23 -0
  89. data/spec/integration/install-swift/after/Example/Example/en.lproj/InfoPlist.strings +2 -0
  90. data/spec/integration/install-swift/after/Example/Example/main.m +18 -0
  91. data/spec/integration/install-swift/after/execution_output.txt +22 -0
  92. data/spec/integration/install-swift/before/Example/Example.xcodeproj/project.pbxproj +421 -0
  93. data/spec/integration/install-swift/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata +7 -0
  94. data/spec/integration/install-swift/before/Example/Example/AppDelegate.h +15 -0
  95. data/spec/integration/install-swift/before/Example/Example/AppDelegate.m +49 -0
  96. data/spec/integration/install-swift/before/Example/Example/Example-Info.plist +38 -0
  97. data/spec/integration/install-swift/before/Example/Example/Example-Prefix.pch +16 -0
  98. data/spec/integration/install-swift/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json +23 -0
  99. data/spec/integration/install-swift/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json +23 -0
  100. data/spec/integration/install-swift/before/Example/Example/en.lproj/InfoPlist.strings +2 -0
  101. data/spec/integration/install-swift/before/Example/Example/main.m +18 -0
  102. data/spec/integration/install/after/Example/Example.xcodeproj.yaml +1 -1
  103. data/spec/integration/install/after/Example/Example/Resources/R.h +1 -3
  104. data/spec/integration/install/after/Example/Example/Resources/R.m +0 -2
  105. data/spec/integration/version/after/execution_output.txt +1 -1
  106. data/spec/unit/analyzer/strings_analyzer_spec.rb +1 -0
  107. data/spec/unit/builder/resources_builder_spec.rb +43 -4
  108. data/xcres.gemspec +0 -1
  109. metadata +151 -17
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ <FileRef
5
+ location = "self:Example.xcodeproj">
6
+ </FileRef>
7
+ </Workspace>
@@ -0,0 +1,15 @@
1
+ //
2
+ // AppDelegate.h
3
+ // Example
4
+ //
5
+ // Created by Marius Rackwitz on 01.05.14.
6
+ // Copyright (c) 2014 XCRes. All rights reserved.
7
+ //
8
+
9
+ #import <UIKit/UIKit.h>
10
+
11
+ @interface AppDelegate : UIResponder <UIApplicationDelegate>
12
+
13
+ @property (strong, nonatomic) UIWindow *window;
14
+
15
+ @end
@@ -0,0 +1,49 @@
1
+ //
2
+ // AppDelegate.m
3
+ // Example
4
+ //
5
+ // Created by Marius Rackwitz on 01.05.14.
6
+ // Copyright (c) 2014 XCRes. All rights reserved.
7
+ //
8
+
9
+ #import "AppDelegate.h"
10
+
11
+ @implementation AppDelegate
12
+
13
+ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
14
+ {
15
+ self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
16
+ // Override point for customization after application launch.
17
+ self.window.backgroundColor = [UIColor whiteColor];
18
+ [self.window makeKeyAndVisible];
19
+ return YES;
20
+ }
21
+
22
+ - (void)applicationWillResignActive:(UIApplication *)application
23
+ {
24
+ // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
25
+ // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
26
+ }
27
+
28
+ - (void)applicationDidEnterBackground:(UIApplication *)application
29
+ {
30
+ // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
31
+ // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
32
+ }
33
+
34
+ - (void)applicationWillEnterForeground:(UIApplication *)application
35
+ {
36
+ // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
37
+ }
38
+
39
+ - (void)applicationDidBecomeActive:(UIApplication *)application
40
+ {
41
+ // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
42
+ }
43
+
44
+ - (void)applicationWillTerminate:(UIApplication *)application
45
+ {
46
+ // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
47
+ }
48
+
49
+ @end
@@ -0,0 +1,38 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>CFBundleDevelopmentRegion</key>
6
+ <string>en</string>
7
+ <key>CFBundleDisplayName</key>
8
+ <string>${PRODUCT_NAME}</string>
9
+ <key>CFBundleExecutable</key>
10
+ <string>${EXECUTABLE_NAME}</string>
11
+ <key>CFBundleIdentifier</key>
12
+ <string>io.github.xcres.${PRODUCT_NAME:rfc1034identifier}</string>
13
+ <key>CFBundleInfoDictionaryVersion</key>
14
+ <string>6.0</string>
15
+ <key>CFBundleName</key>
16
+ <string>${PRODUCT_NAME}</string>
17
+ <key>CFBundlePackageType</key>
18
+ <string>APPL</string>
19
+ <key>CFBundleShortVersionString</key>
20
+ <string>1.0</string>
21
+ <key>CFBundleSignature</key>
22
+ <string>????</string>
23
+ <key>CFBundleVersion</key>
24
+ <string>1.0</string>
25
+ <key>LSRequiresIPhoneOS</key>
26
+ <true/>
27
+ <key>UIRequiredDeviceCapabilities</key>
28
+ <array>
29
+ <string>armv7</string>
30
+ </array>
31
+ <key>UISupportedInterfaceOrientations</key>
32
+ <array>
33
+ <string>UIInterfaceOrientationPortrait</string>
34
+ <string>UIInterfaceOrientationLandscapeLeft</string>
35
+ <string>UIInterfaceOrientationLandscapeRight</string>
36
+ </array>
37
+ </dict>
38
+ </plist>
@@ -0,0 +1,16 @@
1
+ //
2
+ // Prefix header
3
+ //
4
+ // The contents of this file are implicitly included at the beginning of every source file.
5
+ //
6
+
7
+ #import <Availability.h>
8
+
9
+ #ifndef __IPHONE_3_0
10
+ #warning "This project uses features only available in iOS SDK 3.0 and later."
11
+ #endif
12
+
13
+ #ifdef __OBJC__
14
+ #import <UIKit/UIKit.h>
15
+ #import <Foundation/Foundation.h>
16
+ #endif
@@ -0,0 +1,23 @@
1
+ {
2
+ "images" : [
3
+ {
4
+ "idiom" : "iphone",
5
+ "size" : "29x29",
6
+ "scale" : "2x"
7
+ },
8
+ {
9
+ "idiom" : "iphone",
10
+ "size" : "40x40",
11
+ "scale" : "2x"
12
+ },
13
+ {
14
+ "idiom" : "iphone",
15
+ "size" : "60x60",
16
+ "scale" : "2x"
17
+ }
18
+ ],
19
+ "info" : {
20
+ "version" : 1,
21
+ "author" : "xcode"
22
+ }
23
+ }
@@ -0,0 +1,23 @@
1
+ {
2
+ "images" : [
3
+ {
4
+ "orientation" : "portrait",
5
+ "idiom" : "iphone",
6
+ "extent" : "full-screen",
7
+ "minimum-system-version" : "7.0",
8
+ "scale" : "2x"
9
+ },
10
+ {
11
+ "orientation" : "portrait",
12
+ "idiom" : "iphone",
13
+ "subtype" : "retina4",
14
+ "extent" : "full-screen",
15
+ "minimum-system-version" : "7.0",
16
+ "scale" : "2x"
17
+ }
18
+ ],
19
+ "info" : {
20
+ "version" : 1,
21
+ "author" : "xcode"
22
+ }
23
+ }
@@ -0,0 +1,2 @@
1
+ /* Localized versions of Info.plist keys */
2
+
@@ -0,0 +1,18 @@
1
+ //
2
+ // main.m
3
+ // Example
4
+ //
5
+ // Created by Marius Rackwitz on 01.05.14.
6
+ // Copyright (c) 2014 XCRes. All rights reserved.
7
+ //
8
+
9
+ #import <UIKit/UIKit.h>
10
+
11
+ #import "AppDelegate.h"
12
+
13
+ int main(int argc, char * argv[])
14
+ {
15
+ @autoreleasepool {
16
+ return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
17
+ }
18
+ }
@@ -33,7 +33,7 @@ Targets:
33
33
  outputPaths: []
34
34
  shellPath: "/bin/sh"
35
35
  shellScript: |
36
- xcres --no-ansi build $PROJECT_FILE_PATH $SRCROOT/Example/Resources/R
36
+ xcres --no-ansi build --documented --no-swift $PROJECT_FILE_PATH $SRCROOT/Example/Resources/R
37
37
  showEnvVarsInLog: '0'
38
38
  buildActionMask: '2147483647'
39
39
  runOnlyForDeploymentPostprocessing: '0'
@@ -7,13 +7,11 @@
7
7
 
8
8
  #import <Foundation/Foundation.h>
9
9
 
10
- extern const struct R {
10
+ FOUNDATION_EXTERN const struct R {
11
11
  struct ImagesAssets {
12
12
  /// AppIcon
13
13
  __unsafe_unretained NSString *app;
14
14
  /// LaunchImage
15
15
  __unsafe_unretained NSString *launch;
16
16
  } ImagesAssets;
17
- struct Strings {
18
- } Strings;
19
17
  } R;
@@ -12,6 +12,4 @@ const struct R R = {
12
12
  .app = @"AppIcon",
13
13
  .launch = @"LaunchImage",
14
14
  },
15
- .Strings = {
16
- },
17
15
  };
@@ -1,3 +1,3 @@
1
1
  xcres version --verbose --no-ansi 2>&1
2
2
  Ⓥ Verbose mode is enabled.
3
- 0.4.4
3
+ 0.5.0
@@ -238,6 +238,7 @@ describe 'XCRes::StringsAnalyzer' do
238
238
  "en_exclusive" => "Only in english",
239
239
  "example" => "Lorem Ipsum",
240
240
  "123-abc-3e7.text" => "Hello Storyboards",
241
+ "123-ab-3e7.text" => "Hello Storyboards",
241
242
  }
242
243
  end
243
244
 
@@ -15,6 +15,10 @@ describe 'XCRes::ResourcesBuilder' do
15
15
  it 'should set attribute documented to true' do
16
16
  @builder.documented.should.be.true?
17
17
  end
18
+
19
+ it 'should set attribute swift to false' do
20
+ @builder.swift.should.be.false?
21
+ end
18
22
  end
19
23
 
20
24
  describe "#resources_constant_name" do
@@ -23,12 +27,32 @@ describe 'XCRes::ResourcesBuilder' do
23
27
  @builder.resources_constant_name.should.be.eql?('test')
24
28
  end
25
29
 
26
- it 'should fallback to the basename of the output path' do
30
+ it 'should fallback to the basename of the output path [swift]' do
31
+ @builder.output_path = 'test/R.swift'
32
+ @builder.resources_constant_name.should.be.eql?('R')
33
+ end
34
+
35
+ it 'should fallback to the basename of the output path [objc]' do
27
36
  @builder.output_path = 'test/R.m'
28
37
  @builder.resources_constant_name.should.be.eql?('R')
29
38
  end
30
39
  end
31
40
 
41
+ describe '#transform_key' do
42
+ it 'should transform to camelCase' do
43
+ @builder.send(:transform_key, 'ab_cd_ef', {}).should == 'abCdEf'
44
+ @builder.send(:transform_key, 'ab/cd/ef', {}).should == 'abCdEf'
45
+ @builder.send(:transform_key, 'Ab_1cdEf', {}).should == 'ab1cdEf'
46
+ end
47
+
48
+ it 'should prefix the key with an underscore if the first character is not a letter' do
49
+ @builder.send(:transform_key, '_a', {}).should == 'a'
50
+ @builder.send(:transform_key, '1', {}).should == '_1'
51
+ @builder.send(:transform_key, '_1', {}).should == '_1'
52
+ @builder.send(:transform_key, '1ab', {}).should == '_1ab'
53
+ end
54
+ end
55
+
32
56
  describe '#add_section' do
33
57
  it 'should raise if no items are given' do
34
58
  -> {
@@ -36,14 +60,29 @@ describe 'XCRes::ResourcesBuilder' do
36
60
  }.should.raise?(ArgumentError, 'No items are given!')
37
61
  end
38
62
 
39
- it 'should not add keys, which are protected keywords' do
63
+ it 'should not add keys, which are protected keywords [swift]' do
64
+ @builder.logger.expects(:warn).twice
65
+ @builder.swift = true
66
+ @builder.add_section 'Test', {
67
+ 'default' => 'Default.png',
68
+ 'cat' => 'cat.gif',
69
+ 'auto' => 'auto.jpg',
70
+ 'internal' => 'internal.png'
71
+ }
72
+ @builder.sections.should.be.eql?('Test' => { 'cat' => 'cat.gif',
73
+ 'auto' => 'auto.jpg' })
74
+ end
75
+
76
+ it 'should not add keys, which are protected keywords [objc]' do
40
77
  @builder.logger.expects(:warn).twice
41
78
  @builder.add_section 'Test', {
42
79
  'default' => 'Default.png',
43
80
  'cat' => 'cat.gif',
44
- 'auto' => 'auto.jpg'
81
+ 'auto' => 'auto.jpg',
82
+ 'internal' => 'internal.png'
45
83
  }
46
- @builder.sections.should.be.eql?('Test' => { 'cat' => 'cat.gif' })
84
+ @builder.sections.should.be.eql?('Test' => { 'cat' => 'cat.gif',
85
+ 'internal' => 'internal.png' })
47
86
  end
48
87
  end
49
88
 
data/xcres.gemspec CHANGED
@@ -38,5 +38,4 @@ Gem::Specification.new do |spec|
38
38
  spec.add_runtime_dependency 'colored', '~> 1.2'
39
39
  spec.add_runtime_dependency 'activesupport', '>= 3.2.15', '< 4'
40
40
  spec.add_runtime_dependency 'xcodeproj', '~> 0.18'
41
- spec.add_runtime_dependency 'libxml-ruby'
42
41
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcres
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marius Rackwitz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-01 00:00:00.000000000 Z
11
+ date: 2015-11-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -198,20 +198,6 @@ dependencies:
198
198
  - - "~>"
199
199
  - !ruby/object:Gem::Version
200
200
  version: '0.18'
201
- - !ruby/object:Gem::Dependency
202
- name: libxml-ruby
203
- requirement: !ruby/object:Gem::Requirement
204
- requirements:
205
- - - ">="
206
- - !ruby/object:Gem::Version
207
- version: '0'
208
- type: :runtime
209
- prerelease: false
210
- version_requirements: !ruby/object:Gem::Requirement
211
- requirements:
212
- - - ">="
213
- - !ruby/object:Gem::Version
214
- version: '0'
215
201
  description: xcres searches your Xcode project for resourcesand generates an index
216
202
  as struct constants.
217
203
  email:
@@ -317,6 +303,57 @@ files:
317
303
  - spec/integration/build-keyword-clash/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
318
304
  - spec/integration/build-keyword-clash/before/Example/Example/en.lproj/InfoPlist.strings
319
305
  - spec/integration/build-keyword-clash/before/Example/Example/main.m
306
+ - spec/integration/build-swift/after/Example/Example.xcodeproj.yaml
307
+ - spec/integration/build-swift/after/Example/Example/AppDelegate.h
308
+ - spec/integration/build-swift/after/Example/Example/AppDelegate.m
309
+ - spec/integration/build-swift/after/Example/Example/Example-Info.plist
310
+ - spec/integration/build-swift/after/Example/Example/Example-Prefix.pch
311
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_list.png
312
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png
313
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_map.png
314
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png
315
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
316
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/Contents.json
317
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat.jpg
318
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@2x.jpg
319
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@3x.jpg
320
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/Contents.json
321
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/doge.png
322
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png
323
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
324
+ - spec/integration/build-swift/after/Example/Example/Images/doge.jpeg
325
+ - spec/integration/build-swift/after/Example/Example/Images/nyanCat.png
326
+ - spec/integration/build-swift/after/Example/Example/de.lproj/Localizable.strings
327
+ - spec/integration/build-swift/after/Example/Example/en.lproj/InfoPlist.strings
328
+ - spec/integration/build-swift/after/Example/Example/en.lproj/Localizable.strings
329
+ - spec/integration/build-swift/after/Example/Example/main.m
330
+ - spec/integration/build-swift/after/R.swift
331
+ - spec/integration/build-swift/after/execution_output.txt
332
+ - spec/integration/build-swift/before/Example/Example.xcodeproj/project.pbxproj
333
+ - spec/integration/build-swift/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
334
+ - spec/integration/build-swift/before/Example/Example/AppDelegate.h
335
+ - spec/integration/build-swift/before/Example/Example/AppDelegate.m
336
+ - spec/integration/build-swift/before/Example/Example/Example-Info.plist
337
+ - spec/integration/build-swift/before/Example/Example/Example-Prefix.pch
338
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_list.png
339
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png
340
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_map.png
341
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png
342
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
343
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/Contents.json
344
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat.jpg
345
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@2x.jpg
346
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@3x.jpg
347
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/Contents.json
348
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/doge.png
349
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png
350
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
351
+ - spec/integration/build-swift/before/Example/Example/Images/doge.jpeg
352
+ - spec/integration/build-swift/before/Example/Example/Images/nyanCat.png
353
+ - spec/integration/build-swift/before/Example/Example/de.lproj/Localizable.strings
354
+ - spec/integration/build-swift/before/Example/Example/en.lproj/InfoPlist.strings
355
+ - spec/integration/build-swift/before/Example/Example/en.lproj/Localizable.strings
356
+ - spec/integration/build-swift/before/Example/Example/main.m
320
357
  - spec/integration/build-var-infoplist/after/Example/Example.xcodeproj.yaml
321
358
  - spec/integration/build-var-infoplist/after/Example/Example/AppDelegate.h
322
359
  - spec/integration/build-var-infoplist/after/Example/Example/AppDelegate.m
@@ -483,6 +520,29 @@ files:
483
520
  - spec/integration/install-no-supporting-files/before/Example/res/Images.xcassets/LaunchImage.launchimage/Contents.json
484
521
  - spec/integration/install-no-supporting-files/before/Example/src/AppDelegate.h
485
522
  - spec/integration/install-no-supporting-files/before/Example/src/AppDelegate.m
523
+ - spec/integration/install-swift/after/Example/Example.xcodeproj.yaml
524
+ - spec/integration/install-swift/after/Example/Example.xcodeproj/project.pbxproj
525
+ - spec/integration/install-swift/after/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
526
+ - spec/integration/install-swift/after/Example/Example/AppDelegate.h
527
+ - spec/integration/install-swift/after/Example/Example/AppDelegate.m
528
+ - spec/integration/install-swift/after/Example/Example/Example-Info.plist
529
+ - spec/integration/install-swift/after/Example/Example/Example-Prefix.pch
530
+ - spec/integration/install-swift/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
531
+ - spec/integration/install-swift/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
532
+ - spec/integration/install-swift/after/Example/Example/Resources/R.swift
533
+ - spec/integration/install-swift/after/Example/Example/en.lproj/InfoPlist.strings
534
+ - spec/integration/install-swift/after/Example/Example/main.m
535
+ - spec/integration/install-swift/after/execution_output.txt
536
+ - spec/integration/install-swift/before/Example/Example.xcodeproj/project.pbxproj
537
+ - spec/integration/install-swift/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
538
+ - spec/integration/install-swift/before/Example/Example/AppDelegate.h
539
+ - spec/integration/install-swift/before/Example/Example/AppDelegate.m
540
+ - spec/integration/install-swift/before/Example/Example/Example-Info.plist
541
+ - spec/integration/install-swift/before/Example/Example/Example-Prefix.pch
542
+ - spec/integration/install-swift/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
543
+ - spec/integration/install-swift/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
544
+ - spec/integration/install-swift/before/Example/Example/en.lproj/InfoPlist.strings
545
+ - spec/integration/install-swift/before/Example/Example/main.m
486
546
  - spec/integration/install/after/Example/Example.xcodeproj.yaml
487
547
  - spec/integration/install/after/Example/Example.xcodeproj/project.pbxproj
488
548
  - spec/integration/install/after/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -552,7 +612,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
552
612
  version: '0'
553
613
  requirements: []
554
614
  rubyforge_project:
555
- rubygems_version: 2.2.2
615
+ rubygems_version: 2.4.5
556
616
  signing_key:
557
617
  specification_version: 4
558
618
  summary: "`xcres` searches your Xcode project for resources and generates an index
@@ -622,6 +682,57 @@ test_files:
622
682
  - spec/integration/build-keyword-clash/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
623
683
  - spec/integration/build-keyword-clash/before/Example/Example/en.lproj/InfoPlist.strings
624
684
  - spec/integration/build-keyword-clash/before/Example/Example/main.m
685
+ - spec/integration/build-swift/after/Example/Example.xcodeproj.yaml
686
+ - spec/integration/build-swift/after/Example/Example/AppDelegate.h
687
+ - spec/integration/build-swift/after/Example/Example/AppDelegate.m
688
+ - spec/integration/build-swift/after/Example/Example/Example-Info.plist
689
+ - spec/integration/build-swift/after/Example/Example/Example-Prefix.pch
690
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_list.png
691
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png
692
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_map.png
693
+ - spec/integration/build-swift/after/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png
694
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
695
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/Contents.json
696
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat.jpg
697
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@2x.jpg
698
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@3x.jpg
699
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/Contents.json
700
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/doge.png
701
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png
702
+ - spec/integration/build-swift/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
703
+ - spec/integration/build-swift/after/Example/Example/Images/doge.jpeg
704
+ - spec/integration/build-swift/after/Example/Example/Images/nyanCat.png
705
+ - spec/integration/build-swift/after/Example/Example/de.lproj/Localizable.strings
706
+ - spec/integration/build-swift/after/Example/Example/en.lproj/InfoPlist.strings
707
+ - spec/integration/build-swift/after/Example/Example/en.lproj/Localizable.strings
708
+ - spec/integration/build-swift/after/Example/Example/main.m
709
+ - spec/integration/build-swift/after/R.swift
710
+ - spec/integration/build-swift/after/execution_output.txt
711
+ - spec/integration/build-swift/before/Example/Example.xcodeproj/project.pbxproj
712
+ - spec/integration/build-swift/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
713
+ - spec/integration/build-swift/before/Example/Example/AppDelegate.h
714
+ - spec/integration/build-swift/before/Example/Example/AppDelegate.m
715
+ - spec/integration/build-swift/before/Example/Example/Example-Info.plist
716
+ - spec/integration/build-swift/before/Example/Example/Example-Prefix.pch
717
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_list.png
718
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_list@2x.png
719
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_map.png
720
+ - spec/integration/build-swift/before/Example/Example/Icons.bundle/tab_bar/tabbar_map@2x.png
721
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
722
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/Contents.json
723
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat.jpg
724
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@2x.jpg
725
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Cats/GrumpyCat.imageset/GrumpyCat@3x.jpg
726
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/Contents.json
727
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/doge.png
728
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/Doge.imageset/doge@2x.png
729
+ - spec/integration/build-swift/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
730
+ - spec/integration/build-swift/before/Example/Example/Images/doge.jpeg
731
+ - spec/integration/build-swift/before/Example/Example/Images/nyanCat.png
732
+ - spec/integration/build-swift/before/Example/Example/de.lproj/Localizable.strings
733
+ - spec/integration/build-swift/before/Example/Example/en.lproj/InfoPlist.strings
734
+ - spec/integration/build-swift/before/Example/Example/en.lproj/Localizable.strings
735
+ - spec/integration/build-swift/before/Example/Example/main.m
625
736
  - spec/integration/build-var-infoplist/after/Example/Example.xcodeproj.yaml
626
737
  - spec/integration/build-var-infoplist/after/Example/Example/AppDelegate.h
627
738
  - spec/integration/build-var-infoplist/after/Example/Example/AppDelegate.m
@@ -788,6 +899,29 @@ test_files:
788
899
  - spec/integration/install-no-supporting-files/before/Example/res/Images.xcassets/LaunchImage.launchimage/Contents.json
789
900
  - spec/integration/install-no-supporting-files/before/Example/src/AppDelegate.h
790
901
  - spec/integration/install-no-supporting-files/before/Example/src/AppDelegate.m
902
+ - spec/integration/install-swift/after/Example/Example.xcodeproj.yaml
903
+ - spec/integration/install-swift/after/Example/Example.xcodeproj/project.pbxproj
904
+ - spec/integration/install-swift/after/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
905
+ - spec/integration/install-swift/after/Example/Example/AppDelegate.h
906
+ - spec/integration/install-swift/after/Example/Example/AppDelegate.m
907
+ - spec/integration/install-swift/after/Example/Example/Example-Info.plist
908
+ - spec/integration/install-swift/after/Example/Example/Example-Prefix.pch
909
+ - spec/integration/install-swift/after/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
910
+ - spec/integration/install-swift/after/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
911
+ - spec/integration/install-swift/after/Example/Example/Resources/R.swift
912
+ - spec/integration/install-swift/after/Example/Example/en.lproj/InfoPlist.strings
913
+ - spec/integration/install-swift/after/Example/Example/main.m
914
+ - spec/integration/install-swift/after/execution_output.txt
915
+ - spec/integration/install-swift/before/Example/Example.xcodeproj/project.pbxproj
916
+ - spec/integration/install-swift/before/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata
917
+ - spec/integration/install-swift/before/Example/Example/AppDelegate.h
918
+ - spec/integration/install-swift/before/Example/Example/AppDelegate.m
919
+ - spec/integration/install-swift/before/Example/Example/Example-Info.plist
920
+ - spec/integration/install-swift/before/Example/Example/Example-Prefix.pch
921
+ - spec/integration/install-swift/before/Example/Example/Images.xcassets/AppIcon.appiconset/Contents.json
922
+ - spec/integration/install-swift/before/Example/Example/Images.xcassets/LaunchImage.launchimage/Contents.json
923
+ - spec/integration/install-swift/before/Example/Example/en.lproj/InfoPlist.strings
924
+ - spec/integration/install-swift/before/Example/Example/main.m
791
925
  - spec/integration/install/after/Example/Example.xcodeproj.yaml
792
926
  - spec/integration/install/after/Example/Example.xcodeproj/project.pbxproj
793
927
  - spec/integration/install/after/Example/Example.xcodeproj/project.xcworkspace/contents.xcworkspacedata