avm-eac_ruby_base1 0.43.0 → 0.43.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: e8fee56513f22827d830ccf315f3e0c979f9d98e57c221aa6e8808320e0653b7
4
- data.tar.gz: 00e65a04da777876acad218772b17583d45fbeca5900619a6ce6bdc9e02a4567
3
+ metadata.gz: 824b5768bc408822318672fdc61cbf6caf81bef5598f838258d3075e71f8aa8e
4
+ data.tar.gz: bd42632e5e927ced6ad9f0674ad0caf53ba971207f1c7d0f049cf7692223f6fd
5
5
  SHA512:
6
- metadata.gz: 9787444ca2083a1ac35e506b1984a4f29708a07517adbd45ad1edb60ca27c67a12f306fb96648a262fdaa524cfd7b3557d4756bd967c3ed76dd16dc903fb30fa
7
- data.tar.gz: 9120076645cfac0f3766d1f7a041689c0b468ceaab038393521732eaa355c98c229af4f033bde31c4fc8c1da1496d17b2b59e83568097858df062abc92d4060a
6
+ metadata.gz: 8b0e838de8aaf437c466e26dd3100bab1670d9b609f2469755d7bf366ac6e1ddf9218eb9df7ada72368f6678980065c70a3fd5cb6455e5d652d9b47c173295cc
7
+ data.tar.gz: 8aa5fdd4ee423193cbe3604cf76cf417f71ef1c9eda3b29ca5aea50d0abfae61339fe73b4c7f8ea2370e5ce196282a7439bb3f4c9cba7ce0c5f0571925a4b665
@@ -57,9 +57,10 @@ module Avm
57
57
  )
58
58
  end
59
59
 
60
+ # @return [String]
60
61
  def version_unpublished_check_result
61
62
  ::Avm::Launcher::Publish::CheckResult.pending(
62
- publish.i18n_translate(__method__, gem: gem_spec.name, provider: gem_provider)
63
+ publish.i18n_translate(__method__, gem: gem_spec.full_name, provider: gem_provider)
63
64
  )
64
65
  end
65
66
  end
@@ -18,10 +18,11 @@ module Avm
18
18
  gem_build.close
19
19
  end
20
20
 
21
+ # @return [void]
21
22
  def push_gem
22
23
  info("Pushing gem #{gem_spec}...")
23
- gem_provider.push_gem(gem_build.output_file)
24
- info('Pushed!')
24
+ r = gem_provider.push_gem(gem_build.output_file)
25
+ send(r.type == :success ? :success : :error, r.message)
25
26
  end
26
27
 
27
28
  require_sub __FILE__, include_modules: true, require_mode: :kernel
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Avm
4
+ module EacRubyBase1
5
+ module Rubygems
6
+ module Providers
7
+ class Base
8
+ class CommandResultToPushResult
9
+ acts_as_instance_method
10
+ common_constructor :provider, :command_result
11
+
12
+ RESULT_STRUCT = ::Struct.new(:type, :message)
13
+
14
+ # @return [RESULT_STRUCT]
15
+ def result
16
+ RESULT_STRUCT.then do |v|
17
+ v.new(*v.members.map { |e| send(e) })
18
+ end
19
+ end
20
+
21
+ # @return [String]
22
+ def message
23
+ %i[stdout stderr].map { |e| "#{command_result.fetch(e)}\n" }.join
24
+ end
25
+
26
+ # @return [Symbol]
27
+ def type
28
+ ::Avm::EacRubyBase1::Rubygems::Providers::Base.lists.push_result_type.value_validate!(
29
+ provider.push_gem_command_exit_codes.fetch(
30
+ command_result.fetch(:exit_code)
31
+ )
32
+ )
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -6,6 +6,8 @@ module Avm
6
6
  module Providers
7
7
  class Base
8
8
  acts_as_abstract
9
+ enable_listable
10
+ lists.add_symbol :push_result_type, :success, :access_denied
9
11
 
10
12
  common_constructor :root_http_url do
11
13
  self.root_http_url = root_http_url.to_uri
@@ -19,13 +21,15 @@ module Avm
19
21
  end
20
22
 
21
23
  # @param gem_package_path [Pathname]
22
- # @return [Boolean]
24
+ # @return [Avm::EacRubyBase1::Rubygems::Providers::Base::CommandResultToPushResult::RESULT_STRUCT]
23
25
  def push_gem(gem_package_path)
24
26
  command_args = push_gem_command_args(gem_package_path)
25
27
  command_args = %w[echo] + command_args + %w[(Dry-run)] unless
26
28
  ::Avm::Launcher::Context.current.publish_options[:confirm]
27
29
  ::EacRubyUtils::Ruby.on_clean_environment do
28
- EacRubyUtils::Envs.local.command(*command_args).system
30
+ command_result_to_push_result(
31
+ EacRubyUtils::Envs.local.command(*command_args).execute
32
+ )
29
33
  end
30
34
  end
31
35
 
@@ -35,10 +39,19 @@ module Avm
35
39
  raise_abstract __method__, gem_package_path
36
40
  end
37
41
 
42
+ # @return [Hash]
43
+ def push_gem_command_exit_codes
44
+ {
45
+ 0 => PUSH_RESULT_TYPE_SUCCESS
46
+ }
47
+ end
48
+
38
49
  # @return [String]
39
50
  def to_s
40
51
  "#{self.class.name.demodulize}[#{root_http_url}]"
41
52
  end
53
+
54
+ require_sub __FILE__, require_mode: :kernel
42
55
  end
43
56
  end
44
57
  end
@@ -30,6 +30,11 @@ module Avm
30
30
  end
31
31
  command
32
32
  end
33
+
34
+ # @return [Hash]
35
+ def push_gem_command_exit_codes
36
+ super.merge(256 => PUSH_RESULT_TYPE_ACCESS_DENIED)
37
+ end
33
38
  end
34
39
  end
35
40
  end
@@ -7,7 +7,7 @@ module Avm
7
7
  module Update
8
8
  # @return [void]
9
9
  def on_sub_updated
10
- update_self_changes_before_subs
10
+ ::Avm::EacRubyBase1::Sources::Update::Changes::BundleUpdate.new(self).perform
11
11
  end
12
12
 
13
13
  # @param changes [Enumerable<Avm::Sources::Change>]
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Avm
4
4
  module EacRubyBase1
5
- VERSION = '0.43.0'
5
+ VERSION = '0.43.1'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avm-eac_ruby_base1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.43.0
4
+ version: 0.43.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Put here the authors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-24 00:00:00.000000000 Z
11
+ date: 2026-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aranha-parsers
@@ -33,7 +33,7 @@ dependencies:
33
33
  version: '0.102'
34
34
  - - ">="
35
35
  - !ruby/object:Gem::Version
36
- version: 0.102.1
36
+ version: 0.102.2
37
37
  type: :runtime
38
38
  prerelease: false
39
39
  version_requirements: !ruby/object:Gem::Requirement
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: '0.102'
44
44
  - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: 0.102.1
46
+ version: 0.102.2
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: avm-eac_generic_base0
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -160,6 +160,7 @@ files:
160
160
  - lib/avm/eac_ruby_base1/rubygems/gemspec/add_or_replace_gem_line.rb
161
161
  - lib/avm/eac_ruby_base1/rubygems/gemspec/dependency.rb
162
162
  - lib/avm/eac_ruby_base1/rubygems/providers/base.rb
163
+ - lib/avm/eac_ruby_base1/rubygems/providers/base/command_result_to_push_result.rb
163
164
  - lib/avm/eac_ruby_base1/rubygems/providers/nexus.rb
164
165
  - lib/avm/eac_ruby_base1/rubygems/providers/rubygems_org.rb
165
166
  - lib/avm/eac_ruby_base1/rubygems/remote.rb