abak-flow 1.0.0 → 1.0.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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MGU3ZjFmYjE3OWMyMDM4NTI1NWJjYzQxZDFjZTM5YmQ2YmQ0M2Q1ZQ==
4
+ MDFkNDI2YTZiMTk4Y2Q4YTQxNzlmMzc3MGMzOGNmOTk5ODg3ZWM3Nw==
5
5
  data.tar.gz: !binary |-
6
- NjViMDJhOWE1ZmRhMTU0ZjZkNjVkNjhlYTBiZmE0ZTM1NjgyYzlkZA==
6
+ YjMxMzFkNjQ1MWNlMTZkZjMxMmY5ZDZkMGYwYzk2NmYyNzZjNTQ2Zg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NWE0M2ZjYmJkMDQ0MWU4OWUxZDBiODk4NTU0N2Q2M2IyZTU4ZGIyZTgxZTBl
10
- NGEyY2M4YTZjMjI4ZmZjY2FlZjJjMTZiMzg0YThmYTBkN2E1ODA2NzVjYjc2
11
- MjFiZDlkZDdiMmU1ODExNzJiNzBhYzA0MDE1ZWNjMTIxMjViOWI=
9
+ ZWI2OTM3ZTlmY2I4NWE0NTUxMDYzODY2OTBjMDZmZDQ4Yzk5NjFjZmM4Y2U3
10
+ YmM0NjE2MDFkM2M2NjRjNzE5MTg3MmU1ODJiZjI4OGE3ZDAzNjAxMzNhYzMx
11
+ NWRhYmU0YmVhZTRmMTY0YmZiNDRiOTQyYjY3YTk1OGY0Y2EzZDA=
12
12
  data.tar.gz: !binary |-
13
- MzZkYmQ0OThkMDcxYjFlNmI4MTdlYmRjOTY1NzBmNDYxNTI3Mjc5M2M5ZjVh
14
- YmM2ZDJlM2ZhOTk0YjQ5MWJkZmVkNmVkY2I2MmMwOTYxMTQyOWZhOTBiMGEw
15
- YzVmYjYzNjY4ZDZiOGZmYjEyMzFkOTM4MGFhYjI1YjgwZTQ1ZGU=
13
+ ODEwY2Y3YWQyNzc5NzYzMmJjMzE4MDI5MTYxNjJhMDY3MTM5NGIyM2E4NmMz
14
+ MmZiMzhkYTdlOWQwN2QxOGIyN2MwNDMyNWJmN2NjZWJhNDRjNzE5NWExNzUx
15
+ NWEzZTdiMGNkMzI3ZDc4Yjg0ZDhhNTUyOGNkMTdkMjdiODBiNTc=
data/README.md CHANGED
@@ -34,7 +34,7 @@ Github-flow же наоборот ведет основную разработк
34
34
  $ git remote add upstream git://github.com/GITHUB_PROJECT_USER/GITHUB_PROJECT_NAME.git
35
35
 
36
36
  ### А если я использую прокси, как быть?
37
- $ git config --global abak.proxy http://my-proxy.com:3129
37
+ $ git config --global abak-flow.http-proxy http://my-proxy.com:3129
38
38
 
39
39
  Далее по приоритету идут переменные окружения. Сначала **http_proxy**, затем **HTTP_PROXY**
40
40
 
@@ -92,7 +92,7 @@ Github-flow же наоборот ведет основную разработк
92
92
  ## А помощь?
93
93
  Многие команды имеют какие-то дополнительные опции. Но они нужны только в экзотических случаях. Но при любом раскладе подсказку и тонкий намек всегда можно получить воспользовавших такой командой:
94
94
 
95
- $ git request done --help
95
+ $ git request publish --help
96
96
 
97
97
  # В заключении
98
98
  Данный репозиторий и изложенные в нем идеи ни в коем случае не претендуют на идеал и совершенство. Это всего лишь узко заточенная комбинация гемов
@@ -110,9 +110,7 @@ module Abak::Flow
110
110
 
111
111
  v = Visitor.new(p, call: :publish, look_for: :errors)
112
112
  if v.ready?
113
- say ANSI.green {
114
- I18n.t("commands.publish.success",
115
- link: ANSI.bold { p.link }) }
113
+ say ANSI.green { I18n.t("commands.publish.success", link: p.link) }
116
114
  else
117
115
  say ANSI.red { I18n.t("commands.publish.fail") }
118
116
  say ANSI.yellow { v.output }
@@ -1,5 +1,5 @@
1
1
  module Abak
2
2
  module Flow
3
- VERSION = '1.0.0'
3
+ VERSION = '1.0.1'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: abak-flow
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Strech (aka Sergey Fedorov)
@@ -113,12 +113,10 @@ files:
113
113
  - bin/request
114
114
  - lib/abak-flow.rb
115
115
  - lib/abak-flow/branch.rb
116
- - lib/abak-flow/branches.rb
117
116
  - lib/abak-flow/configuration.rb
118
117
  - lib/abak-flow/locales/en.yml
119
118
  - lib/abak-flow/locales/ru.yml
120
119
  - lib/abak-flow/manager.rb
121
- - lib/abak-flow/messages.rb
122
120
  - lib/abak-flow/pull_request.rb
123
121
  - lib/abak-flow/repository.rb
124
122
  - lib/abak-flow/request.rb
@@ -1,68 +0,0 @@
1
- # coding: utf-8
2
- #
3
- # Wrapper class for git branches.
4
- # Provides access to git branches and also defines current_branch
5
- module Abak::Flow
6
- module Branches
7
- extend Forwardable
8
-
9
- def_delegator "Abak::Flow::Git.instance", :git
10
-
11
- def self.current_branch
12
- Branch.new git.branches[git.current_branch]
13
- end
14
-
15
- # ==========================================================================
16
- # TODO : Refactor
17
- # 3. Statistics & Cleaning
18
- #
19
- # => PullRequest.garbage
20
- # => PullRequest.clean
21
- # => PullRequest.clean(hard: true)
22
- def self.garbage
23
- Project.init
24
- [Project.upstream.repo, Project.origin.repo].map(&:fetch)
25
-
26
- branches = GithubClient.connection.branches(Project.origin.to_s)
27
- .reject { |branch| %w(master develop).include? branch.name }
28
-
29
- messages = Messages.new "pull_request.garbage"
30
- messages << [:collected_branches, {count: branches.count}]
31
-
32
- branches.each_with_index do |branch, index|
33
-
34
- # WRONG PREFIX
35
- upstream_branch = Git.command_lines("branch", ["-r", "--contain", branch.commit.sha])
36
- .select { |branches| branches.include? "upstream/#{branch.prefix}" }
37
-
38
- local_sha = git.branches[branch.name] ? git.branches[branch.name].gcommit.sha : ""
39
-
40
- statuses = {
41
- branch_unused: upstream_branch.empty?,
42
- branch_differ: !local_sha.empty? && local_sha != branch.commit.sha,
43
- branch_missing: local_sha.empty?
44
- }
45
-
46
- unless statuses.values.inject &:|
47
- messages << [:deletion_allowed, {index: index, branch_name: branch.name}]
48
- next
49
- end
50
-
51
- diagnoses = statuses.select { |_, bool| bool }.
52
- map { |name, _| messages.t name }.
53
- map { |msg| " ↪ #{msg}" }.
54
- join("\n")
55
-
56
- if statuses.select { |_, bool| bool }.keys == [:missing]
57
- messages << [:deletion_possibly, {index: index, branch_name: branch.name, diagnoses: diagnoses}]
58
- else
59
- messages << [:deletion_restricted, {index: index, branch_name: branch.name, diagnoses: diagnoses}]
60
- end
61
- end
62
-
63
- messages
64
- end
65
-
66
-
67
- end
68
- end
@@ -1,86 +0,0 @@
1
- # coding : utf-8
2
- require "i18n"
3
-
4
- # TODO : Нужен простой метод, для перевода без скоупа
5
- module Abak::Flow
6
- class Messages
7
- extend Forwardable
8
-
9
- attr_reader :scope, :elements
10
-
11
- def initialize(scope)
12
- Configuration.instance
13
-
14
- @scope = scope
15
- @elements = []
16
- end
17
-
18
- # Iterate elements from locale scope (translating online)
19
- #
20
- # Returns nothing
21
- def each
22
- raise ArgumentError, "No block given" unless block_given?
23
-
24
- elements.each do |key|
25
- yield translate(key)
26
- end
27
- end
28
-
29
- # Put item to elements
30
- #
31
- # Returns Symbol
32
- def push(element)
33
- @elements << element
34
- end
35
- alias :<< :push
36
-
37
- # section header from locale scope
38
- #
39
- # Returns String
40
- def header
41
- translate :header
42
- end
43
-
44
- # Print all elements from locale scope without header
45
- #
46
- # Returns Symbol
47
- def to_s
48
- return "" if elements.empty?
49
-
50
- elements.collect { |element| translate *element } * "\n"
51
- end
52
-
53
- def print
54
- return "" if elements.empty?
55
-
56
- all_elements = []
57
- elements.each_with_index do |element, index|
58
- all_elements << "#{index + 1}. #{translate(*element)}"
59
- end
60
-
61
- all_elements * "\n"
62
- end
63
-
64
- # Print section header from locale scope and all elements from scope
65
- #
66
- # Returns String
67
- def pretty_print
68
- return "" if elements.empty?
69
-
70
- [header, print] * "\n\n"
71
- end
72
- alias :pp :pretty_print
73
-
74
- def translate(key, options = {})
75
- I18n.t key, {scope: scope}.merge!(options)
76
- end
77
- alias :t :translate
78
-
79
- def purge!
80
- @elements = []
81
- end
82
-
83
- private
84
- def_delegator :elements, :empty?
85
- end
86
- end