swift_lib_templater 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: a20cb096bcec7abaebbafa6c78326167d74eaf27
4
- data.tar.gz: 77694c86bf5d589cef5b57fdd4aa00fb366ae869
2
+ SHA256:
3
+ metadata.gz: 4a2b1bb2e27c82d4e3d936139bd1df1f4b237fb2611540d7422b611f1d448d0d
4
+ data.tar.gz: a14b2ac788a9ef2662ee49a7d2f417c4dbb712bebc6ce0ab700487257d595686
5
5
  SHA512:
6
- metadata.gz: 47636162669ffc18950367c3317033faea5e9040eb1e7ec7e54d513327e453e67a715565d8998c39c8d40ec021ceee2f3a367e006f4fc03cf710035be52e5e48
7
- data.tar.gz: 1e910daf5b14a78a37695449f4bc0f278e9db05d5e3113957c3b160153d610da78854e56e4282a9286583a6798c65bab748c1980dd63698e27aea0cbb607fba5
6
+ metadata.gz: e77dd15a177dfb641118727b856d7fce616514fe21436f57983941b0a3fbf026afe1a266ec15af1ff292a7f1707fa5ff419ce437a45ef6f8c8ca5be8e3ddfa79
7
+ data.tar.gz: ca74fbc2e5f74551e54a5cf4355685ed166e6e2e2ec3048a4f1f9bf52e576320d7f1f2b54f64002ebef88172075ba38b3330e54289eacba7ba885fe692215086
data/.gitignore CHANGED
@@ -6,3 +6,5 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+
10
+ .DS_Store
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- swift_lib_templater (1.0.0)
4
+ swift_lib_templater (1.0.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -17,4 +17,4 @@ DEPENDENCIES
17
17
  swift_lib_templater!
18
18
 
19
19
  BUNDLED WITH
20
- 2.0.1
20
+ 2.1.4
data/README.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # swift_lib_templater
2
2
 
3
- `swift_lib_templater` generates templates for open source ios libraries. It integrates `cocopoads` & `Carthage`.
3
+ `swift_lib_templater` generates templates for open source ios libraries.
4
+
5
+ - `cocopoads` & `SPM` & `Carthage` support
6
+ - [Basic Github action CI](https://github.com/applidium/swift_lib_templater/blob/master/lib/templates/framework/.github/workflows/ci.yml)
7
+ - [Release script](https://github.com/applidium/swift_lib_templater/blob/master/lib/templates/framework/fastlane/Fastfile)
4
8
 
5
9
  ## Installation
6
10
 
@@ -1,13 +1,14 @@
1
1
  require 'optparse'
2
2
  require 'find'
3
+ require 'fileutils'
3
4
 
4
- require 'swift_lib_templater/copy_template_command.rb'
5
- require 'swift_lib_templater/get_framework_name_command.rb'
6
- require 'swift_lib_templater/rename_files_command.rb'
7
- require 'swift_lib_templater/initialize_git_repository_command.rb'
5
+ require_relative 'swift_lib_templater/copy_template_command.rb'
6
+ require_relative 'swift_lib_templater/get_framework_name_command.rb'
7
+ require_relative 'swift_lib_templater/rename_files_command.rb'
8
+ require_relative 'swift_lib_templater/initialize_git_repository_command.rb'
8
9
 
9
10
  def systemWithoutOutput(command)
10
- system command, ">/dev/null 2>&1"
11
+ system command
11
12
  end
12
13
 
13
14
  module SwiftLibTemplater
@@ -23,10 +24,6 @@ module SwiftLibTemplater
23
24
  RenameFilesCommand.new(project_folder, project_name).execute
24
25
  puts "✅"
25
26
 
26
- print "Initializing git... "
27
- InitializeGitRepositoryCommand.new(project_folder).execute
28
- puts "✅"
29
-
30
27
  puts "\nProject #{project_name} successfully bootstraped ! 🎉"
31
28
  rescue => e
32
29
  puts "\n\n🚨 Failed with error:"
@@ -7,12 +7,11 @@ module SwiftLibTemplater
7
7
  end
8
8
 
9
9
  def execute()
10
- Dir.chdir(@dir)
11
10
  # We need to list all the files before renaming the files because
12
11
  # Find.find doesn't like that we mess with the files that are being
13
12
  # enumerated
14
13
  paths = []
15
- Find.find(".") do |path|
14
+ Find.find(@dir) do |path|
16
15
  paths << path
17
16
  end
18
17
  paths.each do |path|
@@ -22,11 +21,12 @@ module SwiftLibTemplater
22
21
  next unless base =~ /(TEMPLATE|TP)/
23
22
  File.rename(File.join(new_dir, base), new_path)
24
23
  end
25
- Find.find(".") do |path|
24
+ Find.find(@dir) do |path|
26
25
  next unless File.file?(path)
27
26
  next if File.extname(path) == ".png"
28
27
  next if File.extname(path) == ".mobileprovision"
29
- systemWithoutOutput("sed -i '' 's/TEMPLATE/#{@project_name}/g' '#{path}'")
28
+ command = "sed -i \"\" \"s/TEMPLATE/#{@project_name}/g\" \"#{path}\""
29
+ systemWithoutOutput(command)
30
30
  end
31
31
  end
32
32
  end
@@ -1,3 +1,3 @@
1
1
  module SwiftLibTemplater
2
- VERSION = "1.0.1"
2
+ VERSION = "1.0.2"
3
3
  end
@@ -0,0 +1,27 @@
1
+
2
+ name: CI
3
+
4
+ on: [push]
5
+
6
+ jobs:
7
+ build:
8
+
9
+ runs-on: macOS-latest
10
+
11
+ steps:
12
+ - uses: actions/checkout@v2
13
+ - name: Bundle install
14
+ working-directory: ./
15
+ run: bundle install
16
+
17
+ - name: Unit tests
18
+ run: bundle exec fastlane tests
19
+
20
+ - name: SPM lint
21
+ run: bundle exec fastlane spm_lint
22
+
23
+ - name: Carthage lint
24
+ run: bundle exec fastlane carthage_lint
25
+
26
+ - name: Pod lint
27
+ run: bundle exec fastlane pod_lint
@@ -1,10 +1,12 @@
1
+ # OS X
2
+ .DS_Store
3
+
1
4
  # Xcode
2
- #
3
- # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
5
+ re contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
4
6
 
5
7
  ## Build generated
6
8
  build/
7
- DerivedData
9
+ DerivedData/
8
10
 
9
11
  ## Various settings
10
12
  *.pbxuser
@@ -15,53 +17,52 @@ DerivedData
15
17
  !default.mode2v3
16
18
  *.perspectivev3
17
19
  !default.perspectivev3
18
- xcuserdata
20
+ xcuserdata/
19
21
 
20
- ## Other
21
22
  *.xccheckout
23
+ profile
24
+ ## Other
22
25
  *.moved-aside
23
- *.xcuserstate
26
+ *.xccheckout
27
+ DerivedData
24
28
  *.xcscmblueprint
25
- *.DS_Store
26
29
 
27
30
  ## Obj-C/Swift specific
28
31
  *.hmap
29
32
  *.ipa
30
- *.xcarchive
31
- *.app.dSYM.zip
33
+ *.dSYM.zip
34
+ *.dSYM
35
+
36
+ # Bundler
37
+ .bundle
38
+
39
+ # Swift Package Manager
40
+ .build
32
41
 
33
- # CocoaPods
34
- #
35
- # We recommend against adding the Pods directory to your .gitignore. However
36
- # you should judge for yourself, the pros and cons are mentioned at:
37
- # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
42
+ # Add this line if you want to avoid checking in source code from Carthage dependencies.
43
+ # Carthage/Checkouts
38
44
 
45
+ Carthage/Build
46
+
47
+ Example/Pods/
39
48
  Pods/
40
49
 
41
- ##Fastlane
50
+ .idea/
51
+
42
52
  # fastlane specific
43
53
  fastlane/report.xml
44
54
 
45
55
  # deliver temporary files
46
56
  fastlane/Preview.html
47
57
 
48
- # scan/snapshot temporary files (default values)
49
- /metrics
50
- /tests_derived_data
51
- /screenshots
52
-
53
- #fastlane plugins
54
- Pluginfile_fastlane
55
- Gemfile_fastlane
56
- Gemfile_fastlane.lock
58
+ # snapshot generated screenshots
59
+ fastlane/screenshots/**/*.png
60
+ fastlane/screenshots/screenshots.html
57
61
 
58
- #fastlane build artifacts
59
- /build
60
- /derived_data
61
-
62
- #metadata
63
- /fastlane/**/metadata/**/*
64
- /fastlane/**/screenshots/**/*
65
-
66
- ##AppCode
67
- .idea/
62
+ # scan temporary files
63
+ fastlane/test_output
64
+ test_output
65
+ fastlane/.env
66
+ pre-change.yml
67
+ .build
68
+ fastlane/README.md
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem "cocoapods", "~> 1.9"
4
+ gem "fastlane", "~> 2.1"
@@ -0,0 +1,243 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ CFPropertyList (3.0.2)
5
+ activesupport (4.2.11.3)
6
+ i18n (~> 0.7)
7
+ minitest (~> 5.1)
8
+ thread_safe (~> 0.3, >= 0.3.4)
9
+ tzinfo (~> 1.1)
10
+ addressable (2.7.0)
11
+ public_suffix (>= 2.0.2, < 5.0)
12
+ algoliasearch (1.27.3)
13
+ httpclient (~> 2.8, >= 2.8.3)
14
+ json (>= 1.5.1)
15
+ atomos (0.1.3)
16
+ aws-eventstream (1.1.0)
17
+ aws-partitions (1.368.0)
18
+ aws-sdk-core (3.105.0)
19
+ aws-eventstream (~> 1, >= 1.0.2)
20
+ aws-partitions (~> 1, >= 1.239.0)
21
+ aws-sigv4 (~> 1.1)
22
+ jmespath (~> 1.0)
23
+ aws-sdk-kms (1.37.0)
24
+ aws-sdk-core (~> 3, >= 3.99.0)
25
+ aws-sigv4 (~> 1.1)
26
+ aws-sdk-s3 (1.80.0)
27
+ aws-sdk-core (~> 3, >= 3.104.3)
28
+ aws-sdk-kms (~> 1)
29
+ aws-sigv4 (~> 1.1)
30
+ aws-sigv4 (1.2.2)
31
+ aws-eventstream (~> 1, >= 1.0.2)
32
+ babosa (1.0.3)
33
+ claide (1.0.3)
34
+ cocoapods (1.9.3)
35
+ activesupport (>= 4.0.2, < 5)
36
+ claide (>= 1.0.2, < 2.0)
37
+ cocoapods-core (= 1.9.3)
38
+ cocoapods-deintegrate (>= 1.0.3, < 2.0)
39
+ cocoapods-downloader (>= 1.2.2, < 2.0)
40
+ cocoapods-plugins (>= 1.0.0, < 2.0)
41
+ cocoapods-search (>= 1.0.0, < 2.0)
42
+ cocoapods-stats (>= 1.0.0, < 2.0)
43
+ cocoapods-trunk (>= 1.4.0, < 2.0)
44
+ cocoapods-try (>= 1.1.0, < 2.0)
45
+ colored2 (~> 3.1)
46
+ escape (~> 0.0.4)
47
+ fourflusher (>= 2.3.0, < 3.0)
48
+ gh_inspector (~> 1.0)
49
+ molinillo (~> 0.6.6)
50
+ nap (~> 1.0)
51
+ ruby-macho (~> 1.4)
52
+ xcodeproj (>= 1.14.0, < 2.0)
53
+ cocoapods-core (1.9.3)
54
+ activesupport (>= 4.0.2, < 6)
55
+ algoliasearch (~> 1.0)
56
+ concurrent-ruby (~> 1.1)
57
+ fuzzy_match (~> 2.0.4)
58
+ nap (~> 1.0)
59
+ netrc (~> 0.11)
60
+ typhoeus (~> 1.0)
61
+ cocoapods-deintegrate (1.0.4)
62
+ cocoapods-downloader (1.4.0)
63
+ cocoapods-plugins (1.0.0)
64
+ nap
65
+ cocoapods-search (1.0.0)
66
+ cocoapods-stats (1.1.0)
67
+ cocoapods-trunk (1.5.0)
68
+ nap (>= 0.8, < 2.0)
69
+ netrc (~> 0.11)
70
+ cocoapods-try (1.2.0)
71
+ colored (1.2)
72
+ colored2 (3.1.2)
73
+ commander-fastlane (4.4.6)
74
+ highline (~> 1.7.2)
75
+ concurrent-ruby (1.1.7)
76
+ declarative (0.0.20)
77
+ declarative-option (0.1.0)
78
+ digest-crc (0.6.1)
79
+ rake (~> 13.0)
80
+ domain_name (0.5.20190701)
81
+ unf (>= 0.0.5, < 1.0.0)
82
+ dotenv (2.7.6)
83
+ emoji_regex (3.0.0)
84
+ escape (0.0.4)
85
+ ethon (0.12.0)
86
+ ffi (>= 1.3.0)
87
+ excon (0.76.0)
88
+ faraday (1.0.1)
89
+ multipart-post (>= 1.2, < 3)
90
+ faraday-cookie_jar (0.0.7)
91
+ faraday (>= 0.8.0)
92
+ http-cookie (~> 1.0.0)
93
+ faraday_middleware (1.0.0)
94
+ faraday (~> 1.0)
95
+ fastimage (2.2.0)
96
+ fastlane (2.159.0)
97
+ CFPropertyList (>= 2.3, < 4.0.0)
98
+ addressable (>= 2.3, < 3.0.0)
99
+ aws-sdk-s3 (~> 1.0)
100
+ babosa (>= 1.0.3, < 2.0.0)
101
+ bundler (>= 1.12.0, < 3.0.0)
102
+ colored
103
+ commander-fastlane (>= 4.4.6, < 5.0.0)
104
+ dotenv (>= 2.1.1, < 3.0.0)
105
+ emoji_regex (>= 0.1, < 4.0)
106
+ excon (>= 0.71.0, < 1.0.0)
107
+ faraday (~> 1.0)
108
+ faraday-cookie_jar (~> 0.0.6)
109
+ faraday_middleware (~> 1.0)
110
+ fastimage (>= 2.1.0, < 3.0.0)
111
+ gh_inspector (>= 1.1.2, < 2.0.0)
112
+ google-api-client (>= 0.37.0, < 0.39.0)
113
+ google-cloud-storage (>= 1.15.0, < 2.0.0)
114
+ highline (>= 1.7.2, < 2.0.0)
115
+ json (< 3.0.0)
116
+ jwt (>= 2.1.0, < 3)
117
+ mini_magick (>= 4.9.4, < 5.0.0)
118
+ multipart-post (~> 2.0.0)
119
+ plist (>= 3.1.0, < 4.0.0)
120
+ rubyzip (>= 2.0.0, < 3.0.0)
121
+ security (= 0.1.3)
122
+ simctl (~> 1.6.3)
123
+ slack-notifier (>= 2.0.0, < 3.0.0)
124
+ terminal-notifier (>= 2.0.0, < 3.0.0)
125
+ terminal-table (>= 1.4.5, < 2.0.0)
126
+ tty-screen (>= 0.6.3, < 1.0.0)
127
+ tty-spinner (>= 0.8.0, < 1.0.0)
128
+ word_wrap (~> 1.0.0)
129
+ xcodeproj (>= 1.13.0, < 2.0.0)
130
+ xcpretty (~> 0.3.0)
131
+ xcpretty-travis-formatter (>= 0.0.3)
132
+ ffi (1.13.1)
133
+ fourflusher (2.3.1)
134
+ fuzzy_match (2.0.4)
135
+ gh_inspector (1.1.3)
136
+ google-api-client (0.38.0)
137
+ addressable (~> 2.5, >= 2.5.1)
138
+ googleauth (~> 0.9)
139
+ httpclient (>= 2.8.1, < 3.0)
140
+ mini_mime (~> 1.0)
141
+ representable (~> 3.0)
142
+ retriable (>= 2.0, < 4.0)
143
+ signet (~> 0.12)
144
+ google-cloud-core (1.5.0)
145
+ google-cloud-env (~> 1.0)
146
+ google-cloud-errors (~> 1.0)
147
+ google-cloud-env (1.3.3)
148
+ faraday (>= 0.17.3, < 2.0)
149
+ google-cloud-errors (1.0.1)
150
+ google-cloud-storage (1.28.0)
151
+ addressable (~> 2.5)
152
+ digest-crc (~> 0.4)
153
+ google-api-client (~> 0.33)
154
+ google-cloud-core (~> 1.2)
155
+ googleauth (~> 0.9)
156
+ mini_mime (~> 1.0)
157
+ googleauth (0.13.1)
158
+ faraday (>= 0.17.3, < 2.0)
159
+ jwt (>= 1.4, < 3.0)
160
+ memoist (~> 0.16)
161
+ multi_json (~> 1.11)
162
+ os (>= 0.9, < 2.0)
163
+ signet (~> 0.14)
164
+ highline (1.7.10)
165
+ http-cookie (1.0.3)
166
+ domain_name (~> 0.5)
167
+ httpclient (2.8.3)
168
+ i18n (0.9.5)
169
+ concurrent-ruby (~> 1.0)
170
+ jmespath (1.4.0)
171
+ json (2.3.1)
172
+ jwt (2.2.2)
173
+ memoist (0.16.2)
174
+ mini_magick (4.10.1)
175
+ mini_mime (1.0.2)
176
+ minitest (5.14.2)
177
+ molinillo (0.6.6)
178
+ multi_json (1.15.0)
179
+ multipart-post (2.0.0)
180
+ nanaimo (0.3.0)
181
+ nap (1.1.0)
182
+ naturally (2.2.0)
183
+ netrc (0.11.0)
184
+ os (1.1.1)
185
+ plist (3.5.0)
186
+ public_suffix (4.0.6)
187
+ rake (13.0.1)
188
+ representable (3.0.4)
189
+ declarative (< 0.1.0)
190
+ declarative-option (< 0.2.0)
191
+ uber (< 0.2.0)
192
+ retriable (3.1.2)
193
+ rouge (2.0.7)
194
+ ruby-macho (1.4.0)
195
+ rubyzip (2.3.0)
196
+ security (0.1.3)
197
+ signet (0.14.0)
198
+ addressable (~> 2.3)
199
+ faraday (>= 0.17.3, < 2.0)
200
+ jwt (>= 1.5, < 3.0)
201
+ multi_json (~> 1.10)
202
+ simctl (1.6.8)
203
+ CFPropertyList
204
+ naturally
205
+ slack-notifier (2.3.2)
206
+ terminal-notifier (2.0.0)
207
+ terminal-table (1.8.0)
208
+ unicode-display_width (~> 1.1, >= 1.1.1)
209
+ thread_safe (0.3.6)
210
+ tty-cursor (0.7.1)
211
+ tty-screen (0.8.1)
212
+ tty-spinner (0.9.3)
213
+ tty-cursor (~> 0.7)
214
+ typhoeus (1.4.0)
215
+ ethon (>= 0.9.0)
216
+ tzinfo (1.2.7)
217
+ thread_safe (~> 0.1)
218
+ uber (0.1.0)
219
+ unf (0.1.4)
220
+ unf_ext
221
+ unf_ext (0.0.7.7)
222
+ unicode-display_width (1.7.0)
223
+ word_wrap (1.0.0)
224
+ xcodeproj (1.18.0)
225
+ CFPropertyList (>= 2.3.3, < 4.0)
226
+ atomos (~> 0.1.3)
227
+ claide (>= 1.0.2, < 2.0)
228
+ colored2 (~> 3.1)
229
+ nanaimo (~> 0.3.0)
230
+ xcpretty (0.3.0)
231
+ rouge (~> 2.0.7)
232
+ xcpretty-travis-formatter (1.0.0)
233
+ xcpretty (~> 0.2, >= 0.0.7)
234
+
235
+ PLATFORMS
236
+ ruby
237
+
238
+ DEPENDENCIES
239
+ cocoapods (~> 1.9)
240
+ fastlane (~> 2.1)
241
+
242
+ BUNDLED WITH
243
+ 2.1.4
@@ -1,23 +1,19 @@
1
- * Copyright (c) 2018, Applidium
2
- * All rights reserved.
3
- * Redistribution and use in source and binary forms, with or without
4
- * modification, are permitted provided that the following conditions are met:
5
- *
6
- * * Redistributions of source code must retain the above copyright
7
- * notice, this list of conditions and the following disclaimer.
8
- * * Redistributions in binary form must reproduce the above copyright
9
- * notice, this list of conditions and the following disclaimer in the
10
- * documentation and/or other materials provided with the distribution.
11
- * * Neither the name of Applidium nor the names of its contributors may
12
- * be used to endorse or promote products derived from this software
13
- * without specific prior written permission.
14
- *
15
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ANY
16
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
17
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
18
- * DISCLAIMED. IN NO EVENT SHALL THE REGENTS AND CONTRIBUTORS BE LIABLE FOR ANY
19
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
20
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
21
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
22
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
1
+ Copyright (c) 2020 Fabernovel
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
@@ -0,0 +1,22 @@
1
+ // swift-tools-version:5.1
2
+ import PackageDescription
3
+
4
+ let package = Package(
5
+ name: "TEMPLATE",
6
+ platforms: [
7
+ .iOS(.v10)
8
+ ],
9
+ products: [
10
+ .library(
11
+ name: "TEMPLATE",
12
+ targets: ["TEMPLATE"]
13
+ ),
14
+ ],
15
+ targets: [
16
+ .target(
17
+ name: "TEMPLATE",
18
+ path: "Source/Classes"
19
+ ),
20
+ ],
21
+ swiftLanguageVersions: [.v5]
22
+ )
@@ -0,0 +1,17 @@
1
+ IPHONEOS_DEPLOYMENT_TARGET = 10.0
2
+
3
+ SDKROOT =
4
+ SUPPORTED_PLATFORMS = iphoneos iphonesimulator
5
+ TARGETED_DEVICE_FAMILY = 1,2
6
+ VALID_ARCHS[sdk=iphoneos*] = arm64 armv7 armv7s
7
+ VALID_ARCHS[sdk=iphonesimulator*] = i386 x86_64
8
+
9
+ CODE_SIGN_IDENTITY =
10
+ CODE_SIGN_STYLE = Manual
11
+ INSTALL_PATH = $(LOCAL_LIBRARY_DIR)/Frameworks
12
+ SKIP_INSTALL = YES
13
+ DYLIB_COMPATIBILITY_VERSION = 1
14
+ DYLIB_CURRENT_VERSION = 1
15
+ DYLIB_INSTALL_NAME_BASE = @rpath
16
+ LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/Frameworks @loader_path/../Frameworks
17
+ DEFINES_MODULE = NO
@@ -10,14 +10,14 @@ Pod::Spec.new do |s|
10
10
  s.name = 'TEMPLATE'
11
11
  s.version = '1.0.0'
12
12
  s.summary = 'TEMPLATE'
13
- s.swift_version = "4.2"
13
+ s.swift_version = "5.0"
14
14
 
15
15
  s.description = 'TEMPLATE'
16
16
 
17
- s.homepage = 'https://github.com/applidium/TEMPLATE'
17
+ s.homepage = 'https://github.com/fabernovel/TEMPLATE'
18
18
  s.license = { :type => 'MIT', :file => 'LICENSE' }
19
19
  # s.author = { 'TEMPLATE' => 'TEMPLATE@fabernovel.com' }
20
- s.source = { :git => 'https://github.com/applidium/TEMPLATE.git', :tag => s.version.to_s }
20
+ s.source = { :git => 'https://github.com/fabernovel/TEMPLATE.git', :tag => s.version.to_s }
21
21
 
22
22
  s.ios.deployment_target = '10.0'
23
23
  s.source_files = 'Source/Classes/**/*'
@@ -0,0 +1,77 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Scheme
3
+ LastUpgradeVersion = "1150"
4
+ version = "1.3">
5
+ <BuildAction
6
+ parallelizeBuildables = "YES"
7
+ buildImplicitDependencies = "YES">
8
+ <BuildActionEntries>
9
+ <BuildActionEntry
10
+ buildForTesting = "YES"
11
+ buildForRunning = "YES"
12
+ buildForProfiling = "YES"
13
+ buildForArchiving = "YES"
14
+ buildForAnalyzing = "YES">
15
+ <BuildableReference
16
+ BuildableIdentifier = "primary"
17
+ BlueprintIdentifier = "E7691545222EA71F00FDEE7F"
18
+ BuildableName = "TEMPLATE.framework"
19
+ BlueprintName = "TEMPLATE"
20
+ ReferencedContainer = "container:TEMPLATE.xcodeproj">
21
+ </BuildableReference>
22
+ </BuildActionEntry>
23
+ </BuildActionEntries>
24
+ </BuildAction>
25
+ <TestAction
26
+ buildConfiguration = "Debug"
27
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
28
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29
+ shouldUseLaunchSchemeArgsEnv = "YES">
30
+ <Testables>
31
+ <TestableReference
32
+ skipped = "NO">
33
+ <BuildableReference
34
+ BuildableIdentifier = "primary"
35
+ BlueprintIdentifier = "E769154E222EA71F00FDEE7F"
36
+ BuildableName = "TEMPLATETests.xctest"
37
+ BlueprintName = "TEMPLATETests"
38
+ ReferencedContainer = "container:TEMPLATE.xcodeproj">
39
+ </BuildableReference>
40
+ </TestableReference>
41
+ </Testables>
42
+ </TestAction>
43
+ <LaunchAction
44
+ buildConfiguration = "Debug"
45
+ selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
46
+ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
47
+ launchStyle = "0"
48
+ useCustomWorkingDirectory = "NO"
49
+ ignoresPersistentStateOnLaunch = "NO"
50
+ debugDocumentVersioning = "YES"
51
+ debugServiceExtension = "internal"
52
+ allowLocationSimulation = "YES">
53
+ </LaunchAction>
54
+ <ProfileAction
55
+ buildConfiguration = "Release"
56
+ shouldUseLaunchSchemeArgsEnv = "YES"
57
+ savedToolIdentifier = ""
58
+ useCustomWorkingDirectory = "NO"
59
+ debugDocumentVersioning = "YES">
60
+ <MacroExpansion>
61
+ <BuildableReference
62
+ BuildableIdentifier = "primary"
63
+ BlueprintIdentifier = "E7691545222EA71F00FDEE7F"
64
+ BuildableName = "TEMPLATE.framework"
65
+ BlueprintName = "TEMPLATE"
66
+ ReferencedContainer = "container:TEMPLATE.xcodeproj">
67
+ </BuildableReference>
68
+ </MacroExpansion>
69
+ </ProfileAction>
70
+ <AnalyzeAction
71
+ buildConfiguration = "Debug">
72
+ </AnalyzeAction>
73
+ <ArchiveAction
74
+ buildConfiguration = "Release"
75
+ revealArchiveInOrganizer = "YES">
76
+ </ArchiveAction>
77
+ </Scheme>
@@ -33,26 +33,12 @@
33
33
  /* End PBXFrameworksBuildPhase section */
34
34
 
35
35
  /* Begin PBXGroup section */
36
- E742E3C1223029BF002A2BED /* Controller */ = {
36
+ E742E3C1223029BF002A2BED /* ViewController */ = {
37
37
  isa = PBXGroup;
38
38
  children = (
39
39
  E742E3C822302B76002A2BED /* ViewController.swift */,
40
40
  );
41
- name = Controller;
42
- sourceTree = "<group>";
43
- };
44
- E742E3C2223029CE002A2BED /* View */ = {
45
- isa = PBXGroup;
46
- children = (
47
- );
48
- name = View;
49
- sourceTree = "<group>";
50
- };
51
- E742E3C3223029D8002A2BED /* Model */ = {
52
- isa = PBXGroup;
53
- children = (
54
- );
55
- name = Model;
41
+ name = ViewController;
56
42
  sourceTree = "<group>";
57
43
  };
58
44
  E7691560222EA78A00FDEE7F = {
@@ -75,9 +61,7 @@
75
61
  isa = PBXGroup;
76
62
  children = (
77
63
  E742E3C422302B4B002A2BED /* AppDelegate.swift */,
78
- E742E3C3223029D8002A2BED /* Model */,
79
- E742E3C2223029CE002A2BED /* View */,
80
- E742E3C1223029BF002A2BED /* Controller */,
64
+ E742E3C1223029BF002A2BED /* ViewController */,
81
65
  E7691582222EA7C100FDEE7F /* Resources */,
82
66
  E7691581222EA7B400FDEE7F /* Configuration */,
83
67
  );
@@ -22,8 +22,6 @@
22
22
  <true/>
23
23
  <key>UILaunchStoryboardName</key>
24
24
  <string>LaunchScreen</string>
25
- <key>UIMainStoryboardFile</key>
26
- <string>Main</string>
27
25
  <key>UIRequiredDeviceCapabilities</key>
28
26
  <array>
29
27
  <string>armv7</string>
@@ -0,0 +1,5 @@
1
+ WORKSPACE = "TEMPLATE.xcworkspace"
2
+ PROJECT = "TEMPLATE.xcodeproj"
3
+ SCHEME = "TEMPLATE"
4
+ PODSPEC = "TEMPLATE.podspec"
5
+ XCCONFIG = "Package.xcconfig"
@@ -0,0 +1,66 @@
1
+
2
+ default_platform(:ios)
3
+
4
+ platform :ios do
5
+ desc "Run all unit tests"
6
+ lane :tests do
7
+ scan(
8
+ scheme: ENV["SCHEME"],
9
+ clean: true
10
+ )
11
+ end
12
+
13
+ desc "Pod linting"
14
+ lane :pod_lint do
15
+ pod_lib_lint(allow_warnings: true)
16
+ end
17
+
18
+ desc "Carthage linting"
19
+ lane :carthage_lint do
20
+ carthage(command: "build", no_skip_current: true, platform: "iOS")
21
+ end
22
+
23
+ desc "SPM linting"
24
+ lane :spm_lint do
25
+ output = "Package.xcodeproj"
26
+ Dir.chdir("..") do
27
+ sh("swift package generate-xcodeproj --output #{output} --xcconfig-overrides #{ENV["XCCONFIG"]}")
28
+ end
29
+ xcodebuild(
30
+ project: output,
31
+ scheme: "#{ENV["SCHEME"]}-Package"
32
+ )
33
+ end
34
+
35
+ desc "Release a new version"
36
+ lane :release do |options|
37
+ target_version = options[:version]
38
+ raise "The version is missed. Use `fastlane release version:{version_number}`.`" if target_version.nil?
39
+
40
+ ensure_git_branch
41
+ ensure_git_status_clean
42
+
43
+ podspec = ENV["PODSPEC"]
44
+ version_bump_podspec(path: podspec, version_number: target_version)
45
+ increment_build_number
46
+ increment_version_number(
47
+ version_number: target_version
48
+ )
49
+ git_add
50
+ git_commit(
51
+ path: ["Tests/Info.plist", "Source/Info.plist", "TEMPLATE.podspec", "TEMPLATE.xcodeproj/project.pbxproj"],
52
+ message: "Bump to #{target_version}"
53
+ )
54
+ ensure_git_status_clean
55
+ add_git_tag(tag: target_version)
56
+ if UI.confirm("Push?")
57
+ push_to_git_remote
58
+ push_git_tags(tag: target_version)
59
+ UI.success "Pushed 🎉"
60
+ end
61
+ if UI.confirm("Release pod?")
62
+ pod_push
63
+ UI.success "Released 🎉"
64
+ end
65
+ end
66
+ end
@@ -6,11 +6,12 @@ require "swift_lib_templater/version"
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "swift_lib_templater"
8
8
  spec.version = SwiftLibTemplater::VERSION
9
+ spec.licenses = ['MIT']
9
10
  spec.authors = ["Gaétan Zanella"]
10
11
  spec.email = ["gaetan.zanella@fabernovel.com"]
11
12
 
12
- spec.summary = %q{Swift library generator}
13
- spec.description = %q{Swift library generator}
13
+ spec.summary = "`swift_lib_templater` generates templates for open source ios libraries."
14
+ spec.description = "`swift_lib_templater` generates templates for open source ios libraries. It supports Carthage & SPM & Cocoapods."
14
15
  spec.homepage = "https://github.com/applidium/swift_lib_templater"
15
16
 
16
17
  # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: swift_lib_templater
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gaétan Zanella
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-04-24 00:00:00.000000000 Z
11
+ date: 2020-09-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -38,7 +38,8 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '10.0'
41
- description: Swift library generator
41
+ description: "`swift_lib_templater` generates templates for open source ios libraries.
42
+ It supports Carthage & SPM & Cocoapods."
42
43
  email:
43
44
  - gaetan.zanella@fabernovel.com
44
45
  executables:
@@ -62,10 +63,14 @@ files:
62
63
  - lib/swift_lib_templater/open_projet_command.rb
63
64
  - lib/swift_lib_templater/rename_files_command.rb
64
65
  - lib/swift_lib_templater/version.rb
66
+ - lib/templates/framework/.github/workflows/ci.yml
65
67
  - lib/templates/framework/.gitignore
66
- - lib/templates/framework/.travis.yml
67
68
  - lib/templates/framework/CHANGELOG.md
69
+ - lib/templates/framework/Gemfile
70
+ - lib/templates/framework/Gemfile.lock
68
71
  - lib/templates/framework/LICENSE
72
+ - lib/templates/framework/Package.swift
73
+ - lib/templates/framework/Package.xcconfig
69
74
  - lib/templates/framework/README.md
70
75
  - lib/templates/framework/Source/Classes/EmptyFile.swift
71
76
  - lib/templates/framework/Source/Info.plist
@@ -74,6 +79,7 @@ files:
74
79
  - lib/templates/framework/TEMPLATE.xcodeproj/project.pbxproj
75
80
  - lib/templates/framework/TEMPLATE.xcodeproj/project.xcworkspace/contents.xcworkspacedata
76
81
  - lib/templates/framework/TEMPLATE.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
82
+ - lib/templates/framework/TEMPLATE.xcodeproj/xcshareddata/xcschemes/TEMPLATE.xcscheme
77
83
  - lib/templates/framework/TEMPLATE.xcworkspace/contents.xcworkspacedata
78
84
  - lib/templates/framework/TEMPLATE.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
79
85
  - lib/templates/framework/TEMPLATE_Example/TEMPLATE_Example.xcodeproj/project.pbxproj
@@ -87,9 +93,12 @@ files:
87
93
  - lib/templates/framework/TEMPLATE_Example/TEMPLATE_Example/Resources/Base.lproj/LaunchScreen.storyboard
88
94
  - lib/templates/framework/Tests/Info.plist
89
95
  - lib/templates/framework/Tests/TEMPLATETests.swift
96
+ - lib/templates/framework/fastlane/.env.default
97
+ - lib/templates/framework/fastlane/Fastfile
90
98
  - swift_lib_templater.gemspec
91
99
  homepage: https://github.com/applidium/swift_lib_templater
92
- licenses: []
100
+ licenses:
101
+ - MIT
93
102
  metadata:
94
103
  allowed_push_host: https://rubygems.org
95
104
  homepage_uri: https://github.com/applidium/swift_lib_templater
@@ -110,9 +119,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
110
119
  - !ruby/object:Gem::Version
111
120
  version: '0'
112
121
  requirements: []
113
- rubyforge_project:
114
- rubygems_version: 2.6.11
122
+ rubygems_version: 3.0.3
115
123
  signing_key:
116
124
  specification_version: 4
117
- summary: Swift library generator
125
+ summary: "`swift_lib_templater` generates templates for open source ios libraries."
118
126
  test_files: []
@@ -1,31 +0,0 @@
1
- os: osx
2
- osx_image: xcode10.1
3
- language: swift
4
-
5
- branches:
6
- only:
7
- - master
8
-
9
- env:
10
- global:
11
- - LANG=en_US.UTF-8
12
- - LC_ALL=en_US.UTF-8
13
- - DESTINATION="OS=12.1,name=iPhone XS"
14
- - SCHEME="TEMPLATE"
15
- - WORKSPACE="TEMPLATE.xcworkspace"
16
- skip_cleanup: true
17
-
18
- jobs:
19
- include:
20
-
21
- - stage: podspec
22
- script:
23
- - pod spec lint
24
-
25
- - stage: Build
26
- script:
27
- - set -o pipefail && xcodebuild -workspace "$WORKSPACE" -scheme "$SCHEME" -destination "$DESTINATION" ONLY_ACTIVE_ARCH=NO | xcpretty
28
-
29
- - stage: Tests
30
- script:
31
- - set -o pipefail && xcodebuild test -enableCodeCoverage YES -workspace "$WORKSPACE" -scheme "$SCHEME" -destination "$DESTINATION" ONLY_ACTIVE_ARCH=NO | xcpretty