Permalink
Browse files

Release OpenProject 8.0.1

  • Loading branch information...
oliverguenther committed Sep 26, 2018
2 parents d9b6b86 + 4cd874b commit 34419a2ba35ba3a1cb391aec6fdf1e801c349c16
Showing with 1,412 additions and 1,081 deletions.
  1. +1 −1 Gemfile
  2. +27 −36 Gemfile.lock
  3. +21 −33 Gemfile.plugins
  4. +2 −0 app/assets/javascripts/repository_navigation.js
  5. +1 −1 app/assets/javascripts/vendor/ckeditor/ckeditor.js
  6. +1 −1 app/assets/javascripts/vendor/ckeditor/ckeditor.js.map
  7. +4 −0 app/assets/stylesheets/content/_choice.sass
  8. +0 −1 app/assets/stylesheets/layout/_drop_down.sass
  9. +97 −0 app/contracts/types/base_contract.rb
  10. +4 −0 app/controllers/application_controller.rb
  11. +3 −0 app/controllers/repositories_controller.rb
  12. +2 −43 app/models/type/attribute_groups.rb
  13. +16 −5 app/services/base_type_service.rb
  14. +1 −2 app/services/create_type_service.rb
  15. +0 −5 app/services/update_type_service.rb
  16. +1 −1 app/views/account/_login.html.erb
  17. +6 −2 app/views/queries/_filters.html.erb
  18. +1 −1 app/views/repositories/_dir_list_content.html.erb
  19. +1 −0 app/views/settings/_notifications.html.erb
  20. +12 −0 config/configuration.yml.example
  21. +1 −0 config/locales/crowdin/af.yml
  22. +1 −0 config/locales/crowdin/ar.yml
  23. +1 −0 config/locales/crowdin/bg.yml
  24. +1 −0 config/locales/crowdin/ca.yml
  25. +19 −18 config/locales/crowdin/cs.yml
  26. +1 −0 config/locales/crowdin/da.yml
  27. +27 −24 config/locales/crowdin/de.yml
  28. +33 −30 config/locales/crowdin/es.yml
  29. +1 −0 config/locales/crowdin/et.yml
  30. +51 −50 config/locales/crowdin/fa.yml
  31. +1 −0 config/locales/crowdin/fi.yml
  32. +1 −0 config/locales/crowdin/fil.yml
  33. +6 −6 config/locales/crowdin/fr.yml
  34. +1 −0 config/locales/crowdin/he.yml
  35. +1 −0 config/locales/crowdin/hr.yml
  36. +1 −0 config/locales/crowdin/hu.yml
  37. +6 −5 config/locales/crowdin/id.yml
  38. +71 −68 config/locales/crowdin/it.yml
  39. +2 −2 config/locales/crowdin/ja.yml
  40. +6 −2 config/locales/crowdin/js-af.yml
  41. +6 −2 config/locales/crowdin/js-ar.yml
  42. +6 −2 config/locales/crowdin/js-bg.yml
  43. +6 −2 config/locales/crowdin/js-ca.yml
  44. +8 −4 config/locales/crowdin/js-cs.yml
  45. +6 −2 config/locales/crowdin/js-da.yml
  46. +18 −15 config/locales/crowdin/js-de.yml
  47. +123 −115 config/locales/crowdin/js-es.yml
  48. +6 −2 config/locales/crowdin/js-et.yml
  49. +31 −27 config/locales/crowdin/js-fa.yml
  50. +6 −2 config/locales/crowdin/js-fi.yml
  51. +6 −2 config/locales/crowdin/js-fil.yml
  52. +18 −15 config/locales/crowdin/js-fr.yml
  53. +6 −2 config/locales/crowdin/js-he.yml
  54. +6 −2 config/locales/crowdin/js-hr.yml
  55. +6 −2 config/locales/crowdin/js-hu.yml
  56. +6 −2 config/locales/crowdin/js-id.yml
  57. +9 −6 config/locales/crowdin/js-it.yml
  58. +9 −6 config/locales/crowdin/js-ja.yml
  59. +6 −2 config/locales/crowdin/js-ko.yml
  60. +6 −2 config/locales/crowdin/js-lol.yml
  61. +6 −2 config/locales/crowdin/js-lt.yml
  62. +6 −2 config/locales/crowdin/js-lv.yml
  63. +9 −5 config/locales/crowdin/js-nl.yml
  64. +6 −2 config/locales/crowdin/js-no.yml
  65. +8 −5 config/locales/crowdin/js-pl.yml
  66. +10 −6 config/locales/crowdin/js-pt-BR.yml
  67. +5 −1 config/locales/crowdin/js-pt.yml
  68. +6 −3 config/locales/crowdin/js-ro.yml
  69. +20 −16 config/locales/crowdin/js-ru.yml
  70. +6 −2 config/locales/crowdin/js-sk.yml
  71. +6 −2 config/locales/crowdin/js-sv-SE.yml
  72. +6 −2 config/locales/crowdin/js-th.yml
  73. +52 −50 config/locales/crowdin/js-tr.yml
  74. +6 −2 config/locales/crowdin/js-uk.yml
  75. +6 −2 config/locales/crowdin/js-vi.yml
  76. +6 −2 config/locales/crowdin/js-zh-TW.yml
  77. +5 −1 config/locales/crowdin/js-zh.yml
  78. +2 −2 config/locales/crowdin/ko.yml
  79. +1 −0 config/locales/crowdin/lol.yml
  80. +1 −0 config/locales/crowdin/lt.yml
  81. +1 −0 config/locales/crowdin/lv.yml
  82. +2 −2 config/locales/crowdin/nl.yml
  83. +1 −0 config/locales/crowdin/no.yml
  84. +3 −2 config/locales/crowdin/pl.yml
  85. +3 −2 config/locales/crowdin/pt-BR.yml
  86. +3 −2 config/locales/crowdin/pt.yml
  87. +1 −0 config/locales/crowdin/ro.yml
  88. +21 −19 config/locales/crowdin/ru.yml
  89. +1 −0 config/locales/crowdin/sk.yml
  90. +1 −0 config/locales/crowdin/sv-SE.yml
  91. +1 −0 config/locales/crowdin/th.yml
  92. +43 −44 config/locales/crowdin/tr.yml
  93. +1 −0 config/locales/crowdin/uk.yml
  94. +1 −0 config/locales/crowdin/vi.yml
  95. +1 −0 config/locales/crowdin/zh-TW.yml
  96. +2 −2 config/locales/crowdin/zh.yml
  97. +1 −0 config/locales/en.yml
  98. +3 −0 config/settings.yml
  99. +6 −0 db/migrate/20180510184732_rename_planning_elemnt_type_colors_to_colors.rb
  100. +15 −9 docs/api/apiv3/endpoints/queries.apib
  101. +8 −8 docs/api/apiv3/endpoints/work-packages.apib
  102. +1 −1 docs/user/textile-to-markdown-migration/README.md
  103. +3 −1 frontend/src/app/components/routing/wp-list/wp-list.component.ts
  104. +3 −1 frontend/src/app/components/work-packages/work-package-comment/work-package-comment.component.ts
  105. +4 −4 frontend/src/app/components/wp-edit-form/work-package-changeset.ts
  106. +71 −33 frontend/src/app/components/wp-list/wp-list.service.ts
  107. +4 −1 frontend/src/app/components/wp-query-select/wp-query-select-dropdown.component.ts
  108. +2 −2 frontend/src/app/components/wp-query-select/wp-static-queries.service.ts
  109. +1 −1 frontend/src/app/components/wp-relations/wp-relations-hierarchy/wp-relations-hierarchy.directive.ts
  110. +5 −0 frontend/src/app/components/wp-table/timeline/container/wp-timeline-container.directive.ts
  111. +2 −0 frontend/src/app/modules/common/loading-indicator/loading-indicator.service.ts
  112. +13 −3 frontend/src/app/modules/hal/dm-services/query-dm.service.ts
  113. +7 −6 lib/api/utilities/payload_representer.rb
  114. +1 −0 lib/open_project/configuration.rb
  115. +1 −1 lib/open_project/static/links.rb
  116. +1 −0 lib/open_project/text_formatting/matchers/resource_links_matcher.rb
  117. +1 −1 lib/open_project/version.rb
  118. +1 −0 packaging/conf/configuration.yml
  119. +49 −0 script/ci/cache_prepare.sh
  120. +13 −5 script/{ci_runner.sh → ci/runner.sh}
  121. +8 −18 script/{ci_setup.sh → ci/setup.sh}
  122. +23 −0 spec/features/work_packages/new/new_work_package_spec.rb
  123. +35 −1 spec/features/wysiwyg/macros/code_block_macro_spec.rb
  124. +49 −2 spec/lib/open_project/configuration_spec.rb
  125. +6 −0 spec/lib/open_project/text_formatting/markdown/markdown_spec.rb
  126. +0 −45 spec/models/type/attribute_groups_spec.rb
  127. +2 −2 spec/services/create_type_service_spec.rb
  128. +10 −11 spec/services/shared_type_service.rb
  129. +49 −1 spec/services/update_type_service_spec.rb
  130. +7 −3 spec/support/work_packages/work_package_field.rb
  131. +1 −1 vendored-plugins/openproject-auth_plugins/lib/open_project/auth_plugins/version.rb
  132. +1 −1 vendored-plugins/openproject-avatars/lib/open_project/avatars/version.rb
  133. +1 −1 vendored-plugins/openproject-backlogs/lib/open_project/backlogs/version.rb
  134. +1 −1 vendored-plugins/openproject-costs/lib/open_project/costs/version.rb
  135. +1 −1 vendored-plugins/openproject-documents/lib/open_project/documents/version.rb
  136. +1 −1 vendored-plugins/openproject-github_integration/lib/open_project/github_integration/version.rb
  137. +1 −1 vendored-plugins/openproject-global_roles/lib/open_project/global_roles/version.rb
  138. +1 −1 vendored-plugins/openproject-ldap_groups/lib/open_project/ldap_groups/version.rb
  139. +1 −1 vendored-plugins/openproject-meeting/lib/open_project/meeting/version.rb
  140. +1 −1 vendored-plugins/openproject-my_project_page/lib/open_project/my_project_page/version.rb
  141. +1 −1 vendored-plugins/openproject-openid_connect/lib/open_project/openid_connect/version.rb
  142. +1 −1 vendored-plugins/openproject-pdf_export/lib/open_project/pdf_export/version.rb
  143. +1 −1 vendored-plugins/openproject-reporting/lib/open_project/reporting/version.rb
  144. +0 −170 vendored-plugins/openproject-two_factor_authentication/config/locales/crowdin/sv-SE.yml
  145. +1 −1 ...ugins/openproject-two_factor_authentication/lib/open_project/two_factor_authentication/version.rb
  146. +4 −3 vendored-plugins/openproject-webhooks/app/workers/work_package_webhook_job.rb
  147. +1 −1 vendored-plugins/openproject-webhooks/lib/open_project/webhooks/version.rb
  148. +1 −1 vendored-plugins/openproject-xls_export/lib/open_project/xls_export/version.rb
  149. +1 −1 vendored-plugins/reporting_engine/lib/reporting_engine/version.rb
View
@@ -161,7 +161,7 @@ gem 'sprockets', '~> 3.7.0'
# also, better than thin since we can control worker concurrency.
gem 'unicorn'
gem 'nokogiri', '~> 1.8.2'
gem 'nokogiri', '~> 1.8.4'
# carrierwave 0.11.3 should allow to use fog-aws without the rest of the
# fog dependency chain. We only need aws here, so we can avoid it
View
@@ -1,11 +1,3 @@
GIT
remote: git://github.com/omniauth/omniauth-saml.git
revision: d46562dc191a697957e7b9151024c7fee86fcce9
specs:
omniauth-saml (1.10.1)
omniauth (~> 1.3, >= 1.3.2)
ruby-saml (~> 1.7)
GIT
remote: https://github.com/dr0verride/RubyTree.git
revision: 06f53ee78cc2a48377c1bd177d3bc83c1504701c
@@ -94,67 +86,67 @@ GIT
PATH
remote: vendored-plugins/openproject-auth_plugins
specs:
openproject-auth_plugins (8.0.0)
openproject-auth_plugins (8.0.1)
omniauth (~> 1.0)
rails (~> 5.0)
PATH
remote: vendored-plugins/openproject-avatars
specs:
openproject-avatars (8.0.0)
openproject-avatars (8.0.1)
fastimage (~> 2.1.0)
gravatar_image_tag (~> 1.2.0)
rails (~> 5.0)
PATH
remote: vendored-plugins/openproject-backlogs
specs:
openproject-backlogs (8.0.0)
openproject-backlogs (8.0.1)
acts_as_silent_list (~> 3.0.0)
openproject-pdf_export (= 8.0.0)
openproject-pdf_export (= 8.0.1)
PATH
remote: vendored-plugins/openproject-costs
specs:
openproject-costs (8.0.0)
openproject-costs (8.0.1)
PATH
remote: vendored-plugins/openproject-documents
specs:
openproject-documents (8.0.0)
openproject-documents (8.0.1)
PATH
remote: vendored-plugins/openproject-github_integration
specs:
openproject-github_integration (8.0.0)
openproject-webhooks (~> 8.0.0)
openproject-github_integration (8.0.1)
openproject-webhooks (~> 8.0.1)
rails (~> 5.0)
PATH
remote: vendored-plugins/openproject-global_roles
specs:
openproject-global_roles (8.0.0)
openproject-global_roles (8.0.1)
PATH
remote: vendored-plugins/openproject-ldap_groups
specs:
openproject-ldap_groups (8.0.0)
openproject-ldap_groups (8.0.1)
PATH
remote: vendored-plugins/openproject-meeting
specs:
openproject-meeting (8.0.0)
openproject-meeting (8.0.1)
icalendar (~> 2.3.0)
PATH
remote: vendored-plugins/openproject-my_project_page
specs:
openproject-my_project_page (8.0.0)
openproject-my_project_page (8.0.1)
PATH
remote: vendored-plugins/openproject-openid_connect
specs:
openproject-openid_connect (8.0.0)
openproject-openid_connect (8.0.1)
lobby_boy (~> 0.1.3)
omniauth-openid_connect-providers (~> 0.1)
openproject-auth_plugins (~> 8.0)
@@ -163,22 +155,22 @@ PATH
PATH
remote: vendored-plugins/openproject-pdf_export
specs:
openproject-pdf_export (8.0.0)
openproject-pdf_export (8.0.1)
pdf-inspector (~> 1.3.0)
prawn (~> 2.2)
PATH
remote: vendored-plugins/openproject-reporting
specs:
openproject-reporting (8.0.0)
openproject-reporting (8.0.1)
jquery-tablesorter (~> 1.25.5)
openproject-costs (= 8.0.0)
openproject-costs (= 8.0.1)
reporting_engine (>= 1.1.0)
PATH
remote: vendored-plugins/openproject-two_factor_authentication
specs:
openproject-two_factor_authentication (8.0.0)
openproject-two_factor_authentication (8.0.1)
aws-sdk-sns (~> 1.1.0)
messagebird-rest (~> 1.3.2)
rails (~> 5)
@@ -187,19 +179,19 @@ PATH
PATH
remote: vendored-plugins/openproject-webhooks
specs:
openproject-webhooks (8.0.0)
openproject-webhooks (8.0.1)
rails (~> 5.0)
PATH
remote: vendored-plugins/openproject-xls_export
specs:
openproject-xls_export (8.0.0)
openproject-xls_export (8.0.1)
spreadsheet (~> 0.8.9)
PATH
remote: vendored-plugins/reporting_engine
specs:
reporting_engine (8.0.0)
reporting_engine (8.0.1)
json
rails (~> 5.1.0)
@@ -490,8 +482,6 @@ GEM
multi_json (~> 1.0)
rspec (>= 2.0, < 4.0)
kgio (2.11.2)
ladle (1.0.1)
open4 (~> 1.0)
launchy (2.4.3)
addressable (~> 2.3)
letter_opener (1.4.1)
@@ -534,13 +524,15 @@ GEM
netrc (0.11.0)
newrelic_rpm (4.5.0.337)
nio4r (2.3.0)
nokogiri (1.8.2)
nokogiri (1.8.4)
mini_portile2 (~> 2.3.0)
nokogumbo (1.5.0)
nokogiri
oj (3.5.0)
okcomputer (1.16.0)
open4 (1.3.4)
omniauth-saml (1.7.0)
omniauth (~> 1.3)
ruby-saml (~> 1.4)
openid_connect (1.1.6)
activemodel
attr_required (>= 1.0.0)
@@ -880,7 +872,6 @@ DEPENDENCIES
htmldiff
i18n-js (~> 3.0.0)
json_spec (~> 1.1.4)
ladle
launchy (~> 2.4.3)
letter_opener
livingstyleguide (~> 2.0.1)
@@ -889,13 +880,13 @@ DEPENDENCIES
mysql2 (~> 0.5.0)
net-ldap (~> 0.16.0)
newrelic_rpm
nokogiri (~> 1.8.2)
nokogiri (~> 1.8.4)
oj (~> 3.5.0)
okcomputer (~> 1.16.0)
omniauth!
omniauth-openid-connect!
omniauth-openid_connect-providers!
omniauth-saml!
omniauth-saml (~> 1.7.0)
openproject-auth_plugins!
openproject-auth_saml!
openproject-avatars!
@@ -986,4 +977,4 @@ RUBY VERSION
ruby 2.5.1p57
BUNDLED WITH
1.16.3
1.16.5
View
@@ -1,37 +1,25 @@
#
# DO NOT CHANGE THE ORDER OF PLUGINS
#
group :opf_plugins do
gem "openproject-global_roles", path: "vendored-plugins/openproject-global_roles"
gem "openproject-auth_plugins", path: "vendored-plugins/openproject-auth_plugins"
gem "omniauth-saml", github: "omniauth/omniauth-saml"
gem "openproject-auth_saml", git: 'https://github.com/finnlabs/openproject-auth_saml', branch: 'dev'
gem 'omniauth-openid_connect-providers', git: 'https://github.com/finnlabs/omniauth-openid_connect-providers.git', branch: 'dev'
gem 'omniauth-openid-connect', git: 'https://github.com/finnlabs/omniauth-openid-connect.git', branch: 'dev'
gem "openproject-openid_connect", path: "vendored-plugins/openproject-openid_connect"
gem "openproject-documents", path: "vendored-plugins/openproject-documents"
gem "openproject-my_project_page", path: "vendored-plugins/openproject-my_project_page"
gem "openproject-xls_export", path: "vendored-plugins/openproject-xls_export"
gem "reporting_engine", path: "vendored-plugins/reporting_engine"
gem "openproject-costs", path: "vendored-plugins/openproject-costs"
gem "openproject-reporting", path: "vendored-plugins/openproject-reporting"
gem "openproject-meeting", path: "vendored-plugins/openproject-meeting"
gem "openproject-pdf_export", path: "vendored-plugins/openproject-pdf_export"
gem "openproject-backlogs", path: "vendored-plugins/openproject-backlogs"
gem "openproject-avatars", path: "vendored-plugins/openproject-avatars"
gem "openproject-two_factor_authentication", path: "vendored-plugins/openproject-two_factor_authentication"
gem "openproject-ldap_groups", path: "vendored-plugins/openproject-ldap_groups"
gem "openproject-webhooks", path: "vendored-plugins/openproject-webhooks"
gem "openproject-github_integration", path: "vendored-plugins/openproject-github_integration"
end
group :development, :test do
gem 'ladle'
gem 'omniauth-saml', '~> 1.7.0'
gem 'openproject-auth_plugins', path: 'vendored-plugins/openproject-auth_plugins'
gem 'openproject-global_roles', path: 'vendored-plugins/openproject-global_roles'
gem 'openproject-openid_connect', path: 'vendored-plugins/openproject-openid_connect'
gem 'openproject-documents', path: 'vendored-plugins/openproject-documents'
gem 'openproject-my_project_page', path: 'vendored-plugins/openproject-my_project_page'
gem 'openproject-xls_export', path: 'vendored-plugins/openproject-xls_export'
gem 'reporting_engine', path: 'vendored-plugins/reporting_engine'
gem 'openproject-costs', path: 'vendored-plugins/openproject-costs'
gem 'openproject-reporting', path: 'vendored-plugins/openproject-reporting'
gem 'openproject-meeting', path: 'vendored-plugins/openproject-meeting'
gem 'openproject-pdf_export', path: 'vendored-plugins/openproject-pdf_export'
gem 'openproject-backlogs', path: 'vendored-plugins/openproject-backlogs'
gem 'openproject-webhooks', path: 'vendored-plugins/openproject-webhooks'
gem 'openproject-github_integration', path: 'vendored-plugins/openproject-github_integration'
gem 'openproject-avatars', path: 'vendored-plugins/openproject-avatars'
gem 'openproject-two_factor_authentication', path: 'vendored-plugins/openproject-two_factor_authentication'
gem 'openproject-ldap_groups', path: 'vendored-plugins/openproject-ldap_groups'
gem 'openproject-auth_saml', git: 'https://github.com/finnlabs/openproject-auth_saml', branch: 'dev'
end
@@ -46,10 +46,12 @@
Enable select2
*/
branch.select2({
dropdownCssClass: '-large-dropdown',
placeholder: I18n.t('js.repositories.select_branch')
}
);
tag.select2({
dropdownCssClass: '-large-dropdown',
placeholder: I18n.t('js.repositories.select_tag'),
});

Large diffs are not rendered by default.

Oops, something went wrong.

Large diffs are not rendered by default.

Oops, something went wrong.
@@ -52,3 +52,7 @@ $choice-parent-relation-select-width: 375px
.choice--button
.button
margin: 2px
.select2-drop.-large-dropdown
min-width: 25vw
@@ -66,7 +66,6 @@
.dropdown .dropdown-menu,
.drop-down .menu-drop-down-container
LI > A,
LABEL,
.menu-item
display: block
@include varprop(color, context-menu-unselected-font-color)
@@ -0,0 +1,97 @@
#-- encoding: UTF-8
#-- copyright
# OpenProject is a project management system.
# Copyright (C) 2012-2018 the OpenProject Foundation (OPF)
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
#
# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
# Copyright (C) 2006-2017 Jean-Philippe Lang
# Copyright (C) 2010-2013 the ChiliProject Team
#
# This program 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 2
# of the License, or (at your option) any later version.
#
# This program 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 this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# See docs/COPYRIGHT.rdoc for more details.
#++
require 'model_contract'
module Types
class BaseContract < ::ModelContract
def self.model
Type
end
attribute :name
attribute :is_in_roadmap
attribute :is_milestone
attribute :is_default
attribute :color_id
attribute :project_ids
attribute :attribute_groups
validate :validate_current_user_is_admin
validate :validate_attribute_group_names
validate :validate_attribute_groups
def validate_current_user_is_admin
unless user.admin?
errors.add(:base, :error_unauthorized)
end
end
def validate_attribute_group_names
seen = Set.new
model.attribute_groups.each do |group|
errors.add(:attribute_groups, :group_without_name) unless group.key.present?
errors.add(:attribute_groups, :duplicate_group, group: group.key) if seen.add?(group.key).nil?
end
end
def validate_attribute_groups
model.attribute_groups_objects.each do |group|
if group.is_a?(Type::QueryGroup)
validate_query_group(group)
else
validate_attribute_group(group)
end
end
end
def validate_query_group(group)
query = group.query
contract_class = query.persisted? ? Queries::UpdateContract : Queries::CreateContract
contract = contract_class.new(query, user)
unless contract.validate
errors.add(:attribute_groups, :query_invalid, group: group.key, details: contract.errors.full_messages.join)
end
end
def validate_attribute_group(group)
valid_attributes = model.work_package_attributes.keys
group.attributes.each do |key|
if key.is_a?(String) && valid_attributes.exclude?(key)
errors.add(:attribute_groups, :attribute_unknown)
end
end
end
end
end
Oops, something went wrong.

0 comments on commit 34419a2

Please sign in to comment.