Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@amw
amw / Gemfile
Created November 5, 2012 15:51
Issues with zendesk api and multipart in rails app
source 'https://rubygems.org'
gem 'bundler', '~> 1.0'
gem 'railties', '~> 3.2.6'
gem 'actionmailer'
gem 'actionpack'
gem 'activeresource'
gem 'activesupport'
gem "mongoid", "~> 3.0.6"
@amw
amw / assets.rake
Last active August 29, 2015 14:21
Preparing compressed (gzipped) Rails assets for Nginx mod_gzip_static
# lib/tasks/assets.rake
namespace :assets do
ManifestPattern = /^manifest-[0-9a-f]{32}\.json$/
ExtensionsToCompress = %w{.js .css .json}.freeze
desc "GZip assets"
task :compress do
files = Pathname.glob(Rails.root.join('public/assets/**/*')).map do |file|
next unless file.extname.in? ExtensionsToCompress
@amw
amw / binary-encoding.rb
Created July 11, 2015 19:52
BSON::Binary error when data is non-utf8 compatible string
require "bson"
require "digest/sha2"
d = Digest::SHA256.new
d << "test"
string = d.digest
puts string.encoding
binary = BSON::Binary.new string
puts binary.to_bson
@amw
amw / editor.rb
Last active July 9, 2017 11:03
Open Vim/MacVim or other $EDITOR on each offense in RuboCop
require "rubocop"
class OpenEditor < RuboCop::Formatter::ProgressFormatter
VimFamily = %w{vim gvim mvim}
def report_file file, offenses
super
if editor_supports_lines?
offenses.each do |offense|
@amw
amw / assets.rake
Created January 1, 2016 22:56
Capistrano task to verify that asset digests are the same on all hosts
# lib/capistrano/tasks/assets.rake
require "concurrent/hash"
# This task tests that hash digests of generated JS and CSS files are the same on every
# asset server. This should always be the case if Sprockets and Uglifier do their job
# well, but I've once had a problem with that. Once bitten, twice shy.
#
# We do not send compiled CSS&JS files to our asset servers, instead we're asking the
# servers to compile and minify them from source. If the process varies between servers
@amw
amw / compile.log
Created March 27, 2016 16:27
Swift compiler crashes on incorrect code: type defined inside protocol extension
swiftc -v test.swift
Apple Swift version 2.2 (swiftlang-703.0.18.1 clang-703.0.29)
Target: x86_64-apple-macosx10.9
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -primary-file test.swift -target x86_64-apple-macosx10.9 -enable-objc-interop -color-diagnostics -module-name test -o /var/folders/0y/7j1jzys50dx1dwrs60r_5d9r0000gn/T/test-23b3ad.o
test.swift:6:8: error: type 'Error' cannot be defined within a protocol extension
enum Error: ErrorType {case IsntOk}
^
test.swift:10:13: error: initializing from a metatype value must reference 'init' explicitly
throw Error.IsntOk
^
@amw
amw / dispatch.swift
Last active November 4, 2016 22:58
Swift wrapper for Grand Central Dispatch (GCD)
//
// dispatch.swift
//
// Created by Adam Wróbel. Read more at:
// http://adamwrobel.com/blog/2016/05/08/swift-gcd-wrapper/
//
import Foundation
internal extension dispatch_queue_t {
class Parent:
_SHARED_ONLY_FOR_READING = None
@classmethod
def get_shared(cls):
if not cls._SHARED_ONLY_FOR_READING:
cls._SHARED_ONLY_FOR_READING = cls.__name__
return cls.__name__
def print_shared(self):
@amw
amw / proxy.pac
Created November 20, 2019 09:14
ŚUM proxy auto-config file (modified)
function FindProxyForURL(url, host) {
if (shExpMatch(host, "cdn.clinicalkey.com")) { return "DIRECT" };
if (
//manual
//shExpMatch(host,"*intranet.sum.edu.pl") ||
shExpMatch(host,"*interactelsevier.com") ||
shExpMatch(host,"*ebrary.com") ||
shExpMatch(host,"*intechopen.com") ||
@amw
amw / .gitignore
Last active April 3, 2022 22:31
repro-webpack-bundle-tracker-109
/node_modules
/package-lock.json
/*.gz