backlog 0.37.1 → 0.37.2

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/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- gem "rails", "~> 3.0.0"
3
+ gem "rails", "~> 3.0.3"
4
4
  gem 'slave'
5
5
  gem 'mechanize'
6
6
  gem 'hpricot'
@@ -12,6 +12,9 @@ platforms :jruby do
12
12
  gem 'jruby-openssl'
13
13
  gem 'activerecord-jdbc-adapter'
14
14
  gem 'activerecord-jdbcpostgresql-adapter'
15
+ # gem 'glassfish', '~> 1.0.3'
16
+ gem 'trinidad'
17
+ gem 'trinidad_daemon_extension'
15
18
  end
16
19
 
17
20
  platforms :ruby do
@@ -55,6 +55,7 @@ GEM
55
55
  jdbc-postgres (8.4.702-java)
56
56
  jruby-openssl (0.7.2)
57
57
  bouncy-castle-java
58
+ jruby-rack (1.0.4)
58
59
  json_pure (1.4.6)
59
60
  mail (2.2.12)
60
61
  activesupport (>= 2.3.6)
@@ -98,6 +99,12 @@ GEM
98
99
  thor (0.14.6)
99
100
  treetop (1.4.9)
100
101
  polyglot (>= 0.3.1)
102
+ trinidad (1.0.3)
103
+ jruby-rack (>= 1.0.2)
104
+ trinidad_jars (>= 0.3.0)
105
+ trinidad_daemon_extension (0.2.4)
106
+ trinidad_jars (>= 0.1.1)
107
+ trinidad_jars (0.3.3)
101
108
  tzinfo (0.3.23)
102
109
  user-choices (1.1.6.1)
103
110
  builder (>= 2.1.2)
@@ -122,9 +129,11 @@ DEPENDENCIES
122
129
  jruby-openssl
123
130
  mechanize
124
131
  postgres-pr
125
- rails (~> 3.0.0)
132
+ rails (~> 3.0.3)
126
133
  rcov
127
134
  redhillonrails_core
128
135
  simple_workflow
129
136
  slave
137
+ trinidad
138
+ trinidad_daemon_extension
130
139
  wirble
@@ -1,3 +1,17 @@
1
+ == 0.37.2 2010-10-05
2
+
3
+ === Fixes
4
+
5
+ * Refresh of "done" field in work edit form did not work.
6
+ * "Reopen" did not work.
7
+
8
+ == Internal
9
+
10
+ * Changed gem to use the Gemfile for dynamic dependencies
11
+ * Updated to Rails 3.0.3
12
+ * Updated to Glassfish 1.0.3 but there are still problems
13
+ * Switched to Trinidad as app-server.
14
+
1
15
  == 0.37.1 2010-10-05
2
16
 
3
17
  === Fixes
data/README.txt CHANGED
@@ -1,4 +1,4 @@
1
- http://backlog.rubyforge.org/files/Screenshot.png
1
+ http://github.com/DatekWireless/backlog/raw/master/Screenshot.png
2
2
 
3
3
  == Backlog
4
4
 
@@ -11,8 +11,8 @@ A time keeping module is also included to track time spent on the different task
11
11
 
12
12
  You can find the Backlog project page at
13
13
 
14
- http://rubyforge.org/projects/backlog/
15
-
14
+ http://github.com/DatekWireless/backlog
15
+
16
16
 
17
17
  === Backlog is not meant to be
18
18
 
data/Rakefile CHANGED
@@ -38,6 +38,7 @@ Hoe.new("backlog", APP::VERSION) do |p|
38
38
  ['slave', '~> 1.2.1'], ['mechanize', '~> 1.0.0'], ['bundler', '~> 1.0.5']]
39
39
  # ['rmagick', '~> 1.15.12'],
40
40
  p.rsync_args = "-acv --delete --exclude=wiki*"
41
+ p.spec_extras[:extensions] = 'ext/mkrf_conf.rb'
41
42
  end
42
43
 
43
44
  desc 'Release the application to RubyForge'
@@ -0,0 +1,73 @@
1
+ # Add your own tasks in files placed in lib/tasks ending in .rake,
2
+ # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3
+
4
+ require 'erb'
5
+
6
+ require File.expand_path('../config/application', __FILE__)
7
+
8
+ require 'rake'
9
+ #require 'rake/testtask'
10
+ require 'rake/rdoctask'
11
+
12
+ Backlog::Application.load_tasks
13
+
14
+ require 'hoe'
15
+ require 'version_from_history'
16
+
17
+ ENV['SKIP_AR_JDBC_RAKE_REDEFINES'] = '1'
18
+
19
+ Hoe.new("backlog", APP::VERSION) do |p|
20
+ p.rubyforge_name = "backlog"
21
+ p.summary = "Application to aid collecting, processing, organizing, reviewing and doing tasks."
22
+ p.description = p.paragraphs_of('README.txt', 2..3).join("\n\n")
23
+ p.author = 'Uwe Kubosch'
24
+ p.email = 'uwe@kubosch.no'
25
+ p.remote_rdoc_dir = '' # Release to root
26
+ p.changes = File.read('History.txt').scan(/^== .*?(?=^== )/m).first
27
+ # p.extra_rdoc_files = [/^(app\/(controllers|helpers|models)|lib|bin)|txt$/]
28
+ p.clean_globs = ['doc', 'log/*']
29
+ p.spec_extras = {
30
+ :files => Dir['**/*'].reject{|file_name| file_name =~ /^(doc|log|pkg|profiling|tmp|WEB-INF)/},
31
+ :rdoc_options => ['--inline-source'],
32
+ :executables => ['backlog'],
33
+ :requirements => ['ImageMagick', 'PostgreSQL'],
34
+ }
35
+ p.need_zip = true
36
+ p.url = 'http://rubyforge.org/projects/backlog/'
37
+ p.extra_deps = [['daemons', '~> 1.1.0'], ['rails', '~> 3.0.0'], ['gruff', '~> 0.3.6'], ['postgres-pr', '~> 0.6.3'],
38
+ ['slave', '~> 1.2.1'], ['mechanize', '~> 1.0.0'], ['bundler', '~> 1.0.5']]
39
+ # ['rmagick', '~> 1.15.12'],
40
+ p.rsync_args = "-acv --delete --exclude=wiki*"
41
+ p.extensions << 'ext/rmagic/extconf.rb'
42
+ end
43
+
44
+ desc 'Release the application to RubyForge'
45
+ task :release_all do
46
+ ENV['VERSION'] = APP::VERSION
47
+ Rake::Task[:publish_docs].invoke
48
+ Rake::Task[:release].invoke
49
+ Rake::Task[:release_war].invoke
50
+ Rake::Task[:post_news].invoke
51
+ end
52
+
53
+ desc 'Release the application as a Java EE WAR file to RubyForge'
54
+ task :release_war do
55
+ `warble`
56
+ war_pkg_file = "pkg/backlog-#{APP::VERSION}.war"
57
+ raise "WAR file missing" unless File.exists? 'backlog.war'
58
+ FileUtils.makedirs 'pkg'
59
+ FileUtils.move 'backlog.war', war_pkg_file
60
+ rf = RubyForge.new.configure
61
+ rf.login
62
+ rf.add_file 'backlog', 'backlog', APP::VERSION, war_pkg_file
63
+ end
64
+
65
+ task 'test:units' => [] do
66
+
67
+ end
68
+ task 'test:functionals' => [] do
69
+
70
+ end
71
+ task 'test:integration' => [] do
72
+
73
+ end
@@ -303,7 +303,8 @@ class WorksController < ApplicationController
303
303
 
304
304
  render :partial => 'task_id_list'
305
305
  end
306
-
306
+
307
+ # TODO(uwe): prioritize personal descriptions, then same project, then any.
307
308
  def auto_complete_for_work_description
308
309
  max = 16
309
310
  works = Work.find(:all, :select => "description, count(*) as freq",
@@ -41,7 +41,8 @@ module ApplicationHelper
41
41
  def image_link_to_remote(image_source, title, link_options, image_options = nil, post = false)
42
42
  image_options ||= {:class => 'image-submit'}
43
43
  image_options.update :alt => title, :title => title
44
- link_to_remote image_tag(image_source, image_options), :url => link_options, :html => post ? {:remote => true, :method => :post} : {:remote => true}
44
+ with_params = link_options.delete(:with)
45
+ link_to_remote image_tag(image_source, image_options), :url => link_options, :with => with_params, :html => post ? {:method => :post} : {}
45
46
  end
46
47
 
47
48
  def detour?
@@ -80,7 +80,7 @@
80
80
  <% end -%>
81
81
  <% else %>
82
82
  <% if !task.work_started? && (task.period.nil? || task.period.active?) %>
83
- <%=image_link_to_remote('checkmark.png', l(:complete), {:url => {:action => :finish_task, :id => task}}, nil, true)%>
83
+ <%=image_link_to_remote('checkmark.png', l(:complete), {:action => :finish_task, :id => task}, nil, true)%>
84
84
  <% end -%>
85
85
  <% end -%>
86
86
  <% end -%>
@@ -102,7 +102,7 @@
102
102
  <% end -%>
103
103
  <% elsif (task.period.nil? || (not task.period.passed?)) && task.leaf? -%>
104
104
  <% form_tag({:controller => 'tasks', :action => 'update', :id => task}) do -%>
105
- <%=image_link_to_remote('eraser.png', l(:reopen), {:url => {:action => :reopen_task, :id => task}}, nil, true) %>
105
+ <%=image_link_to_remote('eraser.png', l(:reopen), {:action => :reopen_task, :id => task}, nil, true) %>
106
106
  <% end -%>
107
107
  <% end -%>
108
108
  </div>
@@ -71,7 +71,7 @@
71
71
  <p style="float: left;"><label for="work_hours"><%=l :hours%></label><br/>
72
72
  <%=text_field 'work', 'hours_time', :class => :task_hours, :value => t(@work.hours) %></p>
73
73
 
74
- <p style="float: left;"><br/><%=image_link_to_remote 'refresh.png', l(:refresh), {:url => {:action => :calculate_hours}, :with => "'started_at=' + $('work_started_at').value + '&completed_at=' + $('work_completed_at').value"} %></p>
74
+ <p style="float: left;"><br/><%=image_link_to_remote 'refresh.png', l(:refresh), {:action => :calculate_hours, :with => "'started_at=' + $('work_started_at').value + '&completed_at=' + $('work_completed_at').value".html_safe} %></p>
75
75
 
76
76
  <% end %>
77
77
 
@@ -55,12 +55,22 @@ def start(config)
55
55
  end
56
56
  Dir.chdir INSTALL_DIR
57
57
  ENV['RAILS_ENV'] = 'production'
58
- # `mongrel_rails start -p #{config['port'] || 3000} -e production -c #{INSTALL_DIR} -d -m #{INSTALL_DIR}/config/mime_types.yaml -P #{PID_FILE} 1>#{LOG_DIR}/stdout.log 2>#{LOG_DIR}/stderr.log`
59
- `glassfish -p #{config['port'] || 3000} -e production -d -P #{PID_FILE} 1>#{LOG_DIR}/stdout.log 2>#{LOG_DIR}/stderr.log`
58
+ if defined? JRUBY_VERSION
59
+ # `glassfish -p #{config['port'] || 3000} -e production -d -P #{PID_FILE} 1>#{LOG_DIR}/stdout.log 2>#{LOG_DIR}/stderr.log`
60
+ `jruby -S trinidad -t -p #{config['port'] || 3000} -e production -ldaemon -d #{PID_FILE} 1>#{LOG_DIR}/stdout.log 2>#{LOG_DIR}/stderr.log`
61
+ else
62
+ `mongrel_rails start -p #{config['port'] || 3000} -e production -c #{INSTALL_DIR} -d -m #{INSTALL_DIR}/config/mime_types.yaml -P #{PID_FILE} 1>#{LOG_DIR}/stdout.log 2>#{LOG_DIR}/stderr.log`
63
+ end
60
64
  end
61
65
 
62
66
  def stop(config)
63
- `mongrel_rails stop -c #{INSTALL_DIR} -P #{PID_FILE}`
67
+ if File.exists? PID_FILE
68
+ # `mongrel_rails stop -c #{INSTALL_DIR} -P #{PID_FILE}`
69
+ system "kill `cat #{PID_FILE}`"
70
+ File.delete PID_FILE
71
+ else
72
+ puts "#{APPLICATION} not running."
73
+ end
64
74
  end
65
75
 
66
76
  def get_pid
@@ -140,8 +150,8 @@ when 'setup_unix'
140
150
  Dir.chdir INSTALL_DIR
141
151
  Dir.mkdir LOG_DIR unless File.exists? LOG_DIR
142
152
  ENV['RAILS_ENV'] = 'production'
143
- puts `bundle install`
144
- puts `rake db:migrate #{'--trace' if debug}`
153
+ puts `#{'jruby -S' if RUBY_PLATFORM =='java'} bundle install`
154
+ puts `#{'jruby -S' if RUBY_PLATFORM =='java'} rake db:migrate #{'--trace' if debug}`
145
155
  raise "Could not migrate database: #{$? >> 8}:#{$? & 0xff}" unless ($? >> 8) == 0
146
156
 
147
157
  # TODO: provide startup information based on launchd in OS X versions >= 10.4
@@ -174,6 +184,7 @@ when 'setup_unix'
174
184
  end
175
185
  end
176
186
  end
187
+ FileUtils.mkdir_p File.dirname(config_file)
177
188
  FileUtils.cp "#{INSTALL_DIR}/etc/#{APPLICATION}.conf", config_file unless File.exists? config_file
178
189
  puts
179
190
  else
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env ruby
1
+ #!/usr/bin/env jruby
2
2
  #
3
3
  # backlog Startup script for the backlog application
4
4
  #
@@ -6,5 +6,6 @@ Bundler.require(:default, Rails.env) if defined?(Bundler)
6
6
  module Backlog
7
7
  class Application < Rails::Application
8
8
  config.secret_token = "Uffsbarr, I'hll pha<dr, cum rAgdios, Vixef."
9
+ config.time_zone = 'Copenhagen'
9
10
  end
10
11
  end
@@ -12,3 +12,4 @@ production:
12
12
  adapter: postgresql
13
13
  database: backlog_production
14
14
  username: postgres
15
+ host: celina
@@ -0,0 +1,26 @@
1
+ begin
2
+ gemfile = File.expand_path('../../Gemfile', __FILE__)
3
+ begin
4
+ ENV['BUNDLE_GEMFILE'] = gemfile
5
+ require 'rubygems'
6
+ require 'bundler'
7
+ require 'thor'
8
+ Bundler.ui = Bundler::UI::Shell.new(Thor::Shell::Basic.new)
9
+ Bundler.ui.debug!
10
+ Bundler::Installer.install(Bundler.root, Bundler.definition)
11
+ rescue Bundler::GemNotFound => e
12
+ puts e.message
13
+ puts "Try running `bundle install`."
14
+ STDERR.puts e.message
15
+ STDERR.puts "Try running `bundle install`."
16
+ exit!
17
+ end if File.exist?(gemfile)
18
+ rescue
19
+ puts $!.message
20
+ puts $!.backtrace.join("\n")
21
+ exit(1)
22
+ end
23
+
24
+ f = File.open(File.join(File.dirname(__FILE__), "Rakefile"), "w") # create dummy rakefile to indicate success
25
+ f.write("task :default\n")
26
+ f.close
@@ -1,12 +1,12 @@
1
1
  class Time
2
2
  def self.next_quarter
3
- now = Time.now
3
+ now = Time.zone.now
4
4
  now -= now.sec
5
5
  next_quarter = now + (15 - now.min % 15).minutes
6
6
  end
7
7
 
8
8
  def self.previous_quarter
9
- now = Time.now
9
+ now = Time.zone.now
10
10
  now -= now.sec
11
11
  previous_quarter = now - (now.min % 15).minutes
12
12
  end
@@ -2,8 +2,6 @@ ENV["RAILS_ENV"] = "test"
2
2
  require File.expand_path('../../config/environment', __FILE__)
3
3
  require 'rails/test_help'
4
4
 
5
- # ActiveSupport::Dependencies.autoload_paths.unshift Rails.root.to_s + '/test/mocks/test'
6
-
7
5
  class ActiveSupport::TestCase
8
6
  def self.main_scenario
9
7
  fixtures :parties, :users, :groups, :groups_users, :projects, :periods, :tasks,
@@ -92,7 +92,7 @@ class UserTest < ActiveSupport::TestCase
92
92
 
93
93
  u.login = "x"
94
94
  assert !u.save
95
- assert u.errors.invalid?(:login)
95
+ assert u.errors[:login].any?
96
96
 
97
97
  u.login = "hugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahugeteslahug"
98
98
  assert !u.save
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 37
8
- - 1
9
- version: 0.37.1
8
+ - 2
9
+ version: 0.37.2
10
10
  platform: ruby
11
11
  authors:
12
12
  - Uwe Kubosch
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-12-09 00:00:00 +01:00
17
+ date: 2010-12-22 00:00:00 +01:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -151,8 +151,8 @@ description: |-
151
151
  email: uwe@kubosch.no
152
152
  executables:
153
153
  - backlog
154
- extensions: []
155
-
154
+ extensions:
155
+ - ext/mkrf_conf.rb
156
156
  extra_rdoc_files: []
157
157
 
158
158
  files:
@@ -167,6 +167,7 @@ files:
167
167
  - Manifest.txt
168
168
  - MODIFICATIONS.txt
169
169
  - Rakefile
170
+ - Rakefile~
170
171
  - README.txt
171
172
  - README_LOGIN_SUGAR
172
173
  - Screenshot.png
@@ -417,6 +418,7 @@ files:
417
418
  - db/migrate/20101006092700_rename_backlogs_to_projects.rb
418
419
  - db/migrate/20101006092700_rename_backlogs_to_projects.rb~
419
420
  - etc/backlog.conf
421
+ - ext/mkrf_conf.rb
420
422
  - lib/array_helper.rb
421
423
  - lib/backlog
422
424
  - lib/big_decimal_yaml_fix.rb