From 65e9deda2a083b310c5a30a86806ffe7ce409e95 Mon Sep 17 00:00:00 2001 From: djmaze Date: Fri, 12 Feb 2021 12:42:06 +0100 Subject: [PATCH] v2.3.1 --- .eslintrc.js | 2 - README.md | 22 +-- package.json | 5 +- .../0.0.0/app/libraries/RainLoop/Actions.php | 2 +- vendors/fontastic/fonts/snappymail.woff | Bin 8532 -> 8528 bytes vendors/fontastic/fonts/snappymail.woff2 | Bin 6636 -> 6676 bytes yarn.lock | 131 +++++++++--------- 7 files changed, 80 insertions(+), 82 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index b313093c2..90c208a77 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -2,7 +2,6 @@ module.exports = { parser: 'babel-eslint', // extends: ['eslint:recommended', 'plugin:prettier/recommended'], extends: ['eslint:recommended'], - plugins: ['prettier'], parserOptions: { ecmaVersion: 6, sourceType: 'module' @@ -43,7 +42,6 @@ module.exports = { // http://eslint.org/docs/rules/ rules: { // plugins -// 'prettier/prettier': 'error', 'no-mixed-spaces-and-tabs': 'off', 'max-len': [ 'error', diff --git a/README.md b/README.md index 597bbafe6..4ccd55dca 100644 --- a/README.md +++ b/README.md @@ -113,23 +113,23 @@ RainLoop 1.15 vs SnappyMail |js/* |RainLoop |Snappy | |--------------- |--------: |--------: | -|admin.js |2.158.025 | 119.053 | -|app.js |4.215.733 | 534.600 | +|admin.js |2.158.025 | 116.731 | +|app.js |4.215.733 | 531.730 | |boot.js | 672.433 | 4.713 | -|libs.js | 647.679 | 227.645 | +|libs.js | 647.679 | 227.341 | |polyfills.js | 325.908 | 0 | |serviceworker.js | 0 | 285 | -|TOTAL |8.019.778 | 886.296 | +|TOTAL |8.019.778 | 880.800 | |js/min/* |RainLoop |Snappy |RL gzip |SM gzip |RL brotli |SM brotli | |--------------- |--------: |--------: |------: |------: |--------: |--------: | -|admin.min.js | 255.514 | 61.017 | 73.899 | 17.396 | 60.674 | 15.420 | -|app.min.js | 516.000 | 260.826 |140.430 | 75.083 |110.657 | 62.961 | +|admin.min.js | 255.514 | 59.693 | 73.899 | 17.059 | 60.674 | 15.161 | +|app.min.js | 516.000 | 259.262 |140.430 | 74.733 |110.657 | 62.726 | |boot.min.js | 66.456 | 2.521 | 22.553 | 1.356 | 20.043 | 1.165 | -|libs.min.js | 574.626 | 120.243 |177.280 | 44.101 |151.855 | 39.263 | +|libs.min.js | 574.626 | 119.938 |177.280 | 43.997 |151.855 | 39.158 | |polyfills.min.js | 32.608 | 0 | 11.315 | 0 | 10.072 | 0 | -|TOTAL |1.445.204 | 444.607 |425.477 |137.936 |353.301 |118.809 | -|TOTAL (no admin) |1.189.690 | 383.590 |351.061 |120.540 |292.627 |103.389 | +|TOTAL |1.445.204 | 441.414 |425.477 |137.145 |353.301 |118.210 | +|TOTAL (no admin) |1.189.690 | 381.721 |351.061 |120.086 |292.627 |103.049 | For a user its around 65% smaller and faster than traditional RainLoop. @@ -160,8 +160,8 @@ For a user its around 65% smaller and faster than traditional RainLoop. |css/* |RainLoop |Snappy |RL gzip |SM gzip |SM brotli | |------------ |-------: |-------: |------: |------: |--------: | -|app.css | 340.334 | 151.854 | 46,959 | 24.659 | 20.899 | -|app.min.css | 274.791 | 124.137 | 39.618 | 21.562 | 18.763 | +|app.css | 340.334 | 147.624 | 46,959 | 23.959 | 20.338 | +|app.min.css | 274.791 | 120.047 | 39.618 | 20.925 | 18.240 | |boot.css | | 1.826 | | 786 | 626 | |boot.min.css | | 1.481 | | 698 | 548 | diff --git a/package.json b/package.json index 1f8037633..40ee0f9c6 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "title": "SnappyMail", "description": "Simple, modern & fast web-based email client", "private": true, - "version": "2.3.0", + "version": "2.3.1", "homepage": "https://snappymail.eu", "author": { "name": "DJ Maze", @@ -46,9 +46,10 @@ "@babel/plugin-proposal-class-properties": "7.8.3", "@babel/plugin-proposal-decorators": "7.8.3", "@babel/preset-env": "7.8.7", + "@babel/runtime-corejs3": "^7.12.13", "babel-eslint": "10.1.0", + "core-js": "^3.8.3", "eslint": "6.8.0", - "eslint-plugin-prettier": "3.3.1", "gulp": "4.0.2", "gulp-cached": "1.1.1", "gulp-clean-css": "4.3.0", diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php index 5d3e4d5c4..4268c77e3 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php @@ -489,7 +489,7 @@ class Actions $sSpecAuthToken = '_' . $oAccount->GetAuthTokenQ(); $this->SetSpecAuthToken($sSpecAuthToken); - Utils::SetCookie(self::AUTH_SPEC_TOKEN_KEY, $sSpecAuthToken, 0); + Utils::SetCookie(self::AUTH_SPEC_TOKEN_KEY, $sSpecAuthToken); if ($oAccount->SignMe() && 0 < \strlen($oAccount->SignMeToken())) { Utils::SetCookie(self::AUTH_SIGN_ME_TOKEN_KEY, diff --git a/vendors/fontastic/fonts/snappymail.woff b/vendors/fontastic/fonts/snappymail.woff index 7996f1a9be161469225d80b3294fdcd281fa1243..0418696411ea9eb3163915593e6ba5f826a69b7d 100644 GIT binary patch delta 6998 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 literal 6636 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