ric 0.11.13 → 0.11.14
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/HISTORY.yml +2 -0
- data/Manifest +1 -0
- data/VERSION +1 -1
- data/bin/septober +55 -21
- data/ric.gemspec +3 -3
- metadata +5 -5
data/HISTORY.yml
CHANGED
data/Manifest
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.11.
|
1
|
+
0.11.14
|
data/bin/septober
CHANGED
@@ -11,14 +11,20 @@
|
|
11
11
|
@tags: development, rcarlesso
|
12
12
|
@synopsis: This connects to septober websites. For more info, look here
|
13
13
|
@description:
|
14
|
-
|
14
|
+
septober.heroku.com client to add and list todos!
|
15
15
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
API: add actions (done, toggle, ..., due <today|tomorrow|monday> )
|
16
|
+
TODO
|
17
|
+
- add --context|-x : to change context (--local => --context 'local' , default: "septober" )
|
20
18
|
|
19
|
+
API: add actions (done, toggle, ..., due <today|tomorrow|monday> )
|
20
|
+
###########################################################
|
21
|
+
=end
|
22
|
+
|
23
|
+
$PROG_VER = '0.9.8'
|
24
|
+
|
25
|
+
=begin
|
21
26
|
@history:
|
27
|
+
0.9.8 2011-02-10 Added timeout (works) and a broken prototype for :edit
|
22
28
|
0.9.7 2011-02-09 mini banner WITH version (not to get nuts again thru versions!). --conf now works!
|
23
29
|
0.9.6 2011-02-09 CLI supports --conf now. Tags working!
|
24
30
|
0.9.5 2011-02-08 more concise 'add'
|
@@ -26,9 +32,8 @@
|
|
26
32
|
0.9.3 2011-02-04 better 'list'
|
27
33
|
0.9.2 2011-02-04 'add' operation succefully added!
|
28
34
|
0.9.1 2011-01-18 First version
|
29
|
-
############################################################
|
30
35
|
=end
|
31
|
-
|
36
|
+
|
32
37
|
|
33
38
|
require 'optparse'
|
34
39
|
require 'rubygems'
|
@@ -46,21 +51,25 @@
|
|
46
51
|
:septober_url => 'http://septober.heroku.com/' ,
|
47
52
|
:dflt_config_file => '~/.septober.yml' ,
|
48
53
|
:local => false ,
|
54
|
+
:timeout => 7 ,
|
49
55
|
}
|
50
56
|
|
51
57
|
def init
|
52
58
|
$opts[:config_file] = $opts[:dflt_config_file]
|
53
|
-
#$colors_active = true
|
54
59
|
$optparse = OptionParser.new do |opts|
|
55
60
|
opts.on( '-c', '--config <FILE>', 'uses a different configfile from: '+$opts[:dflt_config_file] ) {|arg_file|
|
56
61
|
puts "Importing file different from default: #{yellow arg_file}"
|
57
62
|
$opts[:config_file] = arg_file
|
58
63
|
}
|
59
|
-
opts.on( '-d', '--debug',
|
60
|
-
opts.on( '-h', '--help',
|
64
|
+
opts.on( '-d', '--debug', 'enables debug (DFLT=false)' ) { $opts[:debug] = true ; $debug = true ; debug_on('Debug enabled from ARGV')}
|
65
|
+
opts.on( '-h', '--help', 'Display this screen' ) { puts(opts); exit 1 }
|
61
66
|
opts.on( '-n', '--no-colors', 'Deactives colors (onta e disonore!)' ) { $colors_active = false }
|
62
|
-
opts.on( '-l', '--local',
|
63
|
-
opts.on( '-
|
67
|
+
opts.on( '-l', '--local', 'uses local instead' ) { $opts[:local] = true }
|
68
|
+
opts.on( '-t', '--timeout TIMEOUT', "Sets timeout (default =#{$opts[:timeout]}s)" ) {|new_timeout|
|
69
|
+
$opts[:timeout] = new_timeout.to_i rescue 5
|
70
|
+
RemoteTodo.timeout = new_timeout.to_i rescue 5
|
71
|
+
}
|
72
|
+
opts.on( '-v', '--verbose', 'Output more information' ) { $opts[:verbose] = true}
|
64
73
|
|
65
74
|
opts.banner = <<-API_OPTIONS
|
66
75
|
#{$0} v.#{$PROG_VER}
|
@@ -70,12 +79,19 @@ Usage: #{File.basename $0} [options] [add|list|done|del] [args]
|
|
70
79
|
add <FREE TEXT> # adds new task in free text with some magic..
|
71
80
|
delete <ID> # T delete ticket.ID (DONT USE IF U CAN!)
|
72
81
|
done <ID> # T posts ticket.ID :done (resolved)
|
82
|
+
edit <ID> [ACTION1:ARG1] [ACT2:ARG2]# T posts generic action for ticket.ID /edit.xml?due=tomorrow&ACT2=ARG2
|
73
83
|
list # shows a list of your todos yet to complete
|
74
84
|
mail <ID> # T mail to yourself ticket.ID !!!
|
75
85
|
show <ID> # shows details about todo with id=ID
|
76
86
|
procrastinate <ID> <NDAYS> # T mail to yourself ticket.ID !!!
|
77
87
|
sleep <ID> <NDAYS> # T mail to yourself ticket.ID !!!
|
78
|
-
|
88
|
+
|
89
|
+
Examples:
|
90
|
+
septober --local edit 110 due:tomorrow
|
91
|
+
septober list
|
92
|
+
septober show 1
|
93
|
+
septober add 'This is a ticket with priority 4 and a simple @example tag!'
|
94
|
+
|
79
95
|
Options:
|
80
96
|
API_OPTIONS
|
81
97
|
end
|
@@ -85,10 +101,14 @@ Usage: #{File.basename $0} [options] [add|list|done|del] [args]
|
|
85
101
|
|
86
102
|
#################################################################################################################################################
|
87
103
|
class RemoteTodo < ActiveResource::Base
|
88
|
-
|
104
|
+
# With a singleton u can define the accessors of the class (attr accessor for self!)
|
105
|
+
#class << self
|
106
|
+
# attr_accessor :description # = '-'
|
107
|
+
#end
|
108
|
+
self.site = "http://septober.example.com/" # uninitialized
|
89
109
|
self.element_name = 'todo'
|
90
|
-
self.timeout
|
91
|
-
|
110
|
+
self.timeout = $opts[:timeout] rescue 6
|
111
|
+
|
92
112
|
@@sample_yml_config = <<-SAMPLE_YML_CONFIG
|
93
113
|
riccardo heroku: &DEVEL_LOCAL
|
94
114
|
# YAML file with septober configuration. For more info: http://septober.heroku.com/
|
@@ -136,6 +156,7 @@ SAMPLE_YML_CONFIG
|
|
136
156
|
self.site = conf_hash['site']
|
137
157
|
self.user = conf_hash['user']
|
138
158
|
self.password = conf_hash['password']
|
159
|
+
self.description = conf_hash['description'] rescue '-'
|
139
160
|
deb "Conf imported successuflly: #{blue self.user}@#{self.site}"
|
140
161
|
else
|
141
162
|
pred "Missing file: #{file} !!! Try to do the following:"
|
@@ -148,6 +169,14 @@ SAMPLE_YML_CONFIG
|
|
148
169
|
self.name
|
149
170
|
end
|
150
171
|
|
172
|
+
def self.description
|
173
|
+
@@description ||= '-'
|
174
|
+
end
|
175
|
+
|
176
|
+
def self.description=(desc)
|
177
|
+
@@description = desc
|
178
|
+
end
|
179
|
+
|
151
180
|
def colored_project_name()
|
152
181
|
colora(project.color || :grey ,project.name)
|
153
182
|
end
|
@@ -213,8 +242,10 @@ SAMPLE_YML_CONFIG
|
|
213
242
|
#############################
|
214
243
|
# Program start..
|
215
244
|
|
245
|
+
# header
|
216
246
|
def bannerino(desc)
|
217
|
-
"#septober v#{$PROG_VER} #{white desc.to_s} (#{green RemoteTodo.user} @ #{cyan RemoteTodo.site.to_s.split('/')[2] })"
|
247
|
+
"#septober v#{$PROG_VER} #{white desc.to_s} (#{green RemoteTodo.user} @ #{cyan RemoteTodo.site.to_s.split('/')[2] }, timeout=#{RemoteTodo.timeout})" +
|
248
|
+
(RemoteTodo.description.length > 2 ? " # #{gray RemoteTodo.description}" : '')
|
218
249
|
end
|
219
250
|
|
220
251
|
def todo_list(opts={})
|
@@ -232,7 +263,7 @@ SAMPLE_YML_CONFIG
|
|
232
263
|
to assing the correct ptoject and stuff..
|
233
264
|
=end
|
234
265
|
def todo_add(words_from_argv)
|
235
|
-
puts bannerino( "Add(#{words_from_argv})" )
|
266
|
+
puts bannerino( "Add('#{words_from_argv}')" )
|
236
267
|
# TODO put this into begin/end/catch !!!
|
237
268
|
t = RemoteTodo.create(
|
238
269
|
:name => words_from_argv,
|
@@ -277,6 +308,7 @@ SAMPLE_YML_CONFIG
|
|
277
308
|
:my_action => action,
|
278
309
|
:from_cli_in_test_ric => Socket.gethostname
|
279
310
|
}.merge( opts.fetch( :additional_args, {:nis => :bah } ) ) # if there are ,m good. Otherwise, "nisba" :)
|
311
|
+
deb "todo_generic_put(id=#{id},#{purple action}, #{gray opts.inspect})"
|
280
312
|
todo.put(action, put_options ) # test stuff
|
281
313
|
#todo.put(action, :my_action => action, :from_cli_in_test_ric => Socket.gethostname , additional_args) # test stuff
|
282
314
|
rescue ActiveResource::ResourceNotFound
|
@@ -308,15 +340,17 @@ SAMPLE_YML_CONFIG
|
|
308
340
|
#unless ARGV.size > 0
|
309
341
|
# usage "Give me at least 1 argument" # Maybe default to list?!?
|
310
342
|
#end
|
311
|
-
all_args = ARGV[1..-1].join(' ')
|
343
|
+
all_args = ARGV[1..-1].join(' ') rescue ''
|
312
344
|
case ARGV[0].to_s
|
313
345
|
when 'list' ; todo_list()
|
314
346
|
when 'show' ; todo_show(ARGV[1])
|
315
347
|
when 'done' ; todo_done(ARGV[1],true)
|
316
348
|
when 'add' ; todo_add(all_args) # all except last one
|
317
349
|
when 'toggle'; todo_toggle(ARGV[1]) # all except last one
|
318
|
-
when 'delete'; todo_generic_put(ARGV[1], :delete , :additional_args => {:test_foo => 'test deletion string,
|
319
|
-
|
350
|
+
when 'delete'; todo_generic_put(ARGV[1], :delete , :additional_args => {:test_foo => 'test deletion string, with whole DELETE' })
|
351
|
+
when 'del'; todo_generic_put(ARGV[1], :delete , :additional_args => {:test_foo => 'test deletion string, with just DEL' })
|
352
|
+
when 'edit'; todo_generic_put(ARGV[1], :edit, :additional_args => ARGV.map{|arg| k,v=arg.split(':') } )
|
353
|
+
# TODO transform [ [act1, arg1], [act2,arg2]] into {:act1 => arg1, :act2 => arg2 }
|
320
354
|
when 'tag' ; todo_generic_put(ARGV[1], :additional_args => {:tag_with => all_args.join(',') }) # all except last one
|
321
355
|
when 'help' ; usage 'Explicitly called help..'
|
322
356
|
when '' ; todo_list()
|
data/ric.gemspec
CHANGED
@@ -2,18 +2,18 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{ric}
|
5
|
-
s.version = "0.11.
|
5
|
+
s.version = "0.11.14"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Riccardo Carlesso"]
|
9
|
-
s.date = %q{2011-02-
|
9
|
+
s.date = %q{2011-02-10}
|
10
10
|
s.description = %q{My first gem with various utilities (colors and tests now).
|
11
11
|
My name is Riccardo, hence 'ric' (ok I admit it, this was just ot prove Im able to build a sentence
|
12
12
|
with hence!)}
|
13
13
|
s.email = %q{['p','ll','diusbonton].join('a') @ gmail.com}
|
14
14
|
s.executables = ["itunes", "ric", "riclib-test", "septober", "xcopy"]
|
15
15
|
s.extra_rdoc_files = ["LICENSE", "README.md", "TODO", "bin/itunes", "bin/ric", "bin/riclib-test", "bin/septober", "bin/xcopy", "lib/rails/acts_as_carlesso.rb", "lib/rails/helpers/rails_helper.rb", "lib/ric.rb", "lib/ric/colors.rb", "lib/ric/conf.rb", "lib/ric/debug.rb", "lib/ric/files.rb", "lib/ric/html.rb", "lib/ric/zibaldone.rb", "lib/ruby_classes/arrays.rb", "lib/ruby_classes/strings.rb", "lib/tmp/uniquify.rb"]
|
16
|
-
s.files = ["HISTORY.yml", "LICENSE", "Manifest", "README.md", "Rakefile", "TODO", "VERSION", "bin/itunes", "bin/ric", "bin/riclib-test", "bin/septober", "bin/xcopy", "init.rb", "lib/rails/acts_as_carlesso.rb", "lib/rails/helpers/rails_helper.rb", "lib/ric.rb", "lib/ric/colors.rb", "lib/ric/conf.rb", "lib/ric/debug.rb", "lib/ric/files.rb", "lib/ric/html.rb", "lib/ric/zibaldone.rb", "lib/ruby_classes/arrays.rb", "lib/ruby_classes/strings.rb", "lib/tmp/uniquify.rb", "rails/init.rb", "sbin/reboot.rb", "sbin/ric_reboot.rb", "test/sample_conf.yml", "test/strings_helper.rb", "test/test_helper.rb", "var/www/index.html"
|
16
|
+
s.files = ["HISTORY.yml", "LICENSE", "Manifest", "README.md", "Rakefile", "TODO", "VERSION", "bin/itunes", "bin/ric", "bin/riclib-test", "bin/septober", "bin/xcopy", "init.rb", "lib/rails/acts_as_carlesso.rb", "lib/rails/helpers/rails_helper.rb", "lib/ric.rb", "lib/ric/colors.rb", "lib/ric/conf.rb", "lib/ric/debug.rb", "lib/ric/files.rb", "lib/ric/html.rb", "lib/ric/zibaldone.rb", "lib/ruby_classes/arrays.rb", "lib/ruby_classes/strings.rb", "lib/tmp/uniquify.rb", "rails/init.rb", "ric.gemspec", "sbin/reboot.rb", "sbin/ric_reboot.rb", "test/sample_conf.yml", "test/strings_helper.rb", "test/test_helper.rb", "var/www/index.html"]
|
17
17
|
s.homepage = %q{http://github.com/palladius/riclib}
|
18
18
|
s.rdoc_options = ["--line-numbers", "--inline-source", "--title", "Ric", "--main", "README.md"]
|
19
19
|
s.require_paths = ["lib"]
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ric
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 47
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 11
|
9
|
-
-
|
10
|
-
version: 0.11.
|
9
|
+
- 14
|
10
|
+
version: 0.11.14
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Riccardo Carlesso
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-02-
|
18
|
+
date: 2011-02-10 00:00:00 +00:00
|
19
19
|
default_executable:
|
20
20
|
dependencies: []
|
21
21
|
|
@@ -80,13 +80,13 @@ files:
|
|
80
80
|
- lib/ruby_classes/strings.rb
|
81
81
|
- lib/tmp/uniquify.rb
|
82
82
|
- rails/init.rb
|
83
|
+
- ric.gemspec
|
83
84
|
- sbin/reboot.rb
|
84
85
|
- sbin/ric_reboot.rb
|
85
86
|
- test/sample_conf.yml
|
86
87
|
- test/strings_helper.rb
|
87
88
|
- test/test_helper.rb
|
88
89
|
- var/www/index.html
|
89
|
-
- ric.gemspec
|
90
90
|
has_rdoc: true
|
91
91
|
homepage: http://github.com/palladius/riclib
|
92
92
|
licenses: []
|