Skip to content

Instantly share code, notes, and snippets.

Unfortunately, computers.

Stephen Jennings jennings

Unfortunately, computers.
Block or report user

Report or block jennings

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View export-git-changed-files.ps1
$ErrorActionPreference = "Stop"
function Main {
"This script creates a zip file that contains all files changed between two commits."
"Commits can be specified as commit IDs (SHA) or as branch names."
"For example: 'master' or 'ff39683ed6'"
$git_dir = Read-Host -Prompt "Git directory"
$to_commit = Read-Host -Prompt "Commit to deploy"
jennings /
Last active May 2, 2019
Templates for empty new-style csproj files

These are copied from this article by Nate McMaster. I've been Googling for it every time I needed it, so I decided it would be a good idea to save these templates somewhere, in case the article ever goes away.

View fake_webpack.js
// This is the body of the file foo/index.ts, wrapped in a function
["./foo/index.ts"]: function (module) {
const file = __webpack_resolve__("./foo/file.ts")
module.exports.Service = file.Service
// This is the body of the file foo/file.ts, wrapped in a function
["./foo/file.ts"]: function (module) {
jennings /
Last active Mar 3, 2019
Arch Linux ARM setup for Raspberry Pi 3
View app.cs
#define NONEST
void Main()
using (var db = new MyContext())
var date = "20180315";
var query = from row in db.Tabl1
where SqlFunctions.DateDiff(
View ComposingCancellationTokens.cs
using System;
using System.Threading;
namespace ConsoleApp1
class Program
static void Main()
var worker = new Thread(Worker);
jennings / InstallPapercutSmtpServer.ps1
Created Jan 16, 2019
Installs the Papercut SMTP Server
View InstallPapercutSmtpServer.ps1
# Using 5.1.23 because 5.1.70 has a bug that prevents the GUI from opening
$tag = "5.1.23"
$downloadUrl = "$tag/Papercut.Setup.exe"
$outputFileName = "$($env:TEMP)\Papercut.Setup.exe"
# Download
del $outputFileName -Force -ErrorAction SilentlyContinue
Invoke-WebRequest $downloadUrl -OutFile $outputFileName
# Install
jennings /
Last active Jan 10, 2019
Using the `--state-branch` option to `git-filter-branch` to incrementally filter a branch
set -exuo pipefail
INDEX_FILTER_SCRIPT='git rm -r --cached --ignore-unmatch bad_directory'
jennings / CustomRules.js
Last active Aug 17, 2018
Terminating TLS/SSL with Fiddler
View CustomRules.js
static function redirectHttpsToHttp(oSession: Session, fromHost, toHost) {
if (oSession.HostnameIs(fromHost))
// Handle CONNECT Tunnels
if (oSession.HTTPMethodIs("CONNECT"))
oSession["x-replywithtunnel"] = "FakeTunnel";
return true;
jennings / input.js
Created Jun 13, 2018
UglifyJS reproduction
View input.js
function fn1() {
return function fn2(ARG1) {
return callApi({ foo: ARG1 })
function handler(response) {
const obj = { PROP: response };
return (inlinedFunction(obj.PROP))
You can’t perform that action at this time.