path: root/ext/digest
AgeCommit message (Collapse)Author
2021-11-21Update dependenciesNobuyoshi Nakada
2021-11-17Prevent "already initialized constant Digest::VERSION"Yusuke Endoh ``` installing default gems from ext: /home/chkbuild/chkbuild/tmp/build/20211117T033003Z/lib/ruby/gems/3.1.0 /home/chkbuild/chkbuild/tmp/build/20211117T033003Z/ruby/ext/digest/lib/digest/version.rb:4: warning: already initialized constant Digest::VERSION /home/chkbuild/chkbuild/tmp/build/20211117T033003Z/ruby/.ext/common/digest/version.rb:4: warning: previous definition of VERSION was here ``` This hack is copied from ext/psych/psych.gemspec
2021-11-16Merge digest-3.0.3.pre3 and ↵Hiroshi SHIBATA
2021-11-16[ruby/digest] Abort loading if being loaded by gem/bundle pre Ruby 3.0.3Akinori MUSHA
2021-11-16[ruby/digest] Avoid null pointer subtraction in digest/md5xtkoba
Fixes warning on Clang 13. Fixes [Bug #18076]
2021-10-14Removed redundant digest namespaceHiroshi SHIBATA
2021-10-14separate pure ruby location under the digest/* extensionsHiroshi SHIBATA
2021-10-14Move pure ruby files under the ext/gemname/lib directory.Hiroshi SHIBATA
2021-10-12Fix libraries under digestNobuyoshi Nakada
2021-10-12[ruby/digest] Bump version to 3.1.0.pre2Akinori MUSHA
2021-10-12[ruby/digest] Bump version to 3.1.0.pre1Akinori MUSHA
2021-10-12[ruby/digest] include jarsPavel Rosický
2021-10-12[ruby/digest] Bump version to 3.1.0.pre0Akinori MUSHA
2021-10-12[ruby/digest] Place common parts in lib and engine specific parts under ↵Akinori MUSHA
2021-10-12[ruby/digest] relicence under the Ruby license and the BSD 2-clausePavel Rosický
2021-10-12[ruby/digest] jruby supportPavel Rosický
2021-10-12[ruby/digest] Move digest.rb back under ext as the extension bundled libraryNobuyoshi Nakada
2021-07-28[ruby/digest] Also drop to support Ruby 2.4Hiroshi SHIBATA
2021-07-28[ruby/digest] Use Gemfile instead of ↵Hiroshi SHIBATA
2021-07-28[ruby/digest] Drop to support Ruby 2.3Hiroshi SHIBATA
2021-07-28[ruby/digest] gemspec: Avoid distributing extraneous filesOlle Jonsson
2021-07-28[ruby/digest] gemspec: Explicitly have 0 executablesOlle Jonsson
2021-07-28[ruby/digest] Experiment: Use a .pre version in gemspecOlle Jonsson
This makes it slightly more explicit that this is not a definite new version.
2021-07-28[ruby/digest] Experiment: bump patch versionOlle Jonsson
This is a test, to see if the build failures are about the shipped Ruby master version of this gem.
2021-06-13Suppress array-parameter warnings by gcc 11Nobuyoshi Nakada
2021-04-28Removed unused macro HAVE_CONFIG_HNobuyoshi Nakada
It seems like a vestige of ext/md5.
2021-04-28NDEBUG is ignored since Ruby 3.0Nobuyoshi Nakada
2021-04-26Fix some typos by spell checkerRyuta Kamizono
Notes: Merged:
2021-04-13dependency updates卜部昌平
Notes: Merged:
2020-12-21[ruby/digest] Remove .gitignore and .travis.yml from gemspecKenta Murata
2020-12-19[digest] Version 3.0.0Kenta Murata
2020-12-19[digest] Make digest Ractor safeKenta Murata
2020-12-19[digest] Added rb_digest_make_metadata to wrap metadataNobuyoshi Nakada
2020-12-03[ruby/digest] LICENSEHiroshi SHIBATA
2020-12-03[ruby/digest] Fixup d981714348f71177132426e3ac19598e1b2e8f5dHiroshi SHIBATA
2020-12-02digest: remove OpenSSL engineKazuki Yamaguchi
The OpenSSL engine of Digest uses the low-level API of OpenSSL, whose use has been discouraged for years for multiple reasons. A long-standing issue on a FIPS-enabled system is that using ::Digest results in crashing the Ruby process, because the low-level API lacks the mechanism to report an error (the policy violation) and thus kills the process as a last resort[1][2]. Also, the upcoming OpenSSL 3.0 will deprecate it for future removal[3]. Compiling with -Wdeprecated-declarations will start to emit warnings. A proper fix for this is to make it use the EVP API instead. This is a non-trivial work as it requires backwards-incompatible changes to the framework interface of Digest::Base and rb_digest_metadata_t. It is more than 15 years ago that the openssl library became part of the standard library. It has implemented the exactly same functionality as OpenSSL::Digest, in fact, as a subclass of Digest::Class. There is not much point in having an identical code in the digest library. Let's just get rid of OpenSSL within digest. This leaves the C implementations and the CommonCrypto engine for Apple systems. A patch is being prepared for the openssl library to provide ::Digest constants for better performance[4]. [1] [2] [3] [4] Notes: Merged:
2020-10-21Update dependencies for macOSNobuyoshi Nakada
2020-10-19Followed up with 708413807ae958afb79257b18475424e0a8a4a56Hiroshi SHIBATA
* Added sync task for digest * Update doc/* for default gems * Update the latest version of gemspec
2020-10-19Revisit to promote digest to default gems.Hiroshi SHIBATA
This reverts commit f39021be7e0eac20ef7f06592769955ea482470f.
2020-08-27sed -i '/rmodule.h/d'卜部昌平
Notes: Merged:
2020-08-27sed -i '/r_cast.h/d'卜部昌平
Notes: Merged:
2020-08-27sed -i '\,2/extern.h,d'卜部昌平
Notes: Merged:
2020-05-11sed -i 's|ruby/impl|ruby/internal|'卜部昌平
To fix build failures. Notes: Merged:
2020-05-11sed -i s|ruby/3|ruby/impl|g卜部昌平
This shall fix compile errors. Notes: Merged:
2020-04-08Suppress -Wshorten-64-to-32 warningsNobuyoshi Nakada
2020-04-08Merge pull request #2991 from shyouhei/ruby.h卜部昌平
Split ruby.h Notes: Merged-By: shyouhei <>
2020-03-10digest: do not depend on ext/openssl/deprecation.rbKazuki Yamaguchi
ext/openssl/deprecation.rb has been removed in ext/openssl upstream[1]. It was originally introduced to detect and prevent linking against Apple's bundled (and very outdated) version of OpenSSL. It is long gone and the header files do not exist in current versions of macOS. The dependency in ext/digest was introduced by commit 26e258c807c2. Note that the original issue[2] is resolved without this dependency. The commit also added the pkg_config("openss") call to match what ext/openssl does. [1] [2]
2019-10-12Suppress deprecation warnings of MD5 from Xcode 11.1Nobuyoshi Nakada
2019-08-23Check metadata a bit moreNobuyoshi Nakada
2019-08-23Hoisted out get_digest_obj_metadataNobuyoshi Nakada