fastlane-plugin-native_symbols 0.2.0 → 0.3.1

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
  SHA256:
3
- metadata.gz: ae943b14afe0285984405b861f772bb81187720eda023157269b318797a47a7a
4
- data.tar.gz: 65beaad948ab869fb3dad4a321c15c87fe29252bc837bb42eb5005cde7fd27ca
3
+ metadata.gz: 7285374b3ec4a72855720e9686534eeb96817f48410dce51e075bbca1dd0c7cf
4
+ data.tar.gz: bdd5f3bfd910e0d9fe1cd85360fa1a429445c489bd9180c08b76aaced7ae326f
5
5
  SHA512:
6
- metadata.gz: a34c6c1b1c07f46db3adbcab087e7cae9421bbc05026f04ee451a223402a01abdce50ce60be64f15f6e015bffaaa42d1096b6492423bb81fe1cfe559bc8f0bf8
7
- data.tar.gz: f4f9cc9ffc7130bea496823f0b685c2fd9166e9614bb6008c48f48b46d8cf27882b85c577dad50ff313d583f6e3ec842974a3422b2f209081dd6656c346531b0
6
+ metadata.gz: 5148ce3111cf38708b0f65332ffc947fb513e7519858a11fcc37726342636e5e1133d42711a4de567bc864858732352e5d66ba6fb97ecf565507dbf766dad83f
7
+ data.tar.gz: 9c4473336cee1c90003d2432e16b4a4712413efc8564d051cb56b1e0212b328acb19016d22c41e75e57b5d3ef091f7bc896bc1ec4d8628165013c469b04153b7
data/README.md CHANGED
@@ -1,30 +1,79 @@
1
1
  # fastlane-plugin-native_symbols
2
2
 
3
- [![fastlane-plugin-native_symbols](https://img.shields.io/badge/fastlane-native_symbols-blue.svg)](https://fastlane.tools)
3
+ [![fastlane Plugin Badge](https://rawcdn.githack.com/fastlane/fastlane/master/fastlane/assets/plugin-badge.svg)](https://rubygems.org/gems/fastlane-plugin-native_symbols)
4
+
5
+ Simple [fastlane](https://fastlane.tools/) plugin to zip native symbols and get the retrace mapping file from Android builds.
4
6
 
5
7
  ## Getting Started
6
8
 
7
- This project is a fastlane plugin that makes it easier to zip native symbols and get the retrace mapping file within your fastlane lanes.
9
+ Add the plugin to your project:
8
10
 
9
- To get started, add the plugin to your `Pluginfile`:
11
+ ```bash
12
+ bundle exec fastlane add_plugin native_symbols
13
+ ```
14
+
15
+ ## Usage
10
16
 
11
17
  ```ruby
12
- plugins_path "fastlane/Pluginfile"
18
+ lane :release do
19
+ zip_path, mapping_path = native_symbols(variant: "release")
20
+ supply(
21
+ package_name: 'com.example',
22
+ track: 'production',
23
+ aab: '12345678.aab',
24
+ mapping_paths: [zip_path, mapping_path],
25
+ )
26
+ end
27
+ ```
13
28
 
14
- plugin "fastlane-plugin-native_symbols"
29
+ The action will search your Android project for native symbol directories for the selected variant, zip them into the format expected by the Google Play Console, and return the path to the archive together with the obfuscation retrace mapping file (if present).
30
+
31
+ ### With build variant
32
+
33
+ ```ruby
34
+ lane :release do
35
+ zip_path, mapping_path = native_symbols(variant: "releaseDev")
36
+ end
15
37
  ```
16
38
 
17
- Then run `bundle exec fastlane add_plugin native_symbols` to install it into your lane configuration.
39
+ ### With app path
18
40
 
19
- ## Usage
41
+ ```ruby
42
+ lane :release do
43
+ zip_path, mapping_path = native_symbols(
44
+ app_path: './android',
45
+ variant: "release"
46
+ )
47
+ end
48
+ ```
49
+
50
+ ### Without fail fast
51
+
52
+ ```ruby
53
+ native_symbols(
54
+ app_path: "./android",
55
+ variant: "releaseDev",
56
+ raise: false
57
+ )
58
+ ```
59
+
60
+ When building debug or flavor-specific variants you may not always produce merged native libs. Set `raise` to `false` to keep the lane running.
61
+
62
+
63
+ ### Available options
64
+
65
+ | Option | Description | Default |
66
+ |-----------|-----------------------------------------------------|-----------|
67
+ | `app_path`| Root directory of the Android project | current directory |
68
+ | `variant` | Build variant to inspect (e.g. `release`) | `release` |
69
+ | `raise` | Raise an error when native symbols cannot be found | `true` |
20
70
 
21
- Refer to the action documentation generated in `actions/native_symbols.rb`. You can discover all available options using `bundle exec fastlane action native_symbols` after installing the plugin.
71
+ Run `bundle exec fastlane action native_symbols` for details.
22
72
 
23
73
  ## Development
24
74
 
25
75
  1. Run `bundle install` to install dependencies.
26
76
  2. Use `bundle exec rspec` to run the test suite.
27
- 3. To release a new version, update the version number in `lib/fastlane/plugin/native_symbols/version.rb`, commit your changes, and run `bundle exec rake release`.
28
77
 
29
78
  ## Issues and Contributions
30
79
 
@@ -8,7 +8,7 @@ module Fastlane
8
8
  class NativeSymbolsAction < Action
9
9
  def self.run(params)
10
10
  config = params || FastlaneCore::Configuration.create(available_options, {})
11
- app_path = Pathname.new(config[:app_path] || Dir.getwd)
11
+ app_path = Pathname.new(config[:app_path])
12
12
  unless app_path.directory?
13
13
  UI.user_error!("native_symbols: app_path '#{app_path}' does not exist or is not a directory")
14
14
  end
@@ -40,7 +40,7 @@ module Fastlane
40
40
  end
41
41
 
42
42
  def self.return_value
43
- "Hash with :zip_path (Pathname) and :retrace_mapping_path (Pathname or nil)"
43
+ "Array with 2 elements: the native symbols zip path (string) and the retrace mapping path (string or nil)"
44
44
  end
45
45
 
46
46
  def self.authors
@@ -53,6 +53,7 @@ module Fastlane
53
53
  key: :app_path,
54
54
  description: "Root path of the Android application project",
55
55
  optional: true,
56
+ default_value: Dir.pwd,
56
57
  type: String
57
58
  ),
58
59
  FastlaneCore::ConfigItem.new(
@@ -29,7 +29,7 @@ module Fastlane
29
29
  variant_name = variant.to_s
30
30
  return nil if variant_name.empty?
31
31
  mapping_file = base.join(MAPPING_BASE_PATH, variant_name, "mapping.txt")
32
- mapping_file.exist? ? mapping_file.realpath : nil
32
+ mapping_file.exist? ? mapping_file.realpath.to_s : nil
33
33
  end
34
34
 
35
35
  def self.initialize_output_path(temp_path)
@@ -55,7 +55,7 @@ module Fastlane
55
55
  zip_file.add(relative, file)
56
56
  end
57
57
  end
58
- output
58
+ output.to_s
59
59
  end
60
60
 
61
61
  private_class_method def self.ensure_pathname(path)
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Fastlane
4
4
  module NativeSymbols
5
- VERSION = "0.2.0"
5
+ VERSION = "0.3.1"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fastlane-plugin-native_symbols
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nuno Pinge
@@ -11,35 +11,35 @@ cert_chain: []
11
11
  date: 2025-11-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: fastlane
14
+ name: rubyzip
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 2.96.0
20
- type: :development
19
+ version: '0'
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 2.96.0
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: bundler
28
+ name: fastlane
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: 2.96.0
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: 2.96.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: pry
42
+ name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - ">="
@@ -53,7 +53,7 @@ dependencies:
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rake
56
+ name: pry
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - ">="
@@ -67,7 +67,7 @@ dependencies:
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: rspec
70
+ name: rake
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - ">="
@@ -81,7 +81,7 @@ dependencies:
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
- name: rubyzip
84
+ name: rspec
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - ">="