aboutsummaryrefslogtreecommitdiff
path: root/lib/override/to_json.rb
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2014-10-22 01:27:08 -0700
committerelijah <elijah@riseup.net>2014-10-22 01:27:08 -0700
commite44e2085f1e186264692096db1b7d426849ab7d7 (patch)
tree89a80a4df3e72d53c51532006498a7582a691df5 /lib/override/to_json.rb
parenta6b4ff1c21915475655a4a28c163904687d1035e (diff)
downloadleap_cli-e44e2085f1e186264692096db1b7d426849ab7d7.tar.gz
leap_cli-e44e2085f1e186264692096db1b7d426849ab7d7.tar.bz2
json bugfix: upgrading CertificateAuthority gem broke everything, since it depends on ActiveSupport, which in turn badly modifies how JSON works. This commit does some hacky stuff to prevent ActiveSupport from messing with JSON and allows us to mess with JSON.
Diffstat (limited to 'lib/override/to_json.rb')
-rw-r--r--lib/override/to_json.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/override/to_json.rb b/lib/override/to_json.rb
new file mode 100644
index 0000000..73fbe5c
--- /dev/null
+++ b/lib/override/to_json.rb
@@ -0,0 +1,20 @@
+#
+# activesupport/lib/core_ext/object/to_json.rb overrides to_json for
+# most core objects like so:
+#
+# [Object, Array, FalseClass, Float, Hash, Integer, NilClass, String, TrueClass].each do |klass|
+# klass.class_eval do
+# # Dumps object in JSON (JavaScript Object Notation). See www.json.org for more info.
+# def to_json(options = nil)
+# ActiveSupport::JSON.encode(self, options)
+# end
+# end
+# end
+#
+# We cannot tolerate this. We need the normal to_json to be called, not
+# ActiveSupport's custom version.
+#
+# This file exists to override the behavior of ActiveSupport. This file will get included
+# instead of the normal to_json.rb.
+#
+