git_swap 1.1.1 → 1.1.5

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: aa985d9abb70dece419c959cce0583e8e7c5578436def2f52ca8ef9186e85d60
4
- data.tar.gz: 7ce38a6447558c7e20db1055a4b000faeccf354bebb3014d59b8583399630950
3
+ metadata.gz: 416696c1a5c3756db61350abe7679e2f3c51d8d30f4c6d87c2e126101935b175
4
+ data.tar.gz: 746f54b056f15e5b84d1a2207dcd2ae5600cda769b0e64299ae33a03701af862
5
5
  SHA512:
6
- metadata.gz: 0f014406560ce1775685e268e9930375c9c1c57c52ac7844d2ee2dfae80f202e34f5e8db373c890884b2b18819015a72f0aea285d304e9254f55d79b484b051a
7
- data.tar.gz: 02135c1cb06530265ecb43aa9791989ab11e0a108301adb1db3981d9160857613530584739f708041d3527cfb8a56e1b81c3bba03d73a6219820c139ff587be8
6
+ metadata.gz: f90e005a4b18cf3ac01d0586c3f96545cb80a6651e06f7fb27cf509e92e3dc28e5670197ba676229fb7b797324a6d8b8051d47c992542a96dbff8db1155a1f38
7
+ data.tar.gz: 65b0526e9abdb9b97fe7427b1f953725a3e4425a4bb14fb712bc1338f8d60b1c3a106bd26e0c92ea1d1a4494d2bd5069970d1544aec62f3a1685dc5583f87c6b
@@ -121,7 +121,8 @@ module GitSwap
121
121
  private
122
122
 
123
123
  def load!
124
- # TODO: RCR - Handle missing or empty config file
124
+ # If configuration file hasn't been created yet, load an empty hash
125
+ return {} unless File.file?(File.expand_path('~/.gitswap'))
125
126
  YAML.load_file(File.expand_path('~/.gitswap')) || {}
126
127
  end
127
128
 
@@ -1,11 +1,8 @@
1
1
  require_relative './version'
2
- require 'active_support/core_ext/module/delegation'
3
2
 
4
3
  module GitSwap
5
4
  class Swapper
6
5
  attr_reader :config, :options
7
- delegate :usage?, :config?, :edit?, :list?, :version?, :global?, to: :options
8
- delegate :profile, :name, :username, :email, :ssh, :ssh_command, :print_list, :configure!, :edit!, :valid_profile?, to: :config
9
6
 
10
7
  def initialize(args)
11
8
  raise ArgumentError unless args.is_a? Array
@@ -66,6 +63,20 @@ module GitSwap
66
63
  end
67
64
  end
68
65
 
66
+ # Use method_missing for delegation
67
+ # Original ActiveSupport version
68
+ # delegate :usage?, :config?, :edit?, :list?, :version?, :global?, to: :options
69
+ # delegate :profile, :name, :username, :email, :ssh, :ssh_command, :print_list, :configure!, :edit!, :valid_profile?, to: :config
70
+ def method_missing(method, *args)
71
+ if @options.respond_to?(method)
72
+ @options.send(method, *args)
73
+ elsif @config.respond_to?(method)
74
+ @config.send(method, *args)
75
+ else
76
+ super
77
+ end
78
+ end
79
+
69
80
  private
70
81
 
71
82
  def git_config_flag
@@ -80,10 +91,11 @@ module GitSwap
80
91
 
81
92
  def set_ssh
82
93
  `git config #{git_config_flag} core.sshCommand "#{ssh_command}"`
94
+ # Include the --apple-use-keychain option to retrieve the passphrase
83
95
  if options.verbose?
84
- `ssh-add #{ssh}`
96
+ `ssh-add --apple-use-keychain #{ssh}`
85
97
  else
86
- `ssh-add #{ssh} 2>/dev/null`
98
+ `ssh-add --apple-use-keychain #{ssh} 2>/dev/null`
87
99
  end
88
100
  end
89
101
 
@@ -1,3 +1,3 @@
1
1
  module GitSwap
2
- VERSION = "1.1.1" unless defined? VERSION
2
+ VERSION = "1.1.5" unless defined? VERSION
3
3
  end
metadata CHANGED
@@ -1,43 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git_swap
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Randall Reed, Jr.
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-12 00:00:00.000000000 Z
11
+ date: 2022-02-11 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: activesupport
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '5.2'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '5.2'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: bundler
29
15
  requirement: !ruby/object:Gem::Requirement
30
16
  requirements:
31
17
  - - "~>"
32
18
  - !ruby/object:Gem::Version
33
- version: 2.2.10
19
+ version: 2.3.7
34
20
  type: :development
35
21
  prerelease: false
36
22
  version_requirements: !ruby/object:Gem::Requirement
37
23
  requirements:
38
24
  - - "~>"
39
25
  - !ruby/object:Gem::Version
40
- version: 2.2.10
26
+ version: 2.3.7
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: rake
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -99,7 +85,7 @@ homepage: https://www.github.com/randallreedjr/git_swap
99
85
  licenses:
100
86
  - MIT
101
87
  metadata: {}
102
- post_install_message:
88
+ post_install_message:
103
89
  rdoc_options: []
104
90
  require_paths:
105
91
  - lib
@@ -114,8 +100,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
114
100
  - !ruby/object:Gem::Version
115
101
  version: '0'
116
102
  requirements: []
117
- rubygems_version: 3.1.4
118
- signing_key:
103
+ rubygems_version: 3.1.6
104
+ signing_key:
119
105
  specification_version: 4
120
106
  summary: Swap between git profiles
121
107
  test_files: []