Skip to content

Commit fb7afbe

Browse files
committed
Merge remote-tracking branch 'origin/devel' into feature/profiles
2 parents a2e8473 + 2a1a9ec commit fb7afbe

File tree

328 files changed

+1860
-1815
lines changed

Some content is hidden

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

328 files changed

+1860
-1815
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

+4
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ body:
2222
- Safari
2323
- All
2424
- Other
25+
- N/A
2526
- type: dropdown
2627
id: os
2728
attributes:
@@ -33,6 +34,9 @@ body:
3334
- Android
3435
- iOS
3536
- Linux
37+
- All
38+
- Other
39+
- N/A
3640
validations:
3741
required: true
3842
- type: textarea

.github/ISSUE_TEMPLATE/feature_request.yml

+1-8
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,6 @@ body:
77
id: proposal
88
attributes:
99
label: Proposal
10-
description: Provide detailed information about your feature idead including references to related work.
11-
validations:
12-
required: true
13-
- type: textarea
14-
id: motivation
15-
attributes:
16-
label: Motivation and context
17-
description: Tell us why you consider this feature or change is needed or would be helpful, and what problems it may help solve.
10+
description: Provide detailed information about your feature ideas including references to related work.
1811
validations:
1912
required: true

.github/PULL_REQUEST_TEMPLATE.md

+7-8
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
Before you submit a pull request, please make sure:
1+
Before submitting a pull request, please ensure the following:
22

3-
- [ ] The pull request should include a description of the problem you're trying to solve
4-
- [ ] The pull request should include overview of the suggested solution
5-
- [ ] If the pull requests changes current behavior, reasons why your solution is better.
6-
- [ ] The proposed code should be fully functional
7-
- [ ] The proposed code should contain tests relevant to prove is functionality
8-
- [ ] The proposed tests should ensure significative code coverage
9-
- [ ] All new and existing tests should pass
3+
- [ ] The pull request includes a description of the problem you're trying to solve.
4+
- [ ] The pull request provides an overview of the suggested solution.
5+
- [ ] The proposed code is fully functional.
6+
- [ ] The proposed code includes relevant tests to verify its functionality.
7+
- [ ] All new and existing tests pass successfully.
8+
- [ ] Overall code quality and test coverage metrics are not reduced by more than 0.5%

.github/workflows/build.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,4 @@ jobs:
2222
- name: Run tests
2323
run: |
2424
cd $GITHUB_WORKSPACE
25-
./.github/workflows/scripts/run-build.sh
25+
./.github/workflows/scripts/run_build.sh

.github/workflows/scripts/run-tests.sh

-36
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/bin/bash
2+
3+
backend_test_failed=0
4+
5+
setupBackend() {
6+
cd $GITHUB_WORKSPACE/backend # to install backend dependencies
7+
pip3 install -r requirements/requirements-$(lsb_release -cs).txt
8+
}
9+
10+
setupClient() {
11+
cd $GITHUB_WORKSPACE/client # to install frontend dependencies
12+
npm install -d
13+
./node_modules/grunt/bin/grunt build_and_instrument
14+
}
15+
16+
echo "Running setup"
17+
sudo apt-get update
18+
sudo apt-get install -y tor
19+
npm install -g grunt grunt-cli
20+
pip install coverage
21+
22+
setupBackend
23+
setupClient
24+
25+
# Running backend tests
26+
echo "Running backend tests"
27+
cd $GITHUB_WORKSPACE/backend && coverage run setup.py test
28+
if [ $? -ne 0 ]; then
29+
backend_test_failed=1
30+
fi
31+
32+
cd $GITHUB_WORKSPACE/backend && coverage xml
33+
bash <(curl -Ls https://coverage.codacy.com/get.sh) report -l Python -r $GITHUB_WORKSPACE/backend/coverage.xml
34+
35+
if [ $backend_test_failed -eq 1 ]; then
36+
echo "Backend unit tests: FAILED"
37+
exit 1
38+
else
39+
echo "Backend unit tests: PASSED"
40+
exit 0
41+
fi
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/bin/bash
2+
3+
client_test_failed=0
4+
5+
setupBackend() {
6+
cd $GITHUB_WORKSPACE/backend # to install backend dependencies
7+
pip3 install -r requirements/requirements-$(lsb_release -cs).txt
8+
}
9+
10+
setupClient() {
11+
cd $GITHUB_WORKSPACE/client # to install frontend dependencies
12+
npm install -d
13+
./node_modules/grunt/bin/grunt build_and_instrument
14+
}
15+
16+
echo "Running setup"
17+
sudo apt-get update
18+
sudo apt-get install -y tor
19+
npm install -g grunt grunt-cli
20+
setupBackend
21+
setupClient
22+
23+
$GITHUB_WORKSPACE/backend/bin/globaleaks -z
24+
sleep 5
25+
26+
# Running client tests locally
27+
echo "Running client tests locally collecting code coverage"
28+
cd $GITHUB_WORKSPACE/client && npm test
29+
if [ $? -ne 0 ]; then
30+
client_test_failed=1
31+
fi
32+
33+
bash <(curl -Ls https://coverage.codacy.com/get.sh) report -l TypeScript -r $GITHUB_WORKSPACE/client/cypress/coverage/lcov.info
34+
35+
if [ $client_test_failed -eq 1 ]; then
36+
echo "Client tests: FAILED"
37+
exit 1
38+
else
39+
echo "Client tests: PASSED"
40+
exit 0
41+
fi

.github/workflows/test-backend.yml

+28
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Tests (B)
2+
3+
on: [ push, pull_request ]
4+
5+
# Declare default permissions as read only.
6+
permissions: read-all
7+
8+
env:
9+
CODACY_PROJECT_TOKEN: ${{ secrets.CODACY_PROJECT_TOKEN }}
10+
11+
jobs:
12+
run_tests:
13+
runs-on: "ubuntu-latest"
14+
steps:
15+
- name: Check out repository code
16+
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
17+
with:
18+
fetch-depth: 1
19+
20+
- name: Install git
21+
run: |
22+
sudo apt-get update -q
23+
sudo apt-get install -y git
24+
25+
- name: Run tests
26+
run: |
27+
cd $GITHUB_WORKSPACE
28+
./.github/workflows/scripts/run_tests_backend.sh

.github/workflows/test.yml renamed to .github/workflows/test-client.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Test
1+
name: Tests (C)
22

33
on: [ push, pull_request ]
44

@@ -25,4 +25,4 @@ jobs:
2525
- name: Run tests
2626
run: |
2727
cd $GITHUB_WORKSPACE
28-
./.github/workflows/scripts/run-tests.sh
28+
./.github/workflows/scripts/run_tests_client.sh

CHANGELOG

+114
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,117 @@
1+
Changes in version 5.0.43
2+
Correct regression on logs missing newlines introduced in 5.0.38
3+
4+
Changes in version 5.0.42
5+
Fix possibility to vary expiration date if default data retention policy is disabled
6+
7+
Changes in version 5.0.41
8+
Re-add markdown support to recipients and context descriptions (#4364)
9+
Bump client dependencies to latest version
10+
11+
Changes in version 5.0.40
12+
Fix visualization of enforced recipients broken in 5.0.0
13+
14+
Changes in version 5.0.39
15+
Ensure voice questions could work when defined in question templates
16+
Bump pdfjs again to v4 with proper packaging
17+
Bump client dependencies to latest version
18+
19+
Changes in version 5.0.38
20+
Correct PDF viewer re-including pdfjs v3
21+
22+
Changes in version 5.0.37
23+
Fix visualization of uploaded configuration files
24+
Revise detection and messaging about unsupported browsers
25+
Bump client dependencies to latest versions
26+
27+
Changes in version 5.0.36
28+
Fix loading of customizations in compatibility with new CSP
29+
30+
Changes in version 5.0.35
31+
Revise implementation of CSP in relation to 'report-sample' directive
32+
33+
Changes in version 5.0.34
34+
Revise Trusted-Types implementation enforcing usage of a 'default' policy
35+
Implement handler to collect reporting of attemps of violation to the Content Security Policy
36+
[doc] Extend documentation adding detail about the revisions on the Content Security Policy
37+
38+
Changes in version 5.0.33
39+
Complete implementation of CSP policy based on Trusted-Types
40+
Enforce validation of every admin config or user input by means of DOMPurify
41+
Restrict usage of CSS inline scripts (#4345) as previously done on v4
42+
Fix bug in gl-admin utility preventing possibility to reset 2fa
43+
Correct feature of re-ordering of questions options (#4348)
44+
Fix issues #4341, #4344
45+
Improve packaging of css libraries and overrides
46+
Bump client dependencies to latest versions
47+
Update translations
48+
49+
Changes in version 5.0.32
50+
Revise language changes utilities in relation to issue #4315
51+
Fixed validation of multistep questionnaires and extend validation to files (#4336)
52+
Remove redundant rel=noreferrer made unnecessary by ReferrerPolicy header
53+
Revise markdown implementation ensuring links are opened always in a new tab
54+
Ensure to strip every HTML tag (including safe tags) with DOMPurify before parsing markdown.
55+
[doc] Revise application security document in reference to external links protections
56+
[doc] Extend documentation adding detail on usage of DOMPurify to filter markdown input
57+
Fix issues #4340 and #4338
58+
59+
Changes in version 5.0.31
60+
Revise mock implementation fixing continous reloading on some setups
61+
62+
Changes in version 5.0.30
63+
Temporarily rollback changes related to enforcing mandatory file uploads or oral messages
64+
introduced in 5.0.26 that seems to be causing improper form validation.
65+
66+
Changes in version 5.0.29
67+
Fix regression on questionnaire validation introduced in release 5.0.26 (#4321)
68+
69+
Changes in version 5.0.28
70+
Fix bug in relation to loader not getting removed
71+
Revise margins on UI components of the homepage
72+
Fix bug and performance on mock implementation using MutationObserver
73+
Bump client dependencies to latest version
74+
Update translations
75+
76+
Changes in version 5.0.27
77+
Fix issue #4308
78+
Fix color of SupportLink
79+
Bump client dependencies to latest versions
80+
81+
Changes in version 5.0.26
82+
Deprecate (at least temporarely) states motivations for reasons discussed on #4201 with the core globaleaks community.
83+
Revise regular expression for email validation to allow domains with tld longer than 5 characters (#4309)
84+
Fix inclusion of pdfjs library fix issue on opening PDF files with integrated file viewer
85+
Fix issue on loading of images causing white page on settings page (#4311)
86+
Fix mandatory checks on file uploads and voice recordings
87+
Fix exception on email generation when users has disabled notifications
88+
Bump client dependencies to latest versions
89+
90+
Changes in version 5.0.25
91+
Revise receiver and context images style (#4303)
92+
Revise path checks in relation to adminonly configurations
93+
Properly communicate to users when a password reset token is expired
94+
Bump client dependencies to latest version
95+
96+
Changes in version 5.0.24
97+
Fix proper visualization of checkboxes and datepickers
98+
99+
Changes in version 5.0.23
100+
Fix visualization of steps with no questions (#4298)
101+
102+
Changes in version 5.0.22
103+
Correct position of tooltips on questions' hint
104+
Enable recipients whistleblowers to leave comments even if report status is closed (#4293)
105+
Revise configuration of chunk file uploader
106+
Bump client dependencies to latest version
107+
Fix pagination style merging changes of 4205edef
108+
Fix exception when file upload happens during expired user session
109+
110+
Changes in version 5.0.21
111+
Fix translation of report statuses in case labels are left empty by mistake
112+
Bump client dependencies to latest versions
113+
Uptate translations
114+
1115
Changes in version 5.0.20
2116
Fix retrival of account recovery key when 2FA is enabled
3117

CONTRIBUTING.md

+4-2
Original file line numberDiff line numberDiff line change
@@ -77,9 +77,11 @@ Before you submit your Pull Request consider the following guidelines:
7777

7878
7. Run the full GlobaLeaks test suite and ensure that all tests pass.
7979

80-
8. Commit your changes using a descriptive commit message.
80+
8. Ensure overall code quality and test coverage metrics are not reduced by more than 0.5%
8181

82-
9. In GitHub, send a pull request to `GlobaLeaks:main`.
82+
9. Commit your changes using a descriptive commit message.
83+
84+
10. In GitHub, send a pull request to `devel` branch.
8385

8486
## <a name="donate"></a> Donations <img src="https://raw.githubusercontent.com/globaleaks/globaleaks-whistleblowing-software/stable/brand/assets/heart.svg" alt="heart icon" width="24" />
8587
As a pure community-driven project without major corporate backing, we also welcome [donations](https://github.com/sponsors/globaleaks).

0 commit comments

Comments
 (0)