Schedules 0.3.0 released

Added by Brad Beattie over 8 years ago

Attached is the latest iteration of the Schedules Plugin. Two key features are included in this release:

  • Default availability
    In previous versions, users specified when they were available. In 0.3.0, availability is specified as a weekly default with exceptions explicitly declared. Note that migrating to this version will, unfortunately, remove any previous specified availabilities.
  • Version effective date estimation
    This new feature allows those with permission to automatically recalculate the start date / due date for each issue in a version based on project member availability. This also generates an effective date for the version, which might have previously been a wild guess.

Please log any bugs found at LSS. Thanks!

Replies (10)

RE: Schedules 0.3.0 released - Added by Brad Beattie over 8 years ago

Hrm. Bug in the my_page widget caught quickly. 0.3.1 attached.

RE: Schedules 0.3.0 released - Added by Brad Beattie over 8 years ago

Bug in 0.3.1 caught and fixed in attached 0.3.2.

RE: Schedules 0.3.0 released - Added by Eric Davis over 8 years ago

Good job on the release(s) and bug fixes. I'm planning to update my Redmine soon and will try it out then.

Eric

RE: Schedules 0.3.0 released - Added by Brad Beattie over 8 years ago

It all seems to come out of necessity. Big projects with complex dependancies and unknown completion dates. "When will this version likely be done?" Now we can start to address that question. :)

RE: Schedules 0.3.0 released - Added by loic Le Gallou over 8 years ago

Very nice plugin. Two requests:
  • global schedule chart : concatenation of all user's schedule plus a first column showing the user's name
  • Link with user's issues : in each project cell of the chart, a link to the user's assigned issues form

Attached a french translation of version 0.3.2

PS: I've also added these issues in your Redmine LittleStreamSoftware (don't know what's better)

fr.yml Magnifier (1.85 KB)

RE: Schedules 0.3.0 released - Added by jamon camisso over 8 years ago

Having trouble with 0.3.2 (didn't try any other version). Not sure if this is the appropriate place to post this, but here goes. Getting this error and a failure page in redmine with schedule plugin:

Processing SchedulesController#index (for <snip> at 2009-04-20 14:13:41) [GET]
Session ID: <snip>
Parameters: {"project_id"=>"project", "action"=>"index", "controller"=>"schedules"}
Rendering template within layouts/base
Rendering schedules/index

ActionView::TemplateError (Translation value "%.2f hour" with arguments [{:value=>5.0}] caused error 'can't convert Hash into Float') on line #2 of schedules/_schedule_entry.html.erb:
1: <li class="schedule_entry" style="min-height: <%= 2.7*entry.hours >em">
2: <div title="<
= l(:label_f_hour, :value => entry.hours) >" style="min-height: <= 2.7*entry.hours - 1.7 >em; <= entry.style(@user.nil? ? entry.user.id : entry.project.id) >">
3: <
= link_to entry.project, :controller => 'schedules', :action => 'index', :date => entry.date, :project_id => entry.project if @project.nil?%>
4: <%= "<br/>" if @project.nil? && @user.nil? >
5: <
= link_to entry.user, :controller => 'schedules', :action => 'index', :date => entry.date, :user_id => entry.user.id if @user.nil? %>

/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/gloc-1.1.0/lib/gloc-internal.rb:93:in `_l'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/gloc-1.1.0/lib/gloc.rb:19:in `l'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/_schedule_entry.html.erb:2:in `_run_erb_47vendor47plugins47redmine_schedules47app47views47schedules47_schedule_entry46html46erb'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:342:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:342:in `execute'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template_handlers/compilable.rb:29:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template_handlers/compilable.rb:29:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/partial_template.rb:20:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/benchmarking.rb:30:in `benchmark'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/partial_template.rb:19:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template.rb:22:in `render_template'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/partials.rb:110:in `render_partial'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:277:in `render'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/_calendar.html.erb:19:in `_run_erb_47vendor47plugins47redmine_schedules47app47views47schedules47_calendar46html46erb'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/_calendar.html.erb:18:in `each'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/_calendar.html.erb:18:in `_run_erb_47vendor47plugins47redmine_schedules47app47views47schedules47_calendar46html46erb'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/_calendar.html.erb:14:in `each'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/_calendar.html.erb:14:in `_run_erb_47vendor47plugins47redmine_schedules47app47views47schedules47_calendar46html46erb'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:342:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:342:in `execute'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template_handlers/compilable.rb:29:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template_handlers/compilable.rb:29:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/partial_template.rb:20:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/benchmarking.rb:30:in `benchmark'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/partial_template.rb:19:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template.rb:22:in `render_template'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/partials.rb:110:in `render_partial'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:277:in `render'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/views/schedules/index.html.erb:42:in `_run_erb_47vendor47plugins47redmine_schedules47app47views47schedules47index46html46erb'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:342:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:342:in `execute'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template_handlers/compilable.rb:29:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template_handlers/compilable.rb:29:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template.rb:35:in `render'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/template.rb:22:in `render_template'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_view/base.rb:248:in `render_file'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:1112:in `render_for_file'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:869:in `render_with_no_layout'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:884:in `render_with_no_layout'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/layout.rb:251:in `render_without_benchmark'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/benchmarking.rb:51:in `render'
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.1.2/lib/active_support/core_ext/benchmark.rb:8:in `realtime'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/benchmarking.rb:51:in `render'
/usr/webserver/content/redmine/redmine-0.8/vendor/plugins/redmine_schedules/app/controllers/schedules_controller.rb:72:in `index'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:1166:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:1166:in `perform_action_without_filters'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/filters.rb:579:in `call_filters'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/filters.rb:572:in `perform_action_without_benchmark'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
/usr/lib64/ruby/1.8/benchmark.rb:293:in `measure'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/rescue.rb:201:in `perform_action_without_caching'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/caching/sql_cache.rb:13:in `passenger_orig_perform_action'
/usr/lib64/ruby/gems/1.8/gems/activerecord-2.1.2/lib/active_record/connection_adapters/abstract/query_cache.rb:33:in `cache'
/usr/lib64/ruby/gems/1.8/gems/activerecord-2.1.2/lib/active_record/query_cache.rb:8:in `cache'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/caching/sql_cache.rb:12:in `passenger_orig_perform_action'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/request_handler.rb:53:in `perform_action'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:529:in `send'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:529:in `process_without_filters'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/filters.rb:568:in `process_without_session_management_support'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/session_management.rb:130:in `process'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/base.rb:389:in `process'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/dispatcher.rb:149:in `handle_request'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/dispatcher.rb:107:in `dispatch'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/dispatcher.rb:104:in `synchronize'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/dispatcher.rb:104:in `dispatch'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/dispatcher.rb:120:in `dispatch_cgi'
/usr/lib64/ruby/gems/1.8/gems/actionpack-2.1.2/lib/action_controller/dispatcher.rb:35:in `dispatch'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/request_handler.rb:38:in `process_request'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_request_handler.rb:165:in `main_loop'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/application_spawner.rb:321:in `start_request_handler'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/application_spawner.rb:282:in `handle_spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/utils.rb:163:in `safe_fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/utils.rb:161:in `fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/utils.rb:161:in `safe_fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/application_spawner.rb:280:in `handle_spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/utils.rb:163:in `safe_fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/utils.rb:161:in `fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/utils.rb:161:in `safe_fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/application_spawner.rb:279:in `handle_spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in `__send__'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in `main_loop'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:168:in `start_synchronously'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:135:in `start'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:112:in `fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:112:in `start'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/application_spawner.rb:179:in `start'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/framework_spawner.rb:270:in `handle_spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/framework_spawner.rb:263:in `synchronize'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/framework_spawner.rb:263:in `handle_spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in `__send__'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in `main_loop'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:168:in `start_synchronously'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:135:in `start'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:112:in `fork'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:112:in `start'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/railz/framework_spawner.rb:87:in `start'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:222:in `spawn_rails_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:217:in `synchronize'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:217:in `spawn_rails_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:126:in `spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/spawn_manager.rb:251:in `handle_spawn_application'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in `__send__'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:317:in `main_loop'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/lib/passenger/abstract_server.rb:168:in `start_synchronously'
/usr/lib/ruby/gems/1.8/gems/passenger-2.0.6/bin/passenger-spawn-server:46

Rendering ./public/500.html (500 Internal Server Error)

RE: Schedules 0.3.0 released - Added by Brad Beattie over 8 years ago

jamon camisso wrote:

Having trouble with 0.3.2 (didn't try any other version). Not sure if this is the appropriate place to post this, but here goes. Getting this error and a failure page in redmine with schedule plugin:

Mm. Try upgrading to the latest trunk of Redmine. I've yet to ensure that the Schedules plugin is compatible with the stable releases, but it's on my to-do list for the next release of the plugin.

RE: Schedules 0.3.0 released - Added by jamon camisso over 8 years ago

Cool, thanks for the feedback Brad. I'll try in a sandbox and see what happens.

RE: Schedules 0.3.0 released - Added by jamon camisso over 8 years ago

It does indeed work with head and an existing site. Not sure if I can justify the work doing the upgrade from 0.80 to head and maintaining it (don't want to risk breakage) but I'll definitely watch here if you have time to update the plugin for stable :)

RE: Schedules 0.3.0 released - Added by Hanan Fauzi over 8 years ago

I am using 0.83 with the latest Schedules 0.32 and I am getting the label problem.
I suspect it could not load the labels in config/locales. I am using english
so I looked inside en.yml.

To hacked to get my label to appear (I am not familiar with Ruby), all I did
was to copy the content, without the "en:" from config/locales/en.yml
and append it to redmine/lang/en.yml.

After restart all labels are working except {{USER}} are not being replaced
with actual username. It ain't pretty. But solve my problem now.

(1-10/10)