Feature #21923

Updated by Toshi MARUYAMA about 2 years ago

Issue #17618 (migration to net-ldap 0.12), dropped support of UTF-8, I always get Encoding::CompatibilityError ACSII-8BIT and UTF-8 (for any language except english of cource).
And you catch this error here #21453 and fixed by adding force_encoding (maybe there was need to stop and check net-ldap).
net-ldap 0.13 fixed for this, but dropped support ruby 1.9.3 (RM 3.2 still support).

So, just info for others devs, which need to make any LDAP connections and read data.
Commit from net-ldap 0.13 https://github.com/ruby-ldap/ruby-net-ldap/commit/ecce488daed676351b561e39a2dae1147983c939

<pre><code class="ruby">

&lt;pre&gt;

class Net::BER::BerIdentifiedString
def initialize args
super
current_encoding = encoding
if current_encoding == Encoding::BINARY
force_encoding('UTF-8')
force_encoding(current_encoding) unless valid_encoding?
end
end
end
</code></pre>


&lt;/pre&gt;


Its take my 3 hours to find error and try to fix this (not just simple force_encoding, was need general solution). Save your time.

Back