gvcsfx 0.3 → 0.6.0

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: cc8f144e9c0c6026b678a273f83c5decd5addaeab7107c51cf135960ebdd59e8
4
- data.tar.gz: '09bb7c786358bb9c9f7bdfcc3561a445bc2b2dcd786b9b0a86e74889edf7cfad'
3
+ metadata.gz: 77cccf92131945b87f76d89882e8d0b6f7f524ffa0557c52a6dd951a5f979ef1
4
+ data.tar.gz: 3a56ba89e0900510730565073487530f2449b0269d9f827d43adac6828af373e
5
5
  SHA512:
6
- metadata.gz: 372e845c794cdbae4cca7d448192c59b3e1f7c22206d01e8c55213377303889355ba916e09232ba3ba602649d3c7f87784b7e2744b06f623dae2ad25cde7d3eb
7
- data.tar.gz: b72b982aae34765f09539d834384ad3ad5773e7717cafba5c120697b8b443429105b41de83c719035b1d84bb8668a577db9bda36502c52c79196cc374d5e0352
6
+ metadata.gz: 17c343d415596123b81ea1aec71d7a30e7325f06a41e6051afd8a493b55f17331396777ff265b5f680a2e3b7dee8c4711fcfe3bb7580da12cde0eb94c8cd8cee
7
+ data.tar.gz: 6a84745e06bfa5ca810dbdde3ab384984a62cba8d06dcfab202624fb541a08f0315a4f2a347d6c4f19a5bfb8ec49c93a672738b424a0db25f2b03cd216435073
data/.gitignore CHANGED
@@ -4,3 +4,5 @@ Gemfile.lock
4
4
  fx/.jrubyfx_cache/
5
5
  gvcsfx.jar
6
6
  gvcsfx-0.3.jar
7
+ pkg/
8
+ tags
data/Gemfile CHANGED
@@ -16,9 +16,14 @@
16
16
 
17
17
  source "https://rubygems.org"
18
18
 
19
- gem 'tlogger', '~> 0.21'
20
- gem 'jrubyfx'
21
- gem 'toolrack', '~> 0.4'
19
+ gemspec
22
20
 
23
- gem 'gvcs', '~> 0.1'
24
- gem 'git_cli', '~> 0.1'
21
+ #gem 'git_cli', path: '../git/git_cli'
22
+
23
+ #gem 'jrubyfx-openjfx.patch', path: '/mnt/Vault/08.Dev/01.Workspaces/jrubyfx_patches/jrubyfx'
24
+ #gem 'tlogger', '~> 0.21'
25
+ #gem 'jrubyfx'
26
+ #gem 'toolrack', '~> 0.4'
27
+ #
28
+ #gem 'gvcs', '~> 0.1'
29
+ #gem 'git_cli', '~> 0.1'
data/README.md CHANGED
@@ -57,6 +57,26 @@ To be implemented
57
57
  * Sort by date/committer on logs
58
58
 
59
59
 
60
+ Installation
61
+ ============
62
+
63
+ You can check out the source code here and run
64
+
65
+ ```sh
66
+ > bundle
67
+ > bundle exec ruby bin/gvcsfx.rb
68
+ ```
69
+
70
+ Or use gem to install the tool:
71
+
72
+ ```ruby
73
+ > gem install gvcsfx
74
+ > (if you use RVM, switch to jruby first)
75
+ > rvm use jruby
76
+ > gvcsfx
77
+ ```
78
+
79
+
60
80
  Development
61
81
  ===========
62
82
 
@@ -0,0 +1,12 @@
1
+ require "bundler/gem_tasks"
2
+ require "rake/testtask"
3
+
4
+ require 'devops_helper'
5
+
6
+ Rake::TestTask.new(:test) do |t|
7
+ t.libs << "test"
8
+ t.libs << "lib"
9
+ t.test_files = FileList["test/**/*_test.rb"]
10
+ end
11
+
12
+ task :default => :test
@@ -127,8 +127,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
127
127
  <GridPane layoutX="240.0" layoutY="115.0" maxWidth="1.7976931348623157E308" AnchorPane.bottomAnchor="8.0" AnchorPane.leftAnchor="8.0" AnchorPane.rightAnchor="8.0" AnchorPane.topAnchor="8.0">
128
128
  <columnConstraints>
129
129
  <ColumnConstraints hgrow="NEVER" maxWidth="215.0" />
130
- <ColumnConstraints hgrow="SOMETIMES" maxWidth="1.7976931348623157E308" minWidth="10.0" prefWidth="684.0" />
131
- <ColumnConstraints hgrow="SOMETIMES" maxWidth="501.0" minWidth="10.0" prefWidth="209.0" />
130
+ <ColumnConstraints hgrow="SOMETIMES" maxWidth="1.7976931348623157E308" minWidth="10.0" prefWidth="642.0" />
131
+ <ColumnConstraints hgrow="NEVER" maxWidth="288.0" minWidth="288.0" prefWidth="288.0" />
132
132
  </columnConstraints>
133
133
  <rowConstraints>
134
134
  <RowConstraints maxHeight="-Infinity" minHeight="-Infinity" prefHeight="28.0" vgrow="NEVER" />
@@ -153,10 +153,15 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
153
153
  <Insets bottom="5.0" top="5.0" />
154
154
  </GridPane.margin>
155
155
  </TableView>
156
- <ComboBox fx:id="cmbCommitMsg" editable="true" maxWidth="1.7976931348623157E308" onKeyTyped="#is_cmbCommit_enter" promptText="Commit message" GridPane.columnSpan="3" GridPane.hgrow="ALWAYS" GridPane.rowIndex="3" />
157
- <Button fx:id="butCommit" defaultButton="true" maxWidth="80.0" minWidth="80.0" mnemonicParsing="false" onAction="#vcs_commit" prefWidth="80.0" text="Commit" GridPane.columnIndex="2" GridPane.halignment="RIGHT" GridPane.rowIndex="4" />
158
- <HBox alignment="CENTER_RIGHT" prefHeight="100.0" prefWidth="200.0" GridPane.columnIndex="2">
156
+ <ComboBox fx:id="cmbCommitMsg" editable="true" maxWidth="1.7976931348623157E308" onKeyPressed="#is_cmbCommit_enter" promptText="Commit message" GridPane.columnSpan="3" GridPane.hgrow="ALWAYS" GridPane.rowIndex="3" />
157
+ <Button fx:id="butCommit" maxWidth="80.0" minWidth="80.0" mnemonicParsing="false" onAction="#vcs_commit" prefWidth="80.0" text="Commit" GridPane.columnIndex="2" GridPane.halignment="RIGHT" GridPane.rowIndex="4" />
158
+ <HBox alignment="CENTER_RIGHT" prefHeight="28.0" prefWidth="332.0" GridPane.columnIndex="2">
159
159
  <children>
160
+ <TextField fx:id="txtStateFileNmFilter" alignment="CENTER" onKeyPressed="#name_filter_keypressed" promptText="File name filter" HBox.hgrow="ALWAYS">
161
+ <HBox.margin>
162
+ <Insets left="3.0" right="3.0" />
163
+ </HBox.margin>
164
+ </TextField>
160
165
  <Button fx:id="butRefreshChanges" alignment="CENTER" maxWidth="80.0" minWidth="80.0" mnemonicParsing="false" onAction="#refresh_vcs_status" prefWidth="80.0" text="Refresh">
161
166
  <HBox.margin>
162
167
  <Insets />
@@ -457,7 +462,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
457
462
  <RowConstraints minHeight="10.0" prefHeight="38.0" vgrow="SOMETIMES" />
458
463
  </rowConstraints>
459
464
  <children>
460
- <TitledPane collapsible="false" maxHeight="1.7976931348623157E308" minHeight="-Infinity" text="Configurations" GridPane.columnSpan="2" GridPane.hgrow="ALWAYS" GridPane.vgrow="ALWAYS">
465
+ <TitledPane collapsible="false" maxHeight="1.7976931348623157E308" text="Configurations" GridPane.columnSpan="2" GridPane.hgrow="ALWAYS" GridPane.vgrow="ALWAYS">
461
466
  <content>
462
467
  <TabPane tabMinWidth="80.0">
463
468
  <tabs>
@@ -0,0 +1,38 @@
1
+ require_relative 'lib/version'
2
+
3
+ Gem::Specification.new do |spec|
4
+ spec.name = "gvcsfx"
5
+ spec.version = GvcsFx::VERSION
6
+ spec.authors = ["Chris"]
7
+ spec.email = ["chrisliaw@antrapol.com"]
8
+
9
+ spec.summary = %q{Generic Version Control System - JavaFX}
10
+ spec.description = %q{Simple and effective VCS workflow management}
11
+ spec.homepage = "https://github.com/chrisliaw/gvcsfx"
12
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
13
+
14
+ #spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
15
+
16
+ #spec.metadata["homepage_uri"] = spec.homepage
17
+ #spec.metadata["source_code_uri"] = "TODO: Put your gem's public repo URL here."
18
+ #spec.metadata["changelog_uri"] = "TODO: Put your gem's CHANGELOG.md URL here."
19
+
20
+ # Specify which files should be added to the gem when it is released.
21
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
22
+ spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
23
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
24
+ end
25
+ spec.bindir = "bin"
26
+ #spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
27
+ spec.executables = "gvcsfx"
28
+ spec.require_paths = ["lib"]
29
+
30
+ spec.add_dependency 'tlogger' #, '>= 0.21'
31
+ spec.add_dependency 'jrubyfx-openjfx.patch', '1.2.0.1'
32
+ spec.add_dependency 'toolrack' #, '>= 0.5.0'
33
+ spec.add_dependency 'gvcs' #, '>= 0.1.0'
34
+ spec.add_dependency 'git_cli' #, '>= 0.8.0'
35
+
36
+ spec.add_development_dependency 'devops_helper' #, '>= 0.3.1'
37
+
38
+ end
@@ -74,7 +74,7 @@ module GvcsFx
74
74
  if inside_jar?
75
75
  @errImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/cross.png").to_s)
76
76
  else
77
- @errImg = javafx.scene.image.Image.new("res/cross.png")
77
+ @errImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/cross.png"))
78
78
  end
79
79
  end
80
80
  @errImg
@@ -83,7 +83,7 @@ module GvcsFx
83
83
  if inside_jar?
84
84
  @warnImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/warn.png").to_s)
85
85
  else
86
- @warnImg = javafx.scene.image.Image.new("res/warn.png")
86
+ @warnImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/warn.png"))
87
87
  end
88
88
  end
89
89
  @warnImg
@@ -92,7 +92,7 @@ module GvcsFx
92
92
  if inside_jar?
93
93
  @sucImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/tick.png").to_s)
94
94
  else
95
- @sucImg = javafx.scene.image.Image.new("res/tick.png")
95
+ @sucImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/tick.png"))
96
96
  end
97
97
  end
98
98
  @sucImg
@@ -101,7 +101,7 @@ module GvcsFx
101
101
  if inside_jar?
102
102
  @infoImg = javafx.scene.image.Image.new(java.lang.Object.new.java_class.resource("/gvcsfx/res/world.png").to_s)
103
103
  else
104
- @infoImg = javafx.scene.image.Image.new("res/world.png")
104
+ @infoImg = javafx.scene.image.Image.new(File.join("file://",File.dirname(__FILE__),"..","res/world.png"))
105
105
  end
106
106
  end
107
107
  @infoImg
@@ -33,28 +33,33 @@ module GvcsFx
33
33
  end
34
34
  class ModifiedFile < VcsElement
35
35
  def initialize(path, ftype)
36
- super("M",path, ftype)
36
+ super("Changed",path, ftype)
37
37
  end
38
38
  end
39
39
  class ConflictedFile < VcsElement
40
40
  def initialize(path, ftype)
41
- super("C",path, ftype)
41
+ super("Conflicted",path, ftype)
42
42
  end
43
43
  end
44
44
  class NewFile < VcsElement
45
45
  def initialize(path, ftype)
46
- super("N",path, ftype)
46
+ super("New",path, ftype)
47
47
  end
48
48
  end
49
49
  class DeletedFile < VcsElement
50
50
  def initialize(path, ftype)
51
- super("D",path, ftype)
51
+ super("Deleted",path, ftype)
52
+ end
53
+ end
54
+ class StagedFile < VcsElement
55
+ def initialize(path, ftype)
56
+ super("Staged",path, ftype)
52
57
  end
53
58
  end
54
59
  #############
55
60
 
56
61
  def init_tab_state
57
- @tblChanges.placeholder = javafx.scene.control.Label.new("Changeset is empty. Please select a workspace or the selected workspace has no changes ")
62
+ @tblChanges.placeholder = javafx.scene.control.Label.new("Changeset is empty. Please select a workspace, the selected workspace has no changes or changes have been filtered out.")
58
63
 
59
64
  @tblChanges.columns.clear
60
65
  @tblChanges.column_resize_policy = javafx.scene.control.TableView::CONSTRAINED_RESIZE_POLICY
@@ -140,11 +145,32 @@ module GvcsFx
140
145
  cst, cflt_dirs, cflt_files = @selWs.conflicted_files
141
146
  nst, news_dirs, news_files = @selWs.new_files
142
147
  dst, dels_dirs, dels_files = @selWs.deleted_files
148
+ sst, staged_dirs, staged_files = @selWs.staged_files
149
+
150
+ filter = @txtStateFileNmFilter.text
151
+
152
+ if not_empty?(filter)
153
+ mods_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
154
+ mods_files.delete_if { |e| (e =~ /#{filter}/) == nil }
155
+
156
+ cflt_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
157
+ cflt_files.delete_if { |e| (e =~ /#{filter}/) == nil }
158
+
159
+ news_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
160
+ news_files.delete_if { |e| (e =~ /#{filter}/) == nil }
161
+
162
+ dels_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
163
+ dels_files.delete_if { |e| (e =~ /#{filter}/) == nil }
164
+
165
+ staged_dirs.delete_if { |e| (e =~ /#{filter}/) == nil }
166
+ staged_files.delete_if { |e| (e =~ /#{filter}/) == nil }
167
+ end
143
168
 
144
169
  data = []
145
170
  mods_dirs.each do |f|
146
171
  data << ModifiedFile.new(f,:dir)
147
172
  end
173
+
148
174
  mods_files.each do |f|
149
175
  data << ModifiedFile.new(f,:file)
150
176
  end
@@ -162,6 +188,7 @@ module GvcsFx
162
188
  news_files.each do |f|
163
189
  data << NewFile.new(f,:file)
164
190
  end
191
+
165
192
  dels_dirs.each do |f|
166
193
  data << DeletedFile.new(f,:dir)
167
194
  end
@@ -169,6 +196,13 @@ module GvcsFx
169
196
  data << DeletedFile.new(f,:file)
170
197
  end
171
198
 
199
+ staged_dirs.each do |f|
200
+ data << StagedFile.new(f,:dir)
201
+ end
202
+ staged_files.each do |f|
203
+ data << StagedFile.new(f,:file)
204
+ end
205
+
172
206
  bst, currBranch = @selWs.current_branch
173
207
  if bst
174
208
  @lblCurrBranch.text = currBranch
@@ -196,17 +230,25 @@ module GvcsFx
196
230
  end
197
231
  end
198
232
 
233
+ def name_filter_keypressed(evt)
234
+ if (not evt.nil?) and evt.code == javafx.scene.input.KeyCode::ENTER
235
+ refresh_tab_state
236
+ end
237
+ end
238
+
199
239
  # hooked to the button "not ready to commit just yet..."
200
240
  def stash_changes(evt)
201
241
  mst, mods_dirs, mods_files = @selWs.modified_files
202
242
  cst, cflt_dirs, cflt_files = @selWs.conflicted_files
203
243
  nst, news_dirs, news_files = @selWs.new_files
204
244
  dst, dels_dirs, dels_files = @selWs.deleted_files
245
+ sst, staged_dirs, staged_files = @selWs.staged_files
205
246
 
206
247
  if mods_dirs.length > 0 or mods_files.length > 0 \
207
248
  or cflt_dirs.length > 0 or cflt_files.length > 0 \
208
249
  or news_dirs.length > 0 or news_files.length > 0 \
209
- or dels_dirs.length > 0 or dels_files.length > 0
250
+ or dels_dirs.length > 0 or dels_files.length > 0 \
251
+ or staged_dirs.length > 0 or staged_files.length > 0
210
252
 
211
253
  msg = []
212
254
  msg << "System detected there are existing uncommitted changes in the current workspace:\n"
@@ -218,6 +260,8 @@ module GvcsFx
218
260
  msg << "\tDeleted file(s) : \t\t#{dels_files.length}\n"
219
261
  msg << "\tNew folder(s) : \t\t#{news_dirs.length}\n"
220
262
  msg << "\tNew file(s) : \t\t\t#{news_files.length}\n"
263
+ msg << "\tStaged folder(s) : \t\t#{staged_dirs.length}\n"
264
+ msg << "\tStaged file(s) : \t\t\t#{staged_files.length}\n"
221
265
 
222
266
  st, name = fx_alert_input("Temporary Save Changes To Branch",msg.join, "Please give a descriptive name of this temporary changes.\nIt is recommended but not mandatory")
223
267
  if st
@@ -47,7 +47,7 @@ module GvcsFx
47
47
  def value
48
48
  self
49
49
  end
50
- end
50
+ end # class TreeWorkspace
51
51
 
52
52
  class WorkspaceCellFactory < javafx.scene.control.TreeTableCell
53
53
  include Antrapol::ToolRack::ExceptionUtils
@@ -69,10 +69,26 @@ module GvcsFx
69
69
  end
70
70
  end
71
71
 
72
- setGraphic(Text.new(cont))
73
-
74
- end
75
- end
72
+ #
73
+ # This code was changed from setGraphic(Text.new(cont)) to setText
74
+ # because if using setGraphic it shall corrupt the tree node display
75
+ # on OpenJFX. It is however not an issue for Oracle JFX.
76
+ # Reported and discussion is here:
77
+ # https://stackoverflow.com/q/65084285/3625825
78
+ # Answer is here:
79
+ # https://stackoverflow.com/a/65138569/3625825
80
+ #
81
+ # Checked on the JavaFX bug database found the issue already reported
82
+ # - https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8238991
83
+ # * the issue is marked as Resolved but the comment seems indicate this issue
84
+ # is linked to another Open issue at
85
+ # https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8231644
86
+ # at the time of this writing
87
+ #
88
+ setText(cont)
89
+
90
+ end # updateItem
91
+ end # class WorkspaceCellFactory
76
92
 
77
93
 
78
94
  LEAF_PROJ_DESC = "Leaf Workspaces (Workspace without bind to a project)"
@@ -94,7 +110,6 @@ module GvcsFx
94
110
  col = []
95
111
  tcUrl = TreeTableColumn.new("Path")
96
112
  tcUrl.cell_value_factory = Proc.new do |e|
97
- #p e.value.value
98
113
  if e.value.value.is_a?(TreeWorkspace)
99
114
  e.value.value
100
115
  else
@@ -182,7 +197,7 @@ module GvcsFx
182
197
  refresh_workspace_list
183
198
 
184
199
  end
185
- end
200
+ end # Platform.run_later
186
201
  end)
187
202
 
188
203
  refresh_workspace_list
@@ -345,46 +360,50 @@ module GvcsFx
345
360
  dc.title = "Select VCS Workspace"
346
361
  wsDir = dc.showDialog(main_stage)
347
362
 
348
- @txtWorkspacePath.text = wsDir.absolute_path
363
+ @txtWorkspacePath.text = wsDir.absolute_path if not_empty?(wsDir)
349
364
  end
350
365
 
351
366
  private
352
367
  def dnd_dropped(evt)
353
368
  f = evt.dragboard.files
354
- vcs = Gvcs::Vcs.new
355
- ws = []
356
- nws = []
357
- f.each do |ff|
358
- log_debug "Checking drop in path '#{ff.absolute_path}'"
359
- st, path = Gvcs::Workspace.new(vcs, ff.absolute_path).workspace_root
360
- if st
361
- # workspace!
362
- ws << path.strip
363
- else
364
- # not a workspace
365
- nws << ff.absolute_path
369
+ if not_empty?(f)
370
+
371
+ vcs = Gvcs::Vcs.new
372
+ ws = []
373
+ nws = []
374
+ f.each do |ff|
375
+ log_debug "Checking drop in path '#{ff.absolute_path}'"
376
+ st, path = Gvcs::Workspace.new(vcs, ff.absolute_path).workspace_root
377
+ if st
378
+ # workspace!
379
+ ws << path.strip
380
+ else
381
+ # not a workspace
382
+ nws << ff.absolute_path
383
+ end
366
384
  end
367
- end
368
385
 
369
- ws.each do |w|
370
- log_debug "Adding workspace '#{w}'"
371
- add_workspace(w)
372
- set_success_gmsg("Workspace '#{w}' added to list")
373
- end
374
-
375
- failed = { }
376
- nws.each do |w|
377
- log_debug "Adding non workspace '#{w}'"
378
- st, res = vcs.init(w)
379
- if st
386
+ ws.each do |w|
387
+ log_debug "Adding workspace '#{w}'"
380
388
  add_workspace(w)
381
- set_success_gmsg("Non-workspace '#{w}' added to list")
382
- else
383
- failed[w] = res
389
+ set_success_gmsg("Workspace '#{w}' added to list")
390
+ end
391
+
392
+ failed = { }
393
+ nws.each do |w|
394
+ log_debug "Adding non workspace '#{w}'"
395
+ st, res = vcs.init(w)
396
+ if st
397
+ add_workspace(w)
398
+ set_success_gmsg("Non-workspace '#{w}' added to list")
399
+ else
400
+ failed[w] = res
401
+ end
384
402
  end
385
- end
386
403
 
387
- raise_event(Listener::Event[:workspace_added])
404
+ raise_event(Listener::Event[:workspace_added])
405
+
406
+ end
388
407
 
389
408
  end # dnd_dropped
390
409
 
@@ -17,5 +17,5 @@
17
17
 
18
18
 
19
19
  module GvcsFx
20
- VERSION = "0.3"
20
+ VERSION = "0.6.0"
21
21
  end
metadata CHANGED
@@ -1,21 +1,21 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gvcsfx
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.3'
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-11-02 00:00:00.000000000 Z
11
+ date: 2020-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '0.21'
18
+ version: '0'
19
19
  name: tlogger
20
20
  prerelease: false
21
21
  type: :runtime
@@ -23,63 +23,77 @@ dependencies:
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '0.21'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
- - - ">="
30
+ - - '='
31
31
  - !ruby/object:Gem::Version
32
- version: 1.2.0
33
- name: jrubyfx
32
+ version: 1.2.0.1
33
+ name: jrubyfx-openjfx.patch
34
34
  prerelease: false
35
35
  type: :runtime
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 1.2.0
40
+ version: 1.2.0.1
41
41
  - !ruby/object:Gem::Dependency
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
- - - "~>"
44
+ - - ">="
45
45
  - !ruby/object:Gem::Version
46
- version: '0.4'
46
+ version: '0'
47
47
  name: toolrack
48
48
  prerelease: false
49
49
  type: :runtime
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '0.4'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - "~>"
58
+ - - ">="
59
59
  - !ruby/object:Gem::Version
60
- version: '0.1'
60
+ version: '0'
61
61
  name: gvcs
62
62
  prerelease: false
63
63
  type: :runtime
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
- version: '0.1'
68
+ version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  requirement: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - "~>"
72
+ - - ">="
73
73
  - !ruby/object:Gem::Version
74
- version: '0.1'
74
+ version: '0'
75
75
  name: git_cli
76
76
  prerelease: false
77
77
  type: :runtime
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ name: devops_helper
90
+ prerelease: false
91
+ type: :development
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
81
95
  - !ruby/object:Gem::Version
82
- version: '0.1'
96
+ version: '0'
83
97
  description: Simple and effective VCS workflow management
84
98
  email:
85
99
  - chrisliaw@antrapol.com
@@ -91,6 +105,7 @@ files:
91
105
  - ".gitignore"
92
106
  - Gemfile
93
107
  - README.md
108
+ - Rakefile
94
109
  - bin/gvcsfx
95
110
  - bin/gvcsfx.rb
96
111
  - config/warble.rb
@@ -101,6 +116,7 @@ files:
101
116
  - fx/show_text.fxml
102
117
  - fx/stash_select.fxml
103
118
  - gvcs_fx.rb
119
+ - gvcsfx.gemspec
104
120
  - handlers/add_workspace_controller.rb
105
121
  - handlers/event_handler.rb
106
122
  - handlers/float_win_controller.rb