Skip to content

Releases: BosonPHP/Runtime

0.7.0

01 May 01:46
feab369
Compare
Choose a tag to compare
  • [BC] Totally rewrite all HTTP layer

0.6.0

28 Apr 21:40
da9940b
Compare
Choose a tag to compare
  • Add Symfony, Laravel and PSR-7 basic HTTP bridges.
  • Add static files bridge.
  • Add basic support of $_SERVER isolation.
  • Add basic support (parsers) of multipart/form-data and application/x-www-form-urlencoded requests.
  • Other minor improvements.

Full Changelog: 0.5.3...0.6.0

0.5.3

25 Apr 02:49
eb4d417
Compare
Choose a tag to compare
  • Fix window decorations in configs

Full Changelog: 0.5.2...0.5.3

0.5.2

25 Apr 02:18
db68946
Compare
Choose a tag to compare
  • Fix size_t functions type hints and assertions

Full Changelog: 0.5.1...0.5.2

0.5.1

25 Apr 02:03
4bc5d64
Compare
Choose a tag to compare
  • Add JsonResponse and improve Response behaviour.
  • Remove debug stmts.

Full Changelog: 0.5.0...0.5.1

0.5.0

25 Apr 01:18
9c7c1c8
Compare
Choose a tag to compare
  • Drop unnecessary WebViewLoading and WebViewLoaded events (you can use WebViewNavigating, WebViewNavigated and WebViewDomReady instead).
  • Added WebViewRequest intention.
  • Drop middleware system and replace to events (intentions):
    before
$app = new Application(new ApplicationCreateInfo(
    schemes: [ 'https' ],
));

$pipeline = $app->webview->schemes->find('https')
    ?->append(new class implements MiddlewareInterface {
        public function handle(RequestInterface $request, HandlerInterface $handler): Response
        {
            return new Response('<h1>Hello from "' . $request->url . '"!</h1>');
        }
    });

$app->webview->url = 'https://hello.world/';

after

$app = new Application(new ApplicationCreateInfo(
    schemes: [ 'https' ],
));

$app->events->addEventListener(WebViewRequest::class, function (WebViewRequest $e) {
    $e->response = new Response('<h1>Hello from "' . $request->url . '"!</h1>');
});

$app->webview->url = 'https://hello.world/';
  • Added Headers::first(), Headers::all() and Header::contains() methods

Full Changelog: 0.4.0...0.5.0

0.4.0

24 Apr 21:45
8192701
Compare
Choose a tag to compare
  • Upgrade frontend dependencies to ^0.2 (https://github.com/BosonPHP/frontend/releases/tag/0.2.0)
  • Added binary compat constraints.
  • Added Window::restore() method (restores window state after maximize/minimize).
  • Fixed and improved Window min, max and size properties initialization logic.
  • Fixed Window::maximize() method behaviour.
  • Added WindowDecorationChanged event (after window decoration has been changed).
  • Added WindowStateChanged event (after window state has been changed).
  • Added Window::$state property (read only) and WindowState enum:
enum WindowState
{
    case Normal;
    case Minimized;
    case Maximized;
}

0.3.0

24 Apr 03:29
5a2cd8f
Compare
Choose a tag to compare
  • Added WindowCreateInfo::$decoration and Window::$decoration properties with WindowDecoration enum:
enum WindowDecoration
{
    case Default;
    case DarkMode;
    case Frameless;
    case Transparent;
}
  • Window::$background property has been removed.
  • Window::$isDecorated property has been removed.
  • WindowCreateInfo::$decorated config field has been removed.
  • Any color features (parsing and value objects) has been removed.
  • Added Window::minmize() method.
  • Added Window::maximize() method (may not work correctly at the moment, merge and release required saucer/bindings#4)

Full Changelog: 0.2.0...0.3.0

0.2.0

23 Apr 00:14
c1899aa
Compare
Choose a tag to compare
  • Add custom scheme/protocols support
  • Totally rewrite HTTP layer (6afb3ed). Affect behavior of properties:
    • WebView::$url
    • WebViewNavigating::$url
    • WebViewNavigated::$url
  • Added HTTP middleware support (TBD; Early Support)
  • And more...

Full Changelog: 0.1.1...0.2.0

0.1.1

20 Apr 16:14
1773a7b
Compare
Choose a tag to compare
  • Add window`s background color support:
// Get
echo $window->background; // string(7) "#ffffff"
echo $window->background->red; // int(255)

// Update
$window->background = '#f00'; // set color
$window->background->alpha = 0; // update only alpha component
$window->background->update(red: 64, green: 42); // update red and green components only