cocoapods-developing-folder 0.0.2 → 0.0.3

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
2
  SHA256:
3
- metadata.gz: 328f3ce5e79046fcfecb5d86a00ea091e52a294fa7cae0ffe8ba8f6030f716fb
4
- data.tar.gz: 117c7d174350b357594f4abc2c8abb1505242f03ba977b1262cc5b4af766bf1f
3
+ metadata.gz: 725ccfb2e27a87ee5ad1d44d09951210b4dc720fa812423f107faa49e8a74e38
4
+ data.tar.gz: 79f9c714b041d8e4981213b9ad610332f3e2b010f21e18684f7d6c0a9e3012cf
5
5
  SHA512:
6
- metadata.gz: eea131216dc1fd05450be2196cde80ece7e74c070787a248ccb9e7e919dded54627b5ad2ccb7cc5e9b162363f8a33f2f52d3f344488e6d7a6423c45bb58955f0
7
- data.tar.gz: b680913a45e2665256a24f69f46767455e73c5c6ff3bc048a88dec3a3eec3424168d437da544759ba6dc94d30d973ebedad4934f021b04fe2542756609651e1c
6
+ metadata.gz: 7d03c3db7d83cb33076ea502fd71ba07fce949fe8afad75703228b7597df9922b2349f110c85cc53ff9e0152d77da4d6eab9b2e021ce3f0c7f89a2209b18d7b7
7
+ data.tar.gz: 73a9e1c4472bab085a8826637667dc3ebb780a8442a5a942ff6f220da644c00b7734915bcbc2fca85937545688061702222ca9b066beab885205c9e83e96a8f5
data/LICENSE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2018 GaoJi <gaoji@mobike.com>
1
+ Copyright (c) 2018 leavez <gaojiji@gmail.com>
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,6 +1,9 @@
1
1
  # cocoapods-developing-folder
2
2
 
3
- A description of cocoapods-developing-folder.
3
+ A cocoapods plugin that:
4
+ - preserves the folder structure in `development pods`
5
+ - provides a new keyword `folder` to import all local pods in a specific folder and its subfolders
6
+
4
7
 
5
8
  ## Installation
6
9
 
@@ -8,8 +11,47 @@ A description of cocoapods-developing-folder.
8
11
 
9
12
  ## Usage
10
13
 
11
- Add the following to your podfile:
14
+ #### preserves the folder structure
15
+
16
+ Add the following to your podfile
17
+
12
18
  ```ruby
13
19
  plugin 'cocoapods-developing-folder'
14
20
  use_folders
15
21
  ```
22
+
23
+ If you don't want to create groups for top level folders (Local pods are usually grouped in the same folder):
24
+ ```ruby
25
+ use_folders :skip_top_level_group => ["modules"]
26
+ ```
27
+
28
+ #### import all local pods in specific folder
29
+
30
+ Use `folder` just like `pod` keyword. (In fact, they are just ruby functions)
31
+
32
+
33
+ ```ruby
34
+ plugin 'cocoapods-developing-folder'
35
+
36
+ target "ABC" do
37
+ pod "SnapKit"
38
+ folder "frameworks/core" # 'frameworks/core' is just a relative path to podfile
39
+ folder "modules" # it will import all pod in 'modules' folder and its subfolders
40
+ end
41
+ ```
42
+
43
+ It will import all local pods in that folder and its subfolders recrusively, equivalent of:
44
+
45
+ ```
46
+ pod "AAA", :path => "modules/AAA"
47
+ pod "BBB", :path => "modules/BBB"
48
+ pod "CCC", :path => "modules/some/path/to/CCC"
49
+ #...
50
+ ```
51
+
52
+ # License
53
+
54
+ MIT
55
+
56
+ Appreciate a 🌟 if you like it. Another cocoapods plugin made by me [cocoapods-static-swift-framework](https://github.com/leavez/cocoapods-static-swift-framework).
57
+
@@ -2,8 +2,14 @@ require 'cocoapods-developing-folder/command/folder_DSL.rb'
2
2
 
3
3
  module Pod
4
4
  class Podfile
5
- def use_folders
5
+ def use_folders(*skipped_top_level_folder_names)
6
6
  require 'cocoapods-developing-folder/command/preserve_folder.rb'
7
+ names_to_skip = []
8
+ first = skipped_top_level_folder_names.first
9
+ if first.is_a? Hash
10
+ names_to_skip = first[:skip_top_level_group]
11
+ end
12
+ Pod.set_skipped_top_level_folder_names (names_to_skip or [])
7
13
  end
8
14
  end
9
15
  end
@@ -16,6 +16,17 @@ module Xcodeproj
16
16
  end
17
17
 
18
18
 
19
+ module Pod
20
+ def self.skipped_top_level_folder_names
21
+ @skipped_top_level_folder_names
22
+ end
23
+ def self.set_skipped_top_level_folder_names(names)
24
+ @skipped_top_level_folder_names = names
25
+ end
26
+ end
27
+
28
+
29
+
19
30
  require 'pathname'
20
31
 
21
32
  module Pod
@@ -51,6 +62,9 @@ module Pod
51
62
  if parentPath == "."
52
63
  pathArray = []
53
64
  end
65
+ if pathArray.first != nil and Pod.skipped_top_level_folder_names.include? pathArray.first
66
+ pathArray = pathArray.drop(1)
67
+ end
54
68
 
55
69
  getGroup(pathArray, development_pods)
56
70
  end
@@ -1,3 +1,3 @@
1
1
  module CocoapodsDevelopingFolder
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cocoapods-developing-folder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - leavez
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-04 00:00:00.000000000 Z
11
+ date: 2018-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler