Skip to content

Instantly share code, notes, and snippets.

View andynu's full-sized avatar

Andrew Nutter-Upham andynu

View GitHub Profile
# Add this to your config/initializers/ folder.
if Kernel.const_defined?('ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter')
ActiveRecord::ConnectionAdapters::OracleEnhancedAdapter.emulate_booleans = false
# Version 7.0.2 of activerecord-oracle_enhanced-adapter loads the types into
# a constant TYPE_MAP when the class is loaded
#
# This is so early in the process that there is no opertunity to change the
# default value of emulate_booleans, so that config is ineffective in that
@andynu
andynu / init.vim
Created June 10, 2022 19:02
A neo-vim config.
" .config/nvim/init.vim
" Plugins
call plug#begin(stdpath('config') . '/plugins')
Plug 'neovim/nvim-lspconfig'
Plug 'stevearc/aerial.nvim'
Plug 'tpope/vim-rails'
Plug 'tpope/vim-fugitive'
Plug 'tpope/vim-surround'
@andynu
andynu / routes_check.rake
Last active June 1, 2022 01:40
Parses production logs and checks which routes are used out of all the routes that are defined.
desc 'Show basic controller usage stats'
task :controllers => :environment do
logfiles = Dir['log/%s.log*' % Rails.env].sort
logs_gz, logs_txt = logfiles.partition{|f| Pathname.new(f).extname == '.gz' }
results = `ag Started -A 1 #{logs_txt.join(' ')}`
unless logs_gz.empty?
results << `zcat #{logs_gz.join(' ')} |ag Started -A 1`
end
Event = Struct.new(:http_method, :uri_path, :client_ip, :requested_at_str, :controller_name, :controller_action, :format) do
def requested_at
@andynu
andynu / rfluff.rb
Created May 18, 2022 12:53
rfluff a way to list TODOS|XXX|HACK|etc /w optional vim quickfix formatting.
#!/usr/bin/ruby
#
# gather a few statistics and find all flagged comments
#
# Usage:
# rfluff [-qf] [tag] [tag] ...
#
# -qf outputs a vim compatible quickfix format, otherwise
# the output is human readable
@andynu
andynu / example.sh
Last active January 19, 2023 16:40
rails-upgrade script, a helper for moving pins and doing other checks during ruby upgrades
# I have lots of projects. As I do the rails upgrades I collect the pin changes and other adjustments here
# towards the end of upgrading all the projects it gets easier and easier because of these commands.
❯ ./rails-upgrade
Commands:
rails-upgrade apple_touch # add blank apple-touch icons
rails-upgrade application_record # adds ApplicationRecord and replaces all references to ActiveRecord::Base with it
rails-upgrade asset_precompile_check # look for assets that need to be added to the assets initializer precompile list
rails-upgrade assigns_check # the assigns method has been extracted to a gem, check if it is used, and add the gem
rails-upgrade before_filter # change before_filter to before_action in controllers
@andynu
andynu / git-stat-all
Created January 28, 2022 17:50
git-stat-all command, lists an overall status of all the git repositories under the current directory.
#!/usr/bin/env ruby
require 'active_support/all'
require 'pp'
require 'rainbow'
require 'terminal-table'
$show_all = ARGV.include? '--all'
$undeployed = ARGV.include? '--undeployed'
@andynu
andynu / examples.sh
Created November 5, 2021 16:39
gem-versions
# Presumes your projects are in subdirectories of the current directory
./gem-versions.rb rails # Show you what rails versions are used across your projects, noting the latest
./gem-versions.rb --outdated # show you all the outdated gems across all your projects
@andynu
andynu / rfluff
Last active February 2, 2021 17:27
Find all those TODO/FIXME/HACK/etc.
#!/usr/bin/ruby
#
# gather a few statistics and find all flagged comments
#
# Usage:
# rfluff [-qf] [tag] [tag] ...
#
# -qf outputs a vim compatible quickfix format, otherwise
# the output is human readable
@andynu
andynu / controller_snippet.rb
Created January 29, 2021 20:16
Generic rails model filtering
def index
@records = Record.filter_params(params[:filters])
end
@andynu
andynu / Editor Bug
Last active June 19, 2017 23:28
Standard Notes: Editor Plus Icons Bug
The icons are all squares.