ChangeLog in sleepy_penguin-1.4.0 vs ChangeLog in sleepy_penguin-2.0.0
- old
+ new
@@ -1,6 +1,301 @@
ChangeLog from http://bogomips.org/sleepy_penguin.git
+ commit cdebfac019b5e771f7babc5646a3c7961729eaca
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 04:35:41 2011 +0000
+
+ sleepy_penguin 2.0.0
+
+ There are many internal cleanups, bugfixes, and incompatible
+ API changes. The API will probably be stable from now on.
+
+ All the flag passing is less verbose, in the past you had
+ to do:
+
+ tfd = TimerFD.new(TimerFD::CLOEXEC|TimerFD::NONBLOCK)
+
+ Now, you can just do (the old way still works):
+
+ tfd = TimerFD.new([:CLOEXEC, :NONBLOCK])
+
+ A SignalFD interface now exists, but is not recommended since
+ MRI signal handling seems to conflict with it.
+
+ Inotify#close no longer holds the GVL while closing the
+ descriptor since it is an expensive operation.
+
+ See git log v1.4.0..v2.0.0 for all the gory details.
+
+ commit d76fe634dfb3ed40b2ff02307963ac38d731d54e
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 04:43:06 2011 +0000
+
+ signalfd.c: fix whitespace
+
+ commit 3721229d20880694f3c5a3a7a3fa401b19c5870b
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 04:35:06 2011 +0000
+
+ inotify: release GVL during Inotify#close on 1.9
+
+ close(2) on inotify descriptors takes forever and a day.
+
+ commit 5905791c3373cf9cd1fce4da28acf9b16f721c3a
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 03:28:48 2011 +0000
+
+ inotify: add Inotify#each method for yielding each event
+
+ This is useful for processing events in a synchronous fashion,
+ we think...
+
+ commit 7142fa6bd85fd5a256049f158b6c29399eee7c7c
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 03:27:58 2011 +0000
+
+ inotify.c: fix local variable name for RDoc
+
+ "in" is a keyword in Ruby and unusable as a local variable
+
+ commit 02bba7d2200cb4225e50dba51d8bcc5cc6e6d677
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 03:27:32 2011 +0000
+
+ README: misc updates
+
+ commit 7c3447f481067ac6d25b291e206e23a6b55d78d1
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:40:26 2011 +0000
+
+ packaging updates, remove Isolate dependency
+
+ commit eb12922fdc860ce780617a3b8302cad7c6ff9666
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ signalfd: attempt to support POSIX real-time signals
+
+ I know of no other way to support them in Ruby
+
+ commit eab2b76b68b68e964a9b43b50fc8ea387f719f56
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ eventfd: remove "_nonblock" interfaces
+
+ Instead, allow a nonblock flag to be passed to
+ EventFD#incr and EventFD#value so it matches other
+ interfaces.
+
+ commit aa78296c346c31ca6ee0846fe7b8e6c9dd78d764
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ TimerFD#expirations takes a nonblock flag
+
+ Just like Inotify#take
+
+ commit ea00a29e69bcfbcaa82ac24adb9fdfefeb9cde4c
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ eventfd: test EventFD::MAX value
+
+ commit 3e75c60006b42b2c4eff8c95f11c4289e8229bb1
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ eventfd: test for :SEMAPHORE semantics
+
+ commit fd1509a7854d0da1227964a562a5f344bc0569b5
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ signalfd: flesh out SignalFD#take with non-blocking
+
+ Not that it works well...
+
+ commit 157a3ca60a1b2bdab0f26ec631dcdcdcc29dc260
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ Inotify#take releases GVL unconditionally
+
+ Avoids using select(2) if we want blocking functionality on
+ Ruby 1.9.
+
+ commit 6d7785370afe03827612572bad95c6fd81f0864b
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ split out missing bits for older glibc and kernels
+
+ They could be useful for other projects.
+
+ commit 6ffe88ef9ca671485e0e9a174dda99ffde7611ce
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ cleanup blocking region code for 1.8
+
+ Just reuse 1.9 methods
+
+ commit 7ae6845bdaf1e969d42c6ff84c847b4a3263dae4
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ test_epoll_gc: disable expensive test by default
+
+ Not needed for most cases.
+
+ commit 1fd99f288140556f2f02333a6e01002a77d1bfdb
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ cleanup unneeded #define shortcuts
+
+ Never used anywhere
+
+ commit d5af4d2738bc47f9ecc30b0900400833077f022b
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ move set_nonblock() into util.c
+
+ No need to repeat it and bloat ourselves.
+
+ commit 601e98fa2f89b99c7349b5c010850dd6f4efba0b
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ timerfd: hook up TimerFD#gettime
+
+ Oops, it was never wired up.
+
+ commit 89986c2df21b94fec21e516c0f51f3e3584f5b2e
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ test_inotify: do not check 1.9 IO constants
+
+ None of our business.
+
+ commit f04b6e5d6e5ad7a5144e4a01f113f24af32c8d25
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ doc: improve RDoc documentation
+
+ Might as well, since it forces me to understand these
+ interfaces, too :)
+
+ commit 01d0b34524668a52261bc026b22bc74401db71b6
+ Author: Eric Wong <e@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ signalfd: test with sigqueue() with DL help
+
+ Still doesn't work under 1.8, oh well :<
+
+ commit 32bc376e494b5477b921b6d198b7aeda0c8efe12
+ Author: Eric Wong <e@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ rework flags passing for ease-of-use
+
+ Arguments now take symbols and arrays of symbols just like the
+ SignalFD.new method. This fixes some use of signed vs unsigned
+ integer conversions as well.
+
+ commit 39d900abaebcb82aa2f2766b692ef558d44a9349
+ Author: Eric Wong <e@yhbt.net>
+ Date: Thu Mar 10 02:12:46 2011 +0000
+
+ remove SLEEPY_PENGUIN_VERSION constant
+
+ Bad idea to rely on constants
+
+ commit e29be690d10747c09aaf4839a4a5a4a0ed11729a
+ Author: Eric Wong <e@yhbt.net>
+ Date: Sun Mar 6 02:17:57 2011 +0000
+
+ add SignalFD#update! method
+
+ This modifies an existing SignalFD.
+
+ commit f14855b5b746c6bb6c6edb0dada2803ab60c5b94
+ Author: Eric Wong <e@yhbt.net>
+ Date: Sun Mar 6 00:10:50 2011 +0000
+
+ signalfd: gets => take
+
+ For consistency with the inotify interface
+
+ commit b62672504cfed54fcfa22229e348385c5520210b
+ Author: Eric Wong <e@yhbt.net>
+ Date: Sat Mar 5 23:45:13 2011 +0000
+
+ disable epoll optimizations test if Strace::me is missing
+
+ Better than failing.
+
+ commit 61c072424483b9c963823e860f627ac3c67d5375
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Sun Mar 6 01:01:46 2011 +0000
+
+ remove TimerFD.create, it's redundant
+
+ Even though it matches timerfd_create(), TimerFD.new is
+ more consistent with the rest of the library.
+
+ commit 2706408dbeeb661eab82e0292cb004b68a13e8e1
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Sun Mar 6 00:33:43 2011 +0000
+
+ inotify: some rdoc and comments
+
+ commit 6a205437e7070b8476b876536b6a77e6041f288e
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Sat Mar 5 23:50:24 2011 +0000
+
+ inotify: use StringValueCStr for paths
+
+ This will fail on '\0' bytes since it's an illegal path
+ character.
+
+ commit e3798a8591f753706280b71c99ac8d0f2cfa393b
+ Author: Eric Wong <e@yhbt.net>
+ Date: Sat Mar 5 23:34:53 2011 +0000
+
+ add SignalFD interface
+
+ It's only working for Ruby 1.9 right now.
+
+ commit 9a19edb46e33f1385afefa13e1758b9263fa00d2
+ Author: Eric Wong <e@yhbt.net>
+ Date: Sat Mar 5 23:33:39 2011 +0000
+
+ add top-level SP shortcut constant
+
+ Taking a hint from EM :)
+
+ commit a1cd49832cf8273ad17f106a40c61a572f9e3bd5
+ Author: Eric Wong <e@yhbt.net>
+ Date: Sat Mar 5 23:20:01 2011 +0000
+
+ eventfd.c: fixes for Ruby 1.9
+
+ Oops :X
+
+ commit fd32ba797d5a3b2d404c46fd1ed89f20fc540dcc
+ Author: Eric Wong <normalperson@yhbt.net>
+ Date: Sun Feb 6 10:55:09 2011 +0000
+
+ pkg.mk: lib/ may not always exist
+
+ We could go C-only
+
commit bba86c017d101c365c5a22b8e2b734ff7216ce56
Author: Eric Wong <normalperson@yhbt.net>
Date: Fri Feb 4 22:24:59 2011 +0000
sleepy_penguin 1.4.0 - Linux I/O events for Ruby