auto-gemsets 0.1.2 → 0.1.3

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.
Files changed (4) hide show
  1. data/VERSION +1 -1
  2. data/auto-gemsets.gemspec +1 -1
  3. data/auto_gemsets.sh +24 -16
  4. metadata +2 -2
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.2
1
+ 0.1.3
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "auto-gemsets"
8
- s.version = "0.1.2"
8
+ s.version = "0.1.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dayton Nolan"]
@@ -1,17 +1,7 @@
1
- function create_or_switch_gemset() {
1
+ function create_gemset_if_missing() {
2
2
  if [ ! -d "${GEMSET_ROOT}/${GEMSET}" ]; then
3
3
  mkdir -p "${GEMSET_ROOT}/${GEMSET}" && echo "${GEMSET} created. run gem install bundler"
4
4
  fi
5
-
6
- switch_gemset
7
- }
8
-
9
- function switch_gemset() {
10
- export GEM_PATH="${GEMSET_PATH}"
11
- export GEM_HOME="${GEMSET_PATH}"
12
- export GEM_ROOT="${GEMSET_PATH}"
13
- echo "Now using ${GEMSET} gemset via ${GEMFILE}"
14
- break
15
5
  }
16
6
 
17
7
  function auto_gemsets() {
@@ -21,21 +11,36 @@ function auto_gemsets() {
21
11
  until [[ -z "$dir" ]]; do
22
12
  gemfile="$dir/Gemfile"
23
13
  IFS='/' read -a gemfile_path_parts <<< "$gemfile"
24
-
25
14
  gemset="${gemfile_path_parts[${#gemfile_path_parts[@]}-2]}"
26
15
 
27
- if [[ "${GEMSET_PATH//:$DEFAULT_GEMSET}" == "${GEMSET_ROOT}/$gemset" ]]; then return
16
+ if [[ "${GEM_PATH//:$DEFAULT_GEMSET}" == "${GEMSET_ROOT}/$gemset" ]]; then return
28
17
  elif [[ -f "$gemfile" ]]; then
29
- export GEMSET_PATH="${GEMSET_ROOT}/$gemset:${DEFAULT_GEMSET}"
18
+ export GEM_HOME="${GEMSET_ROOT}/$gemset"
19
+ export GEM_ROOT="${GEMSET_ROOT}/$gemset" # chruby specific
20
+ export GEM_PATH="${GEM_HOME}:${DEFAULT_GEMSET}"
30
21
  export GEMSET="${gemset}"
31
22
  export GEMFILE="${gemfile}"
32
- create_or_switch_gemset
23
+ create_gemset_if_missing && echo "Now using ${GEMSET} gemset via ${GEMFILE}"
24
+ break
25
+ elif [[ ! -f "$gemfile" ]]; then
26
+ set_default_gemset
33
27
  fi
34
28
 
35
29
  dir="${dir%/*}"
36
30
  done
37
31
  }
38
32
 
33
+ function set_default_gemset() {
34
+ if [ ! -z "${DEFAULT_GEMSET}" ]; then
35
+ if [ ! "$GEM_PATH" == "${DEFAULT_GEMSET}" ]; then
36
+ export GEM_HOME="${DEFAULT_GEMSET}"
37
+ export GEM_ROOT="${DEFAULT_GEMSET}"
38
+ export GEM_PATH="${DEFAULT_GEMSET}"
39
+ echo "Now using default gemset $(basename $DEFAULT_GEMSET) via ${DEFAULT_GEMSET}"
40
+ fi
41
+ fi
42
+ }
43
+
39
44
  if [ ! -n "$GEMSET_ROOT" ]; then
40
45
  export GEMSET_ROOT="${HOME}/.gemsets"
41
46
  fi
@@ -50,4 +55,7 @@ else
50
55
  else
51
56
  PROMPT_COMMAND="auto_gemsets"
52
57
  fi
53
- fi
58
+ fi
59
+
60
+ # Set default on load
61
+ set_default_gemset
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: auto-gemsets
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -148,7 +148,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
148
148
  version: '0'
149
149
  segments:
150
150
  - 0
151
- hash: 2639899487419064898
151
+ hash: 1199271286418570483
152
152
  required_rubygems_version: !ruby/object:Gem::Requirement
153
153
  none: false
154
154
  requirements: