Issue #10476 has been reported by Yves Le Douaron.

----------------------------------------
Bug #10476: String.strip remove characters different than pure whitespace
https://bugs.ruby-lang.org/issues/10476

* Author: Yves Le Douaron
* Status: Open
* Priority: Normal
* Assignee: ruby-core
* Category: core
* Target version: current: 2.2.0
* ruby -v: ruby 2.1.3p242 
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
The offical documentation (http://www.ruby-doc.org/core-2.1.4/String.html#method-i-strip) says:
 **strip вк new_str**

*Returns a copy of str with leading and trailing whitespace removed.*

But

~~~
[9] pry(main)> "#{0.chr}#{9.chr}#{10.chr}#{11.chr}#{12.chr}#{13.chr}#{32.chr}" 
=> "\x00\t\n\v\f\r " 
[10] pry(main)> "#{0.chr}#{9.chr}#{10.chr}#{11.chr}#{12.chr}#{13.chr}#{32.chr}".length
=> 7
[11] pry(main)> "#{0.chr}#{9.chr}#{10.chr}#{11.chr}#{12.chr}#{13.chr}#{32.chr}".strip
=> "" 
~~~

~~~
([4] pry(main)> (0..255).each { |char| puts "char #{char} stripped" if char.chr.strip.empty? }
char 0 stripped
char 9 stripped
char 10 stripped
char 11 stripped
char 12 stripped
char 13 stripped
char 32 stripped

~~~

Stripped characters are
1. Null char (0)
1. Horizontal Tab (9)
1. Line Feed (10)
1. Vertical Tab (11)
1. Form Feed (12)
1. Carriage Return (13)
1. Space (32)




-- 
https://bugs.ruby-lang.org/