aboutsummaryrefslogtreecommitdiffstats
path: root/ext
Commit message (Collapse)AuthorAgeFilesLines
* Allow references to $$ in Ripper DSLNobuyoshi Nakada2020-05-291-0/+3
|
* autoconf may not be availableNobuyoshi Nakada2020-05-271-1/+1
|
* fiddle: need to update configure after updating config toolsNobuyoshi Nakada2020-05-271-0/+2
|
* _GNU_SOURCE is needed for mkostemp on CygwinNobuyoshi Nakada2020-05-262-0/+12
|
* ext/fiddle/fiddle.gemspec: avoid require lib/fiddle/version.rbYusuke Endoh2020-05-241-6/+9
| | | | | | | | | | | | | | | It loads `ext/fiddle/lib/fiddle/version.rb`, which causes constant redefinition warning: http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200523T153003Z.log.html.gz ``` [ 6317/20193] TestDefaultGems#test_validate_gemspec/home/chkbuild/chkbuild/tmp/build/20200523T153003Z/ruby/ext/fiddle/lib/fiddle/version.rb:2: warning: already initialized constant Fiddle::VERSION /home/chkbuild/chkbuild/tmp/build/20200523T153003Z/ruby/.ext/common/fiddle/version.rb:2: warning: previous definition of VERSION was here = 0.16 s ``` This changeset read the version by manual parsing hack which is also used in stringio and zlib.
* [ruby/fiddle] Improve documentation on how to correctly free memory and free ↵Chris Seaton2020-05-232-6/+31
| | | | | | memory in tests (#33) https://github.com/ruby/fiddle/commit/e59cfd708a
* [ruby/fiddle] Export Fiddle::VERSIONSutou Kouhei2020-05-231-1/+3
| | | | https://github.com/ruby/fiddle/commit/1b93a2d9db
* [ruby/fiddle] Update file listSutou Kouhei2020-05-231-3/+32
| | | | https://github.com/ruby/fiddle/commit/b04cb92d7b
* [ruby/fiddle] Fix a typoSutou Kouhei2020-05-231-1/+1
| | | | https://github.com/ruby/fiddle/commit/445ca6b501
* [ruby/fiddle] Bump versionSutou Kouhei2020-05-231-1/+1
| | | | https://github.com/ruby/fiddle/commit/f8fb7c4823
* [ruby/fiddle] Add Fiddle::VERSIONSutou Kouhei2020-05-232-1/+12
| | | | https://github.com/ruby/fiddle/commit/9dcf64c096
* [ruby/fiddle] Add missing spec.extensionsSutou Kouhei2020-05-231-0/+1
| | | | https://github.com/ruby/fiddle/commit/2ce36b1fdc
* [ruby/fiddle] Fix assignment to array within struct (#26)sinisterchipmunk2020-05-231-1/+28
| | | | | | * Allow access to a struct's underlying memory with `struct[offset, length]`. https://github.com/ruby/fiddle/commit/24083690a6
* [ruby/fiddle] Make array access override compatible with base class (#25)sinisterchipmunk2020-05-231-4/+31
| | | | | | | | | | | * Allow access to a struct's underlying memory with `struct[offset, length]`. * Make accessing a struct's underlying memory more convenient. * refactor memory access unit tests for improved clarity https://github.com/ruby/fiddle/commit/c082c81bb5
* [ruby/fiddle] Initialize memory to 0 when calling Fiddle.malloc(). (#24)sinisterchipmunk2020-05-231-2/+3
| | | | https://github.com/ruby/fiddle/commit/8414239ca3
* Suppress warnings no inline ruby debug (#3107)Kenta Murata2020-05-221-1/+2
| | | | | * Suppress unused warnings occurred due to -fno-inline * Suppress warning occurred due to RUBY_DEBUG=1
* Thread scheduler for light weight concurrency.Samuel Williams2020-05-145-199/+66
|
* ext/json/parser/prereq.mk: remove type-limit warning if char is unsignedYusuke Endoh2020-05-142-2/+3
| | | | | | | | | | | | | | | | | | | Ragel generates a code `0 <= (*p)` where `*p` is char. As char is unsigned by default on arm and RISC-V, it is warned by gcc: ``` compiling parser.c parser.c: In function ‘JSON_parse_string’: parser.c:1566:2: warning: comparison is always true due to limited range of data type [-Wtype-limits] if ( 0 <= (*p) && (*p) <= 31 ) ^ parser.c:1596:2: warning: comparison is always true due to limited range of data type [-Wtype-limits] if ( 0 <= (*p) && (*p) <= 31 ) ^ ``` This change removes the warning by substituting the condition with `0 <= (signed char)(*p)`.
* [ruby/openssl] Ruby/OpenSSL 2.2.0Kazuki Yamaguchi2020-05-131-1/+1
| | | | https://github.com/ruby/openssl/commit/41587f69e1
* [ruby/openssl] ssl: temporarily remove SSLContext#add_certificate_chain_fileKazuki Yamaguchi2020-05-131-16/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Let's revert the changes for now, as it cannot be included in the 2.2.0 release. My comment on #257: > A blocker is OpenSSL::SSL::SSLContext#add_certificate_chain_file. It > has a pending change and I don't want to include it in an incomplete > state. > > The initial implementation in commit 46e4bdba40c5 was not really > useful. The issue is described in #305. #309 extended it > to take the corresponding private key together. However, the new > implementation was incompatible on Windows and was reverted by #320 to > the initial one. > > (The prerequisite to implement it in) an alternative way is #288, and > it's still cooking. This effectively reverts the following commits: - dacd08937ccd ("ssl: suppress test failure with SSLContext#add_certificate_chain_file", 2020-03-09) - 46e4bdba40c5 ("Add support for SSL_CTX_use_certificate_chain_file. Fixes #254.", 2019-06-13) https://github.com/ruby/openssl/commit/ea925619a9
* [ruby/openssl] pkey: add PKey#inspect and #oidKazuki Yamaguchi2020-05-131-0/+38
| | | | | | | | | | | | | Implement OpenSSL::PKey::PKey#oid as a wrapper around EVP_PKEY_id(). This allows user code to check the type of a PKey object. EVP_PKEY can have a pkey type for which we do not provide a dedicated subclass. In other words, an EVP_PKEY that is not any of {RSA,DSA,DH,EC} can exist. It is currently not possible to distinguish such a pkey. Also, implement PKey#inspect to include the key type for convenience. https://github.com/ruby/openssl/commit/dafbb1b3e6
* [ruby/openssl] Fix signing example to not use Digest instanceBart de Water2020-05-131-4/+2
| | | | https://github.com/ruby/openssl/commit/033fb4fbe4
* [ruby/openssl] Look up cipher by name instead of constantBart de Water2020-05-131-21/+5
| | | | https://github.com/ruby/openssl/commit/b08ae7e73d
* [ruby/openssl] Remove 'mapping between Digest class and sn/ln'Bart de Water2020-05-131-37/+0
| | | | | | This is not present in the referenced files anymore, and not useful to most users https://github.com/ruby/openssl/commit/eae30d2b96
* [ruby/openssl] Look up digest by name instead of constantBart de Water2020-05-1312-50/+43
| | | | https://github.com/ruby/openssl/commit/b28fb2f05c
* [ruby/openssl] Add Marshal support to PKey objectsBart de Water2020-05-134-23/+57
| | | | https://github.com/ruby/openssl/commit/c4374ff041
* ext/bigdecimal/bigdecimal.c, ext/date/date_core.c: undef NDEBUGYusuke Endoh2020-05-132-0/+2
| | | | | `#define NDEBUG` produces "macro redefined" warnings when it is already defined via cppflags
* ext/openssl/ossl.h: Remove a variable that is used only in assertYusuke Endoh2020-05-131-2/+1
| | | | It produces "unused variable" warnings in NDEBUG mode
* ext/fiddle/extconf.rb: Fix the condition of libffi <= 3.1Yusuke Endoh2020-05-131-1/+1
| | | | ver is [3, 1, 0] which is not less then or equal to [3, 1]
* Do not try ffi_closure_alloc if libffi is <= 3.1Yusuke Endoh2020-05-131-0/+1
| | | | | | | | | | Maybe due to e1855100e46040e73630b378974c17764e0cccee, CentOS, RHEL, and Fedora CIs have started failing with SEGV. Try to avoid ffi_closure_alloc on those environments. https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos8/ruby-master/log/20200512T183004Z.fail.html.gz https://rubyci.org/logs/rubyci.s3.amazonaws.com/fedora32/ruby-master/log/20200512T183004Z.fail.html.gz https://rubyci.org/logs/rubyci.s3.amazonaws.com/rhel8/ruby-master/log/20200512T183003Z.fail.html.gz
* ext/fiddle/extconf.rb: check if ffi_closure_alloc is availableYusuke Endoh2020-05-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to define HAVE_FFI_CLOSURE_ALLOC. The macro is used in closure.c, so have_func check is needed. If pkg-config is not installed, extconf.rb fails to detect the version of libffi, and does not add "-DUSE_FFI_CLOSURE_ALLOC=1" even when system libffi version is >= 3.2. If USE_FFI_CLOSURE_ALLOC is not defined, closure.c attempts to check if HAVE_FFI_CLOSURE_ALLOC is defined or not, but have_func was removed with 528a3a17977aa1843a26630c96635c3cb161e729, so the macro is always not defined. This resulted in this deprecation warning: https://rubyci.org/logs/rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200512T123003Z.log.html.gz ``` compiling closure.c closure.c: In function 'initialize': closure.c:265:5: warning: 'ffi_prep_closure' is deprecated: use ffi_prep_closure_loc instead [-Wdeprecated-declarations] 265 | result = ffi_prep_closure(pcl, cif, callback, (void *)self); | ^~~~~~ In file included from ./fiddle.h:42, from closure.c:1: /usr/include/x86_64-linux-gnu/ffi.h:334:1: note: declared here 334 | ffi_prep_closure (ffi_closure*, | ^~~~~~~~~~~~~~~~ ```
* fiddle: share the same config toolsNobuyoshi Nakada2020-05-121-0/+3
|
* extlibs.rb: added variable referencesNobuyoshi Nakada2020-05-121-2/+5
| | | | Reduce duplicate parts such as package name and version numbers.
* sed -i 's|ruby/impl|ruby/internal|'卜部昌平2020-05-1187-27025/+27025
| | | | To fix build failures.
* sed -i s|ruby/3|ruby/impl|g卜部昌平2020-05-1187-27025/+27025
| | | | This shall fix compile errors.
* win32ole: separate global variable declarations and definitionsNobuyoshi Nakada2020-05-1018-11/+29
| | | | | | | | | | https://gcc.gnu.org/gcc-10/changes.html#c > * GCC now defaults to `-fno-common`. As a result, global > variable accesses are more efficient on various targets. In > C, global variables with multiple tentative definitions now > result in linker errors. With `-fcommon` such definitions are > silently merged during linking.
* [ruby/io-console] Use sys_fail_fptr macroNobuyoshi Nakada2020-05-091-1/+1
| | | | https://github.com/ruby/io-console/commit/2b8ba023c8
* [ruby/io-console] Show path name at errorNobuyoshi Nakada2020-05-091-17/+19
| | | | https://github.com/ruby/io-console/commit/6a4b1c1a6d
* Fix indentationKazuki Tsujimoto2020-05-041-4/+4
|
* Suppress warnings by gcc 10.1.0-RC-20200430Nobuyoshi Nakada2020-05-041-1/+9
| | | | | | | | | | | | | | | | | | | | | | * Folding results should not be empty. If `OnigCodePointCount(to->n)` were 0, `for` loop using `fn` wouldn't execute and `ncs` elements are not initialized. ``` enc/unicode.c:557:21: warning: 'ncs[0]' may be used uninitialized in this function [-Wmaybe-uninitialized] 557 | for (i = 0; i < ncs[0]; i++) { | ~~~^~~ ``` * Cast to `enum yytokentype` Additional enums for scanner events by ripper are not included in `yytokentype`. ``` ripper.y:7274:28: warning: implicit conversion from 'enum <anonymous>' to 'enum yytokentype' [-Wenum-conversion] ```
* [pty] do not check openpty twice if found in util libraryNobuyoshi Nakada2020-05-011-2/+2
|
* Fix a typo [ci skip]Kazuhiro NISHIYAMA2020-04-271-1/+1
|
* Suppress C4267 "possible loss of data" warningsNobuyoshi Nakada2020-04-171-1/+1
| | | | Just cast down explicitly.
* Suppress C4267 "possible loss of data" warningsNobuyoshi Nakada2020-04-171-1/+1
|
* [ruby/date] Suppress -Wchar-subscripts warnings by Cygwin gcc 9.3.0Nobuyoshi Nakada2020-04-141-11/+11
| | | | https://github.com/ruby/date/commit/9968eb69f0
* ext/-test-/cxxanyargs: add #pragma for icc.卜部昌平2020-04-101-0/+3
|
* Ignore upper bits of pw_change on macOS tooNobuyoshi Nakada2020-04-091-4/+4
|
* Ignore upper bits of pw_expire on macOSNobuyoshi Nakada2020-04-091-1/+7
| | | | | | | | | `pw_expire` is declared as `time_t`, but actually not, and `getpwuid` returns a garbage there. Also the declaration of `struct passwd` in pwd.h and the manual page contradict each other, interal `pw_fields` is mentioned only in the latter. Maybe there is a confusion.
* Suppress -Wshorten-64-to-32 warningsNobuyoshi Nakada2020-04-087-34/+34
|
* Suppress -Wswitch warningsNobuyoshi Nakada2020-04-081-0/+4
|