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

Merge branch release/v8.1.0 into master #478

Merged
merged 103 commits into from
Jun 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
73233d7
Merge remote-tracking branch 'remotes/origin/hotfix/v7.5.1' into develop
konovalovsergey Nov 15, 2023
22fbfd2
[feature] Use built-in nodejs fs functions instead of fs-extra and mk…
konovalovsergey Dec 4, 2023
c4e1122
[integration tests] baseConnector integration tests
DrToldme Aug 26, 2023
b15aa27
[integration tests] Refactoring: baseConnector, mySqlBaseConnector. T…
DrToldme Sep 5, 2023
2b29006
[integration tests] Tests fixes and improvement pt.2
DrToldme Sep 5, 2023
84c3f26
[mysql] Unify upsert result
konovalovsergey Sep 5, 2023
d303205
[integration tests] Refactoring upsert(): opt_updateUserIndex deleted…
DrToldme Sep 7, 2023
096efab
[git actions] Postgres and mysql actions
DrToldme Oct 2, 2023
2786d0c
[git actions] Oracle and mssql actions, unit test action
DrToldme Oct 10, 2023
52220f4
[git actions] Dameng tests action, dameng connector refactoring, depe…
DrToldme Nov 21, 2023
6788286
[git actions] Dameng connector tracking
DrToldme Nov 21, 2023
ee570b3
[git actions] PR fixes and upgrade schema added
DrToldme Nov 27, 2023
4e95947
[git actions] PR fixes, schema reversion
DrToldme Dec 5, 2023
146f31f
[npm] Revert npm-lock
konovalovsergey Dec 7, 2023
de7add2
Merge pull request #444 from ONLYOFFICE/feature/base-connector-tests
konovalovsergey Dec 7, 2023
d0398be
[refactoring] Remove unused 'sfct' command
konovalovsergey Dec 11, 2023
c38b8aa
[feature] Use WOPISrc param to make local urls
konovalovsergey Dec 11, 2023
a1e994a
[bug] Lowercase fileType param; Fix bug 65653
konovalovsergey Dec 22, 2023
ef01431
Merge branch 'release/v8.0.0' into develop
konovalovsergey Dec 25, 2023
7faaaf5
[feature] WOPI created zero-weight file replacement with template
DrToldme Jan 10, 2024
d77b595
[feature] WOPI locale fixes
DrToldme Jan 16, 2024
a58c86d
[feature] WOPI discovery editnew template extensions filter
DrToldme Jan 18, 2024
28bdee7
[feature] Omit X-WOPI-Lock during document creation.
konovalovsergey Jan 22, 2024
1229d97
Merge pull request #450 from ONLYOFFICE/feature/wopi-save-template
konovalovsergey Jan 22, 2024
c1553c0
[config] Set pg connector timeouts to limited values; Bump pg version
konovalovsergey Jan 31, 2024
936b5a4
[config] Set dameng, oracle and mssql databases connectors timeouts t…
DrToldme Feb 1, 2024
ff8dd64
[utils] deepMergeObjecs(), isObject() functions added
DrToldme Feb 1, 2024
0d5b109
Merge pull request #453 from ONLYOFFICE/fix/databases-timeout
konovalovsergey Feb 1, 2024
b6b1132
Merge remote-tracking branch 'remotes/origin/release/v8.0.0' into dev…
konovalovsergey Feb 5, 2024
e1177ff
Enable static code analysis with codeql (#447)
danilapog Feb 8, 2024
fe3eb83
Disable codeql scanning on `pull_request` event (#455)
danilapog Feb 14, 2024
8318118
[refactoring] Remove unused parameter and deprecated params
konovalovsergey Feb 16, 2024
42a3822
[config] Add externalRequest options to separate requests; for bug 63590
konovalovsergey Feb 15, 2024
6fb2df4
[config] Revert develop params
konovalovsergey Feb 19, 2024
3f18319
[feature] WOPI Save As implementation
DrToldme Feb 20, 2024
92c16d1
[feature] Fix wopi save as
konovalovsergey Feb 21, 2024
69ff2f3
Merge pull request #457 from ONLYOFFICE/feature/wopi-put-relative-fil…
konovalovsergey Feb 21, 2024
fb7b1c4
[wopi] Fix downloadfile handler for wopi; fix bug 66612
konovalovsergey Feb 26, 2024
23c7f8c
[wopi] Add "default" action flag for non-editable formats;Fix bug 66714
konovalovsergey Mar 4, 2024
7ba3d15
[wopi] Add "formsubmit" discovery action; For bug 66720
konovalovsergey Mar 4, 2024
41d6ab3
Merge pull request #460 from ONLYOFFICE/fix/wopi-bugs
konovalovsergey Mar 4, 2024
7326335
[bug] Fix downloadFile for wopi; For bug https://bugzilla.onlyoffice.…
konovalovsergey Mar 11, 2024
21f172d
[bug] Init context cache on 'connection' event; Fix bug 66841
konovalovsergey Mar 12, 2024
0dd2301
Merge branch hotfix/v8.0.1 into release/v8.1.0
papacarlo Mar 15, 2024
cf9db25
[bug] Fix exception with undefined permissions in config
konovalovsergey Mar 18, 2024
1050bb7
[tenant] Add services.CoAuthoring.server.editorStatStorage config par…
konovalovsergey Mar 20, 2024
f02884b
[bug] Fix bug with opening error after forcesave on forgotten file
konovalovsergey Mar 25, 2024
e6c59a4
[fix] Git actions now ignoring tags
DrToldme Mar 28, 2024
de74848
Merge pull request #467 from ONLYOFFICE/fix/git-action-ignoring-tags-…
konovalovsergey Mar 31, 2024
a23df36
[config] Add persistentStorage as alternative storage for forgotten f…
konovalovsergey Mar 31, 2024
a09ff06
[feature] Add error CONVERT_LIMITS(-10) for conversion service
konovalovsergey Mar 31, 2024
0d2592f
[bug] Save standard pdf on form submission instead of extended pdf
konovalovsergey Apr 1, 2024
4acdd45
Bump express from 4.18.2 to 4.19.2 in /DocService
dependabot[bot] Mar 29, 2024
45d9832
Bump express from 4.16.4 to 4.19.2 in /SpellChecker
dependabot[bot] Mar 26, 2024
d8d285e
[bug] Refactor wopi discovery for new pdf editor; Fix downloadFile fo…
konovalovsergey Apr 2, 2024
5373d62
[bug] Set interface lang as lcid for file assembling from changes; fo…
konovalovsergey Apr 4, 2024
920ff1f
[feature] Add "pdf" param as pdf save options
konovalovsergey Apr 5, 2024
6463405
[bug] Refactor ErrToReload cleaning; Fix bug 67297
konovalovsergey Apr 6, 2024
515a41c
[bug] Set isPrint flag while form submission
konovalovsergey Apr 13, 2024
11fc888
[bug] Fix RequestDefaults absence in postRequestPromise; Fix bug 67402
konovalovsergey Apr 14, 2024
e07e14f
[feature] Allow "WOPISrc" and "shardkey" query params as shard key
konovalovsergey Apr 17, 2024
f33cc2f
[feature] Remove unused allowPrivateIPAddressForSignedRequests; bug 6…
konovalovsergey Apr 22, 2024
a5a9db4
[config] Rename proxyAuth->proxyUser
konovalovsergey Apr 23, 2024
25f99f8
[bug] Set "formsubmit" as default action; Fix bug 66720
konovalovsergey Apr 24, 2024
3b9bed3
[bug] Fix "WOPISrc" convert param in getConverterHtml
konovalovsergey Apr 27, 2024
25d52ca
[bug] Fix error on reconnection in formsubmit action; For bug 66720
konovalovsergey Apr 28, 2024
9ac4993
[bug] Add clearTimeout in downloadUrlPromiseWithoutRedirect; Fix bug …
konovalovsergey May 2, 2024
5c8b553
[bug] Fix sendForm request for wopi; for bug 66720
konovalovsergey May 4, 2024
4007f5a
[refactoring] Refactor publish as async function
konovalovsergey May 6, 2024
05b1572
Bump ejs from 3.1.8 to 3.1.10 in /DocService
dependabot[bot] May 2, 2024
cb18e6a
Bump mysql2 from 2.3.3 to 3.9.7 in /DocService
dependabot[bot] Apr 23, 2024
d8d2caa
[bug] Serve static content for "storage-fs" only; Fix bug 67908
konovalovsergey May 10, 2024
adc44fa
[bug] For bug 67908
konovalovsergey May 10, 2024
8de0139
[bug] Refactor Locks storage; for bug 65773
konovalovsergey May 12, 2024
34cffab
Merge pull request #471 from ONLYOFFICE/feature/bug-65773-2
konovalovsergey May 12, 2024
0d88c74
[bug] For bug 65773
konovalovsergey May 12, 2024
d57a512
[bug] Do not serve content with empty special dir; For bug 67908
konovalovsergey May 13, 2024
3db24b1
[bug] Fix bug 67983
konovalovsergey May 15, 2024
27e5d64
[bug] Change privateKey format; Make generateProofSign async; For bug…
konovalovsergey May 25, 2024
b32dcf5
[bug] Allow to restrict 'mode' rights; For bug 68198
konovalovsergey May 27, 2024
37da6b0
[bug] Check permissions in commandSetPassword; Fix bug 68258
konovalovsergey May 29, 2024
3ddf28f
[bug] Fix bug with queue closing before document saving in checkDocum…
konovalovsergey May 29, 2024
a43ee0e
[bug] Change wopi exponent format; For bug 66601
konovalovsergey Jun 2, 2024
5914060
[bug] Use shutdownFlag for WOPI editing
konovalovsergey Jun 2, 2024
8d40162
[fix] Added support of MySql ssl connection
DrToldme Jun 3, 2024
ee75b4e
Bump mysql2 from 2.3.3 to 3.9.8 in /DocService
konovalovsergey Jun 3, 2024
d779c08
[fix] Make closePool async; Bump nodejs version for mysql test; For b…
konovalovsergey Jun 3, 2024
a918bb1
Merge pull request #473 from ONLYOFFICE/fix/mysql-ssl-connection
konovalovsergey Jun 3, 2024
1208c83
[bug] Change privateKey config param; For bug 66601
konovalovsergey Jun 3, 2024
fd3722a
[bug] Fix bug with wopi checkFileInfo on one shard and websocket on o…
konovalovsergey Jun 4, 2024
0b6768c
[bug] Fix bug with LastModifiedTime changing after putFile(nextcloud)
konovalovsergey Jun 5, 2024
1c274ed
[feature] Add docs_api_config input param for wopi; For bug 58764
konovalovsergey Jun 6, 2024
2a2efaf
[bug] Check result of wopi unlock; Fix bug 68424
konovalovsergey Jun 7, 2024
d644a44
[bug] Add stubs for shardkey params until integrators pass these para…
konovalovsergey Jun 10, 2024
96a5d76
[bug] Use deterministic(not random) lockId to fix issues with forgott…
konovalovsergey Jun 10, 2024
bf8ff4d
[bug] Add storage test with tenant; Fix bug 68563
konovalovsergey Jun 11, 2024
004bab7
[bug] Fix bug with opening after editing with the condition wopi Supp…
konovalovsergey Jun 13, 2024
6c82208
[bug] Move copyOrigin logic from x2t; Fix bug 68600
konovalovsergey Jun 13, 2024
8a25935
Merge pull request #476 from ONLYOFFICE/fix/bug-68501
K0R0L Jun 14, 2024
a92237c
[bug] Use outputFormat in id instead of outputType; Fix bug 68653
konovalovsergey Jun 15, 2024
3736719
[bug] Fix crash; For bug 68645
konovalovsergey Jun 15, 2024
87f2847
[bug] Add maxRetries option to fix unexpected ENOTEMPTY during rm
konovalovsergey Jun 16, 2024
d4ac980
Merge pull request #477 from ONLYOFFICE/fix/bugfix
K0R0L Jun 16, 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
49 changes: 49 additions & 0 deletions .github/workflows/codeql.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: "CodeQL"

on:
push:
branches:
- 'master'
- 'hotfix/**'
- 'release/**'
paths-ignore:
- '**/README.md'
- '**/LICENSE'
- '.github/**'

schedule:
- cron: '0 0 * * 6'

jobs:
analyze:
name: Analyze
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
timeout-minutes: ${{ (matrix.language == 'swift' && 120) || 360 }}
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'javascript-typescript' ]

steps:
- name: Checkout repository
uses: actions/checkout@v4

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}

- name: Autobuild
uses: github/codeql-action/autobuild@v3


- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"
50 changes: 50 additions & 0 deletions .github/workflows/damengDatabaseTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Dameng database tests
on:
push:
branches:
- '**'
paths:
- 'DocService/sources/databaseConnectors/baseConnector.js'
- 'DocService/sources/databaseConnectors/damengConnector.js'
jobs:
dameng-tests:
name: Dameng
runs-on: ubuntu-latest

steps:
- name: Run dameng DB docker container
run: docker run --name dameng -p 5236:5236 -e PAGE_SIZE=16 -e LD_LIBRARY_PATH=/opt/dmdbms/bin -e INSTANCE_NAME=dm8_01 -d danilaworker/damengdb:8.1.2

- name: Check out repository code
uses: actions/checkout@v3

- name: Caching dependencies
uses: actions/setup-node@v3
with:
node-version: '14'
cache: 'npm'
cache-dependency-path: |
./npm-shrinkwrap.json
./Common/npm-shrinkwrap.json
./DocService/npm-shrinkwrap.json

- name: Install modules
run: |
npm ci
npm --prefix Common ci
npm --prefix DocService ci

- name: Await database service to finish startup
run: sleep 15

- name: Creating service DB configuration
run: |
echo '{"services": {"CoAuthoring": {"sql": {"type": "dameng", "dbHost": "127.0.0.1", "dbPort": 5236, "dbUser": "SYSDBA", "dbPass": "SYSDBA001"}}}}' >> Common/config/local.json

- name: Creating schema
run: |
docker cp ./schema/dameng/createdb.sql dameng:/
docker exec dameng bash -c "cat /createdb.sql | /opt/dmdbms/bin/disql SYSDBA/SYSDBA001:5236"

- name: Run Jest
run: npm run "integration database tests"
50 changes: 50 additions & 0 deletions .github/workflows/mssqlDatabaseTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: MSSQL database tests
on:
push:
branches:
- '**'
paths:
- 'DocService/sources/databaseConnectors/baseConnector.js'
- 'DocService/sources/databaseConnectors/mssqlConnector.js'
jobs:
mssql-tests:
name: MSSQL
runs-on: ubuntu-latest

steps:
- name: Run MSSQL DB docker container
run: docker run --name mssql -e "ACCEPT_EULA=Y" -e "MSSQL_SA_PASSWORD=onlYoff1ce" -p 8080:1433 -d mcr.microsoft.com/mssql/server:2022-latest

- name: Check out repository code
uses: actions/checkout@v3

- name: Caching dependencies
uses: actions/setup-node@v3
with:
node-version: '14'
cache: 'npm'
cache-dependency-path: |
./npm-shrinkwrap.json
./Common/npm-shrinkwrap.json
./DocService/npm-shrinkwrap.json

- name: Install modules
run: |
npm ci
npm --prefix Common ci
npm --prefix DocService ci

- name: Creating service DB configuration
run: |
echo '{"services": {"CoAuthoring": {"sql": {"type": "mssql", "dbHost": "localhost", "dbPort": 8080, "dbUser": "sa", "dbPass": "onlYoff1ce"}}}}' >> Common/config/local.json

- name: Await database service to finish startup
run: sleep 5

- name: Creating schema
run: |
docker cp ./schema/mssql/createdb.sql mssql:/
docker exec mssql /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P onlYoff1ce -i /createdb.sql

- name: Run Jest
run: npm run "integration database tests"
47 changes: 47 additions & 0 deletions .github/workflows/mysqlDatabaseTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: MYSQL database tests
on:
push:
branches:
- '**'
paths:
- 'DocService/sources/databaseConnectors/baseConnector.js'
- 'DocService/sources/databaseConnectors/mysqlConnector.js'
jobs:
mysql-tests:
name: MYSQL
runs-on: ubuntu-latest

steps:
- name: Run Mysql DB docker container
run: docker run --name mysql -p 8080:3306 -p 8081:33060 -e MYSQL_HOST=127.0.0.1 -e MYSQL_ROOT_PASSWORD=onlyoffice -e MYSQL_DATABASE=onlyoffice -d mysql:latest

- name: Check out repository code
uses: actions/checkout@v3

- name: Caching dependencies
uses: actions/setup-node@v3
with:
node-version: '16'
cache: 'npm'
cache-dependency-path: |
./npm-shrinkwrap.json
./Common/npm-shrinkwrap.json
./DocService/npm-shrinkwrap.json

- name: Install modules
run: |
npm ci
npm --prefix Common ci
npm --prefix DocService ci

- name: Creating service DB configuration
run: |
echo '{"services": {"CoAuthoring": {"sql": {"type": "mysql", "dbHost": "127.0.0.1", "dbPort": "8080", "dbUser": "root", "dbPass": "onlyoffice"}}}}' >> Common/config/local.json

- name : Creating schema
run: |
docker cp ./schema/mysql/createdb.sql mysql:/
docker exec mysql mysql -h 127.0.0.1 -u root --password=onlyoffice -D onlyoffice -e 'source /createdb.sql'

- name: Run Jest
run: npm run "integration database tests"
50 changes: 50 additions & 0 deletions .github/workflows/oracleDatabaseTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Oracle database tests
on:
push:
branches:
- '**'
paths:
- 'DocService/sources/databaseConnectors/baseConnector.js'
- 'DocService/sources/databaseConnectors/oracleConnector.js'
jobs:
oracle-tests:
name: Oracle
runs-on: ubuntu-latest

steps:
- name: Run Oracle DB docker container
run: docker run --name oracle -p 8080:1521 -p 8081:5500 -e ORACLE_PASSWORD=admin -e APP_USER=onlyoffice -e APP_USER_PASSWORD=onlyoffice -d gvenzl/oracle-xe:21-slim

- name: Check out repository code
uses: actions/checkout@v3

- name: Caching dependencies
uses: actions/setup-node@v3
with:
node-version: '14'
cache: 'npm'
cache-dependency-path: |
./npm-shrinkwrap.json
./Common/npm-shrinkwrap.json
./DocService/npm-shrinkwrap.json

- name: Install modules
run: |
npm ci
npm --prefix Common ci
npm --prefix DocService ci

- name: Creating service DB configuration
run: |
echo '{"services": {"CoAuthoring": {"sql": {"type": "oracle", "dbHost": "127.0.0.1", "dbPort": "8080", "dbUser": "onlyoffice", "dbPass": "onlyoffice", "dbName": "xepdb1"}}}}' >> Common/config/local.json

- name: Await database service to finish startup
run: sleep 15

- name: Creating schema
run: |
docker cp ./schema/oracle/createdb.sql oracle:/
docker exec oracle sqlplus -s onlyoffice/onlyoffice@//localhost/xepdb1 @/createdb.sql

- name: Run Jest
run: npm run "integration database tests"
47 changes: 47 additions & 0 deletions .github/workflows/postgreDatabaseTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
name: Postgre database tests
on:
push:
branches:
- '**'
paths:
- 'DocService/sources/databaseConnectors/baseConnector.js'
- 'DocService/sources/databaseConnectors/postgreConnector.js'
jobs:
postgres-tests:
name: Postgres
runs-on: ubuntu-latest

steps:
- name: Run Postgres DB docker container
run: docker run --name postgres -p 5432:5432 -e POSTGRES_PASSWORD=onlyoffice -e POSTGRES_USER=onlyoffice -e POSTGRES_DB=onlyoffice -d postgres:latest

- name: Check out repository code
uses: actions/checkout@v3

- name: Caching dependencies
uses: actions/setup-node@v3
with:
node-version: '14'
cache: 'npm'
cache-dependency-path: |
./npm-shrinkwrap.json
./Common/npm-shrinkwrap.json
./DocService/npm-shrinkwrap.json

- name: Install modules
run: |
npm ci
npm --prefix Common ci
npm --prefix DocService ci

- name: Creating service DB configuration
run: |
echo '{"services": {"CoAuthoring": {"sql": {"dbHost": "127.0.0.1"}}}}' >> Common/config/local.json

- name: Creating schema
run: |
docker cp ./schema/postgresql/createdb.sql postgres:/
docker exec postgres psql -d onlyoffice -U onlyoffice -a -f /createdb.sql

- name: Run Jest
run: npm run "integration database tests"
36 changes: 36 additions & 0 deletions .github/workflows/unitTests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Service unit tests
on:
push:
branches:
- '**'
paths:
- '**.js'
- '!tests/integration/**'
- '!DocService/sources/databaseConnectors/**'
jobs:
unit-tests:
name: Service unit tests
runs-on: ubuntu-latest

steps:
- name: Check out repository code
uses: actions/checkout@v3

- name: Caching dependencies
uses: actions/setup-node@v3
with:
node-version: '14'
cache: 'npm'
cache-dependency-path: |
./npm-shrinkwrap.json
./Common/npm-shrinkwrap.json
./DocService/npm-shrinkwrap.json

- name: Install modules
run: |
npm ci
npm --prefix Common ci
npm --prefix DocService ci

- name: Run Jest
run: npm run "unit tests"
Loading
Loading