From: "postmodern (Hal Brodigan)" Date: 2022-05-09T14:07:23+00:00 Subject: [ruby-core:108493] [Ruby master Bug#18766] ArgumentError with no backtrace information when requiring openssl/cipher and initializing an OpenSSL::Cipher Issue #18766 has been updated by postmodern (Hal Brodigan). @Hanmac oh I am aware that `require 'openssl'` is the correct way to load all of openssl. The bug in question is that it causes an ArgumentError to be raised, but does not show where the exception is being raised from. That is confusing behavior to the end-user. ---------------------------------------- Bug #18766: ArgumentError with no backtrace information when requiring openssl/cipher and initializing an OpenSSL::Cipher https://bugs.ruby-lang.org/issues/18766#change-97538 * Author: postmodern (Hal Brodigan) * Status: Open * Priority: Normal * ruby -v: ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [x86_64-linux] * Backport: 2.7: UNKNOWN, 3.0: UNKNOWN, 3.1: UNKNOWN ---------------------------------------- I discovered a mysterious ArgumentError when requiring 'openssl/cipher' instead of 'openssl' and initializing a OpenSSL::Cipher object. The ArgumentError does not indicate where the exception is being raised from. ## Steps To Reproduce ``` ruby -r openssl/cipher -e "p OpenSSL::Cipher.new('aes-256-cbc')" ``` ## Expected Result ``` # ``` ## Actual Result ``` Traceback (most recent call last): 2: from -e:1:in `
' 1: from -e:1:in `new' -e:1:in `initialize': wrong number of arguments (given 1, expected 0) (ArgumentError) ``` ## Effected Versions Can reproduce this bug using ruby-2.7 and ruby-3.1. -- https://bugs.ruby-lang.org/ Unsubscribe: