Skip to content

Commit

Permalink
upgraded libraries
Browse files Browse the repository at this point in the history
reduced changelog
fixed some cache-control issues
  • Loading branch information
brainfoolong committed Apr 1, 2024
1 parent 1485588 commit c6a07db
Show file tree
Hide file tree
Showing 5 changed files with 13 additions and 271 deletions.
269 changes: 4 additions & 265 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@

# [4.0.0-alpha.17 - TBA]
# [4.0.0-alpha.17 - 2024-04-01]

* restructured src folders for js/scss
* fixed some cache-control issues
* upgraded libraries and vendor

# [4.0.0-alpha.16 - 2023-10-15]

Expand All @@ -18,267 +19,5 @@
* upgraded PHP to 8.3.1
* many minor fixes and improvements

# [3.1.1 - 2023-02-13]

* integrated playwright installation into docker build and entrypoint runner (as already done with phpunit tests)
* clean some build deps and separate them better
* removed optional volume instruction for appdata volume
* upgrade for server versions to
* Nginx: nginx/1.23.3
* MariaDB: mysql Ver 15.1 Distrib 10.6.12-MariaDB, for debian-linux-gnu (x86_64) using EditLine wrapper
* PHP: 8.2.2
* NodeJS: v18.14.0

### 🎯 Framelix core (backend/frontend) changes (3.1.1 and 3.1.0)

* fixed bug in prefetch storables with different types
* added user id attribute to `<html>` in backend view
* added prefix `framelix-form` to form id's
* removed 500 error when setup is done
* removed database safe query execute in setup view as it's already done on warmup
* changed captcha validation to use browser instead of raw stream to fix some connection issues
* fixed a few datepicker styling issues
* fixed framelix popup color management
* fixed backend layout type 2 overflow
* fixed default api view cannot be overriden
* other internal minor fixes and improvements

# [3.0.1 - 2022-12-30]

* added missing `apt update` before installing x-debug

# [3.0.0 - 2022-12-09]

* added `healthcheck` to dockerfile
* upgrade to php 8.2

### 🎯 Framelix core (backend/frontend)

* added `<framelix-alert>` custom element
* added `loadUrlOnChange` to `Select` field
* added some handy condition generators into `Mysql`
* added `isReadable` to `Storable` and updated several things to respect this new flag
* added `PhpToJsData::renderToHtml` for a more generic way to render php to html/js counterparts
* renamed `configTest` console command to `healthCheck`
* renamed `getEditUrl` to `getDetailsUrl` (breaking change)
* changed `isDeletable` defaults now to `isEditable` return value (attention change)
* changed `Storable->store` to require `isEditable` true to be able to store a storable
* changed backend layout to have an always visible top-bar
* changed `Date` field to use own datepicker instead of native one
* fixed `Search` field wanky result behaviour
* fixed timing of popup destroy
* added `__noblur` to `Framelix.redirect()` to fix blur issue with file downloads
* updated (and removed) to verbose php doc comments
* updated material icons
* some styling improvements
* upgraded some vendor files

# [2.4.0 - 2022-11-22]

* added better (newer) mariadb source to use latest bugfix release in LTS version, which at the time include some
required bugfix updates to crash and dump related mariadb issues
* added `mysql_upgrade` job to mariadb startup in case an upgrade has happened
* added `php8.1-sqlite3` and `php8.1-pgsql` modules

# [2.3.3 - 2022-10-31]

Happy Halloween.

* added cleanup before warmup, removing old version info files

# [2.3.2 - 2022-10-27]

* changed install app script to remove not needed .git folders and to use only production npm modules
* optimized cron log

# [2.3.1 - 2022-10-26]

* fixed form spacer after changed form fields hierarchy

# [2.3.0 - 2022-10-25]

* added `framelix_console` script
* added `framelix_backup_db` script parameter to pass a backup filename as parameter
* added new config flags for how long to keep system event logs and backups
* added `MediaBrowser` field
* added `StorableFolder` and `StorableFile` for new `MediaBrowser`
* added `Archiver` for pack/unpack archive files
* added `ImageUtils` for fast resizing, conversation and comparison of images
* added `framelix_intall_app` `-q` quiet parameter to not throw an error when no args are provided
* added blur window when `Framelix.redirect()` and deactivated pointer events for better user feedback on slow con
* added support for custom elements and make use if `<framelix-button>` and `<framelix-image>` in backend
* added childs fetch for `Storables`
* added `store` method to forms and fields for more flexible Storage handling
* added more flexible positioning and sizing of forms and fields
* changed JS translation loading to directly load json files to make use of browser caching instead of packing that code
into the main view
* removed unsigned jscall request support
* enabled gzip for static files in nginx for a lot less data transfer volume
* improved readability of docker console messages
* refactored `FramelixModal` to use html native `<dialog>`
* refactored and streamlined php to javascript data transfer
* a lot of smaller changes in UI and usability

# [2.1.2 - 2022-10-14]

* complete rework to docker native way instead of docker-compose
* almost refactored the whole framework, so it is considered to be all new

# [1.9.0 - 2022-06-15]

* some cleanup and removements of old files
* added dev role and set dev pages under this dev role
* added `Shell->getOutput()` for nice formatting
* fixed modal width on small screens
* fixed bug docker update will still be marked as available after update
* fixed remember active tab bug with multiple tabs instances on same page
* removed content-length header for response download to fix issues with corrupt downloads

# [1.8.0 - 2022-05-13]

* changed hidden form submit names, now prefixed with framelix-form-
* fixed wrong redirect after login, when a custom redirect is defined
* fixed backend sidebar overflow when text is too long
* fixed bug with error handler show dupe errors because of StopException catch
* fixed field visibility condition for not* conditions
* fixed number format/parse
* fixed a fiew field layout issues
* fixed FramelixDom.isInDom() with some elements
* fixed setStorableValues in case of storableFile properties without a fileUpload
* fixed FramelixColorUtils.hexToRgb returning object instead of array
* optimized email settings
* optimized FramelixModal for different screen sizes
* views with regex in url now remove parameters that are not used when generating urls
* backend pages now by default need a user to be logged in
* added Lang::concatKeys to easily concat lang keys
* added setIntegerOnly() to number field
* added noAnimation option to FramelixModal
* added QuickSearch->forceInitialQuery to set a initial query no matter what the user have stored
* added fieldGroups to Forms, to be able to group fields under a collapsable
* added `Tar` class to create and extract tar files
* added JsCallUnsigned to call handcrafted PHP methods from frontend without a correctly backend signed url
* refactored language handling for more flexible way to load and add values
* refactored update and release process
* removed a few unused user roles
* removed release build script in favor of new https://github.com/NullixAT/framelix-release action

# [1.7.0 - 2022-02-04]

* design refactoring to be more modern and clear

### :pencil: Changed

* changed url anti cache parameter to be always included instead of only 7 days to fix fallback to old cache when
parameter gets removed

### :heart: Added

* added maxWidth option to framelix modal and use it for alert, confirm and prompt by default

### :pencil: Changed

* changed url anti cache parameter to be always included instead of only 7 days to fix fallback to old cache when
parameter gets removed

### :wrench: Fixed

* fixed modal window prompt enter key not working
* fixed url signature check

# [1.6.2 - 2022-03-08]

### :heart: Added

* added maxWidth option to framelix modal and use it for alert, confirm and prompt by default

### :pencil: Changed

* changed url anti cache parameter to be always included instead of only 7 days to fix fallback to old cache when
parameter gets removed

### :wrench: Fixed

* fixed modal window prompt enter key not working
* fixed url signature check

### :police_car: Security

# [1.6.1 - 2022-02-17]

### :heart: Added

### :pencil: Changed

* changed language key syntax for singular/plurar to must include the number itself for more flexibility
* changed sass compiler to `sass` instead of deprecated `node-sass`
* changed default value for `captchaScoreThreshold` in default config

### :construction: Deprecated

### :x: Removed

### :wrench: Fixed

* fixed typo in `captchaScoreTreshold`
* fixed error when app update throws an error during update result in update never work again because tmp folder was not
cleared

### :police_car: Security

# [1.5.0 - 2022-02-09]

### :heart: Added

* added config key backendDefaultView which will point to default backend view after login
* added application and module version info to systemcheck page
* added userpwd and requestBody to browser

### :pencil: Changed

* upgraded node-sass compiler and babel compiler to newest version
* updated backend small layout a bit, so it has a blurry bg
* changed modal window now use semi-transparent page in background instead of blur

### :construction: Deprecated

### :x: Removed

* module config key setupDoneRedirect and replaced it with "backendDefaultView"

### :wrench: Fixed

* fixed typo in Config function
* fixed modal window blur filter will result in repaint a "broken" sidebar

### :police_car: Security

# [1.4.0 - 2022-02-08]

a lot of updates and fixes for backend and general framework

### :heart: Added

* added resort actions to developer language editor to resort keys and update lang files easily
* added headHtmlAfterInit
* added getHtmlTableValue for ObjectTransformable
* added cron to delete system event logs

### :pencil: Changed

* system event log page to be
* improved and simplified use of quick search

### :construction: Deprecated

### :x: Removed

* removed grid field as it was flaky and hard to use on mobile

### :wrench: Fixed

* fixed framelix-string-utils -> slugify replacing only one char
* fixed a lot of layout issues
* fixed layout issues with fields that uses buttons

### :police_car: Security

Older changelogs can be found in history
2 changes: 1 addition & 1 deletion appdata/composer.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"require-dev": {
"phpunit/phpunit": "^11.0",
"phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^10.5",
"jetbrains/phpstorm-attributes": "^1.0"
}
}
2 changes: 1 addition & 1 deletion appdata/modules/Framelix/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"robthree/twofactorauth": "^2.1",
"lbuchs/webauthn": "^2.1",
"mpdf/qrcode": "^1.2",
"phpoffice/phpspreadsheet": "^1.29",
"phpoffice/phpspreadsheet": "^2.0",
"mpdf/mpdf": "^8.2",
"phpmailer/phpmailer": "^6.9",
"brainfoolong/cryptojs-aes-php": "^2.3"
Expand Down
9 changes: 6 additions & 3 deletions appdata/modules/Framelix/src/Network/Response.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
*/
class Response
{

/**
* Send http header, but only if it is possible (no headers are sent)
* @param string $header
Expand All @@ -39,7 +40,8 @@ public static function header(string $header): void

/**
* Initialize a file download for the browser
* @param string|StorableFile $fileOrData If starting with @, the parameter will be threaded as string rather than file
* @param string|StorableFile $fileOrData If starting with @, the parameter will be threaded as string rather than
* file
* @param string|null $filename
* @param string|null $filetype
* @param callable|null $afterDownload A hook after download before script execution stops
Expand Down Expand Up @@ -77,9 +79,9 @@ public static function download(
) . '"'
);
self::header('Expires: 0');
self::header('Cache-Control: no-store');
self::header('Pragma: public');
if ($isFile) {
self::header('Cache-Control: no-store');
readfile($fileOrData);
} else {
echo $fileOrData;
Expand All @@ -101,8 +103,9 @@ public static function stopWithFormValidationResponse(array|string|null $errorMe
JsonUtils::output([
'toastMessages' => Toast::getQueueMessages(true),
'errorMessages' => $errorMessages,
'buffer' => Buffer::getAll()
'buffer' => Buffer::getAll(),
]);
throw new StopExecution();
}

}
2 changes: 1 addition & 1 deletion appdata/playwright/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@
"author": "",
"license": "MIT",
"dependencies": {
"@playwright/test": "^1.37.0"
"@playwright/test": "^1.42"
}
}

0 comments on commit c6a07db

Please sign in to comment.