Skip to content

Commit b31b7e8

Browse files
Release OpenProject 12.2.0
2 parents da89688 + 7d35386 commit b31b7e8

File tree

4,232 files changed

+87290
-34648
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

4,232 files changed

+87290
-34648
lines changed

.buildpacks

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
https://github.com/heroku/heroku-buildpack-nodejs.git#v162
2-
https://github.com/pkgr/heroku-buildpack-ruby.git#v212-1
1+
https://github.com/heroku/heroku-buildpack-nodejs.git#v197
2+
https://github.com/pkgr/heroku-buildpack-ruby.git#v242-1

.editorconfig

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ end_of_line = lf
44
indent_size = 2
55
ij_continuation_indent_size = 2
66
indent_style = space
7-
insert_final_newline = false
7+
insert_final_newline = true
88
max_line_length = 120
99
tab_width = 2
1010
ij_formatter_off_tag = @formatter:off
@@ -352,6 +352,7 @@ ij_json_wrap_long_lines = false
352352
[{rcov,spec,rake,rails,spork,capfile,gemfile,rakefile,guardfile,isolate,vagrantfile,Puppetfile,*.jbuilder,*.rbw,*.gemspec,*.thor,*.ru,*.rb,*.rake}]
353353
indent_size = 2
354354
tab_width = 2
355+
trim_trailing_whitespace=true
355356
ij_continuation_indent_size = 2
356357
ij_ruby_align_group_field_declarations = false
357358
ij_ruby_align_multiline_parameters = true
@@ -539,4 +540,4 @@ ij_typescript_while_on_new_line = false
539540
ij_typescript_wrap_comments = false
540541

541542
[docs/api/**/*.yml]
542-
trim_trailing_whitespace = false
543+
trim_trailing_whitespace = false

.git-blame-ignore-revs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# .git-blame-ignore-revs
2+
# lint with rubocop --autocorrect (safe cops only)
3+
48a4f1b6adb1e847a90a61f2ab277f28bcd77608

.github/workflows/brakeman-scan-core.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,14 @@ on:
1010
schedule:
1111
- cron: '10 6 * * 1'
1212

13+
permissions:
14+
contents: read
15+
1316
jobs:
1417
brakeman-scan:
18+
permissions:
19+
contents: read # for actions/checkout to fetch code
20+
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
1521
if: github.repository == 'opf/openproject'
1622
name: Brakeman Scan
1723
runs-on: ubuntu-latest

.github/workflows/continuous-delivery.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,13 @@ on:
44
branches:
55
- dev
66
- release/*
7+
permissions:
8+
contents: read
9+
710
jobs:
811
trigger_downstream_workflow:
12+
permissions:
13+
contents: none
914
if: github.repository == 'opf/openproject'
1015
runs-on: ubuntu-latest
1116
steps:

.github/workflows/pullpreview.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ jobs:
1818
run: |
1919
echo "OP_ADMIN_USER_SEEDER_FORCE_PASSWORD_CHANGE=off" >> .env.pullpreview
2020
echo "OPENPROJECT_SHOW__SETTING__MISMATCH__WARNING=false" >> .env.pullpreview
21+
echo "OPENPROJECT_FEATURE__STORAGES__MODULE__ACTIVE=true" >> .env.pullpreview
2122
- name: Boot as BIM edition
2223
if: contains(github.ref, 'bim/') || contains(github.head_ref, 'bim/')
2324
run: |

.github/workflows/test-core.yml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,9 @@ on:
1414
- 'docs/**'
1515
- 'help/**'
1616

17+
permissions:
18+
contents: read
19+
1720
jobs:
1821
units:
1922
name: Units
@@ -30,10 +33,10 @@ jobs:
3033
uses: actions/cache@v2
3134
with:
3235
path: /tmp/cache
33-
key: ${{ runner.os }}-ruby3-core-tests-units-${{ hashFiles('**/Gemfile.lock') }}
36+
key: ${{ runner.os }}-ruby31-core-tests-units-${{ hashFiles('**/Gemfile.lock') }}
3437
restore-keys: |
35-
${{ runner.os }}-ruby3-core-tests-units-
36-
${{ runner.os }}-ruby3-core-tests-
38+
${{ runner.os }}-ruby31-core-tests-units-
39+
${{ runner.os }}-ruby31-core-tests-
3740
- name: test
3841
run: |
3942
docker-compose -f docker-compose.ci.yml build --pull ci
@@ -60,10 +63,10 @@ jobs:
6063
uses: actions/cache@v2
6164
with:
6265
path: /tmp/cache
63-
key: ${{ runner.os }}-ruby3-core-tests-features-${{ hashFiles('**/Gemfile.lock') }}
66+
key: ${{ runner.os }}-ruby31-core-tests-features-${{ hashFiles('**/Gemfile.lock') }}
6467
restore-keys: |
65-
${{ runner.os }}-ruby3-core-tests-features-
66-
${{ runner.os }}-ruby3-core-tests-
68+
${{ runner.os }}-ruby31-core-tests-features-
69+
${{ runner.os }}-ruby31-core-tests-
6770
- name: test
6871
run: |
6972
docker-compose -f docker-compose.ci.yml build --pull ci

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ npm-debug.log*
4848
/tags
4949
/tags.lock
5050
/tags.temp
51+
/tags.files
5152

5253
# Ignore RubyMine files
5354
/.idea

.pkgr.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ targets:
2525
<<: *debian9
2626
ubuntu-20.04:
2727
<<: *debian9
28+
ubuntu-22.04:
29+
<<: *debian9
2830
centos-7: &centos7
2931
env:
3032
- BUNDLE_BUILD__PG="--with-pg-config=/usr/pgsql-13/bin/pg_config"
@@ -55,7 +57,6 @@ wizards:
5557
- https://github.com/pkgr/addon-postgres
5658
- https://github.com/pkgr/addon-apache2.git
5759
- ./packaging/addons/repositories
58-
- https://github.com/pkgr/addon-smtp.git
5960
- https://github.com/pkgr/addon-memcached.git
6061
- ./packaging/addons/openproject
6162
buildpack: https://github.com/opf/heroku-buildpack-multi.git#master

.redocly.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
apis:
2+
main:
3+
root: docs/api/apiv3/openapi-spec.yml
4+
5+
lint:
6+
extends:
7+
- recommended

.rubocop.yml

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,19 @@
11
require:
22
- rubocop-rails
33
- rubocop-rspec
4+
- ./lib_static/rubocop/cop/open_project/use_service_result_factory_methods.rb
5+
6+
inherit_mode:
7+
merge:
8+
# adding files to Exclude should merge with inherited instead of replacing
9+
- Exclude
410

511
AllCops:
6-
TargetRubyVersion: 3.0
12+
TargetRubyVersion: 3.1
713
# Enable any new cops in new versions by default
814
NewCops: enable
915
Exclude:
10-
- db/schema.rb
16+
- '**/node_modules/**/*'
1117

1218
Gemspec/RequiredRubyVersion:
1319
Exclude:
@@ -172,11 +178,10 @@ RSpec/MultipleExpectations:
172178
- 'modules/*/spec/features/**/*.rb'
173179

174180
RSpec/MultipleMemoizedHelpers:
175-
Max: 20
176-
AllowSubject: true
181+
Enabled: false
177182

178183
RSpec/NestedGroups:
179-
Max: 4
184+
Enabled: false
180185

181186
# Don't force the second argument of describe
182187
# to be .class_method or #instance_method

.ruby-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.0.4
1+
3.1.2

Gemfile

Lines changed: 36 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@
2828

2929
source 'https://rubygems.org'
3030

31-
ruby '~> 3.0.4'
31+
ruby '~> 3.1.2'
3232

3333
gem 'actionpack-xml_parser', '~> 2.0.0'
3434
gem 'activemodel-serializers-xml', '~> 1.0.1'
3535
gem 'activerecord-import', '~> 1.4.0'
3636
gem 'activerecord-session_store', '~> 2.0.0'
37-
gem 'rails', '~> 6.1.5', '>= 6.1.5.1'
37+
gem 'rails', '~> 7.0', '>= 7.0.3.1'
3838
gem 'responders', '~> 3.0'
3939

4040
gem 'ffi', '~> 1.15'
@@ -57,8 +57,11 @@ gem 'friendly_id', '~> 5.4.0'
5757
gem 'acts_as_list', '~> 1.0.1'
5858
gem 'acts_as_tree', '~> 2.9.0'
5959
gem 'awesome_nested_set', '~> 3.5.0'
60-
gem 'rubytree', '~> 1.0.0'
61-
gem 'typed_dag', '~> 2.0.2'
60+
gem 'closure_tree', '~> 7.4.0'
61+
gem 'rubytree', '~> 2.0.0'
62+
# Only used in down migrations now.
63+
# Is to be removed once the referencing migrations have been squashed.
64+
gem 'typed_dag', '~> 2.0.2', require: false
6265

6366
gem 'addressable', '~> 2.8.0'
6467

@@ -83,9 +86,9 @@ gem 'html-pipeline', '~> 2.14.0'
8386
# Tasklist parsing and renderer
8487
gem 'deckar01-task_list', '~> 2.3.1'
8588
# Requires escape-utils for faster escaping
86-
gem 'escape_utils', '~> 1.0'
89+
gem 'escape_utils', '~> 1.3'
8790
# Syntax highlighting used in html-pipeline with rouge
88-
gem 'rouge', '~> 3.28.0'
91+
gem 'rouge', '~> 3.29.0'
8992
# HTML sanitization used for html-pipeline
9093
gem 'sanitize', '~> 6.0.0'
9194
# HTML autolinking for mails and urls (replaces autolink)
@@ -148,11 +151,15 @@ gem 'airbrake', '~> 13.0.0', require: false
148151

149152
gem 'prawn', '~> 2.2'
150153
gem 'prawn-markup', '~> 0.3.0'
154+
# prawn implictly depends on matrix gem no longer in ruby core with 3.1
155+
gem 'matrix', '~> 0.4.2'
151156

152157
gem 'cells-erb', '~> 0.1.0'
153158
gem 'cells-rails', '~> 0.1.4'
154159

155-
gem 'meta-tags', '~> 2.16.0'
160+
gem 'meta-tags', '~> 2.17.0'
161+
162+
gem "paper_trail", "~> 12.3"
156163

157164
group :production do
158165
# we use dalli as standard memcache client
@@ -162,10 +169,12 @@ end
162169

163170
gem 'i18n-js', '~> 3.9.0'
164171
gem 'rails-i18n', '~> 7.0.0'
165-
gem 'sprockets', '~> 3.7.0'
172+
173+
gem 'sprockets', '~> 3.7.2' # lock sprockets below 4.0
174+
gem 'sprockets-rails', '~> 3.4.2'
166175

167176
gem 'puma', '~> 5.6'
168-
gem 'rack-timeout', '~> 0.6.0', require: "rack/timeout/base"
177+
gem 'rack-timeout', '~> 0.6.3', require: "rack/timeout/base"
169178
gem 'puma-plugin-statsd', '~> 2.0'
170179

171180
gem 'nokogiri', '~> 1.13.4'
@@ -191,13 +200,16 @@ gem 'mini_magick', '~> 4.11.0', require: false
191200
gem 'validate_url'
192201

193202
# Sentry error reporting
194-
gem "sentry-delayed_job", '~> 5.2.0'
195-
gem "sentry-rails", '~> 5.2.0'
196-
gem "sentry-ruby", '~> 5.2.0'
203+
gem "sentry-delayed_job", '~> 5.3.0'
204+
gem "sentry-rails", '~> 5.3.0'
205+
gem "sentry-ruby", '~> 5.3.0'
206+
207+
# Appsignal integration
208+
gem "appsignal", "~> 3.0", require: false
197209

198210
group :test do
199211
gem 'launchy', '~> 2.5.0'
200-
gem 'rack-test', '~> 1.1.0'
212+
gem 'rack-test', '~> 2.0.0'
201213
gem 'shoulda-context', '~> 2.0'
202214

203215
# Test prof provides factories from code
@@ -208,7 +220,7 @@ group :test do
208220
gem 'rack_session_access'
209221
gem 'rspec', '~> 3.11.0'
210222
# also add to development group, so "spec" rake task gets loaded
211-
gem 'rspec-rails', '~> 5.1.0', group: :development
223+
gem 'rspec-rails', '6.0.0.rc1', group: :development
212224

213225
# Retry failures within the same environment
214226
gem 'retriable', '~> 3.1.1'
@@ -220,7 +232,7 @@ group :test do
220232
# brings back testing for 'assigns' and 'assert_template' extracted in rails 5
221233
gem 'rails-controller-testing', '~> 1.0.2'
222234

223-
gem 'capybara', '~> 3.36.0'
235+
gem 'capybara', '~> 3.37.0'
224236
gem 'capybara-screenshot', '~> 1.0.17'
225237
gem 'selenium-webdriver', '~> 4.0'
226238
gem 'webdrivers', '~> 5.0.0'
@@ -255,16 +267,13 @@ group :development do
255267
gem 'spring'
256268
gem 'spring-commands-rspec'
257269

258-
gem 'rubocop'
259-
gem 'rubocop-rails'
260-
gem 'rubocop-rspec'
261-
262270
# Gems for living styleguide
263271
gem 'livingstyleguide', '~> 2.1.0'
264272
gem 'sassc-rails'
265273
end
266274

267275
group :development, :test do
276+
gem 'dotenv-rails'
268277
# Require factory_bot for usage with openproject plugins testing
269278
gem 'factory_bot', '~> 6.2.0'
270279
# require factory_bot_rails for convenience in core development
@@ -281,15 +290,20 @@ group :development, :test do
281290
gem 'pry-rescue', '~> 1.5.2'
282291
gem 'pry-stack_explorer', '~> 0.6.0'
283292

293+
# ruby linting
294+
gem 'rubocop', require: false
295+
gem 'rubocop-rails', require: false
296+
gem 'rubocop-rspec', require: false
297+
284298
# git hooks manager
285-
gem 'lefthook'
299+
gem 'lefthook', require: false
286300

287301
# Brakeman scanner
288302
gem 'brakeman', '~> 5.2.0'
289303
gem 'danger-brakeman'
290304
end
291305

292-
gem 'bootsnap', '~> 1.11.0', require: false
306+
gem 'bootsnap', '~> 1.12.0', require: false
293307

294308
# API gems
295309
gem 'grape', '~> 1.6.0'
@@ -304,7 +318,7 @@ gem 'disposable', '~> 0.6.2'
304318

305319
platforms :mri, :mingw, :x64_mingw do
306320
group :postgres do
307-
gem 'pg', '~> 1.3.0'
321+
gem 'pg', '~> 1.4.0'
308322
end
309323

310324
# Support application loading when no database exists yet.

0 commit comments

Comments
 (0)