Permalink
Browse files

Merge tag 'v6.0.1' into stable/6

  • Loading branch information...
2 parents 3f4fefe + cd647cf commit 4956878bbf86f28cd0dd14041b6dd23a2a695f36 @oliverguenther oliverguenther committed Aug 1, 2016
Showing with 1,740 additions and 600 deletions.
  1. +11 −1 .rubocop.yml
  2. +3 −0 Gemfile
  3. +52 −50 Gemfile.lock
  4. +1 −1 app/assets/stylesheets/content/_work_packages.sass
  5. +5 −0 app/assets/stylesheets/content/_work_packages_table_edit.sass
  6. +8 −0 app/assets/stylesheets/layout/_top_menu.sass
  7. +0 −1 app/assets/stylesheets/layout/_work_package_mobile.sass
  8. +1 −1 app/controllers/api/experimental/queries_controller.rb
  9. +9 −11 app/controllers/api/experimental/work_packages_controller.rb
  10. +2 −3 app/controllers/wiki_controller.rb
  11. +6 −6 app/controllers/wiki_menu_items_controller.rb
  12. +1 −1 app/helpers/application_helper.rb
  13. +56 −1 app/helpers/queries_helper.rb
  14. +1 −1 app/helpers/wiki_helper.rb
  15. +2 −2 app/mailers/user_mailer.rb
  16. +6 −2 app/models/queries/work_packages/available_filter_options.rb
  17. +29 −3 app/models/wiki.rb
  18. +14 −16 app/models/wiki_page.rb
  19. +2 −2 app/views/common/_no_results.html.erb
  20. +2 −1 app/views/queries/_filters.html.erb
  21. +7 −2 app/views/repositories/_revisions.html.erb
  22. +0 −3 app/views/repositories/_settings.html.erb
  23. +6 −12 app/views/repositories/settings/_vendor_attribute_groups.html.erb
  24. +15 −5 app/views/repositories/settings/_vendor_form.html.erb
  25. +12 −29 app/views/repositories/settings/repository_form.js.erb
  26. +2 −4 app/views/search/index.html.erb
  27. +2 −1 app/views/timelines/_general.html.erb
  28. +1 −1 app/views/timelines/_timeline.html.erb
  29. +1 −1 app/views/user_mailer/wiki_content_added.html.erb
  30. +1 −1 app/views/user_mailer/wiki_content_added.text.erb
  31. +1 −1 app/views/user_mailer/wiki_content_updated.html.erb
  32. +1 −1 app/views/user_mailer/wiki_content_updated.text.erb
  33. +1 −1 app/views/wiki/_content.html.erb
  34. +5 −5 app/views/wiki/annotate.html.erb
  35. +1 −1 app/views/wiki/date_index.html.erb
  36. +9 −9 app/views/wiki/destroy.html.erb
  37. +1 −1 app/views/wiki/diff.html.erb
  38. +3 −3 app/views/wiki/edit.html.erb
  39. +1 −1 app/views/wiki/export.html.erb
  40. +1 −1 app/views/wiki/export_multiple.html.erb
  41. +1 −1 app/views/wiki/history.html.erb
  42. +1 −1 app/views/wiki/new.html.erb
  43. +1 −1 app/views/wiki/show.html.erb
  44. +2 −2 app/views/wiki_menu_items/edit.html.erb
  45. +7 −1 config/locales/en.yml
  46. +69 −0 db/migrate/20160726090624_add_slug_to_wiki_pages.rb
  47. +24 −0 doc/operation_guides/manual/upgrade-guide.md
  48. +34 −23 doc/operation_guides/packager/installation-guide.md
  49. +11 −12 doc/operation_guides/packager/upgrade-guide-legacy.md
  50. +31 −1 doc/operation_guides/packager/upgrade-guide.md
  51. +2 −2 features/wiki/parent_page.feature
  52. +1 −1 features/wiki/wiki_rename.feature
  53. +12 −6 frontend/app/components/api/api-v3/hal-resources/work-package-resource.service.ts
  54. +2 −1 frontend/app/components/filters/query-filters/query-filters.directive.html
  55. +17 −8 frontend/app/components/routing/wp-show/wp-show.controller.ts
  56. +2 −0 frontend/app/components/work-packages/wp-attachments/wp-attachments.directive.test.ts
  57. +1 −1 frontend/app/components/work-packages/wp-display-attr/wp-display-attr.directive.html
  58. +1 −1 frontend/app/components/work-packages/wp-single-view/single-view-wp.service.ts
  59. +7 −4 frontend/app/components/wp-copy/wp-copy.controller.ts
  60. +3 −5 frontend/app/components/wp-edit/wp-edit-form.directive.ts
  61. +5 −3 frontend/app/components/wp-relations/wp-relation-group/wp-parent-relation-group.service.ts
  62. +1 −3 frontend/app/components/wp-table/wp-table.directive.html
  63. +43 −167 frontend/app/components/wp-table/wp-virtual-scroll.directive.ts
  64. +2 −0 frontend/app/templates/work_packages/watchers/lookup.html
  65. +1 −0 frontend/app/work_packages/controllers/menus/query-select-dropdown-menu-controller.js
  66. +1 −1 frontend/bower.json
  67. +1 −1 lib/api/v3/work_packages/work_package_representer.rb
  68. +5 −2 lib/open_project/text_formatting.rb
  69. +4 −1 lib/open_project/version.rb
  70. +1 −1 lib/redmine/wiki_formatting/null_formatter/helper.rb
  71. +1 −1 lib/redmine/wiki_formatting/textile/helper.rb
  72. +2 −2 spec/controllers/wiki_controller_spec.rb
  73. +1 −1 spec/factories/custom_field_factory.rb
  74. +23 −20 spec/features/repositories/create_repository_spec.rb
  75. +2 −2 spec/features/repositories/repository_settings_spec.rb
  76. +113 −0 spec/features/wiki/wiki_unicode_spec.rb
  77. +67 −6 spec/features/work_packages/details/inplace_editor/custom_field_spec.rb
  78. +16 −1 spec/features/work_packages/edit_work_package_spec.rb
  79. +117 −0 spec/features/work_packages/export_spec.rb
  80. +4 −4 spec/features/work_packages/tabs/watcher_tab_spec.rb
  81. +27 −0 spec/features/work_packages/work_packages_page.rb
  82. +1 −1 spec/lib/api/v3/work_packages/work_package_representer_spec.rb
  83. +27 −14 spec/lib/open_project/text_formatting_spec.rb
  84. +118 −0 spec/models/wiki/wiki_titles_migration_spec.rb
  85. +17 −0 spec/models/wiki_page_spec.rb
  86. +17 −14 spec/models/wiki_spec.rb
  87. +5 −0 spec/support/pages/abstract_work_package.rb
  88. +10 −0 spec_legacy/fixtures/wiki_pages.yml
  89. +1 −1 spec_legacy/functional/repositories_controller_spec.rb
  90. +10 −10 spec_legacy/functional/wiki_controller_spec.rb
  91. +3 −3 spec_legacy/unit/helpers/application_helper_spec.rb
  92. +5 −5 spec_legacy/unit/lib/redmine/wiki_formatting/macros_spec.rb
  93. +8 −8 spec_legacy/unit/wiki_redirect_spec.rb
  94. +1 −1 vendored-plugins/openproject-auth_plugins/lib/open_project/auth_plugins/version.rb
  95. +1 −1 vendored-plugins/openproject-backlogs/lib/open_project/backlogs/version.rb
  96. +3 −3 vendored-plugins/openproject-costs/app/views/cost_types/_list.html.erb
  97. +1 −1 vendored-plugins/openproject-costs/lib/open_project/costs/version.rb
  98. +1 −1 vendored-plugins/openproject-documents/lib/open_project/documents/version.rb
  99. +1 −1 vendored-plugins/openproject-github_integration/lib/open_project/github_integration/version.rb
  100. +1 −1 vendored-plugins/openproject-global_roles/lib/open_project/global_roles/version.rb
  101. +1 −1 vendored-plugins/openproject-local_avatars/lib/open_project/local_avatars/version.rb
  102. +1 −2 vendored-plugins/openproject-meeting/app/views/meetings/_form.html.erb
  103. +1 −1 vendored-plugins/openproject-meeting/lib/open_project/meeting/version.rb
  104. +1 −1 vendored-plugins/openproject-my_project_page/lib/open_project/my_project_page/version.rb
  105. +1 −1 vendored-plugins/openproject-openid_connect/lib/open_project/openid_connect/version.rb
  106. +1 −1 vendored-plugins/openproject-pdf_export/lib/open_project/pdf_export/version.rb
  107. +1 −1 vendored-plugins/openproject-reporting/app/controllers/cost_reports_controller.rb
  108. +1 −1 vendored-plugins/openproject-reporting/lib/open_project/reporting/engine.rb
  109. +1 −1 vendored-plugins/openproject-reporting/lib/open_project/reporting/version.rb
  110. +1 −1 vendored-plugins/openproject-themes-dark/lib/open_project/themes/dark/version.rb
  111. +1 −1 vendored-plugins/openproject-webhooks/lib/open_project/webhooks/version.rb
  112. +7 −0 vendored-plugins/openproject-xls_export/Gemfile.plugins
  113. +15 −0 vendored-plugins/openproject-xls_export/README.md
  114. +6 −1 vendored-plugins/openproject-xls_export/config/locales/de.yml
  115. +7 −1 vendored-plugins/openproject-xls_export/config/locales/en.yml
  116. +1 −0 vendored-plugins/openproject-xls_export/config/locales/js-de.yml
  117. +1 −0 vendored-plugins/openproject-xls_export/config/locales/js-en.yml
  118. +6 −0 vendored-plugins/openproject-xls_export/lib/open_project/xls_export/engine.rb
  119. +16 −6 vendored-plugins/openproject-xls_export/lib/open_project/xls_export/hooks/work_package_hook.rb
  120. +44 −0 ...ins/openproject-xls_export/lib/open_project/xls_export/patches/api/experimental/export_formats.rb
  121. +37 −38 ...gins/openproject-xls_export/lib/open_project/xls_export/patches/work_packages_controller_patch.rb
  122. +1 −1 vendored-plugins/openproject-xls_export/lib/open_project/xls_export/version.rb
  123. +216 −0 vendored-plugins/openproject-xls_export/lib/open_project/xls_export/work_package_xls_export.rb
  124. +190 −0 vendored-plugins/openproject-xls_export/spec/lib/work_package_xls_export_spec.rb
  125. +1 −1 vendored-plugins/reporting_engine/lib/report/controller.rb
  126. +1 −1 vendored-plugins/reporting_engine/lib/reporting_engine/version.rb
  127. +1 −1 vendored-plugins/reporting_engine/lib/widget/settings.rb
View
@@ -201,8 +201,18 @@ SignalException:
SpecialGlobalVars:
Enabled: false
+# Forcing single quotes doesn't give any reasonable advantages. To the contrary:
+# it forces you to change the quotes every time you want to add interpolation,
+# newlines or other escape sequences (\n), or quotes (') to a string. Rubbish.
+# Don't even think about performance. That never was a valid argument to begin with.
+#
+# For the record: using single quotes does NOT have any performance advantages.
+# Even if it did, this would be a silly argument.
+#
+# Ideally we would just use double quotes everywhere but since that would result
+# in innumerable rubocop offenses we will just disable this. Quote away.
StringLiterals:
- EnforcedStyle: single_quotes
+ Enabled: false
VariableInterpolation:
Enabled: false
View
@@ -65,6 +65,9 @@ gem 'tzinfo-data'
# to generate html-diffs (e.g. for wiki comparison)
gem 'htmldiff'
+# Generate url slugs with #to_url and other string niceties
+gem 'stringex', '~> 2.6.1'
+
# generates SVG Graphs
# used for statistics on svn repositories
gem 'svg-graph', github: 'why-el/svg-graph', branch: 'silence-class-access-warning'
View
@@ -104,10 +104,10 @@ GIT
GIT
remote: https://github.com/opf/openproject-translations.git
- revision: 9a50ec05340896ea879ed8f2bf0a86e59462bc70
+ revision: eacdb7c1312a9b4b969f0bb31124492970212de5
branch: stable/6
specs:
- openproject-translations (6.0.0)
+ openproject-translations (6.0.1)
crowdin-api (~> 0.4.0)
mixlib-shellout (~> 2.1.0)
rails (~> 4.2.3)
@@ -140,66 +140,66 @@ GIT
PATH
remote: vendored-plugins/openproject-auth_plugins
specs:
- openproject-auth_plugins (6.0.0)
+ openproject-auth_plugins (6.0.1)
omniauth (~> 1.0)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-backlogs
specs:
- openproject-backlogs (6.0.0)
+ openproject-backlogs (6.0.1)
acts_as_silent_list (~> 2.0.0)
- openproject-pdf_export (= 6.0.0)
+ openproject-pdf_export (= 6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-costs
specs:
- openproject-costs (6.0.0)
+ openproject-costs (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-documents
specs:
- openproject-documents (6.0.0)
+ openproject-documents (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-github_integration
specs:
- openproject-github_integration (6.0.0)
- openproject-webhooks (~> 6.0.0)
+ openproject-github_integration (6.0.1)
+ openproject-webhooks (~> 6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-global_roles
specs:
- openproject-global_roles (6.0.0)
+ openproject-global_roles (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-local_avatars
specs:
- openproject-local_avatars (6.0.0)
+ openproject-local_avatars (6.0.1)
rails (~> 4.2.4)
rmagick (~> 2.15.4)
PATH
remote: vendored-plugins/openproject-meeting
specs:
- openproject-meeting (6.0.0)
+ openproject-meeting (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-my_project_page
specs:
- openproject-my_project_page (6.0.0)
+ openproject-my_project_page (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-openid_connect
specs:
- openproject-openid_connect (6.0.0)
+ openproject-openid_connect (6.0.1)
lobby_boy (~> 0.1)
omniauth-openid_connect-providers (~> 0.1)
openproject-auth_plugins (~> 6.0)
@@ -208,57 +208,57 @@ PATH
PATH
remote: vendored-plugins/openproject-pdf_export
specs:
- openproject-pdf_export (6.0.0)
+ openproject-pdf_export (6.0.1)
prawn (~> 2.1.0)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-reporting
specs:
- openproject-reporting (6.0.0)
- openproject-costs (= 6.0.0)
+ openproject-reporting (6.0.1)
+ openproject-costs (= 6.0.1)
rails (~> 4.2.4)
reporting_engine (>= 1.1.0)
PATH
remote: vendored-plugins/openproject-themes-dark
specs:
- openproject-themes-dark (6.0.0)
+ openproject-themes-dark (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-webhooks
specs:
- openproject-webhooks (6.0.0)
+ openproject-webhooks (6.0.1)
rails (~> 4.2.4)
PATH
remote: vendored-plugins/openproject-xls_export
specs:
- openproject-xls_export (6.0.0)
+ openproject-xls_export (6.0.1)
rails (~> 4.2.4)
spreadsheet (~> 0.8.9)
PATH
remote: vendored-plugins/reporting_engine
specs:
- reporting_engine (6.0.0)
+ reporting_engine (6.0.1)
json
rails (~> 4.2.4)
GEM
remote: https://rubygems.org/
specs:
Ascii85 (1.0.2)
- actionmailer (4.2.6)
- actionpack (= 4.2.6)
- actionview (= 4.2.6)
- activejob (= 4.2.6)
+ actionmailer (4.2.7)
+ actionpack (= 4.2.7)
+ actionview (= 4.2.7)
+ activejob (= 4.2.7)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 1.0, >= 1.0.5)
- actionpack (4.2.6)
- actionview (= 4.2.6)
- activesupport (= 4.2.6)
+ actionpack (4.2.7)
+ actionview (= 4.2.7)
+ activesupport (= 4.2.7)
rack (~> 1.6)
rack-test (~> 0.6.2)
rails-dom-testing (~> 1.0, >= 1.0.5)
@@ -267,29 +267,29 @@ GEM
actionpack (>= 4.0.0, < 5.0)
actionpack-xml_parser (1.0.2)
actionpack (>= 4.0.0, < 5)
- actionview (4.2.6)
- activesupport (= 4.2.6)
+ actionview (4.2.7)
+ activesupport (= 4.2.7)
builder (~> 3.1)
erubis (~> 2.7.0)
rails-dom-testing (~> 1.0, >= 1.0.5)
rails-html-sanitizer (~> 1.0, >= 1.0.2)
- activejob (4.2.6)
- activesupport (= 4.2.6)
+ activejob (4.2.7)
+ activesupport (= 4.2.7)
globalid (>= 0.3.0)
- activemodel (4.2.6)
- activesupport (= 4.2.6)
+ activemodel (4.2.7)
+ activesupport (= 4.2.7)
builder (~> 3.1)
- activerecord (4.2.6)
- activemodel (= 4.2.6)
- activesupport (= 4.2.6)
+ activerecord (4.2.7)
+ activemodel (= 4.2.7)
+ activesupport (= 4.2.7)
arel (~> 6.0)
activerecord-session_store (0.1.2)
actionpack (>= 4.0.0, < 5)
activerecord (>= 4.0.0, < 5)
railties (>= 4.0.0, < 5)
activerecord-tableless (1.3.4)
activerecord (>= 2.3.0)
- activesupport (4.2.6)
+ activesupport (4.2.7)
i18n (~> 0.7)
json (~> 1.7, >= 1.7.7)
minitest (~> 5.1)
@@ -589,16 +589,16 @@ GEM
rack_session_access (0.1.1)
builder (>= 2.0.0)
rack (>= 1.0.0)
- rails (4.2.6)
- actionmailer (= 4.2.6)
- actionpack (= 4.2.6)
- actionview (= 4.2.6)
- activejob (= 4.2.6)
- activemodel (= 4.2.6)
- activerecord (= 4.2.6)
- activesupport (= 4.2.6)
+ rails (4.2.7)
+ actionmailer (= 4.2.7)
+ actionpack (= 4.2.7)
+ actionview (= 4.2.7)
+ activejob (= 4.2.7)
+ activemodel (= 4.2.7)
+ activerecord (= 4.2.7)
+ activesupport (= 4.2.7)
bundler (>= 1.3.0, < 2.0)
- railties (= 4.2.6)
+ railties (= 4.2.7)
sprockets-rails
rails-deprecated_sanitizer (1.0.3)
activesupport (>= 4.2.0.alpha)
@@ -617,9 +617,9 @@ GEM
rails (> 3.1)
rails_serve_static_assets (0.0.5)
rails_stdout_logging (0.0.5)
- railties (4.2.6)
- actionpack (= 4.2.6)
- activesupport (= 4.2.6)
+ railties (4.2.7)
+ actionpack (= 4.2.7)
+ activesupport (= 4.2.7)
rake (>= 0.8.7)
thor (>= 0.18.1, < 2.0)
rainbow (2.1.0)
@@ -724,6 +724,7 @@ GEM
activesupport (>= 4.0)
sprockets (>= 3.0.0)
sqlite3 (1.3.11)
+ stringex (2.6.1)
structured_warnings (0.2.0)
swd (1.0.1)
activesupport (>= 3)
@@ -919,6 +920,7 @@ DEPENDENCIES
simplecov
sprockets (~> 3.5.2)
sqlite3
+ stringex (~> 2.6.1)
svg-graph!
syck (~> 1.0.5)
sys-filesystem (~> 1.1.4)
@@ -154,7 +154,7 @@ $work-package-details--tab-height: 40px
.work-package--new-state
- padding: 0 20px 64px 0
+ padding: 0 20px 0px 0
overflow-y: auto
.work-packages--edit-actions
@@ -82,6 +82,11 @@
.work-package--placeholder
padding: 0 10px 0 0px
+ .inplace-edit--read-value--value-span
+ width: 100%
+ .error.macro-unavailable
+ display: inline-block
+
// Mark focused, non-editable read-values
.inplace-edit--read-value.-read-only
&:focus, &:hover
@@ -314,3 +314,11 @@ input.top-menu-search--input
.top-menu-search:not(.-collapsed) .top-menu-search--button
top: -3px
z-index: 10
+
+@media only screen and (max-width: 18.75rem)
+ #logo
+ max-width: 170px
+
+@media only screen and (max-width: 15rem)
+ #logo
+ display: none
@@ -149,7 +149,6 @@
font-size: 0.9rem
.work-package--new-state
- margin-bottom: 0
overflow: auto
padding-right: 0
@@ -59,7 +59,7 @@ def custom_field_filters
else
WorkPackageCustomField.for_all
end
- @custom_field_filters = @query.get_custom_field_options(custom_fields)
+ @custom_field_filters = @query.get_custom_field_options(custom_fields, v3_naming: true)
respond_to do |format|
format.api
@@ -83,17 +83,15 @@ def query_as_json(query, user)
end
def export_formats
- export_formats = [{ identifier: 'atom', format: 'atom', label_locale: 'label_format_atom' },
- { identifier: 'pdf', format: 'pdf', label_locale: 'label_format_pdf' },
- { identifier: 'pdf-descr', format: 'pdf', label_locale: 'label_format_pdf_with_descriptions', flags: ['show_descriptions'] },
- { identifier: 'csv', format: 'csv', label_locale: 'label_format_csv' }]
- # TODO: This does not belong here and should be replaced by a hook that
- # aggregates possible formats from the plug-ins.
- if Redmine::Plugin.all.sort.map(&:id).include?(:openproject_xls_export)
- export_formats.push(identifier: 'xls', format: 'xls', label_locale: 'label_format_xls')
- export_formats.push(identifier: 'xls-descr', format: 'xls', label_locale: 'label_format_xls_with_descriptions', flags: ['show_descriptions'])
- end
- export_formats
+ [
+ { identifier: 'atom', format: 'atom', label_locale: 'label_format_atom' },
+ { identifier: 'pdf', format: 'pdf', label_locale: 'label_format_pdf' },
+ {
+ identifier: 'pdf-descr', format: 'pdf',
+ label_locale: 'label_format_pdf_with_descriptions', flags: ['show_descriptions']
+ },
+ { identifier: 'csv', format: 'csv', label_locale: 'label_format_csv' }
+ ]
end
end
end
@@ -226,7 +226,7 @@ def rename
return render_403 unless editable?
@page.redirect_existing_links = true
# used to display the *original* title if some AR validation errors occur
- @original_title = @page.pretty_title
+ @original_title = @page.title
if request.patch? && @page.update_attributes(permitted_params.wiki_page_rename)
flash[:notice] = l(:notice_successful_update)
redirect_to_show
@@ -370,8 +370,7 @@ def parse_preview_data
private
def wiki_page_title
- title = params[:id]
- CGI.unescape(title) if title.present?
+ params[:id]
end
def find_wiki
Oops, something went wrong.

0 comments on commit 4956878

Please sign in to comment.