ruby_quirks 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/README.md +23 -4
- data/lib/ruby_quirks.rb +2 -0
- data/lib/ruby_quirks/version.rb +1 -1
- data/ruby_quirks.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ODk1YzYxYTE4NWQ0NmUxNWYwYzI0NjhkMmNlMzE4OTVkM2MzN2ZlYw==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NTIyODJjNTA5OTg1YmVjMjE2YjRlOWJmZWUwZGVmN2RlMGNmMmI2OQ==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZTZmNDZjNzUyMDJmZGVjZTc0MjQ4NTMwNzczOTNlMjE5ZjEwMGJmMGM1Y2Vm
|
10
|
+
ZWZjN2JkODc0ZjE1ZWIxZDViZDEyZWQxNzA0M2M3NDIxMjA4ZGYzNmFjNzgx
|
11
|
+
ZjVmZTA1MTJhNDFjNTBjYzI1OWI3MjE0YTZiOTVjNDJhNWFjMWE=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NDFiNzdhNmUxZTZiMWVlMzEzMzJkMzMxYTllMTdkZTc3Y2ZiMjMzOTQzMDQ5
|
14
|
+
NzJkMWRiY2Y1MWIzNmI4NTg3YmQ5NDE5ODEzNDNiNzljMTE2YTM5ZGNlMjM0
|
15
|
+
ZTg4MDI4YjI2NjFjZGJhOTk5OTUxYWU4NzZlYTU5NDcxNzQ0YmQ=
|
data/README.md
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
Ruby Quirks
|
2
2
|
===========
|
3
3
|
|
4
|
-
[![Build Status](https://travis-ci.org/
|
5
|
-
###### *For Ruby 1.9.3, 2.0.
|
4
|
+
[![Build Status](https://travis-ci.org/delner/ruby_quirks.svg?branch=master)](https://travis-ci.org/delner/ruby_quirks) ![Gem Version](https://badge.fury.io/rb/ruby_quirks.svg)
|
5
|
+
###### *For Ruby 1.9.3, 2.0.x, 2.1.x, 2.2.x*
|
6
6
|
|
7
7
|
### Introduction
|
8
8
|
|
@@ -11,5 +11,24 @@ Ruby Quirks
|
|
11
11
|
### Hotfixes
|
12
12
|
|
13
13
|
#### Hash#reject and Hash#select returns Hash for subclasses of Hash
|
14
|
-
|
15
|
-
**
|
14
|
+
|
15
|
+
- **For Ruby versions:** 2.2.0+
|
16
|
+
- **Description:** Calling `#reject` or `#select` against an instance of a class that inherits from `Hash` will return an object of type `Hash`, rather than an object of the same type that `#reject` or `#select` was called against. e.g. This broke Rails' `HashWithIndifferentAccess`. See [this question](http://stackoverflow.com/questions/33638665/ruby-2-2-hashreject-returning-hash-for-inheriting-classes) for more details.
|
17
|
+
- **What this hotfix does:** It overrides `#reject` and `#select` of implementing classes to use `#dup` to return an object of the same type. This effectively replicates pre-2.2 behavior of `Hash`.
|
18
|
+
- **How to implement:** Include the `RubyQuirks::Hash::EnumByDup` in your class that inherits from `Hash`
|
19
|
+
- **Example:**
|
20
|
+
|
21
|
+
module CustomHash < Hash
|
22
|
+
include RubyQuirks::Hash::EnumByDup
|
23
|
+
end
|
24
|
+
|
25
|
+
### Changelog
|
26
|
+
|
27
|
+
#### Version 0.0.2
|
28
|
+
|
29
|
+
- Fixed: Namespace not loading (whoops!)
|
30
|
+
|
31
|
+
#### Version 0.0.1
|
32
|
+
|
33
|
+
- Initial version of Ruby Quirks
|
34
|
+
- Added: `RubyQuirks::Hash::EnumByDup`
|
data/lib/ruby_quirks.rb
CHANGED
data/lib/ruby_quirks/version.rb
CHANGED
data/ruby_quirks.gemspec
CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
|
|
8
8
|
s.version = RubyQuirks::VERSION
|
9
9
|
s.authors = ["David Elner"]
|
10
10
|
s.email = ["david@streeteasy.com"]
|
11
|
-
s.homepage = "
|
11
|
+
s.homepage = "https://github.com/delner/ruby_quirks"
|
12
12
|
s.summary = "Hotfixes and common idioms for the Ruby language."
|
13
13
|
s.description = "Hotfixes and common idioms for the Ruby language."
|
14
14
|
s.license = "MIT"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_quirks
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Elner
|
@@ -72,7 +72,7 @@ files:
|
|
72
72
|
- ruby_quirks.gemspec
|
73
73
|
- spec/ruby_quirks/hash/enum_by_dup_spec.rb
|
74
74
|
- spec/spec_helper.rb
|
75
|
-
homepage:
|
75
|
+
homepage: https://github.com/delner/ruby_quirks
|
76
76
|
licenses:
|
77
77
|
- MIT
|
78
78
|
metadata: {}
|