Skip to content

Instantly share code, notes, and snippets.

View kbond's full-sized avatar

Kevin Bond kbond

View GitHub Profile
@kbond
kbond / GhostProxyBuilder.php
Last active January 21, 2023 16:49
Proxy Builder
<?php
/**
* @author Kevin Bond <kevinbond@gmail.com>
*
* @template T of object
* @extends ProxyBuilder<T>
*/
final class GhostProxyBuilder extends ProxyBuilder
{
@kbond
kbond / index.php
Last active November 21, 2018 20:50
Laravel advanced migration examples
<?php
Schema::create('visits', function (Blueprint $table) {
$table->increments('id');
$table->string('url');
$table->json('data');
// non-nullable timestamps
$table->timestamp('created_at')->default(\DB::raw('CURRENT_TIMESTAMP'));
$table->timestamp('updated_at')->default(\DB::raw('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'));
@kbond
kbond / ORMRepository.md
Last active July 6, 2017 15:09
ORMRepository trait
use Doctrine\ORM\EntityManager;
use Doctrine\ORM\EntityRepository;
use Doctrine\ORM\QueryBuilder;
use Zenstruck\Porpaginas\Doctrine\ORMQueryIterateResult;
use Zenstruck\Porpaginas\Result;

trait ORMRepository
{
    /** @var EntityManager */
@kbond
kbond / ExampleTest.php
Last active March 16, 2023 11:44
Laravel Dusk in a non-laravel (Symfony) app
<?php
namespace App\Tests\Browser;
use App\Tests\HasDuskBrowser;
class ExampleTest extends \PHPUnit_Framework_TestCase
{
use HasDuskBrowser;
@kbond
kbond / phpenv.sh
Created November 1, 2016 20:32
Switch between PHP versions
if [ "$1" = "5" ]; then
sudo ln -sfn /usr/bin/php5.6 /etc/alternatives/php;
else
sudo ln -sfn /usr/bin/php7.0 /etc/alternatives/php;
fi
Verifying that +zenstruck is my blockchain ID. https://onename.com/zenstruck
@kbond
kbond / AppKernel.php
Last active March 6, 2020 19:10
JWT Authentication With Symfony Guard. POST username/password to /login to receive token, /api* requests require a valid token
<?php
// app/AppKernel.php
use Symfony\Component\Config\Loader\LoaderInterface;
use Symfony\Component\HttpKernel\Kernel;
class AppKernel extends Kernel
{
public function registerBundles()
{
@kbond
kbond / gist:dc235c9caf3693e9133c
Created August 11, 2015 12:59
Slow to start jenkins thread dump
Full thread dump Java HotSpot(TM) 64-Bit Server VM (24.80-b11 mixed mode):
"Attach Listener" daemon prio=10 tid=0x00007f297406f800 nid=0x4b6 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"RequestHandlerThread[#15]" daemon prio=10 tid=0x00007f2974004800 nid=0x4a9 waiting on condition [0x00007f2988212000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000f09953e0> (a java.util.concurrent.SynchronousQueue$TransferStack)
at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
@kbond
kbond / gist:b673d053666c39233d6d
Last active August 29, 2015 14:27
No start jenkins thread dump
Debugger attached successfully.
Server compiler detected.
JVM version is 24.80-b11
Deadlock Detection:
No deadlocks found.
Thread 3631: (state = BLOCKED)
- sun.misc.Unsafe.park(boolean, long) @bci=0 (Interpreted frame)
- java.util.concurrent.locks.LockSupport.parkNanos(java.lang.Object, long) @bci=20, line=226 (Compiled frame)
@kbond
kbond / 0_reuse_code.js
Last active August 29, 2015 14:11
Here are some things you can do with Gists in GistBox.
// Use Gists to store code you would like to remember later on
console.log(window); // log the "window" object to the console