Skip to content

Instantly share code, notes, and snippets.

View Majkl578's full-sized avatar
💥
breaking builds

Michael Moravec Majkl578

💥
breaking builds
View GitHub Profile
@Majkl578
Majkl578 / test-all.sh
Last active August 29, 2015 14:07
Tests runner for all Nette Components
#!/bin/bash
set -e
# Tests runner for all Nette Components
# Author: Majkl578
if [ "$1" == "--help" ] || [ "$1" == "-h" ] ; then
echo "Usage: $0 [HHVM_BINARY=hhvm] [DIR=random]"
exit 1
fi
@Majkl578
Majkl578 / results
Last active August 29, 2015 14:07
Nette-dev + HHVM-dev status | All components master + Tester 1.3.0@RC + HHVM 3.4.0-dev@gd54eed7 (including merged fix for facebook/hhvm#2684).
application/ FAILED 2x (FileResponse.contentDisposition.phpt, Presenter.paramChecking.phpt)
caching/ FAILED 2x (FileStorage.call.phpt, FileStorage.wrap.phpt)
database/ FAILED 1x [mysql, sqlite] (ResultSet.normalizeRow.mysql.phpt[mysql])
finder/ PASSED
forms/ PASSED
latte/ PASSED
neon/ PASSED
reflection/ FAILED 5x (Extension.phpt, GlobalFunction.phpt, ClassType.phpt, Parameter.defaultValues.phpt, Parameter.php53.phpt)
routing/ FAILED 1x (Route.utf8Param.phpt)
security/ PASSED
@Majkl578
Majkl578 / nette.hdf
Created December 16, 2013 10:00
Nette config for HHVM
Server {
Port = 8888
SourceRoot = /www/nette-app/www
DefaultDocument = index.php
}
VirtualHost {
* {
Pattern = .*
ServerVariables {
@Majkl578
Majkl578 / gist:7984436
Last active December 31, 2015 12:09
Nette <3 HHVM
PHP 5.4.999-hiphop | 'hhvm' | 20 threads
s.........................................................................F...FF..FF.F.........F....F.........................................................F........s.....s.s.s.s.s.s.s.s.s.s..s..s..s..s..s..s..s..s..s..s..sF.s..s..s.FsF.s.Fs..s..s..s..s..s..s..s..s..sF.s...s.s..s..s..s..s.Fs..s...FFssFFss.s.ssFFsss.FFF.FF.FsFs....F....F..F...............................................................s...FF.F.......................................F..........F..........F............................................................F..F.........F..F.FFF....F.F.................................................................F....F.......F...F.FFFF....F.F......F..........................FF..F..F..............
-- FAILED: NetteModule\MicroPresenter | Nette/Application.UI/MicroPresenter.invoke.phpt
Exited with error code 1 (expected 0)
Exception: Invalid function, expected string, got object
in [internal function]
in Nette/Reflection/Parameter.php(42) Refl
@Majkl578
Majkl578 / watcher.php
Created July 6, 2013 19:54
Simple realtime inotify-based script watching for file updates, updates all files on update. Requires inotify extension, can be found at http://pecl.php.net/package/inotify. Usage: $ php scripts/watcher.php doc-2.0 cs ../web-content /tmp/webcontent Based on https://github.com/nette/web-content/tree/convertor
<?php
/**
* Simple realtime inotify-based script watching for file updates, updates all files on update.
* Requires inotify extension, can be found at http://pecl.php.net/package/inotify.
* Usage: $ php scripts/watcher.php doc-2.0 cs ../web-content /tmp/webcontent
* @author Michael Moravec
*/
require __DIR__ . '/../vendor/autoload.php';
@Majkl578
Majkl578 / presenter.php
Last active December 18, 2015 02:19
Předvyplnění předmětu kontaktního formuláře na základě parametru.
<?php
class ContactPresenter extends Presenter
{
public function renderDefault($service = '')
{
if ($service === 'taxi') {
$this['contactForm']->setDefaults(array('subject' => 'Zájem o Taxi přepravu'));
elseif ($service === 'rozvoz') {
$this['contactForm']->setDefaults(array('subject' => 'Dotaz k rozvozu'));
@Majkl578
Majkl578 / gist:5408120
Last active December 16, 2015 08:48
Nette 2.1-dev BC breaks against release-2.0.x Generated by: $ git log upstream/release-2.0.x..upstream/master --oneline | grep -i "bc break"
1e8feb9 Forms: replaced vsprintf() in Rules::formatMessage() with own function (possible BC break)
973bd0d DI\Container: factory methods for non-shared services changed from createXyz() to createServiceXyz() (BC break)
ec148ff ObjectMixin: removed callProperty() (BC break)
781625c PhpGenerator: PhpLiteral is immutable object (and consistent with SqlLiteral) (BC break)
330cbd2 Environment: requires path to temporary directory in TEMP_DIR (BC break)
15dc3e7 Nette\Application\Request, Nette\Http\Url, Nette\Security\Identity: are no more freezable objects (BC break)
70cd9d4 Partially revert "Forms: Disabled fields always get new default value (BC break) [Closes #981] [Closes #961]"
ba801a3 Nette\Config renamed to Nette\DI (BC break!)
e104fb0 DI\Container: removed $class and changed $meta internal structures (BC break?)
5b295db DI\Container::addService() removed parameter $meta (BC break)
@Majkl578
Majkl578 / gist:5367340
Created April 11, 2013 21:29
Variant of Presenter::restoreRequest() which ignores signals.
<?php
use Nette\Application\IResponse;
use Nette\Application\Responses\ForwardResponse;
use Nette\Application\UI\Presenter;
trait RestoreRequestWithoutSignalTrait
{
/**
* Restores current request to session. Ignores signals.
@Majkl578
Majkl578 / test.php
Last active December 14, 2015 20:39
PHP overlazyfying is evil Ilustrating cost of 1000 object instantiations on a large object (presenter) without constructor
<?php
require '/www/nette/Nette/loader.php';
class FooPresenter extends Nette\Application\UI\Presenter {}
$max = 1e3; // 1000
$foo = array_fill(1, $max, NULL);
@Majkl578
Majkl578 / gist:5102017
Created March 6, 2013 18:59
nette.ajax.js + Google Analytics
// push new URL into GA pageview tracker
$.nette.ext('ga', {
success: function (payload) {
if (payload.url) {
_gaq.push(['_trackPageview', payload.url]);
}
}
});