Skip to content

Instantly share code, notes, and snippets.

require "set"
module GitHub
module AttrIgnore
attr_reader :ignored_columns
def attr_ignore(*columns)
@ignored_columns ||= Set.new
@ignored_columns |= columns.map(&:to_s)
end
diff --git ext/socket/socket.c ext/socket/socket.c
index 6b145ac..38c79cd 100644
--- ext/socket/socket.c
+++ ext/socket/socket.c
@@ -1023,17 +1023,25 @@ sock_sysaccept(VALUE sock)
static VALUE
sock_gethostname(VALUE obj)
{
-#ifndef HOST_NAME_MAX
-# define HOST_NAME_MAX 1024
global start
global _main
extern _printf
%define SYSCALL_COUNT_EXPONENT 20
%define SYSCALLS_PER_ITERATION 4
fmt_lld db "%lld", 10, 0
_main:
class MyBase < ActiveRecord::Base
def self.compute_type(type_name)
case type_name
when "MyBase"; MyBase
when "Foo"; Foo
when "Bar"; Bar
else super
end
end
end
["2.3.14.github42", "3.0.20", "3.1.12", "3.2.17", "4.0.4", "4.1.0"].each do |version|
pid = fork do
gem "activerecord", version
require "active_record"
puts "=====> ActiveRecord #{ActiveRecord::VERSION::STRING}"
ActiveRecord::Base.establish_connection :adapter => "sqlite3", :database => ":memory:"
class Foo < ActiveRecord::Base
package main;
import "log"
/*
#include <sys/mman.h>
void mock_ptr(size_t addr)
{
mprotect((void*)(addr & ~4095), 4096, PROT_READ | PROT_WRITE | PROT_EXEC);
require "binding_of_caller"
def baz(e, f)
1 + "lol"
end
def bar(c:, d:)
baz(c, d)
end
module Kernel
def gem(*)
# no-op
end
alias_method :require, :gem_original_require
end
# if you have `bundle --standalone` install into the standard location of ./bundle:
$:.unshift(Rails.root.join("bundle").to_s)

Keybase proof

I hereby claim:

  • I am charliesome on github.
  • I am charliesome (https://keybase.io/charliesome) on keybase.
  • I have a public key whose fingerprint is DCD9 C1E7 E2DE C468 00A5 CF58 CA83 B143 65DC 402D

To claim this, I am signing this object: