wip 0.0.2 → 0.1.0

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.
data/.gitignore CHANGED
@@ -2,7 +2,6 @@
2
2
  .DS_Store
3
3
  .bundle
4
4
  .yardoc
5
- doc/*
6
5
  pkg/*
7
6
  scratch/*
8
7
  spec/spec.opts
data/.wiprc CHANGED
@@ -1,22 +1 @@
1
- #!/usr/bin/env bash
2
-
3
- echo "WIP'n wip!"
4
-
5
- # if [ "" == "$TM_PROJECT_DIRECTORY" ] ; then
6
- # # non-textmate (e.g., command line) setup...
7
- # rvm use 1.8.7
8
- # # else
9
- # # TextMate (e.g., command line) setup...
10
- # fi
11
- #
12
- # dbrebase() {
13
- # SQL_FILE=$1
14
- #
15
- # rake db:drop:all
16
- # rake db:create:all
17
- #
18
- # mysql -u root -p iwrtw_development < $SQL_FILE
19
- # rake db:schema:dump
20
- #
21
- # rake db:migrate
22
- # }
1
+ echo 'working on wip...'
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in wip.gemspec
4
+ gemspec
data/README.mkd CHANGED
@@ -1,9 +1,9 @@
1
1
  `wip` README
2
2
  ============================================================================
3
3
 
4
- > NOTE: **`wip`** is WIP
4
+ > NOTE: `wip` is WIP
5
5
 
6
- **`wip`** is a concept I'm playing with for streamlining the process of
6
+ `wip` is a concept I'm playing with for streamlining the process of
7
7
  coding for and documenting client and personal software projects.
8
8
 
9
9
  While this document (specifically) and the idea (generally) are
@@ -12,13 +12,14 @@ and will, in fact, be using the techniques described herein for this project
12
12
  itself.
13
13
 
14
14
 
15
- What is a **wip** Project
15
+ `wip` *works* (in theory)
16
16
  ----------------------------------------------------------------------------
17
17
 
18
- A Project is made up of:
18
+ A *work* is made up of:
19
19
 
20
20
  * Notes
21
21
  * Code
22
+ * ...?
22
23
 
23
24
  The goal is to create an experience in which working on a given client or
24
25
  personal project is:
@@ -41,9 +42,190 @@ personal project is:
41
42
  team-at-large, while allowing for "local" preferences as well.
42
43
 
43
44
 
45
+ `wip` *works* (NOW)
46
+ ----------------------------------------------------------------------------
47
+
48
+ `wip`, currently, is a rubygem that installs an executable and a bash
49
+ function (`wip`, as it turns out) which together assist with navigating to
50
+ and "activating" a given *work* (project workspace, for now).
51
+
52
+ The following is an example shell session, using `wip` as it exists now:
53
+
54
+ # given `wip` is installed .............................................
55
+
56
+
57
+ # `wip index` ... list "works"
58
+ # ......................................................................
59
+ corey@computer ~ $ wip index .
60
+
61
+ corey@computer ~ $ echo "echo 'working on wip...'" > \
62
+ Workspace/com.github/coreyti/wip/.wiprc
63
+
64
+ corey@computer ~ $ wip index .
65
+ * wip
66
+ /Users/corey/Workspace/com.github/coreyti/wip
67
+
68
+ corey@computer ~ $ echo "echo 'working on help...'" > \
69
+ Workspace/help/.wiprc
70
+
71
+ corey@computer ~ $ wip index .
72
+ * help
73
+ /Users/corey/Workspace/help
74
+ * wip
75
+ /Users/corey/Workspace/com.github/coreyti/wip
76
+
77
+
78
+
79
+ # `wip index` ... narrowing the scope & speeding things up
80
+ # ......................................................................
81
+ corey@computer ~ $ wip index .
82
+ * help
83
+ /Users/corey/Workspace/help
84
+ * wip
85
+ /Users/corey/Workspace/com.github/coreyti/wip
86
+
87
+ corey@computer ~ $ wip index ~/Workspace/com.github
88
+ * wip
89
+ /Users/corey/Workspace/com.github/coreyti/wip
90
+
91
+
92
+
93
+ # `wip index` ... defaults
94
+ # ......................................................................
95
+ corey@computer ~ $ wip index # no arg to `wip index`
96
+ * help
97
+ /Users/corey/Workspace/help
98
+ * wip
99
+ /Users/corey/Workspace/com.github/coreyti/wip
100
+
101
+ corey@computer ~ $ wip # no arg to `wip`
102
+ * help
103
+ /Users/corey/Workspace/help
104
+ * wip
105
+ /Users/corey/Workspace/com.github/coreyti/wip
106
+
107
+
108
+
109
+ # `wip show` ... activate a "work"
110
+ # ......................................................................
111
+ corey@computer ~ $ pwd
112
+ /Users/corey
113
+
114
+ corey@computer ~ $ wip show wip
115
+ -------------------------------------------------------------------------------
116
+ work : /Users/corey/Workspace/com.github/coreyti/wip
117
+ -------------------------------------------------------------------------------
118
+ working on wip...
119
+
120
+ corey@computer wip (git::master) $ wip # scoped `wip index`
121
+ * wip
122
+ /Users/corey/Workspace/com.github/coreyti/wip
123
+
124
+ corey@computer wip (git::master) $ pwd
125
+ /Users/corey/Workspace/com.github/coreyti/wip
126
+
127
+
128
+
129
+ # `wip show` ... default: `wip ARG` to `wip show ARG`
130
+ # ......................................................................
131
+ corey@computer wip (git::master) $ cd ~
132
+
133
+ corey@computer ~ $ wip .
134
+
135
+ corey@computer ~ $ wip wip
136
+ ------------------------------------------------------------------------
137
+ work : /Users/corey/Workspace/com.github/coreyti/wip
138
+ ------------------------------------------------------------------------
139
+ working on wip...
140
+
141
+ corey@computer wip (git::master) $ wip .
142
+ ------------------------------------------------------------------------
143
+ work : /Users/corey/Workspace/com.github/coreyti/wip
144
+ ------------------------------------------------------------------------
145
+ working on wip...
146
+
147
+ corey@computer wip (git::master) $ pwd
148
+ /Users/corey/Workspace/com.github/coreyti/wip
149
+
150
+
151
+
152
+ # `wip show` ... with a path
153
+ # ......................................................................
154
+ corey@computer wip (git::master) $ cd ~
155
+
156
+ corey@computer ~ $ wip foo
157
+
158
+ corey@computer ~ $ wip show foo
159
+
160
+ corey@computer ~ $ wip show ~/Workspace/com.github/
161
+
162
+ corey@computer ~ $ wip show ~/Workspace/com.github/coreyti/wip
163
+ ------------------------------------------------------------------------
164
+ work : /Users/corey/Workspace/com.github/coreyti/wip
165
+ ------------------------------------------------------------------------
166
+ working on wip...
167
+
168
+ corey@computer wip (git::master) $ pwd
169
+ /Users/corey/Workspace/com.github/coreyti/wip
170
+
171
+
172
+
173
+ # `wip help`
174
+ # ......................................................................
175
+ corey@computer wip (git::master) $ cd ~
176
+
177
+ corey@computer ~ $ wip index .
178
+ * help
179
+ /Users/corey/Workspace/help
180
+ * wip
181
+ /Users/corey/Workspace/com.github/coreyti/wip
182
+
183
+ corey@computer ~ $ wip help
184
+ Tasks:
185
+ wip-ruby back # Move to and activate most recent 'work'
186
+ wip-ruby help [TASK] # Describe available tasks or one specific task
187
+ wip-ruby index # List all indexed 'works'
188
+ wip-ruby show # Move to and activate a 'work'
189
+
190
+ corey@computer ~ $ wip show help
191
+ ------------------------------------------------------------------------
192
+ work : /Users/corey/Workspace/help
193
+ ------------------------------------------------------------------------
194
+ working on help...
195
+
196
+ corey@computer help $ pwd
197
+ /Users/corey/Workspace/help
198
+
199
+
200
+
201
+ # `wip back`
202
+ # ......................................................................
203
+ corey@computer help $ cd ~
204
+
205
+ corey@computer ~ $ wip show wip
206
+ ------------------------------------------------------------------------
207
+ work : /Users/corey/Workspace/com.github/coreyti/wip
208
+ ------------------------------------------------------------------------
209
+ working on wip...
210
+
211
+ corey@computer wip (git::master) $ cd ~/Documents/
212
+
213
+ corey@computer Documents $ wip back
214
+ ------------------------------------------------------------------------
215
+ work : /Users/corey/Workspace/com.github/coreyti/wip
216
+ ------------------------------------------------------------------------
217
+ working on wip...
218
+
219
+ corey@computer wip (git::master) $ pwd
220
+ /Users/corey/Workspace/com.github/coreyti/wip
221
+
222
+
44
223
  Assumptions & Intentional Limitations
45
224
  ----------------------------------------------------------------------------
46
225
 
226
+ > Most of the following are irrelevant for now. Once `wip` does more
227
+ > though...
228
+
47
229
  1. I develop with:
48
230
  * an Apple computer
49
231
  * an iPhone
@@ -59,7 +241,8 @@ Assumptions & Intentional Limitations
59
241
  On "Notes"
60
242
  ----------------------------------------------------------------------------
61
243
 
62
- TODO: expand upon, clarify:
244
+ > Most of the following are irrelevant for now. Once `wip` does more
245
+ > though...
63
246
 
64
247
  * backed by DropBox
65
248
  * on-the-fly versioned, with git-wip
data/Rakefile CHANGED
@@ -1,3 +1,15 @@
1
1
  require 'bundler'
2
2
  Bundler::GemHelper.install_tasks
3
3
 
4
+ module Bundler
5
+ class GemHelper
6
+ # override in order to see install output (we have a post-install hook)
7
+ def install_gem
8
+ built_gem_path = build_gem
9
+ out, err, code = sh_with_code("gem install #{built_gem_path}")
10
+ puts out
11
+ raise err if err[/ERROR/]
12
+ Bundler.ui.confirm "#{name} (#{version}) installed"
13
+ end
14
+ end
15
+ end
data/bin/wip-ruby CHANGED
@@ -1,8 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- # puts "wip-ruby..."
4
- # puts " args... #{ARGV.inspect}"
5
-
6
3
  BASH_COMMANDS = [:show]
7
4
 
8
5
  begin
@@ -15,11 +12,7 @@ end
15
12
  require 'wip/cli'
16
13
 
17
14
  begin
18
- result = WIP::CLI::Shell.start
19
-
20
- if result && BASH_COMMANDS.include?(ARGV.first.intern)
21
- STDOUT.print result
22
- end
15
+ WIP::CLI::Shell.start
23
16
  rescue WIP::WIPError => e
24
17
  WIP.ui.error e.message
25
18
  WIP.ui.error e.backtrace.join("\n") if ENV["WIP_DEBUG"]
data/doc/README.md CHANGED
@@ -1,9 +1,9 @@
1
1
  `wip` README
2
2
  ============================================================================
3
3
 
4
- > NOTE: **`wip`** is WIP
4
+ > NOTE: `wip` is WIP
5
5
 
6
- **`wip`** is a concept I'm playing with for streamlining the process of
6
+ `wip` is a concept I'm playing with for streamlining the process of
7
7
  coding for and documenting client and personal software projects.
8
8
 
9
9
  While this document (specifically) and the idea (generally) are
@@ -12,13 +12,14 @@ and will, in fact, be using the techniques described herein for this project
12
12
  itself.
13
13
 
14
14
 
15
- What is a **wip** Project
15
+ `wip` *works* (in theory)
16
16
  ----------------------------------------------------------------------------
17
17
 
18
- A Project is made up of:
18
+ A *work* is made up of:
19
19
 
20
20
  * Notes
21
21
  * Code
22
+ * ...?
22
23
 
23
24
  The goal is to create an experience in which working on a given client or
24
25
  personal project is:
@@ -41,9 +42,190 @@ personal project is:
41
42
  team-at-large, while allowing for "local" preferences as well.
42
43
 
43
44
 
45
+ `wip` *works* (NOW)
46
+ ----------------------------------------------------------------------------
47
+
48
+ `wip`, currently, is a rubygem that installs an executable and a bash
49
+ function (`wip`, as it turns out) which together assist with navigating to
50
+ and "activating" a given *work* (project workspace, for now).
51
+
52
+ The following is an example shell session, using `wip` as it exists now:
53
+
54
+ # given `wip` is installed .............................................
55
+
56
+
57
+ # `wip index` ... list "works"
58
+ # ......................................................................
59
+ corey@computer ~ $ wip index .
60
+
61
+ corey@computer ~ $ echo "echo 'working on wip...'" > \
62
+ Workspace/com.github/coreyti/wip/.wiprc
63
+
64
+ corey@computer ~ $ wip index .
65
+ * wip
66
+ /Users/corey/Workspace/com.github/coreyti/wip
67
+
68
+ corey@computer ~ $ echo "echo 'working on help...'" > \
69
+ Workspace/help/.wiprc
70
+
71
+ corey@computer ~ $ wip index .
72
+ * help
73
+ /Users/corey/Workspace/help
74
+ * wip
75
+ /Users/corey/Workspace/com.github/coreyti/wip
76
+
77
+
78
+
79
+ # `wip index` ... narrowing the scope & speeding things up
80
+ # ......................................................................
81
+ corey@computer ~ $ wip index .
82
+ * help
83
+ /Users/corey/Workspace/help
84
+ * wip
85
+ /Users/corey/Workspace/com.github/coreyti/wip
86
+
87
+ corey@computer ~ $ wip index ~/Workspace/com.github
88
+ * wip
89
+ /Users/corey/Workspace/com.github/coreyti/wip
90
+
91
+
92
+
93
+ # `wip index` ... defaults
94
+ # ......................................................................
95
+ corey@computer ~ $ wip index # no arg to `wip index`
96
+ * help
97
+ /Users/corey/Workspace/help
98
+ * wip
99
+ /Users/corey/Workspace/com.github/coreyti/wip
100
+
101
+ corey@computer ~ $ wip # no arg to `wip`
102
+ * help
103
+ /Users/corey/Workspace/help
104
+ * wip
105
+ /Users/corey/Workspace/com.github/coreyti/wip
106
+
107
+
108
+
109
+ # `wip show` ... activate a "work"
110
+ # ......................................................................
111
+ corey@computer ~ $ pwd
112
+ /Users/corey
113
+
114
+ corey@computer ~ $ wip show wip
115
+ -------------------------------------------------------------------------------
116
+ work : /Users/corey/Workspace/com.github/coreyti/wip
117
+ -------------------------------------------------------------------------------
118
+ working on wip...
119
+
120
+ corey@computer wip (git::master) $ wip # scoped `wip index`
121
+ * wip
122
+ /Users/corey/Workspace/com.github/coreyti/wip
123
+
124
+ corey@computer wip (git::master) $ pwd
125
+ /Users/corey/Workspace/com.github/coreyti/wip
126
+
127
+
128
+
129
+ # `wip show` ... default: `wip ARG` to `wip show ARG`
130
+ # ......................................................................
131
+ corey@computer wip (git::master) $ cd ~
132
+
133
+ corey@computer ~ $ wip .
134
+
135
+ corey@computer ~ $ wip wip
136
+ ------------------------------------------------------------------------
137
+ work : /Users/corey/Workspace/com.github/coreyti/wip
138
+ ------------------------------------------------------------------------
139
+ working on wip...
140
+
141
+ corey@computer wip (git::master) $ wip .
142
+ ------------------------------------------------------------------------
143
+ work : /Users/corey/Workspace/com.github/coreyti/wip
144
+ ------------------------------------------------------------------------
145
+ working on wip...
146
+
147
+ corey@computer wip (git::master) $ pwd
148
+ /Users/corey/Workspace/com.github/coreyti/wip
149
+
150
+
151
+
152
+ # `wip show` ... with a path
153
+ # ......................................................................
154
+ corey@computer wip (git::master) $ cd ~
155
+
156
+ corey@computer ~ $ wip foo
157
+
158
+ corey@computer ~ $ wip show foo
159
+
160
+ corey@computer ~ $ wip show ~/Workspace/com.github/
161
+
162
+ corey@computer ~ $ wip show ~/Workspace/com.github/coreyti/wip
163
+ ------------------------------------------------------------------------
164
+ work : /Users/corey/Workspace/com.github/coreyti/wip
165
+ ------------------------------------------------------------------------
166
+ working on wip...
167
+
168
+ corey@computer wip (git::master) $ pwd
169
+ /Users/corey/Workspace/com.github/coreyti/wip
170
+
171
+
172
+
173
+ # `wip help`
174
+ # ......................................................................
175
+ corey@computer wip (git::master) $ cd ~
176
+
177
+ corey@computer ~ $ wip index .
178
+ * help
179
+ /Users/corey/Workspace/help
180
+ * wip
181
+ /Users/corey/Workspace/com.github/coreyti/wip
182
+
183
+ corey@computer ~ $ wip help
184
+ Tasks:
185
+ wip-ruby back # Move to and activate most recent 'work'
186
+ wip-ruby help [TASK] # Describe available tasks or one specific task
187
+ wip-ruby index # List all indexed 'works'
188
+ wip-ruby show # Move to and activate a 'work'
189
+
190
+ corey@computer ~ $ wip show help
191
+ ------------------------------------------------------------------------
192
+ work : /Users/corey/Workspace/help
193
+ ------------------------------------------------------------------------
194
+ working on help...
195
+
196
+ corey@computer help $ pwd
197
+ /Users/corey/Workspace/help
198
+
199
+
200
+
201
+ # `wip back`
202
+ # ......................................................................
203
+ corey@computer help $ cd ~
204
+
205
+ corey@computer ~ $ wip show wip
206
+ ------------------------------------------------------------------------
207
+ work : /Users/corey/Workspace/com.github/coreyti/wip
208
+ ------------------------------------------------------------------------
209
+ working on wip...
210
+
211
+ corey@computer wip (git::master) $ cd ~/Documents/
212
+
213
+ corey@computer Documents $ wip back
214
+ ------------------------------------------------------------------------
215
+ work : /Users/corey/Workspace/com.github/coreyti/wip
216
+ ------------------------------------------------------------------------
217
+ working on wip...
218
+
219
+ corey@computer wip (git::master) $ pwd
220
+ /Users/corey/Workspace/com.github/coreyti/wip
221
+
222
+
44
223
  Assumptions & Intentional Limitations
45
224
  ----------------------------------------------------------------------------
46
225
 
226
+ > Most of the following are irrelevant for now. Once `wip` does more
227
+ > though...
228
+
47
229
  1. I develop with:
48
230
  * an Apple computer
49
231
  * an iPhone
@@ -59,7 +241,8 @@ Assumptions & Intentional Limitations
59
241
  On "Notes"
60
242
  ----------------------------------------------------------------------------
61
243
 
62
- TODO: expand upon, clarify:
244
+ > Most of the following are irrelevant for now. Once `wip` does more
245
+ > though...
63
246
 
64
247
  * backed by DropBox
65
248
  * on-the-fly versioned, with git-wip
data/lib/wip/cli.rb CHANGED
@@ -24,11 +24,28 @@ module WIP
24
24
 
25
25
  check_unknown_options!
26
26
 
27
+ desc "route", "Route finder", :hide => true
28
+ def route(*args)
29
+ @_all_tasks ||= self.class.all_tasks
30
+ @_public_names ||= @_all_tasks.inject([]) do |memo, hash|
31
+ memo << hash[0] unless hash[1].hidden?
32
+ memo
33
+ end
34
+
35
+ # TODO: be sure we cannot loop (send :route)
36
+ if @_public_names.include?(args.first)
37
+ send(args.shift, *args)
38
+ else
39
+ # no matching task: see if there's a "work" to show
40
+ show(*args)
41
+ end
42
+ end
43
+
27
44
  desc "index", "List all indexed 'works'"
28
45
  method_option "path", :type => :string,
29
46
  :banner => "Specify a path to index",
30
47
  :default => '. (working dir)'
31
- def index(path = nil)
48
+ def index(path = nil, *)
32
49
  @_index ||= WIP::CLI::Index.new(path || '.')
33
50
  @_index.get(:sort => :name).each do |work|
34
51
  WIP.ui.info " * #{work[:name]}\n #{work[:path]}"
@@ -39,9 +56,14 @@ module WIP
39
56
  method_option "path", :type => :string,
40
57
  :banner => "Specify a path to activate",
41
58
  :default => '. (working dir)'
42
- def show(path = nil)
59
+ def show(path = nil, *)
43
60
  @_show ||= WIP::CLI::Show.new(path || '.')
44
- @_show.get
61
+ WIP.ui.info @_show.get
62
+ end
63
+
64
+ desc "back", "Move to and activate most recent 'work'"
65
+ def back(*)
66
+ WIP.ui.info ENV['WIP_BACK']
45
67
  end
46
68
  end
47
69
  end
data/lib/wip/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module WIP
2
- VERSION = "0.0.2"
2
+ VERSION = "0.1.0"
3
3
  end
data/wip.gemspec CHANGED
@@ -1,6 +1,33 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  $:.push File.expand_path("../lib", __FILE__)
3
- require 'wip/version'
3
+
4
+ require "wip/version"
5
+
6
+ BOOTSTRAP_VERSION = "1.0"
7
+
8
+ begin
9
+ require "rubygems"
10
+ gem "wip-bootstrap", "= #{BOOTSTRAP_VERSION}"
11
+ require "wip-bootstrap"
12
+ rescue LoadError => e
13
+ puts %{
14
+ WARNING:
15
+ #{e.message}wip-bootstrap must be pre-installed. I'll try to grab that now.
16
+
17
+ }
18
+ local = File.join(File.dirname(__FILE__), '..', 'wip-bootstrap')
19
+
20
+ if File.exist?(local)
21
+ `cd #{local} && rake install`
22
+ else
23
+ `gem install wip-bootstrap`
24
+ end
25
+ end
26
+
27
+ Gem.clear_paths
28
+ gem "wip-bootstrap", "= #{BOOTSTRAP_VERSION}"
29
+ require "wip-bootstrap"
30
+ WIP::Bootstrap.run
4
31
 
5
32
  Gem::Specification.new do |s|
6
33
  s.name ="wip"
@@ -16,16 +43,82 @@ Gem::Specification.new do |s|
16
43
 
17
44
  s.files = `git ls-files`.split("\n")
18
45
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
19
- s.executables = `git ls-files -- {bin}/*`.split("\n")
46
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
47
  s.default_executable = "wip"
21
48
  s.require_path = "lib"
22
49
 
23
- s.add_development_dependency 'bundler', '~> 1.0.0'
50
+ s.add_runtime_dependency 'wip-bootstrap', BOOTSTRAP_VERSION
51
+ s.add_development_dependency 'bundler', '~> 1.0.0'
52
+
53
+ s.post_install_message = %Q{
54
+ Thank you for installing #{s.name} v#{s.version}
55
+ ------------------------------------------------------------------------------
56
+
57
+ What happened:
58
+
59
+ * First, `wip` depends on `wip-bootstrap`, which should have been installed
60
+ for you if it wasn't already around. `wip-bootstrap` simply adds a few
61
+ bash wrappers to `wip` and sets up your bash profile.
62
+
63
+ `wip-bootstrap` shouldn't have to be updated too often, and updates to
64
+ `wip` will not attempt to re-bootstrap, unless dependent on a new
65
+ bootstrap version.
66
+
67
+ If bootstrapping *was* run, you should have seen a related banner
68
+ preceding this one.
69
+ * `wip` provides ruby CLI utilities that are meant to assist with software
70
+ project workspace and workflow management (called 'works').
71
+
72
+ The executable doing most of the heavy lifting is:
73
+
74
+ wip-ruby
75
+
76
+ * However, one of the things `wip-bootstrap` takes care of is add a bash
77
+ function called `wip` to your environment. So,
24
78
 
25
- s.post_install_message = %Q{**************************************************
79
+ wip
26
80
 
27
- Thank you for installing #{s.summary}
81
+ is your entry point (even though it doesn't show up with `which wip`).
28
82
 
29
- **************************************************
83
+
84
+ Getting started:
85
+
86
+ * If this is your *first* time installing `wip` on this machine, you need
87
+ to `source ~/.wiprc` to get things activated for your current shell
88
+ session(s).
89
+ * Drop a `.wiprc` file into a project of your liking. Add some
90
+ project-specific setup to that file. To start, try this:
91
+
92
+ echo 'welcome to my cool project!'
93
+
94
+ * Next these a try:
95
+
96
+ wip help
97
+
98
+ wip index ~/workspace
99
+ # containing, perhaps, numerous 'works'
100
+ # returns a list of work names and paths
101
+
102
+ wip
103
+ # shortcut for `wip index .`
104
+
105
+ wip show WORK_NAME
106
+ # cd's to known (indexed) work and sources .wiprc, e.g.:
107
+ # welcome to my cool project!
108
+
109
+ wip WORK_NAME
110
+ # shortcut for `wip show`
111
+
112
+ wip .
113
+ # shortcut for `wip show .`
114
+
115
+
116
+ Feedback, complaints, suggestions, etc?
117
+
118
+ * email me:
119
+ support+wip@coolerator.net
120
+
121
+ ------------------------------------------------------------------------------
30
122
  }
123
+
31
124
  end
metadata CHANGED
@@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
+ - 1
8
9
  - 0
9
- - 2
10
- version: 0.0.2
10
+ version: 0.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Corey Innis
@@ -15,13 +15,28 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-10-31 00:00:00 -07:00
18
+ date: 2010-11-01 00:00:00 -07:00
19
19
  default_executable: wip
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- name: bundler
22
+ name: wip-bootstrap
23
23
  prerelease: false
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - "="
28
+ - !ruby/object:Gem::Version
29
+ hash: 15
30
+ segments:
31
+ - 1
32
+ - 0
33
+ version: "1.0"
34
+ type: :runtime
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: bundler
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
25
40
  none: false
26
41
  requirements:
27
42
  - - ~>
@@ -33,12 +48,12 @@ dependencies:
33
48
  - 0
34
49
  version: 1.0.0
35
50
  type: :development
36
- version_requirements: *id001
51
+ version_requirements: *id002
37
52
  description: "'wip' provides tools to assist with the creation/maintenance of and collaboration on software projects"
38
53
  email:
39
54
  - support+wip@coolerator.net
40
- executables: []
41
-
55
+ executables:
56
+ - wip-ruby
42
57
  extensions: []
43
58
 
44
59
  extra_rdoc_files: []
@@ -46,14 +61,12 @@ extra_rdoc_files: []
46
61
  files:
47
62
  - .gitignore
48
63
  - .wiprc
64
+ - Gemfile
49
65
  - README.mkd
50
66
  - Rakefile
51
- - bin/wip
52
- - bin/wip-bash
53
67
  - bin/wip-ruby
54
68
  - doc/README.md
55
69
  - doc/TEMPLATE.md
56
- - lib/rubygems_plugin.rb
57
70
  - lib/wip.rb
58
71
  - lib/wip/cli.rb
59
72
  - lib/wip/cli/base.rb
@@ -92,11 +105,75 @@ homepage: http://github.com/coreyti/wip
92
105
  licenses: []
93
106
 
94
107
  post_install_message: |
95
- **************************************************
96
108
 
97
- Thank you for installing 'wip': streamlined work-in-progress projects
109
+ Thank you for installing wip v0.1.0
110
+ ------------------------------------------------------------------------------
111
+
112
+ What happened:
113
+
114
+ * First, `wip` depends on `wip-bootstrap`, which should have been installed
115
+ for you if it wasn't already around. `wip-bootstrap` simply adds a few
116
+ bash wrappers to `wip` and sets up your bash profile.
117
+
118
+ `wip-bootstrap` shouldn't have to be updated too often, and updates to
119
+ `wip` will not attempt to re-bootstrap, unless dependent on a new
120
+ bootstrap version.
121
+
122
+ If bootstrapping *was* run, you should have seen a related banner
123
+ preceding this one.
124
+ * `wip` provides ruby CLI utilities that are meant to assist with software
125
+ project workspace and workflow management (called 'works').
126
+
127
+ The executable doing most of the heavy lifting is:
128
+
129
+ wip-ruby
130
+
131
+ * However, one of the things `wip-bootstrap` takes care of is add a bash
132
+ function called `wip` to your environment. So,
133
+
134
+ wip
135
+
136
+ is your entry point (even though it doesn't show up with `which wip`).
137
+
138
+
139
+ Getting started:
140
+
141
+ * If this is your *first* time installing `wip` on this machine, you need
142
+ to `source ~/.wiprc` to get things activated for your current shell
143
+ session(s).
144
+ * Drop a `.wiprc` file into a project of your liking. Add some
145
+ project-specific setup to that file. To start, try this:
146
+
147
+ echo 'welcome to my cool project!'
148
+
149
+ * Next these a try:
150
+
151
+ wip help
152
+
153
+ wip index ~/workspace
154
+ # containing, perhaps, numerous 'works'
155
+ # returns a list of work names and paths
156
+
157
+ wip
158
+ # shortcut for `wip index .`
159
+
160
+ wip show WORK_NAME
161
+ # cd's to known (indexed) work and sources .wiprc, e.g.:
162
+ # welcome to my cool project!
163
+
164
+ wip WORK_NAME
165
+ # shortcut for `wip show`
166
+
167
+ wip .
168
+ # shortcut for `wip show .`
169
+
170
+
171
+ Feedback, complaints, suggestions, etc?
172
+
173
+ * email me:
174
+ support+wip@coolerator.net
98
175
 
99
- **************************************************
176
+ ------------------------------------------------------------------------------
100
177
 
101
178
  rdoc_options: []
102
179
 
data/bin/wip DELETED
@@ -1,38 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- # TODO:
4
- # * ask a Ruby option parser to get us the options for bash.
5
- # * allow passing args through:
6
- # wip work-name --flag -- RAILS_ENV=production
7
-
8
- cmd="$1"
9
-
10
- case "${cmd:-index}" in
11
- help)
12
- # $ wip help --> wip-ruby... ["help"]
13
- wip-ruby "help" $2
14
- ;;
15
- index)
16
- # $ wip --> wip-ruby... ["index", "."]
17
- # $ wip index --> wip-ruby... ["index", "."]
18
- # $ wip index . --> wip-ruby... ["index", "."]
19
- # $ wip index ~/Workspace --> wip-ruby... ["index", "/Users/corey/Workspace"]
20
-
21
- wip-ruby "index" "${2:-.}"
22
- ;;
23
- show)
24
- # $ wip show --> wip-bash... show '.'
25
- # $ wip show . --> wip-bash... show '.'
26
- # $ wip show work-name --> wip-bash... show 'work-name'
27
- # $ wip show ~/Workspace/work-path --> wip-bash... show '/Users/corey/Workspace/work-path'
28
-
29
- wip-bash "show" "${2:-.}"
30
- ;;
31
- *)
32
- # $ wip . --> wip-bash... show '.'
33
- # $ wip work-name --> wip-bash... show 'work-name'
34
- # $ wip ~/Workspace/work-path --> wip-bash... show '/Users/corey/Workspace/work-path'
35
-
36
- wip-bash "$1"
37
- ;;
38
- esac
data/bin/wip-bash DELETED
@@ -1,24 +0,0 @@
1
- #!/usr/bin/env bash
2
-
3
- cmd="$1"
4
-
5
- # echo "wip-bash..."
6
-
7
- wip-show() {
8
- # echo " show... name: $1"
9
- }
10
-
11
- case "$cmd" in
12
- show)
13
- wip-show $2
14
- ;;
15
- *)
16
- wip-show $1
17
- ;;
18
- esac
19
-
20
-
21
-
22
- # for wiprc in "$HOME/.wiprc" "./.wiprc" ; do
23
- #
24
- # done
@@ -1,3 +0,0 @@
1
- Gem::post_install do |installer|
2
- puts "thanks for installing!!!"
3
- end