Skip to content

Commit

Permalink
Merge pull request #2 from ether/develop
Browse files Browse the repository at this point in the history
Bump fork
  • Loading branch information
HMarzban authored Oct 6, 2020
2 parents e2b3b00 + 34b232d commit d7437b1
Show file tree
Hide file tree
Showing 103 changed files with 4,609 additions and 3,240 deletions.
56 changes: 53 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ before_install:
install:
- "bin/installDeps.sh"
- "export GIT_HASH=$(git rev-parse --verify --short HEAD)"
# Installing some plugins

script:
- "tests/frontend/travis/runner.sh"
Expand All @@ -31,7 +32,7 @@ jobs:
# we can only frontend tests from the ether/ organization and not from forks.
# To request tests to be run ask a maintainer to fork your repo to ether/
- if: fork = false
name: "Test the Frontend"
name: "Test the Frontend without Plugins"
install:
#FIXME
- "sed 's/\"loglevel\": \"INFO\",/\"loglevel\": \"WARN\",/g' settings.json.template > settings.json"
Expand All @@ -40,7 +41,7 @@ jobs:
- "export GIT_HASH=$(git rev-parse --verify --short HEAD)"
script:
- "tests/frontend/travis/runner.sh"
- name: "Run the Backend tests"
- name: "Run the Backend tests without Plugins"
install:
- "bin/installDeps.sh"
- "cd src && npm install && cd -"
Expand All @@ -54,13 +55,62 @@ jobs:
# - "docker build -t etherpad:test ."
# - "docker run -d -p 9001:9001 etherpad:test && sleep 3"
# - "cd src && npm run test-container"
- name: "Load test Etherpad"
- name: "Load test Etherpad without Plugins"
install:
- "bin/installDeps.sh"
- "cd src && npm install && cd -"
- "npm install -g etherpad-load-test"
script:
- "tests/frontend/travis/runnerLoadTest.sh"
# we can only frontend tests from the ether/ organization and not from forks.
# To request tests to be run ask a maintainer to fork your repo to ether/
- if: fork = false
name: "Test the Frontend Plugins only"
install:
#FIXME
- "sed 's/\"loglevel\": \"INFO\",/\"loglevel\": \"WARN\",/g' settings.json.template > settings.json"
- "tests/frontend/travis/sauce_tunnel.sh"
- "bin/installDeps.sh"
- "rm tests/frontend/specs/*"
- "npm install ep_hash_auth ep_cursortrace ep_subscript_and_superscript ep_headings2 ep_author_hover ep_align ep_webrtc ep_table_of_contents ep_font_size ep_markdown ep_spellcheck"
- "export GIT_HASH=$(git rev-parse --verify --short HEAD)"
script:
- "tests/frontend/travis/runner.sh"
- name: "Run the Backend tests with Plugins"
install:
- "bin/installDeps.sh"
- "npm install ep_hash_auth ep_cursortrace ep_subscript_and_superscript ep_headings2 ep_author_hover ep_align ep_webrtc ep_table_of_contents ep_font_size ep_markdown ep_spellcheck"
- "cd src && npm install && cd -"
script:
- "tests/frontend/travis/runnerBackend.sh"
## Temporarily commented out the Dockerfile tests
# - name: "Test the Dockerfile"
# install:
# - "cd src && npm install && cd -"
# script:
# - "docker build -t etherpad:test ."
# - "docker run -d -p 9001:9001 etherpad:test && sleep 3"
# - "cd src && npm run test-container"
- name: "Load test Etherpad with Plugins"
install:
- "bin/installDeps.sh"
- "npm install ep_hash_auth ep_cursortrace ep_subscript_and_superscript ep_headings2 ep_comments_page ep_author_hover ep_align ep_webrtc ep_table_of_contents ep_font_size ep_markdown ep_spellcheck"
- "cd src && npm install && cd -"
- "npm install -g etherpad-load-test"
script:
- "tests/frontend/travis/runnerLoadTest.sh"
- name: "Test rate limit"
install:
- "docker network create --subnet=172.23.42.0/16 ep_net"
- "docker build -f Dockerfile -t epl-debian-slim ."
- "docker build -f tests/ratelimit/Dockerfile.nginx -t nginx-latest ."
- "docker build -f tests/ratelimit/Dockerfile.anotherip -t anotherip ."
- "docker run -p 8081:80 --rm --network ep_net --ip 172.23.42.1 -d nginx-latest"
- "docker run --name etherpad-docker -p 9000:9001 --rm --network ep_net --ip 172.23.42.2 -e 'TRUST_PROXY=true' epl-debian-slim &"
- "docker run --rm --network ep_net --ip 172.23.42.3 --name anotherip -dt anotherip"
- "./bin/installDeps.sh"
script:
- "cd tests/ratelimit && bash testlimits.sh"

notifications:
irc:
Expand Down
43 changes: 42 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,46 @@
# Develop -- TODO Change to 1.8.x.
* ...
### Compatibility-breaking changes
* Authorization failures now return 403 by default instead of 401
* The `authorize` hook is now only called after successful
authentication. Use the new `preAuthorize` hook if you need to bypass
authentication
* The `authFailure` hook is deprecated; use the new
`authnFailure` and `authzFailure` hooks instead
* The format of `ENTER`, `CREATE`, and `LEAVE` log messages has changed
### Notable new features
* Users can now import without creating and editing the pad first
* Added a new `readOnly` user setting that makes it possible to create users in
`settings.json` that can read pads but not create or modify them
* Added a new `canCreate` user setting that makes it possible to create users in
`settings.json` that can modify pads but not create them
* The `authorize` hook now accepts `readOnly` to grant read-only access to a pad
* The `authorize` hook now accepts `modify` to grant modify-only (creation
prohibited) access to a pad
* All authentication successes and failures are now logged
* Added a new `cookie.sameSite` setting that makes it possible to enable
authentication when Etherpad is embedded in an iframe from another site
### Notable fixes
* Fixed rate limit accounting when Etherpad is behind a reverse proxy
* Fixed typos that prevented access to pads via an HTTP API session
* Fixed authorization failures for pad URLs containing a percent-encoded
character
* Fixed exporting of read-only pads
### Minor changes
* Temporary disconnections no longer force a full page refresh
* Toolbar layout for narrow screens is improved
* Fixed `SameSite` cookie attribute for the `language`,
`token`, and `pref` cookies
* Fixed superfluous database accesses when deleting a pad
* Expanded test coverage.

# 1.8.6
* IMPORTANT: This fixes a severe problem with postgresql in 1.8.5
* SECURITY: Fix authentication and authorization bypass vulnerabilities
* API: Update version to 1.2.15
* FEATURE: Add copyPadWithoutHistory API (#4295)
* FEATURE: Package more asset files to save http requests (#4286)
* MINOR: Improve UI when reconnecting
* TESTS: Improve tests

# 1.8.5
* IMPORTANT DROP OF SUPPORT: Drop support for IE. Browsers now need async/await.
Expand Down
3 changes: 2 additions & 1 deletion bin/plugins/checkPlugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -182,7 +182,8 @@ fs.readdir(pluginPath, function (err, rootFiles) {
}
}

if(files.indexOf("locales") === -1){
// if we include templates but don't have translations...
if(files.indexOf("templates") !== -1 && files.indexOf("locales") === -1){
console.warn("Translations not found, please create. Translation files help with Etherpad accessibility.");
}

Expand Down
3 changes: 1 addition & 2 deletions bin/rebuildPad.js
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,7 @@ async.series([
// Save the source pad
db.db.set("pad:"+newPadId, newPad, function(err) {
console.log("Created: Source Pad: pad:" + newPadId);
newPad.saveToDatabase();
callback();
newPad.saveToDatabase().then(() => callback(), callback);
});
}
], function (err) {
Expand Down
Loading

0 comments on commit d7437b1

Please sign in to comment.