Giter VIP home page Giter VIP logo

redmine_tags's Introduction

redmine_tags's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

redmine_tags's Issues

Watch a tag

... and you get added as a watcher on any issues which get that tag.

Need to decide what to do if that tag is removed (my vote: nothing), and whether this is a good idea.

German locale

de:
tags: Tags
field_tags: Tags
field_tag_list: Tags
setting_issue_tags: Ticket Tags
issues_sidebar: zeige die Tags auf der Sidebar
issues_show_count: zeige die Ticketanzahl an
issues_open_only: zeige nur noch offene Tickets

issue_tags_sidebar_none: keine
issue_tags_sidebar_list: Liste
issue_tags_sidebar_cloud: Cloud

auto_complete_new_tag: Hinzufügen...

multiple tags filtering

looks like is not possible today to make multiple tags selection
best would be to be able to select one tag and then limit the next query to the actual result

today i think everytime you click on a tag the query is done towards ALL the issues independently by the previous query done

By clicking on 'issues' tab you would be able to back to the 'all the tags' view

Error on tagging in redmine_contacs

Nou sure if that has any longer something todo with redmine_tags. I will reports on redmine_tags github also.

NoMethodError (undefined method color=' for #<ActsAsTaggableOn::Tag id: nil, name: "mytag2">): /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/tag.rb:47:infind_or_create_all_with_like_by_name'
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/tag.rb:47:in map' /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/tag.rb:47:infind_or_create_all_with_like_by_name'
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:216:in save_tags' /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:210:ineach'
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:210:in save_tags' vendor/plugins/redmine_contacts/app/controllers/contacts_controller.rb:139:inedit_tags'
passenger (2.2.14) lib/phusion_passenger/rack/request_handler.rb:92:in process_request' passenger (2.2.14) lib/phusion_passenger/abstract_request_handler.rb:207:inmain_loop'
passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:441:in start_request_handler' passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:381:inhandle_spawn_application'
passenger (2.2.14) lib/phusion_passenger/utils.rb:252:in safe_fork' passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:377:inhandle_spawn_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:in __send__' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:inmain_loop'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:196:in start_synchronously' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:163:instart'
passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:222:in start' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:262:inspawn_rails_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:126:in lookup_or_add' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:256:inspawn_rails_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:80:in synchronize' passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:79:insynchronize'
passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:255:in spawn_rails_application' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:154:inspawn_application'
passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:287:in handle_spawn_application' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:insend'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:in main_loop' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:196:instart_synchronously'

Unable to run tests

harry@hawk-mint: ~/code/redmine/plugins/redmine_tags (git) on master 
$ rake redmine:plugins:test NAME=redmine_tags
(in /home/harry/code/redmine)
/home/harry/.rbenv/versions/1.9.3-p327/bin/ruby -I"lib:test" -I"/home/harry/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rake-10.0.4/lib" "/home/harry/.rbenv/versions/1.9.3-p327/lib/ruby/gems/1.9.1/gems/rake-10.0.4/lib/rake/rake_test_loader.rb" "plugins/redmine_tags/test/unit/**/*_test.rb" 
/home/harry/code/redmine/plugins/redmine_tags/test/test_helper.rb:2:in `require': cannot load such file -- /home/harry/code/test/test_helper (LoadError)

It looks as though Redmine plugins moving from vendor/plugins to plugins has broken this -- in test_helper.rb it seems to be going up one too many directories.

populate the plugin wiki

i think some of the mechanisms behind the implementation are not clear
i can may help if you want

ActiveRecord::StatementInvalid when used with Wiki Extentions Plugin

I get an ActiveRecord error when using the Search feature of Redmine when Redmine Tags and Redmine Wiki Extensions plugins are installed together.

The error occurs with a fresh install of the following environment:

Environment:
  Redmine version                          2.2.3.stable
  Ruby version                             1.8.7 (java)
  Rails version                            3.2.12
  Environment                              production
  Database adapter                         MySQL
Redmine plugins:
  redmine_tags                             2.0.1-dev
  redmine_wiki_extensions                  0.6.2

The SHA for Redmine Tags is: 17f00f8
Redmine Wiki Extensions can be obtained from:
https://bitbucket.org/haru_iida/redmine_wiki_extensions

The stack trace is as follows:

ActiveRecord::JDBCError: Unknown column 'tags.name' in 'where clause': SELECT COUNT(DISTINCT `wiki_pages`.`id`) FROM `wiki_pages` LEFT OUTER JOIN `wikis` ON `wikis`.`id` = `wiki_pages`.`wiki_id` LEFT OUTER JOIN `projects` ON `projects`.`id` = `wikis`.`project_id` LEFT OUTER JOIN `wiki_contents` ON `wiki_contents`.`page_id` = `wiki_pages`.`id` LEFT OUTER JOIN `wiki_extensions_tag_relations` ON `wiki_extensions_tag_relations`.`wiki_page_id` = `wiki_pages`.`id` LEFT OUTER JOIN `wiki_extensions_tags` ON `wiki_extensions_tags`.`id` = `wiki_extensions_tag_relations`.`tag_id` WHERE (projects.status <> 9 AND projects.id IN (SELECT em.project_id FROM enabled_modules em WHERE em.name='wiki')) AND (((LOWER(title) LIKE '%test%') OR (LOWER(wiki_contents.text) LIKE '%test%') OR (LOWER(tags.name) LIKE '%test%')))
Completed 500 Internal Server Error in 1132ms

ActiveRecord::StatementInvalid (ActiveRecord::JDBCError: Unknown column 'tags.name' in 'where clause': SELECT COUNT(DISTINCT `wiki_pages`.`id`) FROM `wiki_pages` LEFT OUTER JOIN `wikis` ON `wikis`.`id` = `wiki_pages`.`wiki_id` LEFT OUTER JOIN `projects` ON `projects`.`id` = `wikis`.`project_id` LEFT OUTER JOIN `wiki_contents` ON `wiki_contents`.`page_id` = `wiki_pages`.`id` LEFT OUTER JOIN `wiki_extensions_tag_relations` ON `wiki_extensions_tag_relations`.`wiki_page_id` = `wiki_pages`.`id` LEFT OUTER JOIN `wiki_extensions_tags` ON `wiki_extensions_tags`.`id` = `wiki_extensions_tag_relations`.`tag_id` WHERE (projects.status <> 9 AND projects.id IN (SELECT em.project_id FROM enabled_modules em WHERE em.name='wiki')) AND (((LOWER(title) LIKE '%test%') OR (LOWER(wiki_contents.text) LIKE '%test%') OR (LOWER(tags.name) LIKE '%test%')))):
  lib/plugins/acts_as_searchable/lib/acts_as_searchable.rb:124:in `search'
  app/controllers/search_controller.rb:80:in `index'
  app/controllers/search_controller.rb:76:in `index'

add tags to projects

as the core redmine is not allowing project portfolio management at my company we bought easyredmine plugin which allows to see all the projects in a issues list manner so that you can filter and set showing options

it would be nice so to be able to add tags also at project level in order to be able to easily categorize the projects on the platform

Redmine 2.2 error

redmine/plugins/redmine_tags/lib/redmine_tags/patches/query_patch.rb:33:in `alias_method': undefined method `available_filters' for class `Query' (NameError)
        from /var/www/redmine/plugins/redmine_tags/lib/redmine_tags/patches/query_patch.rb:33:in `block in included'
        from /var/www/redmine/plugins/redmine_tags/lib/redmine_tags/patches/query_patch.rb:27:in `class_eval'
        from /var/www/redmine/plugins/redmine_tags/lib/redmine_tags/patches/query_patch.rb:27:in `included'
        from /var/www/redmine/plugins/redmine_tags/init.rb:57:in `include'
        from /var/www/redmine/plugins/redmine_tags/init.rb:57:in `block in '

Look please on http://www.redmine.org/projects/redmine/repository/revisions/10964

activation on project basis

would be nice to be able to activate/deactivate tagging on a project basis

statuses could be:

disable: cannot read/cannot add tags
readonly: can read / cannot add
active: can read / can add
reset: erase all the tags in the project (to be confirmed by user)

when switching to disable previously created tags wouldn't be erased

properties should be inherited by parent projects

E.g: P1->P2

if tags in P2 are disabled, showing tags in P1 will not icnldue the tags in P2 issues if any

Hierarchical tag system

The best tag system I ever seen is based on hierarchical principle.
It incredibly useful when searching items by tags.
Query results should include items with not just selected tags but also with tags hierarchically under selected in query.
Such tag system allows to construct complex structured knowledge bases.

No tag clound in issues view

I a missing a tag coulkd ion the sidebare of the issues overbiew page. Indeed i habe a tags filed in the issue edit site, no more bisual occourences of tagging support.
Would be great if you could apply some screenhosts, how it should look like also.

undefined local variable or method 'sidebar_tags'

A couple of issues with the same symptoms have already been closed, but I am still getting this error with the following environment.
The error occurs when clicking any of the Graph links in the sidebar provided by the "redmine_graphs" plugin.

Environment:
  Redmine version                          2.2.3.stable
  Ruby version                             1.8.7 (java)
  Rails version                            3.2.12
  Environment                              production
  Database adapter                         MySQL
Redmine plugins:
  redmine_assets_plugin                    0.0.1
  redmine_banner                           0.0.8
  redmine_changeauthor                     1.0.0
  redmine_embedded_video                   0.0.3.1
  redmine_graphs                           0.1.0
  redmine_hide_emails_by_default           0.0.1
  redmine_hudson                           2.1.1
  redmine_impasse                          1.2.2
  redmine_importer                         1.2
  redmine_issue_templates                  0.0.5
  redmine_local_avatars                    0.1.1
  redmine_logs                             0.0.5
  redmine_niko_cale                        1.1.2
  redmine_parking_lot_chart                0.0.7
  redmine_plugin_views_revisions           0.0.1
  redmine_single_column_custom_fields      0.0.1
  redmine_stealth                          0.6.0
  redmine_tags                             2.0.1-dev
  redmine_todos_plugin                     0.0.4.3
  redmine_users_xls_impex                  0.1.1
  redmine_wiki_extensions                  0.6.2
  redmine_xls_export                       0.2.1

Stack trace:

ActionView::Template::Error (undefined local variable or method sidebar_tags' for #<#<Class:0xb26bbc4>:0x56fa4419>): 1: <% unless sidebar_tags.empty? -%> 2: <%= stylesheet_link_tag 'jquery.tagit.css', :plugin => 'redmine_tags' %> 3: <%= stylesheet_link_tag 'redmine_tags', :plugin => 'redmine_tags' %> 4: <h3><%= l(:tags) %></h3> lib/redmine/hook.rb:111:inview_issues_sidebar_planning_bottom'
lib/redmine/hook.rb:61:in call_hook' lib/redmine/hook.rb:61:incall_hook'
lib/redmine/hook.rb:58:in call_hook' lib/redmine/hook.rb:158:incall_hook'
app/views/issues/_sidebar.html.erb:14:in _app_views_issues__sidebar_html_erb__1528897505_7456' app/helpers/application_helper.rb:1192:incontent_for'

Unable to view the issues page, getting a 500 error

Production.log:

Processing TimeTrackersController#render_menu (for 192.168.5.26 at 2011-03-17 11:23:24) [POST]
Parameters: {"action"=>"render_menu", "authenticity_token"=>"S8Eh8Y8B+XuXI09c0/oa5Cd5QgTDEiCqLhHHkol32Xk=", "controller"=>"time_trackers", "_"=>""}
Completed in 49ms (View: 23, DB: 3) | 200 OK [http://192.168.5.5/redmine/time_trackers/render_menu]
Starting Charts Plugin for RedMine

Processing IssuesController#index (for 192.168.5.26 at 2011-03-17 11:23:24) [GET]
Parameters: {"project_id"=>"bch-dev", "action"=>"index", "controller"=>"issues"}
Rendering template within layouts/base
Rendering issues/index.rhtml

ActionView::TemplateError (Mysql::Error: Unknown column 'issues.project_id' in 'where clause': SELECT tags., taggings.tags_count AS count FROM tags JOIN (SELECT taggings.tag_id, COUNT(taggings.tag_id) AS tags_count FROM taggings INNER JOIN issues ON issues.id = taggings.taggable_id WHERE (taggings.taggable_type = 'Issue') GROUP BY taggings.tag_id HAVING COUNT() > 0 AND COUNT(taggings.tag_id) > 0) AS taggings ON taggings.tag_id = tags.id WHERE (1=1 AND (issues.project_id = 2)) ) on line #75 of app/views/queries/filters.rhtml:
72:
73:
74:


75: <% query.available_filters.sort{|a,b| a[1][:order]<=>b[1][:order]}.each do |filter| %>
76: <% field = filter[0]
77: options = filter[1] %>
78: <tr <%= 'style="display:none;"' unless query.has_filter?(field) %> id="tr
<%= field %>" class="filter">

app/views/queries/_filters.rhtml:75:in `_run_rhtml_app47views47queries47_filters46rhtml_locals_filters_object_query'
app/views/issues/index.rhtml:17
app/views/issues/index.rhtml:11:in `_run_rhtml_app47views47issues47index46rhtml'
app/controllers/issues_controller.rb:91
app/controllers/issues_controller.rb:90:in `index'
/usr/lib/ruby/1.8/phusion_passenger/rack/request_handler.rb:95:in `process_request'
/usr/lib/ruby/1.8/phusion_passenger/abstract_request_handler.rb:207:in `main_loop'
/usr/lib/ruby/1.8/phusion_passenger/railz/application_spawner.rb:374:in `start_request_handler'
/usr/lib/ruby/1.8/phusion_passenger/railz/application_spawner.rb:332:in `handle_spawn_application'
/usr/lib/ruby/1.8/phusion_passenger/utils.rb:184:in `safe_fork'
/usr/lib/ruby/1.8/phusion_passenger/railz/application_spawner.rb:330:in `handle_spawn_application'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:352:in `__send__'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:352:in `main_loop'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:196:in `start_synchronously'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:163:in `start'
/usr/lib/ruby/1.8/phusion_passenger/railz/application_spawner.rb:209:in `start'
/usr/lib/ruby/1.8/phusion_passenger/spawn_manager.rb:262:in `spawn_rails_application'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server_collection.rb:126:in `lookup_or_add'
/usr/lib/ruby/1.8/phusion_passenger/spawn_manager.rb:256:in `spawn_rails_application'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server_collection.rb:80:in `synchronize'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
/usr/lib/ruby/1.8/phusion_passenger/spawn_manager.rb:255:in `spawn_rails_application'
/usr/lib/ruby/1.8/phusion_passenger/spawn_manager.rb:154:in `spawn_application'
/usr/lib/ruby/1.8/phusion_passenger/spawn_manager.rb:287:in `handle_spawn_application'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:352:in `__send__'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:352:in `main_loop'
/usr/lib/ruby/1.8/phusion_passenger/abstract_server.rb:196:in `start_synchronously'
/usr/lib/phusion_passenger/passenger-spawn-server:61

Rendering /usr/share/redmine/public/500.html (500 Internal Server Error)

Plugin fails for non-admin accounts

Here is an odd one:

As an admin, I can see issues lists w/o a problem.

For everyone else, when the redmine_tags plugin is enabled, it causes a SQL error.

This was after an upgrade to 2.3.2

Here's the error that comes up for those users:

Started GET "/projects/xxxxxxx/issues" for 10.17.12.150 at 2013-07-19 10:21:09 -0400
Processing by IssuesController#index as HTML
  Parameters: {"project_id"=>"xxxxxxxx"}
  Current user: xxxxxx (id=6)
  Rendered queries/_filters.html.erb (84.7ms)
  Rendered queries/_columns.html.erb (3.7ms)
  Rendered issues/_list.html.erb (93.6ms)
  Rendered plugins/redmine_graphs/app/views/hooks/redmine_graphs/_view_issues_sidebar_issues_bottom.html.erb (0.9ms)
  Rendered plugins/redmine_tags/app/views/issues/_tags_sidebar.html.erb (5.2ms)
  Rendered issues/_sidebar.html.erb (8.1ms)
  Rendered issues/index.html.erb within layouts/base (206.6ms)
Completed 500 Internal Server Error in 313ms

ActionView::Template::Error (Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')))) OR (projects.id IN (61,47,35,34,7,45,1,19,41,49,25,17,60,4,5,3,18,46,33,27,' at line 1: SELECT `issues`.`id` AS t0_r0, `issues`.`tracker_id` AS t0_r1, `issues`.`project_id` AS t0_r2, `issues`.`subject` AS t0_r3, `issues`.`description` AS t0_r4, `issues`.`due_date` AS t0_r5, `issues`.`category_id` AS t0_r6, `issues`.`status_id` AS t0_r7, `issues`.`assigned_to_id` AS t0_r8, `issues`.`priority_id` AS t0_r9, `issues`.`fixed_version_id` AS t0_r10, `issues`.`author_id` AS t0_r11, `issues`.`lock_version` AS t0_r12, `issues`.`created_on` AS t0_r13, `issues`.`updated_on` AS t0_r14, `issues`.`start_date` AS t0_r15, `issues`.`done_ratio` AS t0_r16, `issues`.`estimated_hours` AS t0_r17, `issues`.`parent_id` AS t0_r18, `issues`.`root_id` AS t0_r19, `issues`.`lft` AS t0_r20, `issues`.`rgt` AS t0_r21, `issues`.`is_private` AS t0_r22, `issues`.`position` AS t0_r23, `issues`.`closed_on` AS t0_r24, `projects`.`id` AS t1_r0, `projects`.`name` AS t1_r1, `projects`.`description` AS t1_r2, `projects`.`homepage` AS t1_r3, `projects`.`is_public` AS t1_r4, `projects`.`parent_id` AS t1_r5, `projects`.`created_on` AS t1_r6, `projects`.`updated_on` AS t1_r7, `projects`.`identifier` AS t1_r8, `projects`.`status` AS t1_r9, `projects`.`lft` AS t1_r10, `projects`.`rgt` AS t1_r11, `projects`.`inherit_members` AS t1_r12, `projects`.`dmsf_description` AS t1_r13, `issue_statuses`.`id` AS t2_r0, `issue_statuses`.`name` AS t2_r1, `issue_statuses`.`is_closed` AS t2_r2, `issue_statuses`.`is_default` AS t2_r3, `issue_statuses`.`position` AS t2_r4, `issue_statuses`.`default_done_ratio` AS t2_r5 FROM `issues` LEFT OUTER JOIN `projects` ON `projects`.`id` = `issues`.`project_id` LEFT OUTER JOIN `issue_statuses` ON `issue_statuses`.`id` = `issues`.`status_id` WHERE (((projects.status <> 9 AND projects.id IN (SELECT em.project_id FROM enabled_modules em WHERE em.name='issue_tracking')) AND ((projects.is_public = 1 AND ((issues.is_private = 0 OR issues.author_id = 6 OR issues.assigned_to_id IN (6,)))) OR (projects.id IN (61,47,35,34,7,45,1,19,41,49,25,17,60,4,5,3,18,46,33,27,32,29,2,14,36,26,13,22,23,24) AND ((issues.is_private = 0 OR issues.author_id = 6 OR issues.assigned_to_id IN (6,)))) OR (projects.id IN (43,44,40,45,10,49,11,37,39,38,12) AND ((issues.is_private = 0 OR issues.author_id = 6 OR issues.assigned_to_id IN (6,)))) OR projects.id IN (7,45,9,8,6) OR (projects.id IN (45) AND ((issues.is_private = 0 OR issues.author_id = 6 OR issues.assigned_to_id IN (6,)))) OR (projects.id IN (45) AND ((issues.is_private = 0 OR issues.author_id = 6 OR issues.assigned_to_id IN (6,))))))) AND (projects.id=60) AND (issue_statuses.is_closed = 0)):
    1: <% unless sidebar_tags.empty? -%>
    2:   <%= stylesheet_link_tag 'jquery.tagit.css', :plugin => 'redmine_tags' %>
    3:   <%= stylesheet_link_tag 'redmine_tags', :plugin => 'redmine_tags' %>
    4:   <h3><%= l(:tags) %></h3>
  lib/redmine/hook.rb:111:in `block in render_on'
  lib/redmine/hook.rb:61:in `block (2 levels) in call_hook'
  lib/redmine/hook.rb:61:in `each'
  lib/redmine/hook.rb:61:in `block in call_hook'
  lib/redmine/hook.rb:58:in `tap'
  lib/redmine/hook.rb:58:in `call_hook'
  lib/redmine/hook.rb:158:in `call_hook'
  app/views/issues/_sidebar.html.erb:18:in `_app_views_issues__sidebar_html_erb__2750949893516397257_70362108906160'
  app/views/issues/index.html.erb:93:in `block in _app_views_issues_index_html_erb__549890581078395298_61647220'
  app/helpers/application_helper.rb:1158:in `content_for'
  app/views/issues/index.html.erb:92:in `_app_views_issues_index_html_erb__549890581078395298_61647220'
  app/controllers/issues_controller.rb:83:in `block (2 levels) in index'
  app/controllers/issues_controller.rb:82:in `index' 

PG::Error: ERROR: relation "tags" does not exist

hi,

this is my first time install redmine_tags, the installation process was quite smooth, but when i cilck the 'Wiki' to add/edit new wiki, I got the error below:

Started GET "/redmine/projects/test/wiki" for 16.85.175.133 at 2013-03-21 00:57:39 -0400
Processing by WikiController#show as HTML
  Parameters: {"project_id"=>"test"}
  Current user: admin (id=8)
  Rendered wiki/_content.html.erb (73.8ms)
  Rendered attachments/_form.html.erb (4.2ms)
  Rendered wiki/_sidebar.html.erb (2.8ms)
  Rendered wiki/show.html.erb within layouts/base (111.6ms)
  Rendered plugins/redmine_backlogs/app/views/hooks/_rb_include_scripts.html.erb (3.4ms)
  Rendered plugins/redmine_tags/app/views/wiki/_tags_sidebar.html.erb (2.6ms)
  Rendered plugins/redmine_tags/app/views/wiki/_tags.html.erb (5.2ms)
Completed 500 Internal Server Error in 424ms

ActionView::Template::Error (PG::Error: ERROR:  relation "tags" does not exist
LINE 5:              WHERE a.attrelid = '"tags"'::regclass
                                        ^
:             SELECT a.attname, format_type(a.atttypid, a.atttypmod),
                     pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
              FROM pg_attribute a LEFT JOIN pg_attrdef d
                ON a.attrelid = d.adrelid AND a.attnum = d.adnum
             WHERE a.attrelid = '"tags"'::regclass
               AND a.attnum > 0 AND NOT a.attisdropped
             ORDER BY a.attnum
):
    1: <% unless page.tag_list.empty? %>
    2:     <b><%=l(:tags)%>:</b>
    3:     <%= safe_join(page.tag_counts.collect{ |t| render_tag_link(t, :show_count => false, :open_only => false) }, ', ') %>
    4: <% end %>
  lib/redmine/hook.rb:61:in `block (2 levels) in call_hook'
  lib/redmine/hook.rb:61:in `each'
  lib/redmine/hook.rb:61:in `block in call_hook'
  lib/redmine/hook.rb:58:in `tap'
  lib/redmine/hook.rb:58:in `call_hook'
  lib/redmine/hook.rb:158:in `call_hook'
  app/views/layouts/base.html.erb:75:in `_app_views_layouts_base_html_erb___3885968524690889277_64888620'
  app/controllers/wiki_controller.rb:99:in `show'

i did run the migrate command: 'sudo bundle exec rake redmine:plugins:migrate RAILS_ENV=production'

Redmine: 2.3.0

Only open tags counter / total count

I have checked two options "Display amount of issues" and "Display open issues only" with List display, counter on the right side shows up total amount of tagged issues but when I click on tag I see only opened. I think if I check "Display open issues only" that counter should show only opened tags value - I'm right?

Include ActsAsTaggableOnMigration in this repo

  • This would simplify installation -- fewer moving parts means less to go wrong. It was mildly annoying for me when I realised that it wasn't working because the gem is acts-as-taggable-on but the command is rails g acts_as_taggable_on:migration -- hyphens vs underscores
  • If you check Redmine out via a VCS, you can accidentally wipe the migration out with a revert -- then, when recreating the db, the 'tags' and 'taggings' tables will be missing

where are the wiki tags?

once tags are put on wiki page i have no chance to see them anywhere... where are they consolidated? where the cloud will appear?

[UPDATE] following the comments below:

  1. wiki pages tags should be set also at creation of a new page (not only on update)
  2. wiki tags map should be shown in the right panel (as the issues one). Today is not clear where tags related to wiki are shown

Consider drop acts-as-taggable dependeny

@PowerKiKi what do you think if we drop acts-as-taggable and use "home-brew" logic instead? At least this will solve problems of "interfering" with other plugins.

PS I might be trying to rearrange problems and put them from one place to another. So this is just an idea...

A plugin is already using the "tags" or "taggings" tables

root@redmine:/usr/share/redmine# bundle install
Using rake (10.1.0)
Using i18n (0.6.1)
Using multi_json (1.7.7)
Using activesupport (3.2.13)
Using builder (3.0.4)
Using activemodel (3.2.13)
Using erubis (2.7.0)
Using journey (1.0.4)
Using rack (1.4.5)
Using rack-cache (1.2)
Using rack-test (0.6.2)
Using hike (1.2.3)
Using tilt (1.4.1)
Using sprockets (2.2.2)
Using actionpack (3.2.13)
Using mime-types (1.23)
Using polyglot (0.3.3)
Using treetop (1.4.14)
Using mail (2.5.4)
Using actionmailer (3.2.13)
Using arel (3.0.2)
Using tzinfo (0.3.37)
Using activerecord (3.2.13)
Using pg (0.15.1)
Using activerecord-postgresql-adapter (0.0.1)
Using activeresource (3.2.13)
Using bundler (1.1.4)
Using rack-ssl (1.3.3)
Using json (1.8.0)
Using rdoc (3.12.2)
Using thor (0.18.1)
Using railties (3.2.13)
Using rails (3.2.13)
Using acts-as-taggable-on (2.3.3)
Using redmine_acts_as_taggable_on (1.0.0)
Using vcard (0.2.8)
Your bundle is complete! Use bundle show [gemname] to see where a bundled gem is installed.
root@redmine:/usr/share/redmine# rake redmine:plugins:migrate RAILS_ENV=production
Migrating redmine_contacts (Redmine CRM plugin)...
Migrating redmine_contacts_helpdesk (Redmine Helpdesk plugin)...
Migrating redmine_didyoumean (Did You Mean?)...
Migrating redmine_favorite_projects (Redmine Favorite Projects plugin)...
Migrating redmine_github_hook (Redmine Github Hook plugin)...
Migrating redmine_tags (redmine_tags)...
== AddTagsAndTaggings: migrating =============================================

WARNING: The plugin redmine_contacts is using 'acts-as-taggable-on',
which means that it might accidentally delete some of your data
when you uninstall it. You should badger its maintainer to switch
to https://github.com/hdgarrood/redmine_acts_as_taggable_on.

rake aborted!
An error has occurred, this and all later migrations canceled:

A plugin is already using the "tags" or "taggings" tables, and
the structure of the table does not match the structure expected
by redmine_tags.
/var/lib/gems/1.8/gems/redmine_acts_as_taggable_on-1.0.0/lib/redmine_acts_as_taggable_on/migration.rb:71:in assert_schema_match!' /var/lib/gems/1.8/gems/redmine_acts_as_taggable_on-1.0.0/lib/redmine_acts_as_taggable_on/migration.rb:59:inok_to_go_up?'
/var/lib/gems/1.8/gems/redmine_acts_as_taggable_on-1.0.0/lib/redmine_acts_as_taggable_on/migration.rb:10:in up' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:410:insend'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:410:inmigrate' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:410:inmigrate'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:129:in with_connection' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:389:inmigrate'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:528:in__send__' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:528:inmigrate'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:720:inmigrate' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:775:incall'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:775:inddl_transaction' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/database_statements.rb:192:intransaction'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/transactions.rb:208:in transaction' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:775:inddl_transaction'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:719:inmigrate' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:700:ineach'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:700:inmigrate' /var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:570:inup'
/var/lib/gems/1.8/gems/activerecord-3.2.13/lib/active_record/migration.rb:551:in`migrate'
Tasks: TOP => redmine:plugins:migrate
(See full trace by running task with --trace)

Redmine 2.3.0.stable
Default administrator account changed True
Attachments directory writable True
Plugin assets directory writable True
RMagick available (optional) True

Environment:
Redmine version 2.3.0.stable
Ruby version 1.8.7 (x86_64-linux)
Rails version 3.2.13
Environment production
Database adapter PostgreSQL
Redmine plugins:
redmine_contacts 3.2.4-light
redmine_contacts_helpdesk 2.2.2-pro
redmine_didyoumean 1.2.0
redmine_favorite_projects 1.0.1
redmine_github_hook 0.2.0
redmine_theme_changer 0.1.0

crash on Issues page

Running Redmine 2.2.2:

  1. If you don't have any settings in the settings db (ie. you just installed the plugin for the first time), you can use the site and issues pages but you don't see the tags, obviously.
  2. When you config the plugin, it saves the row to the DB but then doesn't show the values in the config screen - they are set back to defaults. I think it's not able to actually parse the settings or something post INSERT.
  3. if you config the plugin (unsuccessfully as far as the UI is concerned) and it creates the row in the settings DB table and you go to view an issue- you get the error below in logs.
  4. if you manually remove the settings DB row, all is well but no tags.

ActionView::Template::Error (undefined method to_sym' for nil:NilClass): 1: <% unless sidebar_tags.empty? -%> 2: <%= stylesheet_link_tag 'jquery.tagit.css', :plugin => 'redmine_tags' %> 3: <%= stylesheet_link_tag 'redmine_tags', :plugin => 'redmine_tags' %> 4: <h3><%= l(:tags) %></h3> lib/redmine/hook.rb:111:inblock in render_on'
lib/redmine/hook.rb:61:in block (2 levels) in call_hook' lib/redmine/hook.rb:61:ineach'
lib/redmine/hook.rb:61:in block in call_hook' lib/redmine/hook.rb:58:intap'
lib/redmine/hook.rb:58:in call_hook' lib/redmine/hook.rb:158:incall_hook'
app/views/issues/_sidebar.html.erb:14:in _app_views_issues__sidebar_html_erb__602694580907020990_70120344284040' app/views/issues/index.html.erb:93:inblock in _app_views_issues_index_html_erb__4074005188923787004_62866580'
app/helpers/application_helper.rb:1145:in content_for' app/views/issues/index.html.erb:92:in_app_views_issues_index_html_erb__4074005188923787004_62866580'
app/controllers/issues_controller.rb:83:in block (2 levels) in index' app/controllers/issues_controller.rb:82:inindex'

Multi Plugin incompatibility - 5 major plugins not usable

I checked now step per step and twcie all plugins which crash togehter with redmine_tags when calling issues or issue view with error "undefined local variable or method sidebar_tags" (see below for details stack).

The plugins which result all in the same error (each of them seperately and all together too) are these:


Started GET "/projects/bus/issues" for 172.25.252.99 at 2013-01-09 11:09:10 +0100
Processing by IssuesController#index as HTML
Parameters: {"project_id"=>"bus"}
Current user: 00001276 (id=3)
Rendered plugins/redmine_time_tracker/app/views/queries/_filters.html.erb (43.5ms)
Rendered queries/_columns.html.erb (3.7ms)
Rendered issues/_list.html.erb (165.7ms)
Rendered plugins/redmine_contacts/app/views/issues/_contacts.html.erb (1.1ms)
Rendered plugins/redmine_issue_templates/app/views/issue_templates/_issue_template_link.html.erb (1.9ms)
Rendered plugins/redmine_tags/app/views/issues/_tags_sidebar.html.erb (311.9ms)
Rendered issues/_sidebar.html.erb (355.7ms)
Rendered issues/index.html.erb (653.9ms)
Rendered plugins/redmine_anonymous_watchers/app/views/issues/index.html.erb within layouts/base (667.0ms)
Completed 500 Internal Server Error in 1254ms

ActionView::Template::Error (undefined local variable or method sidebar_tags' for #<#<Class:0xd9e8a10>:0xd607b30>): 1: <% unless sidebar_tags.empty? -> 2: <= stylesheet_link_tag 'jquery.tagit.css', :plugin => 'redmine_tags' > 3: <= stylesheet_link_tag 'redmine_tags', :plugin => 'redmine_tags' > 4: <h3><= l(:tags) %></h3> lib/redmine/hook.rb:111:inblock in render_on'
lib/redmine/hook.rb:61:in block (2 levels) in call_hook' lib/redmine/hook.rb:61:ineach'
lib/redmine/hook.rb:61:in block in call_hook' lib/redmine/hook.rb:58:intap'
lib/redmine/hook.rb:58:in call_hook' lib/redmine/hook.rb:158:incall_hook'
app/views/issues/_sidebar.html.erb:14:in _app_views_issues__sidebar_html_erb___89747382_99460450' app/views/issues/index.html.erb:93:inblock in app_views_issues_index_html_erb_940294355_112433450'
app/helpers/application_helper.rb:1190:in content_for' app/views/issues/index.html.erb:92:in_app_views_issues_index_html_erb__940294355_112433450'
app/controllers/issues_controller.rb:83:in block (2 levels) in index' app/controllers/issues_controller.rb:82:inindex'

undefined local variable or method `config' for main:Object (NameError)

# RAILS_ENV=production rails generate acts_as_taggable_on:migration

ruby-1.9.3 ((2.3.1)) root@redmine:/opt/redmine# RAILS_ENV=production rails generate acts_as_taggable_on:migration
/opt/redmine/plugins/redmine_tags/init.rb:19:in `<top (required)>': undefined local variable or method `config' for main:Object (NameError)
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `block in require'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /opt/redmine/lib/redmine/plugin.rb:130:in `block in load'
    from /opt/redmine/lib/redmine/plugin.rb:121:in `each'
    from /opt/redmine/lib/redmine/plugin.rb:121:in `load'
    from /opt/redmine/config/initializers/30-redmine.rb:12:in `<top (required)>'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:245:in `load'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:245:in `block in load'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:245:in `load'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/engine.rb:588:in `block (2 levels) in <class:Engine>'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/engine.rb:587:in `each'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/engine.rb:587:in `block in <class:Engine>'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `instance_exec'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `run'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `each'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing'
    from /opt/redmine/config/environment.rb:14:in `<top (required)>'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `block in require'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/application.rb:103:in `require_environment!'
    from /usr/local/rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.13/lib/rails/commands.rb:25:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'
# ruby script/about 

Environment:
  Redmine version                          2.3.1.stable
  Ruby version                             1.9.3 (x86_64-linux)
  Rails version                            3.2.13
  Environment                              production
  Database adapter                         Mysql2
Redmine plugins:
  redmine_backlogs                         v1.0.1
  redmine_charts2                          0.2.1
  redmine_code_review                      0.6.2
  redmine_contacts                         3.2.3-light
  redmine_issue_checklist                  2.0.5
  redmine_ldap_sync                        2.0.0
  redmine_my_roadmaps                      0.1.13_redmine2.3
  redmine_scm                              0.4.2
  redmine_zenedit                          0.0.1

Display amount of issues wrong query

when 'Display amount of issues' is activated you may see the number of issues tagged with a specific tags in ALL the platform, but when clicking on it you are only redirected to a query listing the issues with selected tags in actual project... this sounds confusing
i would propose to count and display all the issues in actual project and subproject may with the chance to filter out the subproject through the usual issues filtering (filter and options)

Untitled

I completly uninsalled the pluigin this way "rake db:migrate:plugin NAME=redmine_tags VERSION=0 RAILS_ENV=production"

Then i reinstalled it this way "rake db:migrate_plugins RAILS_ENV=production --verbose

When trying to tag an issue i get following error:

ctiveRecord::StatementInvalid (Mysql::Error: Table 'redmine.tags' doesn't exist: SHOW FIELDS FROM tags):
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:51:in grouped_column_names_for' /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/collection.rb:117:inall_tag_counts'
vendor/plugins/redmine_contacts/app/controllers/contacts_controller.rb:372:in find_tags' vendor/plugins/redmine_contacts/app/controllers/contacts_controller.rb:57:inindex'
passenger (2.2.14) lib/phusion_passenger/rack/request_handler.rb:92:in process_request' passenger (2.2.14) lib/phusion_passenger/abstract_request_handler.rb:207:inmain_loop'
passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:441:in start_request_handler' passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:381:inhandle_spawn_application'
passenger (2.2.14) lib/phusion_passenger/utils.rb:252:in safe_fork' passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:377:inhandle_spawn_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:in __send__' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:inmain_loop'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:196:in start_synchronously' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:163:instart'
passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:222:in start' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:262:inspawn_rails_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:126:in lookup_or_add' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:256:inspawn_rails_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:80:in synchronize' passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:79:insynchronize'
passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:255:in spawn_rails_application' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:154:inspawn_application'
passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:287:in handle_spawn_application' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:insend'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:in main_loop' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:196:instart_synchronously'

Seems a s the tables don't get created in migration. Dunny why.
Is there a own installation process for acts-as-taggable? Are there any tables that must set up? I mean only separately for acts-as-taggable? I would need an detailed installation guide if that the point.
I had a lot of problems with migration toegteher with redmine_contacts plugin, so i dropped table tags and taagable completly. I thought the plugins (at leats yours) will recreate them if i deinstall (migrate to version 0) them. Maybe just give me the sql to setup them up for the latest version, cause the whole migration think seems not to be very stable on my installation.

ActionView::Template::Error (undefined local variable or method sidebar_tags' for

This error raises when calling standard redmine calendar or gantt view. Seems to be no other plugins involved as far as i see

ActionView::Template::Error (undefined local variable or method sidebar_tags' for #<#Class:0xe6a69b4:0xe69ee80>):
1: <% unless sidebar_tags.empty? -%>
2: <%= stylesheet_link_tag 'jquery.tagit.css', :plugin => 'redmine_tags' %>
3: <%= stylesheet_link_tag 'redmine_tags', :plugin => 'redmine_tags' %>
4:

<%= l(:tags) %>


lib/redmine/hook.rb:111:inblock in render_on'
lib/redmine/hook.rb:61:in block (2 levels) in call_hook'
lib/redmine/hook.rb:61:ineach'
lib/redmine/hook.rb:61:in block in call_hook'
lib/redmine/hook.rb:58:intap'
lib/redmine/hook.rb:58:in call_hook'
lib/redmine/hook.rb:158:incall_hook'
app/views/issues/_sidebar.html.erb:14:in _app_views_issues__sidebar_html_erb___903130609_115168980'
app/views/calendars/show.html.erb:40:inblock in app_views_calendars_show_html_erb__826795031_119555920'
app/helpers/application_helper.rb:1192:in content_for'
app/views/calendars/show.html.erb:39:in_app_views_calendars_show_html_erb___826795031_119555920'

Installation error

Hi
I installed redmine 2.3.0 and acts-as-taggable-on 2.3.3
I followed the installation instructions and got this error:

[azmeuk@herbi ~/dev/www/redmine]$ RAILS_ENV=production rails generate acts_as_taggable_on:migration
/home/azmeuk/dev/www/redmine/plugins/redmine_tags/init.rb:19:in `<top (required)>': undefined local variable or method `config' for main:Object (NameError)
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `block in require'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /home/azmeuk/dev/www/redmine/lib/redmine/plugin.rb:130:in `block in load'
    from /home/azmeuk/dev/www/redmine/lib/redmine/plugin.rb:121:in `each'
    from /home/azmeuk/dev/www/redmine/lib/redmine/plugin.rb:121:in `load'
    from /home/azmeuk/dev/www/redmine/config/initializers/30-redmine.rb:12:in `<top (required)>'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:245:in `load'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:245:in `block in load'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:245:in `load'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/engine.rb:588:in `block (2 levels) in <class:Engine>'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/engine.rb:587:in `each'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/engine.rb:587:in `block in <class:Engine>'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `instance_exec'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:30:in `run'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:55:in `block in run_initializers'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `each'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/initializable.rb:54:in `run_initializers'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/application.rb:136:in `initialize!'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/railtie/configurable.rb:30:in `method_missing'
    from /home/azmeuk/dev/www/redmine/config/environment.rb:14:in `<top (required)>'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `block in require'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/application.rb:103:in `require_environment!'
    from /home/azmeuk/.gem/ruby/1.9.1/gems/railties-3.2.13/lib/rails/commands.rb:25:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'
[azmeuk@herbi ~/dev/www/redmine]$ 

Did I do something wrong or is it a bug ?

Table 'tags' conflicts with redmine knowledgebase 'tags' table.

Hi,
I tried to install redmine_tags on Redmine 2.3.0 Stable, with 2 additional plugins namely redmine_didyoumean and redmine_knowledgebase.

I am getting the following error when trying to execute rake db:migrate. Its complaining about already existing 'tags' table and i believe its the tables associated with redmine_knowledgebase plugin.

Is there any way i can install both redmine_tags and redmine_knowledgebase together.

Thanks in advance.

$ rake db:migrate
==  ActsAsTaggableOnMigration: migrating ======================================
-- create_table(:tags)
rake aborted!
An error has occurred, all later migrations canceled:

Mysql2::Error: Table 'tags' already exists: CREATE TABLE `tags` (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY, `name` varchar(255)) ENGINE=InnoDB/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:245:in `query'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:245:in `block in execute'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract_adapter.rb:280:in `block in log'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activesupport-3.2.13/lib/active_support/notifications/instrumenter.rb:20:in `instrument'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract_adapter.rb:275:in `log'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:245:in `execute'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/mysql2_adapter.rb:211:in `execute'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/schema_statements.rb:170:in `create_table'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract_mysql_adapter.rb:434:in `create_table'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:466:in `block in method_missing'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:438:in `block in say_with_time'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:438:in `say_with_time'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:458:in `method_missing'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:334:in `method_missing'
/home/mcloud-user/redmine-2.3.0/db/migrate/20130503211655_acts_as_taggable_on_migration.rb:3:in `up'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:370:in `up'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:410:in `block (2 levels) in migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:410:in `block in migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_pool.rb:129:in `with_connection'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:389:in `migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:528:in `migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:720:in `block (2 levels) in migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:777:in `call'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:777:in `ddl_transaction'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:719:in `block in migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:700:in `each'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:700:in `migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:570:in `up'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/migration.rb:551:in `migrate'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/gems/activerecord-3.2.13/lib/active_record/railties/databases.rake:193:in `block (2 levels) in <top (required)>'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:246:in `call'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:246:in `block in execute'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:241:in `each'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:241:in `execute'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:184:in `block in invoke_with_call_chain'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:177:in `invoke_with_call_chain'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/task.rb:170:in `invoke'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:143:in `invoke_task'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:101:in `block (2 levels) in top_level'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:101:in `each'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:101:in `block in top_level'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:110:in `run_with_threads'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:95:in `top_level'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:73:in `block in run'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:160:in `standard_exception_handling'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392@global/gems/rake-10.0.4/lib/rake/application.rb:70:in `run'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/bin/ruby_noexec_wrapper:14:in `eval'
/home/mcloud-user/.rvm/gems/ruby-1.9.3-p392/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

cross plugin bug

The plugin does not work together with redmine canned responses
commandprompt/redmine_canned_responses#6

The plugin does not work together wit redmine tags

ActionView::Template::Error (undefined method render_tag_link' for #<#<Class:0xee662>:0x3751ea>): 1: <% unless issue.tag_list.empty? %> 2: <tr> 3: <td><b><%=l(:tags)%>:</b></td> 4: <td><%= safe_join(issue.tag_counts.collect{ |t| render_tag_link(t, :show_count => false, :open_only => false) }, ', ') %></td> 5: </tr> 6: <% end %> lib/redmine/hook.rb:111:inview_issues_show_details_bottom'
lib/redmine/hook.rb:61:in call_hook' lib/redmine/hook.rb:61:incall_hook'
lib/redmine/hook.rb:58:in call_hook' lib/redmine/hook.rb:158:incall_hook'
app/views/issues/show.html.erb:68:in _app_views_issues_show_html_erb__851819656_14434' app/controllers/issues_controller.rb:117:inshow'
app/controllers/issues_controller.rb:114:in `show'

Error when saving ticket with new tag

NoMethodError (undefined method color=' for #<ActsAsTaggableOn::Tag id: nil, name: "stichwort1">): /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/tag.rb:47:infind_or_create_all_with_like_by_name'
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/tag.rb:47:in map' /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/tag.rb:47:infind_or_create_all_with_like_by_name'
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:216:in save_tags' /usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:210:ineach'
/usr/local/lib/ruby/gems/1.8/gems/acts-as-taggable-on-2.0.6/lib/acts_as_taggable_on/acts_as_taggable_on/core.rb:210:in save_tags' app/models/issue.rb:554:insave_issue_with_child_records'
app/models/issue.rb:536:in save_issue_with_child_records' app/controllers/issues_controller.rb:170:inupdate'
passenger (2.2.14) lib/phusion_passenger/rack/request_handler.rb:92:in process_request' passenger (2.2.14) lib/phusion_passenger/abstract_request_handler.rb:207:inmain_loop'
passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:441:in start_request_handler' passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:381:inhandle_spawn_application'
passenger (2.2.14) lib/phusion_passenger/utils.rb:252:in safe_fork' passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:377:inhandle_spawn_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:in __send__' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:inmain_loop'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:196:in start_synchronously' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:163:instart'
passenger (2.2.14) lib/phusion_passenger/railz/application_spawner.rb:222:in start' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:262:inspawn_rails_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:126:in lookup_or_add' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:256:inspawn_rails_application'
passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:80:in synchronize' passenger (2.2.14) lib/phusion_passenger/abstract_server_collection.rb:79:insynchronize'
passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:255:in spawn_rails_application' passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:154:inspawn_application'
passenger (2.2.14) lib/phusion_passenger/spawn_manager.rb:287:in handle_spawn_application' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:insend'
passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:352:in main_loop' passenger (2.2.14) lib/phusion_passenger/abstract_server.rb:196:instart_synchronously'

bugs and compatibility with redminecrm plugin

Please check cross plugin issues with redmine_crm plugin http://redminecrm.com/pages/main , which also make heavy usage of acts_astaggable and there already was many issues.

At the moment there is this issue


BUG - undefined method `name' for 'taglabel'

Since i updated to redmine 2.3 (ruby 2) and crm 3.2.1 i get a template error when calling http://redmine:3001/contacts

ActionView::Template::Error (undefined method name' for "MYTAGNAME":String): 1: <div id="tags"> 2: <span id="single_tags"> 3: <h3><%= l(:label_tags_plural) %></h3> 4: <span class="tag_list"><%= tags_cloud.map{|tag| tag_link(tag.name, :count => tag.count)}.join(' ').html_safe %></span> 5: </span> 6: 7: </div> app/helpers/application_helper.rb:1145:incontent_for'

debug out, warning or error - [redmine_tags] Unknown sorting option: <:>

I found a strange error on my logs regarding redmine tags:

[redmine_tags] Unknown sorting option: <:>

See in log context below

Started GET "/work_load/show" for 172.25.252.99 at 2012-12-19 14:21:08 +0100
Processing by WorkLoadController#show as HTML
Current user: 00001276 (id=3)
Rendered plugins/redmine_contacts/app/views/issues/_contacts.html.erb (0.0ms)
Rendered plugins/redmine_contacts_helpdesk/app/views/issues/_helpdesk_customer_profile.html.erb (0.0ms)
Rendered plugins/redmine_issue_templates/app/views/issue_templates/_issue_template_link.html.erb (0.0ms)
[redmine_tags] Unknown sorting option: <:>
Rendered plugins/redmine_tags/app/views/issues/_tags_sidebar.html.erb (797.0ms)
Rendered plugins/redmine_anonymous_watchers/app/views/issues/_sidebar_anonymous_watchers.html.erb (0.0ms)

Required redmine version mismatch

The readme says >= 2.1.0 but init.rb says 1.2.0

I guess one of these should be changed so that they say the same thing? Unfortunately I'm not able to work out which it is.

Added translation to portuguese

Added translation to portuguese: pt.yml

# This file is a part of redmine_tags
# redMine plugin, that adds tagging support.
#
# English translation for redmine_tags
# by Aleksey V Zapparov AKA ixti
#
# Copyright (c) 2010 Aleksey V Zapparov AKA ixti
#
# redmine_tags is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# redmine_tags is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with redmine_tags.  If not, see <http://www.gnu.org/licenses/>.

pt:
  tags: Tags
  field_tags: Tags
  field_tag_list: Tags
  setting_issue_tags: Tags das tarefas
  issues_sidebar: Mostrar tags na barralateral como
  issues_show_count: Mostrar número de problemas
  issues_open_only: Mostrar apenas problemas abertos
  issues_sort_by: Ordenar tags por
  issues_use_colors: Usar cores

  issue_tags_sidebar_none: Nenhuma
  issue_tags_sidebar_list: Lista
  issue_tags_sidebar_cloud: Núvem
  issue_tags_sidebar_simple_cloud: Núvem simples

  issues_sort_by_name: Nome
  issues_sort_by_count: Número de problemas
  issues_sort_order_asc: Ascendente
  issues_sort_order_desc: Descendente

  auto_complete_new_tag: Adicionar nova...

Tags in issues in sub-projects are not selectable in higher projects

I have a project hierarchy:

Project A
-- > Project B
-- > Project C

in Project B, I have an issue with tag "X"
in Project C, I habe an issue with tag "Y"

In ticket list of project B, I can search by tags and X ist offered as an option but in ticket list of project A, tag "X" ist not offered as an option. Only tags in the same projects are displayed.

But if I click on a tag in ticket list Project A, then I see the wanted list of tickets with the clicked tag.

I want to see all tags from all tickets from subprojects. May you correct this bug?

Refinements for tag colours

I do really like the idea of colouring tags -- it makes it much easier to see and recognise them. But, I think they could be made even better:

  • some tags have a light colour, which makes it difficult to see the white text (eg: http://snag.gy/5AMqJ.jpg)
  • some colours are just ugly
  • some colours are a bit garish, and can sort of 'take over' the whole page

I don't really have too much of an idea of how to fix these issues. Perhaps changing the algorithm which chooses the colour so that colours are only taken from a pre-determined set or range?

I'll think more about this later.

Overwriting tags when editing issues in bulk

When bulk editing a group of issues, if the issues have no tags in common, the tags list appears empty. If you put a tag in on the bulk edit page, instead of appending (which I think is what most people would expect), it replaces all those issues' tag lists. It's very easy to accidentally remove tags this way.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.