Commit Graph

12 Commits

Author SHA1 Message Date
Ben Osheroff a9d80242dd rename hermann_lib -> hermann_rdkafka 2015-06-22 19:39:56 -07:00
Ben Osheroff 09df7ec1b9 Merge remote-tracking branch 'upstream/master' into cleanup_warnings 2015-06-16 23:44:13 -07:00
Ben Osheroff d8b8f83690 1.8.7 has no version.h 2015-06-16 20:55:55 -07:00
Ben Osheroff 74cba3c513 upgrade to librdkafka 0.8.6
R. Tyler's patches are included in librdkafka 0.8.6
2015-06-14 19:33:41 -07:00
Ben Osheroff efd1a80a37 1.9.3 fixes
1.9.3 seems like it should actually still be using the
rb_thread_blocking_region() call, as ...call_without_gvl() isn't defined
in any header (although it is available).

Consuming that implicit declaration was causing crashes.
2015-04-30 07:52:01 -07:00
Ben Osheroff 784a7f3afe 1.9.3 compatibility 2015-04-27 12:32:58 -07:00
Ben Osheroff d579f2f8ec use rb_thread_call_without_gvl
this allows threaded code on modern (>=2.0) rubies working.  Also,
switch to the single-message form of the rd_kafka call -- the callback
form isn't safe to run without the GVL held, as it enters the ruby
interpreter in rb_yield().
2015-04-21 14:02:48 -07:00
R. Tyler Croy 4261907955 Treat empty Content-Length headers as retryable errors for mitigating github.com brokeness
Periodically we'll get 200 OK responses with not Content-Length header when
trying to download from github.com, this will treat it as a retry

Fixes #40
2014-10-14 11:24:38 -07:00
R. Tyler Croy 249f2739a7 Properly propagate the optionally passed in topic on #push when recursing through Arrays
This commit also moves tests back out of the platform specific scope and makes
the internal #push_single API more consistent to alllow easier testing.

Fixes #49
2014-10-14 10:54:52 -07:00
R. Tyler Croy beb8c4764d Add a much more verbose download_file_http method for mini_portile
This should help isolate the bug we're seeing in #40 which seem to stem from
GitHub serving invalid packages
2014-10-14 09:53:42 -07:00
R. Tyler Croy 5de9612882 Bundle a known good version of librdkafka (0.8.4) with Hermann
This reduces the need for the librdkafka system dependency and results in
statically linking librdkafka.a against the C extension.

There's a few hacks in extconf.rb specifically to deal with librdkafka's build
system, as well as apply checksumming to the downloaded file

Fixes #8
2014-09-12 16:13:19 -07:00
R. Tyler Croy e241f086ee Restructure the Hermann gem extension build process to use rake-compiler
This is a little bit better and cleaner IMO than the hand-crafted rake tasks.

Would you like to know more? <https://github.com/luislavena/rake-compiler>
2014-08-29 18:37:10 -07:00