Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] dev from opf:dev #227

Merged
merged 140 commits into from
May 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
140 commits
Select commit Hold shift + click to select a range
43dd5e5
fix[Op#52098]: Invalidate form validity when direct upload is too large
akabiru Apr 29, 2024
cd6676f
chore[Op#52098]: match error message Byte unit expectation
akabiru Apr 29, 2024
a6fdf33
tests[Op#52098]: add feature spec covering form validity check
akabiru Apr 29, 2024
4aea4fb
tests[Op#52098]: assert the correct error message is returned
akabiru Apr 29, 2024
94e3fa2
tests[Op#52098]: separate regular vs direct uploads in shared examples
akabiru Apr 30, 2024
96ac329
[#54459] Investigate queries and filters to display the project list …
akabiru Apr 26, 2024
2baa37e
fix[Op#54459]: Redefine `Project.with_available_custom_fields` as a s…
akabiru May 7, 2024
4383421
fix[Op#54459]: Replace unneeded `list_contains` filter and use `list`
akabiru May 7, 2024
952c553
chore[Op#54459]: rename `Projects::Scopes::AvailableCustomFields` to …
akabiru May 7, 2024
e27af2f
chore[Op#54459]: rubocop amend `app/models/project`
akabiru May 7, 2024
d166dce
chore[Op#54459]: Render the custom field name for UI benefits
akabiru May 8, 2024
5226586
tests[Op#54459]: Add API resource spec for new filter
akabiru May 8, 2024
547eeb5
docs[Op#54459]: document the `available_project_attributes` filter
akabiru May 8, 2024
92d59bc
fix[Op#54459]: undo erroneous updates
akabiru May 8, 2024
2c28952
add comment explaining change to mail API
machisuji May 10, 2024
06039dc
[chore] Specify requestBody schema for post and patch project
sbu-WBT May 11, 2024
d9dbb63
[chore] Specify requestBody schema for post time entry
sbu-WBT May 11, 2024
5ffe30f
remove obsolete migration which breaks updating to 14.0
machisuji May 9, 2024
f5a0c1f
build(deps): bump aws-sdk-core from 3.194.2 to 3.195.0
dependabot[bot] May 13, 2024
32aedd3
Downgrade prawn 2.4.0 due to https://github.com/prawnpdf/prawn/issues…
Eric-Guo May 13, 2024
76c3858
Bump lodash to 4.17.21
oliverguenther May 13, 2024
6265940
Merge pull request #15519 from opf/dependabot/bundler/dev/aws-sdk-cor…
ulferts May 13, 2024
f99b9e7
Only allow precompiled assets to be injected when running from CI
crohr May 13, 2024
402b425
Explicitly dockerignore local assets
crohr May 13, 2024
d449b34
enterprise checks for PDF gantt
oliverguenther May 13, 2024
9b7db54
fix: frontend/package.json to reduce vulnerabilities
snyk-bot May 13, 2024
0195e78
fix(pdf gantt): deal with work package types without a color
as-op May 13, 2024
9954445
[#53474] Having custom columns on Sharepoint blocks the copying of dr…
MayaBerd May 13, 2024
edde32c
Merge branch 'release/14.0' into release/14.1
oliverguenther May 13, 2024
4572685
[51447] Use same headings for permissions report and role forms
cbliard May 13, 2024
804c523
Merge pull request #15527 from opf/fix/deal-with-incomplete-types
as-op May 13, 2024
74b4ef3
Remove installation method for univention app center
oliverguenther May 13, 2024
97132f7
Merge pull request #15530 from opf/bug/51447-fix-different-headings-i…
cbliard May 13, 2024
6179eac
Remove ID from the container around the draggable autocompleter as th…
HDinger May 13, 2024
139de4b
remove obsolete translations for 12.0 update
machisuji May 13, 2024
89debae
Merge pull request #15532 from opf/maintenance/remove-obsolete-transl…
machisuji May 13, 2024
f13425c
Merge branch 'dev' into bug/52098-misleading-error-message-ifc-direct…
akabiru May 13, 2024
26df5ff
[#51745] Consolidate translations strings for work package sharing fe…
dombesz May 13, 2024
612d170
Merge pull request #15523 from opf/fix/docker-image-asset-precompile
machisuji May 13, 2024
ac38f6e
Avoid ckEditor to overflow on mobile, see #54128
HDinger May 13, 2024
9a934ea
Fix typo
dombesz May 13, 2024
997b1e2
task(pdf): change the default paper size; fix drawing bug and add mis…
as-op May 13, 2024
c9a99c4
fix(lint): obey rubocop
as-op May 13, 2024
53eee8c
[#53672] Rename migration.
ba1ash May 13, 2024
925f697
Fix typo
cbliard May 13, 2024
9fd1760
Merge pull request #15538 from opf/feature/53672-hide-attachments-in-…
ba1ash May 13, 2024
0837423
Exclude text custom fields from sorting
klaustopher May 13, 2024
a16426c
Merge pull request #15536 from opf/task/55002-pdf-export-change-the-d…
as-op May 13, 2024
affb065
Store visible custom fields in request store
klaustopher May 13, 2024
592bee1
Use prompt instead of empty option
klaustopher May 13, 2024
0cdc6e6
Merge branch 'refs/heads/release/14.1' into chore/pdf-export-ee
as-op May 13, 2024
324496b
Merge pull request #15533 from opf/code-maintenance/51745-consolidate…
dombesz May 13, 2024
4234698
tests[Op#52098]: mark feature test as pending for now
akabiru May 13, 2024
48503ed
Merge pull request #15411 from opf/bug/52098-misleading-error-message…
akabiru May 13, 2024
e093621
test(export dialog): add tests for pdf export variants
as-op May 13, 2024
69eecf6
Fix `bin/setup_dev` script
aaron-contreras May 14, 2024
936896a
update locales from crowdin [ci skip]
openprojectci May 14, 2024
d8b7a6d
update locales from crowdin [ci skip]
openprojectci May 14, 2024
cae1576
build(deps-dev): bump @typescript-eslint/eslint-plugin in /frontend
dependabot[bot] May 14, 2024
dca9b33
Add 14.1.0 release notes draft (#15520)
oliverguenther May 14, 2024
804867d
build(deps-dev): bump lefthook from 1.6.10 to 1.6.11
dependabot[bot] May 14, 2024
936738a
Merge pull request #15547 from opf/dependabot/bundler/dev/lefthook-1.…
klaustopher May 14, 2024
7b318e2
build(deps): bump aws-sdk-s3 from 1.149.1 to 1.150.0
dependabot[bot] May 14, 2024
09912d2
build(deps): bump nokogiri from 1.16.4 to 1.16.5
dependabot[bot] May 14, 2024
895b0f5
Make overflow rule more specific to the textarea field where it is ne…
HDinger May 14, 2024
51bb8f5
Merge pull request #15543 from opf/chore/fix-setup-dev-script
klaustopher May 14, 2024
509bdba
Merge pull request #15550 from opf/dependabot/bundler/dev/nokogiri-1.…
ulferts May 14, 2024
50a8f0f
Merge pull request #15525 from opf/chore/pdf-export-ee
as-op May 14, 2024
5c9212c
Merge pull request #15539 from opf/fix-sorting-by-long-text
ulferts May 14, 2024
da5c8a4
Merge remote-tracking branch 'origin/release/14.1' into dev
ulferts May 14, 2024
e6e7594
Merge pull request #15549 from opf/dependabot/bundler/dev/aws-sdk-s3-…
ulferts May 14, 2024
58734ab
Merge pull request #15551 from opf/bug/54128-text-editor-is-partially…
HDinger May 14, 2024
298e9c4
build(deps): bump aws-sdk-core from 3.195.0 to 3.196.0
dependabot[bot] May 14, 2024
cce2f4a
Merge pull request #15548 from opf/dependabot/bundler/dev/aws-sdk-cor…
klaustopher May 14, 2024
6ae2583
Merge pull request #15546 from opf/dependabot/npm_and_yarn/frontend/d…
klaustopher May 14, 2024
2bc8e3d
Upgrade base ruby image for docker images (#15534)
crohr May 14, 2024
eae6b70
[#55013] PDF Gantt Export: work package values in first column
as-op May 14, 2024
ba68d44
Set data attributes on the preview body to ensure that the correct Pr…
HDinger May 14, 2024
a137293
Merge pull request #15521 from Eric-Guo/embedded_font_failed
as-op May 14, 2024
e0a0f1b
fix(lint): obey rubocop
as-op May 14, 2024
fe1e69e
fix[Op#52098]: Invalidate form validity when direct upload is too lar…
akabiru May 14, 2024
32fd9b5
Merge pull request #15554 from opf/feature/55013-pdf-gantt-export-wor…
as-op May 14, 2024
d823b56
Merge pull request #15555 from opf/housekeeping/lookbook-styles
klaustopher May 14, 2024
2018c2f
Merge pull request #15531 from opf/bug/54746-typeahead-options-overly…
ulferts May 14, 2024
493121f
adapt min height after adding of tabs
ulferts May 14, 2024
8ce2356
Merge remote-tracking branch 'origin/release/14.1' into dev
ulferts May 14, 2024
9045ef6
Downgrade prawn 2.4.0 due to https://github.com/prawnpdf/prawn/issues…
Eric-Guo May 13, 2024
9a7040e
Possilbe having email like 12775518238@qq.com
Eric-Guo May 10, 2024
fe6c533
Merge pull request #15558 from opf/backport-prawn-downgrade
klaustopher May 14, 2024
6c7884f
Fix eslint complaint about 'eqeqeq' rule
aaron-contreras May 14, 2024
135e04a
Merge pull request #15515 from Eric-Guo/digital_start_email
dombesz May 14, 2024
c6f28a1
run rubocop workflow on PRs agains all branches and don't skip when n…
toy Apr 30, 2024
26ce13e
list all used rubocop extensions
toy Apr 29, 2024
a46f498
no need to fetch complete git history
toy Apr 30, 2024
7790a84
rename RSpec/Rails/HaveHttpStatus to RSpecRails/HaveHttpStatus in dis…
toy May 8, 2024
c56e604
update opf/action-rubocop
toy Apr 30, 2024
9392264
update locales from crowdin [ci skip]
openprojectci May 15, 2024
e5152ab
update locales from crowdin [ci skip]
openprojectci May 15, 2024
7166721
Merge branch 'release/14.1' into dev
openprojectci May 15, 2024
807aa31
build(deps): bump httpx from 1.2.4 to 1.2.5
dependabot[bot] May 15, 2024
752ddcb
build(deps): bump appsignal from 3.7.4 to 3.7.5
dependabot[bot] May 15, 2024
f5fb645
build(deps): bump aws-sdk-s3 from 1.150.0 to 1.151.0
dependabot[bot] May 15, 2024
632fe4f
build(deps-dev): bump @typescript-eslint/parser in /frontend
dependabot[bot] May 15, 2024
c034fe6
build(deps): bump core-js from 3.37.0 to 3.37.1 in /frontend
dependabot[bot] May 15, 2024
e900f19
Bump to primer_view_components 0.30.1 and octicons 19.12.0
HDinger May 14, 2024
5364fb4
Merge pull request #15553 from opf/housekeeping/bumo-primer-0-30
HDinger May 15, 2024
00e422a
Merge pull request #15565 from opf/dependabot/bundler/dev/aws-sdk-s3-…
ulferts May 15, 2024
5f42a8e
Merge pull request #15568 from opf/dependabot/npm_and_yarn/frontend/d…
ulferts May 15, 2024
d166bb9
Merge pull request #15567 from opf/dependabot/npm_and_yarn/frontend/d…
ulferts May 15, 2024
b9c31e3
Merge pull request #15563 from opf/dependabot/bundler/dev/httpx-1.2.5
ulferts May 15, 2024
2fda759
Merge pull request #15564 from opf/dependabot/bundler/dev/appsignal-3…
ulferts May 15, 2024
711236a
Merge pull request #15560 from opf/chore/fix-eslint-eqeqeq-complaint
HDinger May 15, 2024
fe56ffd
fix typos
as-op May 15, 2024
bb42d78
Merge pull request #15570 from opf/documentation/typo-fixes
as-op May 15, 2024
30067c2
fix[Op#54459]: Remove unnecessary distinct in subselect that degrades…
akabiru May 15, 2024
0da80c1
Merge pull request #15400 from opf/task/54459-investigate-queries-and…
akabiru May 15, 2024
0b0e814
update locales from crowdin [ci skip]
openprojectci May 16, 2024
508f539
update locales from crowdin [ci skip]
openprojectci May 16, 2024
9d45da8
Merge branch 'release/14.1' into dev
openprojectci May 16, 2024
50bdcb3
build(deps-dev): bump axe-core-rspec from 4.9.0 to 4.9.1
dependabot[bot] May 16, 2024
6afa390
build(deps-dev): bump letter_opener_web from 2.0.0 to 3.0.0
dependabot[bot] May 16, 2024
dd2de03
build(deps): bump aws-sdk-core from 3.196.0 to 3.196.1
dependabot[bot] May 16, 2024
6a4dab0
build(deps): bump the angular group in /frontend with 15 updates
dependabot[bot] May 16, 2024
f8bffb0
Merge pull request #15577 from opf/dependabot/bundler/dev/letter_open…
klaustopher May 16, 2024
73be5eb
Merge pull request #15576 from opf/dependabot/bundler/dev/axe-core-rs…
ulferts May 16, 2024
aa20dab
Merge pull request #15578 from opf/dependabot/bundler/dev/aws-sdk-cor…
ulferts May 16, 2024
d380ac1
Merge pull request #15579 from opf/dependabot/npm_and_yarn/frontend/d…
ulferts May 16, 2024
73abe6f
Fix layout & Rubocop stuff
klaustopher May 14, 2024
e38c8f3
Stubbing
klaustopher May 14, 2024
7defde9
Add debug to play around in the browser to build tasks
klaustopher May 16, 2024
f7d4a43
Add comment about cron expressions meaning
cbliard May 16, 2024
cc078d9
sort_by -> sort_by_via_table_header
klaustopher May 16, 2024
cb1618c
Implement tests for sort config
klaustopher May 16, 2024
b6ed462
Add example for IMAP folder
suntorytimed May 16, 2024
2e48415
[#51745] Remove unused translation string
dombesz May 16, 2024
4eb90a9
Merge pull request #15588 from opf/chore-remove-unused-translation
klaustopher May 16, 2024
d5d0311
Merge pull request #15416 from opf/rubocop-check
toy May 16, 2024
a092dfe
Update app/components/queries/sort_by_field_component.html.erb
klaustopher May 16, 2024
c51b775
Merge pull request #15585 from opf/tests-for-sorting
klaustopher May 16, 2024
ca14656
update locales from crowdin [ci skip]
openprojectci May 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,5 @@ frontend/node_modules
node_modules
# travis
vendor/bundle
# allow precompiled assets to be injected
!/public/assets
!/config/frontend_assets.manifest.json
/public/assets
/config/frontend_assets.manifest.json
5 changes: 5 additions & 0 deletions .github/workflows/docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ jobs:
- name: Precompile assets
run: |
./docker/prod/setup/precompile-assets.sh
# public/assets will be saved as artifact, so temporarily copying config file there as well
cp config/frontend_assets.manifest.json public/assets/frontend_assets.manifest.json
- uses: actions/upload-artifact@v3
with:
Expand Down Expand Up @@ -142,6 +143,10 @@ jobs:
ls -al public/
mv public/assets/frontend_assets.manifest.json config/frontend_assets.manifest.json
ls -al config/frontend_assets.manifest.json
# allow precompiled assets to be injected into docker image
echo '' >> .dockerignore
echo '!/public/assets' >> .dockerignore
echo '!/config/frontend_assets.manifest.json' >> .dockerignore
- name: Add build information
run: |
echo "${{ needs.setup.outputs.checkout_ref }}" > PRODUCT_VERSION
Expand Down
20 changes: 11 additions & 9 deletions .github/workflows/rubocop-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,26 @@ name: rubocop

on:
pull_request:
branches:
- dev
- release/*
paths:
- '**.rb'

jobs:
rubocop:
name: rubocop
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Fetch all commits for PR branch plus head commit of base branch
run: |
# fetch all commits of the PR branch
git fetch --shallow-exclude "${{ github.base_ref }}" origin "${{ github.ref }}"
# fix for "fatal: error in object: unshallow"
git repack -d
# fetch head commit of base branch
git fetch --deepen 1 origin "${{ github.ref }}"
- uses: ruby/setup-ruby@v1
- uses: opf/action-rubocop@v2
- uses: opf/action-rubocop@master
with:
github_token: ${{ secrets.github_token }}
rubocop_version: gemfile
rubocop_extensions: rubocop-rails:gemfile rubocop-rspec:gemfile
rubocop_extensions: rubocop-inflector:gemfile rubocop-performance:gemfile rubocop-rails:gemfile rubocop-rspec:gemfile
reporter: github-pr-check
only_changed: true
4 changes: 2 additions & 2 deletions .github/workflows/test-core.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ jobs:
uses: runs-on/cache@v4
with:
path: cache/bundle
key: gem-${{ hashFiles('.ruby-version') }}-${{ hashFiles('Gemfile.lock') }}
key: gem-bookworm-${{ hashFiles('.ruby-version') }}-${{ hashFiles('Gemfile.lock') }}
restore-keys: |
gem-${{ hashFiles('.ruby-version') }}-
gem-bookworm-${{ hashFiles('.ruby-version') }}-
- name: Cache NPM
uses: runs-on/cache@v4
with:
Expand Down
7 changes: 4 additions & 3 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,7 @@ gem "airbrake", "~> 13.0.0", require: false

gem "md_to_pdf", git: "https://github.com/opf/md-to-pdf", ref: "8f14736a88ad0064d2a97be108fe7061ffbcee91"
gem "prawn", "~> 2.4"
gem "ttfunk", "~> 1.7.0" # remove after https://github.com/prawnpdf/prawn/issues/1346 resolved.
# prawn implicitly depends on matrix gem no longer in ruby core with 3.1
gem "matrix", "~> 0.4.2"

Expand Down Expand Up @@ -383,6 +384,6 @@ gemfiles.each do |file|
send(:eval_gemfile, file) if File.readable?(file)
end

gem "openproject-octicons", "~>19.10.0"
gem "openproject-octicons_helper", "~>19.10.0"
gem "openproject-primer_view_components", "~>0.29.1"
gem "openproject-octicons", "~>19.12.0"
gem "openproject-octicons_helper", "~>19.12.0"
gem "openproject-primer_view_components", "~>0.30.1"
71 changes: 36 additions & 35 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -331,7 +331,7 @@ GEM
airbrake-ruby (6.2.2)
rbtree3 (~> 0.6)
android_key_attestation (0.3.0)
appsignal (3.7.4)
appsignal (3.7.5)
rack
ast (2.4.2)
attr_required (1.0.2)
Expand All @@ -341,16 +341,16 @@ GEM
activerecord (>= 4.0.0, < 7.2)
awrence (1.2.1)
aws-eventstream (1.3.0)
aws-partitions (1.925.0)
aws-sdk-core (3.194.2)
aws-partitions (1.929.0)
aws-sdk-core (3.196.1)
aws-eventstream (~> 1, >= 1.3.0)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.8)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.80.0)
aws-sdk-kms (1.81.0)
aws-sdk-core (~> 3, >= 3.193.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.149.1)
aws-sdk-s3 (1.151.0)
aws-sdk-core (~> 3, >= 3.194.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.8)
Expand All @@ -359,11 +359,11 @@ GEM
aws-sigv4 (~> 1.1)
aws-sigv4 (1.8.0)
aws-eventstream (~> 1, >= 1.0.2)
axe-core-api (4.9.0)
axe-core-api (4.9.1)
dumb_delegator
virtus
axe-core-rspec (4.9.0)
axe-core-api
axe-core-rspec (4.9.1)
axe-core-api (= 4.9.1)
dumb_delegator
virtus
axiom-types (0.1.1)
Expand Down Expand Up @@ -615,7 +615,7 @@ GEM
http-2-next (1.0.3)
http_parser.rb (0.6.0)
httpclient (2.8.3)
httpx (1.2.4)
httpx (1.2.5)
http-2-next (>= 1.0.3)
i18n (1.14.5)
concurrent-ruby (~> 1.0)
Expand Down Expand Up @@ -670,13 +670,13 @@ GEM
launchy (3.0.1)
addressable (~> 2.8)
childprocess (~> 5.0)
lefthook (1.6.10)
lefthook (1.6.11)
letter_opener (1.10.0)
launchy (>= 2.2, < 4)
letter_opener_web (2.0.0)
actionmailer (>= 5.2)
letter_opener (~> 1.7)
railties (>= 5.2)
letter_opener_web (3.0.0)
actionmailer (>= 6.1)
letter_opener (~> 1.9)
railties (>= 6.1)
rexml
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
Expand Down Expand Up @@ -723,7 +723,7 @@ GEM
mini_magick (4.12.0)
mini_mime (1.1.5)
mini_portile2 (2.8.6)
minitest (5.22.3)
minitest (5.23.0)
msgpack (1.7.2)
multi_json (1.15.0)
mustermann (3.0.0)
Expand All @@ -733,7 +733,7 @@ GEM
mutex_m (0.2.0)
net-http (0.4.1)
uri
net-imap (0.4.10)
net-imap (0.4.11)
date
net-protocol
net-ldap (0.19.0)
Expand All @@ -744,7 +744,7 @@ GEM
net-smtp (0.5.0)
net-protocol
nio4r (2.7.1)
nokogiri (1.16.4)
nokogiri (1.16.5)
mini_portile2 (~> 2.8.2)
racc (~> 1.4)
oj (3.16.3)
Expand All @@ -767,15 +767,15 @@ GEM
validate_email
validate_url
webfinger (~> 2.0)
openproject-octicons (19.10.0)
openproject-octicons_helper (19.10.0)
openproject-octicons (19.12.0)
openproject-octicons_helper (19.12.0)
actionview
openproject-octicons (= 19.10.0)
openproject-octicons (= 19.12.0)
railties
openproject-primer_view_components (0.29.1)
openproject-primer_view_components (0.30.1)
actionview (>= 5.0.0)
activesupport (>= 5.0.0)
openproject-octicons (>= 19.9.0)
openproject-octicons (>= 19.12.0)
view_component (>= 3.1, < 4.0)
openproject-token (4.0.0)
activemodel
Expand All @@ -793,7 +793,7 @@ GEM
parser (3.3.1.0)
ast (~> 2.4.1)
racc
pdf-core (0.10.0)
pdf-core (0.9.0)
pdf-inspector (1.3.0)
pdf-reader (>= 1.0, < 3.0.a)
pdf-reader (2.12.0)
Expand All @@ -807,10 +807,9 @@ GEM
activesupport (> 2.2.1)
nokogiri (~> 1.10, >= 1.10.4)
rubyzip (>= 1.2.0)
prawn (2.5.0)
matrix (~> 0.4)
pdf-core (~> 0.10.0)
ttfunk (~> 1.8)
prawn (2.4.0)
pdf-core (~> 0.9.0)
ttfunk (~> 1.7)
prawn-table (0.2.2)
prawn (>= 1.3.0, < 3.0.0)
pry (0.14.2)
Expand Down Expand Up @@ -926,7 +925,7 @@ GEM
redis-client (0.22.1)
connection_pool
regexp_parser (2.9.0)
reline (0.5.6)
reline (0.5.7)
io-console (~> 0.5)
representable (3.2.0)
declarative (< 0.1.0)
Expand All @@ -938,7 +937,8 @@ GEM
actionpack (>= 5.2)
railties (>= 5.2)
retriable (3.1.2)
rexml (3.2.6)
rexml (3.2.8)
strscan (>= 3.0.9)
rinku (2.0.6)
roar (1.2.0)
representable (~> 3.1)
Expand Down Expand Up @@ -1065,6 +1065,7 @@ GEM
activerecord (>= 6.0)
stringex (2.8.6)
stringio (3.1.0)
strscan (3.1.0)
structured_warnings (0.4.0)
svg-graph (2.2.2)
swd (2.0.3)
Expand All @@ -1088,8 +1089,7 @@ GEM
openssl (> 2.0)
openssl-signature_algorithm (~> 1.0)
trailblazer-option (0.1.2)
ttfunk (1.8.0)
bigdecimal (~> 3.1)
ttfunk (1.7.0)
turbo-rails (2.0.5)
actionpack (>= 6.0.0)
activejob (>= 6.0.0)
Expand Down Expand Up @@ -1154,7 +1154,7 @@ GEM
xpath (3.2.0)
nokogiri (~> 1.8)
yard (0.9.36)
zeitwerk (2.6.13)
zeitwerk (2.6.14)

PLATFORMS
ruby
Expand Down Expand Up @@ -1266,10 +1266,10 @@ DEPENDENCIES
openproject-job_status!
openproject-ldap_groups!
openproject-meeting!
openproject-octicons (~> 19.10.0)
openproject-octicons_helper (~> 19.10.0)
openproject-octicons (~> 19.12.0)
openproject-octicons_helper (~> 19.12.0)
openproject-openid_connect!
openproject-primer_view_components (~> 0.29.1)
openproject-primer_view_components (~> 0.30.1)
openproject-recaptcha!
openproject-reporting!
openproject-storages!
Expand Down Expand Up @@ -1344,6 +1344,7 @@ DEPENDENCIES
table_print (~> 1.5.6)
test-prof (~> 1.3.0)
timecop (~> 0.9.0)
ttfunk (~> 1.7.0)
turbo-rails (~> 2.0.0)
turbo_tests!
typed_dag (~> 2.0.2)
Expand Down
28 changes: 13 additions & 15 deletions app/components/projects/configure_view_modal_component.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
# Hack to give the draggable autcompleter (ng-select) bound to the dialog
# enough height to display all options.
# This is necessary as long as ng-select does not support popovers.
style: "min-height: 430px")) do |d| %>
style: "min-height: 480px")) do |d| %>
<% d.with_header(variant: :large, mb: 3) %>
<%= render(Primer::Alpha::Dialog::Body.new) do %>
<%= primer_form_with(
Expand All @@ -20,20 +20,18 @@
<% tab_panel.with_tab(selected: true, id: "tab-selects") do |tab| %>
<% tab.with_text { I18n.t("label_columns") } %>
<% tab.with_panel do %>
<div id="op-draggable-autocomplete-container">
<%= helpers.angular_component_tag 'opce-draggable-autocompleter',
inputs: {
options: helpers.projects_columns_options,
selected: selected_columns,
protected: helpers.protected_projects_columns_options,
name: COLUMN_HTML_NAME,
id: 'columns-select',
inputLabel: I18n.t(:'queries.configure_view.columns.input_label'),
inputPlaceholder: I18n.t(:'queries.configure_view.columns.input_placeholder'),
dragAreaLabel: I18n.t(:'queries.configure_view.columns.drag_area_label'),
appendToComponent: true
}%>
</div>
<%= helpers.angular_component_tag 'opce-draggable-autocompleter',
inputs: {
options: helpers.projects_columns_options,
selected: selected_columns,
protected: helpers.protected_projects_columns_options,
name: COLUMN_HTML_NAME,
id: 'columns-select',
inputLabel: I18n.t(:'queries.configure_view.columns.input_label'),
inputPlaceholder: I18n.t(:'queries.configure_view.columns.input_placeholder'),
dragAreaLabel: I18n.t(:'queries.configure_view.columns.drag_area_label'),
appendToComponent: true
}%>
<% end %>
<% end %>
<% tab_panel.with_tab(id: "tab-selects") do |tab| %>
Expand Down
4 changes: 2 additions & 2 deletions app/components/queries/sort_by_field_component.html.erb
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
<%= render(Primer::OpenProject::FlexLayout.new) do |flex| %>
<%= render(Primer::OpenProject::FlexLayout.new(test_selector: 'sort-by-field' })) do |flex| %>
<% flex.with_column(flex: 1) do %>
<%#- We are just using the classes of the primer component here, because when using the primer component, we cannot detach the input element from the form %>
<%#- The form="none" adds the input to a nonexistant form (as we do not have one with the ID="none" and thus the fields to not get appended to the query string %>
<%= select_tag 'sort_field', select_options, include_blank: true, form: "none", class: "FormControl-select FormControl-medium FormControl--fullWidth", data: { action: "change->sort-by-config#fieldChanged"} %>
<%= select_tag 'sort_field', select_options, prompt: "-", form: "none", class: "FormControl-select FormControl-medium FormControl--fullWidth", data: { action: "change->sort-by-config#fieldChanged"} %>
<% end %>
<% flex.with_column do %>
<%= render(Primer::Alpha::SegmentedControl.new("aria-label": "Sort order", hide_labels: true, ml: 3)) do |sort_buttons| %>
Expand Down
2 changes: 1 addition & 1 deletion app/controllers/concerns/member_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ def user_ids_for_new_members(member_params)

def invite_new_users(user_ids, send_notification: true)
user_ids.filter_map do |id|
if id.to_i == 0 && id.present? # we've got an email - invite that user
if id.present? && (id.to_i == 0 || EmailValidator.valid?(id)) # we've got an email - invite that user
# Only users with the create_user permission can add users.
if current_user.allowed_globally?(:create_user) && enterprise_allow_new_users?
# The invitation can pretty much only fail due to the user already
Expand Down
1 change: 1 addition & 0 deletions app/controllers/work_packages_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ class WorkPackagesController < ApplicationController
before_action :authorize_on_work_package,
:project, only: :show
before_action :find_optional_project,
:check_allowed_export,
:protect_from_unauthorized_export, only: :index

before_action :load_and_validate_query, only: :index, unless: -> { request.format.html? }
Expand Down
9 changes: 9 additions & 0 deletions app/helpers/roles_helper.rb
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,13 @@ def group_permissions_by_module(perms)
perms.group_by { |p| p.project_module.to_s }
.slice(*enabled_module_names)
end

def permission_header_for_project_module(mod)
if mod.blank?
Project.model_name.human
else
I18n.t("permission_header_for_project_module_#{mod}",
default: [:"project_module_#{mod}", mod.humanize])
end
end
end
Loading
Loading