avoid unnecessary IO#sync = true
[ruby-mogilefs-client.git] / History.txt
blobe6e37f7cc4f16ac94b822ab2258e42f9af491c29
1 = 2.1.0
2 * MySQL interface returns integer length and devcount (API change)
3 * Ensure store_{content,file} always returns size (API fix)
4 * Add get_uris API method
5 * Respect timeout when doing get_file_data
6 * MySQL interface filters out URLs for down/dead hosts/devices
7 * Really remove all NFS support
8 * get_file in slurp mode slurps all output correctly
10 = 2.0.2
11 * README.txt: update documentation URL
12 * backend: raise exceptions with the error message
13 * backend: don't blindly add "Error" to exception class names
14 * Update Manifest.txt with setup.rb
15 * tasks to enforce permissions are set correctly
17 = 2.0.1
18 * verify_uris method made more robust
19 * preliminary Ruby 1.9 compatibility, tests still need some work
20 * allow store_content to be used with a streamable object of known length
21 * add setup.rb for non-RubyGems users
23 = 2.0.0
24 * use a set of standard exceptions based on MogileFS::Error,
25   this is an incompatible API change (hence the 2.0.0 version number).
26 * remove NFS support since it's gone in MogileFS 2.x and NFS is horrible
27 * mog timeouts and retries increased
28 * more consistent handling of bad sockets, all sockets used internally
29   are now explicitly non-blocking and IO.select is used for timeouts
30   instead of using threads behind our backs
31 * remove open-uri and net/http dependencies, they were bad with large files
32 * add paths_size() method, allowing single mogilefsd call to get size and paths
33 * add read-only MogileFS::Mysql driver, allowing mogilefsd to be bypassed
34 * use TCP_NODELAY when available on sockets that require low latency
35 * use TCP_CORK on bulk transfers to improve bandwidth usage
36 * better HTTP error handling
37 * verify_uris method in new MogileFS::Network module which allows
38   async verification of several URIs at once on the client side.
39 * handle multiple device failover correctly on HTTP uploads
40 * initial big_file read support (should be mogtool(1)-compatible)
41 * unit tests can be run in parallel using GNU Make, 3x faster on a Core2 Duo
42 * unit tests modified to use real sockets for easier verification of
43   timeout and error condition handling.
45 = 1.3.1
47 * Fix missing MogileFS::Util include for sysrwloop in MogileFS::MogileFS
49 = 1.3.0
51 * Fixed MogileFS#rename.  Bug #14465 submitted by Justin Dossey.
52 * Removed infinite loop in MogileFS::HTTPFile#store_file.  Patch #13789
53   submitted by  Andy Lo-A-Foe.
54 * Made MogileFS#get_file_data timeout configurable.  Bug #13490 submitted by
55   Andy Lo-A-Foe.
56 * Add MogileFS#size.  Feature Request #14484 submitted by Justin Dossey.
57 * Fix MogileFS#get_file_data to return the data for HTTP mode.  Bug #7133
58   submitted by John Wanko.
59 * New maintainer: Eric Wong
60 * Add `mog' command-line tool as a demo/example
61 * Lower memory consumption with large files
62 * Allow get_file_data to accept a block for large files
63 * Fix each_keys loop termination condition
64 * Apply error handling patch from Matthew Willson.  Bug #15987
65 * Merge large file patch from Andy Lo-A-Foe.  Bug #13764
67 = 1.2.1
69 * Switched to Hoe.
70 * Moved to p4.
71 * Fixed bug #7273 in HTTP mode of client where data would not get
72   returned.  Submitted by Matthew Willson.
74 = 1.2.0
76 * Changes lost to time.