about summary refs log tree commit homepage
path: root/sleepy_penguin.gemspec
DateCommit message (Collapse)
2020-02-01sleepy_penguin 3.5.2 HEAD v3.5.2 master
Documentation updates to switch bogomips.org to yhbt.net since the .org TLD won't be affordable in the near future. There's also a few warning fixes and such.
2020-01-29doc: switch bogomips.org to yhbt.net
bogomips.org is due to expire, soon, and I'm not willing to pay extortionists at Ethos Capital/PIR/ICANN to keep a .org. So it's at yhbt.net, for now... Identity is overrated.
2018-12-15sleepy_penguin 3.5.1 v3.5.1
This release fixes some minor things for kqueue and clang users. Not much going on... *yawn* 6 changes since v3.5.0 (2017-03-22): kqueue: ensure close-on-exec flag is set kqueue: modernize Struct usage for Ruby 2.5.0dev fix 64-to-32-bit truncation warning kqueue: get rid of unused variable warnings epoll: avoid reduce block capture and ivar requests doc: use HTTPS URLS when possible
2017-03-22sleepy_penguin 3.5.0 v3.5.0
Most notably, kevent and epoll_wait wrappers are now nestable, so you can write your own event loops inside somebody elses event loop (not that it's a good idea, but hey, that's reality, sometimes). https://bogomips.org/sleepy_penguin/SleepyPenguin/Kqueue.html#method-i-kevent https://bogomips.org/sleepy_penguin/SleepyPenguin/Epoll.html#method-i-wait For Linux users, there is now copy_file_range(2) support for copying regular files: https://bogomips.org/sleepy_penguin/SleepyPenguin.html#method-c-copy_file_range There is also a new sendfile wrapper which emulates Linux sendfile behavior regardless of platform. It will use the native sendfile(2) syscall on FreeBSD and Linux, at least. https://bogomips.org/sleepy_penguin/SleepyPenguin.html#method-c-linux_sendfile Wrappers for the splice(2) and tee(2) syscalls also exist for Linux users (vmsplice(2) is omitted): https://bogomips.org/sleepy_penguin/SleepyPenguin.html#method-c-splice https://bogomips.org/sleepy_penguin/SleepyPenguin.html#method-c-tee Along with some related constants: https://bogomips.org/sleepy_penguin/SleepyPenguin.html#F_GETPIPE_SZ https://bogomips.org/sleepy_penguin/SleepyPenguin.html#F_SETPIPE_SZ https://bogomips.org/sleepy_penguin/SleepyPenguin.html#F_MORE https://bogomips.org/sleepy_penguin/SleepyPenguin.html#F_MOVE https://bogomips.org/sleepy_penguin/SleepyPenguin.html#F_NONBLOCK In other words, this release merges the useful parts of the old "io_splice" RubyGem: https://bogomips.org/ruby_io_splice/ Linux 4.5+ epoll users also get EPOLLEXCLUSIVE along existing constants: https://bogomips.org/sleepy_penguin/SleepyPenguin/Epoll.html#EXCLUSIVE Ruby 1.8 and 1.9 support are both gone, Ruby 2.0.0+ is required for keyword args, now(*). 31 changes since 3.4.1: README: fix wording: are => is TODO: add memfd item epoll: allow :CLOEXEC instead of the long constant note the epoll/io.rb file is only for Ruby 1.8 support the splice(2) and tee(2) syscalls implement copy_file_range support for Linux 4.5+ doc: various URL updates (https) unify rb_gc() handling for out-of-FD conditions splice: clarification regarding tee() flags pkg.mk: various updates from other projects copy_file_range: use correct syscall numbers on x86/x86-64 new API for splice and tee doc: remove references to IO#pipe_size accessor remove PIPE_BUF constant definition copy_file_range: move wrapper to Ruby for keyword arg handling gemspec: use SPDX-compatible license specifier implement linux_sendfile support portability fixes for systems w/o splice, copy_file_range tests: switch to test-unit free buffer if pthread_setspecific fails allow nestable TLS buffers within the same thread drop unused Ruby 1.8 support code epoll: add newline to Kernel#warn messages for atomicity favor require_relative over require epoll: add EPOLLEXCLUSIVE constant and documentation kqueue: remove IO#autoclose= and 1.8-related checks sp_copy: remove dummy 1.8 code for non-native threaded Ruby build: remove build-time olddoc dependency copy_file_range: add documentation doc: tests and examples for changing pipe size in Linux doc: avoid incorrect links to Epoll::IO
2017-03-22build: remove build-time olddoc dependency
This should make it easier for distros to pick this up without picking up olddoc, too. We will still use olddoc for generating the website since it reduces bandwidth costs, and for generating NEWS for our own builds.
2017-03-16drop unused Ruby 1.8 support code
Ruby 1.8 is long dead and we already broke 1.9 support by using keyword args for splice, sendfile, and copy_file_range support.
2017-03-11tests: switch to test-unit
test-unit has fewer incompatible changes over the years than minitest; and minitest seems open to making future incompatible changes... Nope. I value API stability more and more as I (and this project) ages.
2017-03-02gemspec: use SPDX-compatible license specifier
This makes it easier for automated checkers to check our license.
2015-01-11gemspec: remove dead rdoc_options config
Old wrongdoc cruft, not used in olddoc.
2015-01-11gemspec: use minitest, not test-unit
Oops, I got mixed up with another project and apparently I did port this over to use minitest. Anyways I don't care much either way.
2015-01-11gemspec: add dev dependency on test-unit 3.x
This is still installed by Ruby, but in case one day it isn't, we'll be ready.
2015-01-11relax license to LGPLv2.1+ (from v2.1 && v3 only)
In case I'm hit by a bus before the FSF releases the LGPLv4, users may choose to use any newer version of the LGPL.
2015-01-11change mailing list to sleepy-penguin@bogomips.org
The public-inbox + mlmmj setup on bogomips.org allows posting without subscription and offers downloadable archives via git. The lack of rsyncable archives on librelist nowadays and subscription-required nature of librelist are points against it. Repliers are now encouraged to Cc: all recipients (using the reply-all function of their mail client) since many readers are not subscribed. This project has never accepted or encouraged HTML email, but librelist accepted it. The bogomips.org mail server is configured to treat HTML mail as spam, so do not send HTML mail if you expect a response. Users who wish to subscribe may send a message to: sleepy-penguin+subscribe@bogomips.org Similarly, they may unsubscribe via: sleepy-penguin+unsubscribe@bogomips.org HTTP archives are available via: http://bogomips.org/sleepy-penguin/ ssoma users may also use: git://bogomips.org/sleepy-penguin (see README change) Old messages to the librelist addresses will continue to get routed to the new mailing list. ref: http://public-inbox.org/
2015-01-11switch documentation to olddoc
wrongdoc was difficult to maintain because of the tidy-ffi dependency and the HTML5 changes in Darkfish could not be handled well by Tidy. olddoc is superior as it generates leaner HTML which loads faster, requires less scrolling and less processing power to render. Aesthetic comparisons are subjective of course but completely unimportant compared to speed and accessibility. The presence of images and CSS on the old (Darkfish-based) site probably set unreasonable expectations as to my ability and willingness to view such things. No more, the new website is entirely simple HTML which renders well with even the wimpiest browser (hell, olddoc even tries to generate readable raw HTML). ref: http://80x24.org/olddoc/
2013-04-12license + gem packaging cleanups
require_paths and date are automatically set in modern RubyGems versions. Since we only use modern RubyGems versions, the licenses= accessor is also activated. Since the FSF may change mailing addresses again in the future, prefer the web address to point to licenses. This change is acceptable for GNU projects, so it should be for us, too: http://sourceware.org/bugzilla/show_bug.cgi?id=13673
2011-07-26use sleepy.penguin@librelist.org address instead of .com
Neither we nor librelist are commercial projects, so use the TLD preferred for non-profit entities.
2011-02-04bump wrongdoc dependency
wrongdoc 1.5 is nicer
2011-01-19use wrongdoc for URLs in Rakefile and gemspec
Trying to be DRY, but we're sleepy and drool a lot
2011-01-17use flag cache and marks array to optimize away syscalls
We can have simplify user code by caching flags and using the GC mark array to avoid syscalls and unnecessary errors/exceptions.
2011-01-13packaging fixups, oops
Ugh, release got fat-fingered :<
2011-01-13minor doc updates, use wrongdoc
Switch documentation over to wrongdoc, no more JavaScript! Our documentation still sucks.
2010-09-26update documentation and build v1.0.0
Should be ready for release