## 3.1.0 (2012-01-31) * #23977723 - Bug fix (Rspec examples fails for both Ruby 1.8.7 and ree-2011.12 (p357)) * #23982399 - Add to RhoConnect installer support for ree 2012.01 * Support of latest versions of Ruby (Ruby 1.8.7 and ree-2011.12 (p357), Jruby-1.6.5.1) on Linux and Mac OS X platforms ## 3.1.0.beta2 (2012-01-24) * #21859561 - bug fix (Sync With Sugar CE Brings No Records and Generates An Error from Zendesk ticket #1871) * #22399583 - bug fix (Creates are happening multiple times for the same data from Zendesk ticket #1964) * #22765085 - 1.9.3 Ruby support - all platforms (Mac,Linux,Windows) * #22801803 - support rack 1.4 (bundle dependency '~> 1.4.1') * #22965211 - bug fix (startbg, startdebug tasks do not work with Ruby 1.9.x) * #23100341 - bug fix (large JSON input is lost in rack, Ruby 1.9.x) * #23634587 - bug fix (related data models not getting updated from Zendesk ticket #2098) * #23641249 - Update Rhoconnect .NET sample with final code * #23625065 - Bug fix (Installing Rhoconnect from Zendesk ticket #2101) * #23641103 - .NET plugin needs to have an ability to be partitioned by app * #23641329 - JAVA plugin needs to have an ability to return "app" partition * #23638123 - Checking for duplicate creates from Zendesk ticket #2097 * #21237229 - Docs for rhoconnect-benchmark commands * #23767161 - Bug fix (java-plugin doc fails to index with indextank) * Added code coverage for Ruby 1.9 (gem 'simplecov') ## 3.1.0.beta1 (2011-12-31) * #20396499 - saving rhoconnect-benchmark results into the file * #21630639 - rhoconnect-benchmark post-processing (GRUFF png images and EXCEL spreadsheets generation) * #21363347 - rhoconnect-benchmark - support for varying the number of concurrent clients and payload, distributed AWS clients * #20151369 - rhoconnect-benchmark command * #21187827 - support for built-in internal adapters * #22208995 - AWS Cloud Formation deployment guidelines docs * #22209097 - Conflict Resolution framework for simultaneous CUD operations ## 3.0.6 (2011-11-15) * #20022889 - support for GET/POST /api/application routes * #20609683 - support 'append' parameter in 'set_db_doc' REST API * #20910767 - fix for params modification in before filter (#1802,#1804) and fixing incorrect blob create spec * #20917129 - adding spec for checking 'Cache-Control:no-cache' and 'Pragma:no-cache' response headers ## 3.0.5 (2011-10-21) * use redis 2.4 by default * #17447481 - auto-renewal of expired C2DM tokens * #19723593 - re-creating Client if clientregister call is made with unknown client id ## 3.0.4 (2011-10-13) * #19675957 - fixing broken task :set_admin_password ## 3.0.3 (2011-10-13) * #19304885 - fixing race condition in get_lock (lock is released between setnx and get calls) * #18508155 - on failed syncs allow the user to retry it up to pre-defined number of times (another approach) ## 3.0.2 (2011-10-05) * #19143845 - support sinatra 1.3.x ## 3.0.1 (2011-10-04) * fix to lock in sinatra 1.2.7 ## 3.0.0 (2011-09-30) * #18888077 - implement Redis transactions optimization for push_objects and push_deletes * added 2 rake tasks (build:rpm and build:deb) to generate packaged software for popular linux servers (CentOS/Ubuntu). The package includes ruby enterprise, redis and nginx servers, passenger, and rhoconnect gem with all dependencies * #19116273 - created new redis:startbg task for Rhostudio ## 3.0.0.rc1 (2011-09-27) * load sqlite3 gem on demand, fixes issue with generator requiring it * #18934311 - create :startbg task for Rhostudio ## 3.0.0.beta3 (2011-09-23) * #18672811 - edge case produces race condition which leads to corruption of Store data * #18508155 - on failed syncs allow the user to retry it up to pre-defined number of times ## 3.0.0.beta2 (2011-09-14) * #17830175 - moved SystemTimer in application's Gemfile so rhoconnect gem isn't specific * #13303895 - Generating a new source with 'rhosync source ' deletes sections in settings.yml * #10313437 - support source settings per environment ## 3.0.0.beta1 (2011-09-01) * #1018 user delete now iterates through user sources and deletes data in redis * #11102931 ping api accepts vibrate string and int * #7197617 test spec helpers support pass through * #11944605 implemented pass through feature * #4397476 wrapped login/logoff around cud spec helpers * backtrace logging in source adapter method exceptions * returning string in authenticate instead of true sets the current user login name (Useful for OAuth2) * #11904353 - fixed broken 'rake console' task, added new 'rhosync' namespace: 'rake rhosync:console' * #12105115 - removed unnecessary log4r dependency * added bundler to manage gem's dependencies, migrated from rspec1 to rspec2 * #5687948 - fixed issue "iPhone push specs failed" * use redis 2.2.14 by default * added SystemTimer gem dependency (used only on posix systems) * #13616807 - Rake task spec:all fails for enterprise ruby (ree) * #13776713 - Rake -v 0.9.0 breaks rhosync rake tasks * #14514773 - REST API push_object, push_deletes :md_size count fix * #5687948 - fixed issue "iPhone push specs failed" * #12854737 - string vs. symbol problem in ruby 1.9 model.rb (contribute to ruby 1.9 support) * #11692191 - ruby 1.9 support * #2020980 - Test on JRuby. Code reworked to fully support JRuby platform. * #14087743 - Merging the /login and /get_api_token methods. * #14713569 - Moving all Server REST API calls into namespaces. * #14284841 - Merge ruby_19 branch into master * #14784949 - Suppress rake -v 0.9.2 warning messages while running tasks. * #3174947 - RESTful routes for client management * #14968209 - Generated Specs are failing on 2nd generated source * #15270505 - sqlite3 is not listed as a dependency of rhosync gem (3.0.0) * #15143911 - Schema Changed message from Zendesk ticket #1035 (merge from branch 2-1-stable 2.1.9) * #14950665 - Benchmark application and libraries: rework REST calls to match new API restful routes. * #14860303 - In bench tests x_domain_session_wrapper middleware not working under ruby 1.9.2. * #15615327 - Rhoconnect migration * #15730829 - added migration guidelines doc * #14286067 - jruby rhosync:start : console doesn't work * #14286249 - jruby WAR file deployed , some of the links are broken in console window, should use the relative paths * #14285867 - jruby rhosync:start should have run with dtach * #17526603 - implement clientreset support for specified sources * #16628143 - implement 'ping' for multiple users at once in REST API * #18003071 - enhancing console to support multi-user ping * #10313437 - source settings per environment (also applied to dynamic adapters) * #18356697 - store lock is never released (bug fix) ## 2.1.10 (2011-08-17) * #16001227 - raise exceptions on c2dm errors * #1018 - delete read state for user as well ## 2.1.9 (2011-07-01) * #15143911 - Fix for incident schema changed message ## 2.1.8 (2011-06-29) * #1018 - added functionality to delete user source data on user delete * updated to rake 0.9.2 * #14911833 - Add support for rolling back updates on sync errors ## 2.1.7 (2011-05-31) * #14021681 - check for client on client_sync class methods * #14082861 - expose Store.lock timeout to high-level functions * #14082589 - fixed source loading so a unique instance is loaded * #14124195 - concurrency issue under load for same user via push_objects api * #14511763 - added global options `raise_on_expired_lock` (true/false) and `lock_duration` (sec) settings ## 2.1.6 (2011-05-25) * #13830841 - fixed issue where current_user.login doesn't match @source.user_id ## 2.1.5 (2011-05-24) * #13578473 - fixed "undefined method `user_id' for nil:NilClass" error in server.rb ## 2.1.4 (2011-05-20) * #13354369 - bug fix "rhosync bootstrap process shouldn't store sources in redis" ## 2.1.3 (2011-05-05) * #4398193 - ping should only send push messages to unique device pin list * #13022667 - settings.yml doesn't work for setting external Redis instances ## 2.1.2 (2011-03-18) * Use server-dir/redis.conf if not found at RedisRunner.prefix (via artemk) * #8471337 - switch client user if it is not equal to current_user * Upgrade rest-client dependency which includes cookie escape fix * #10097347 - generate cryptographically secure secret key by default * Fixed 'application/json; charset=UTF-8' content handling in the server before filter * #11017509 - fixed sinatra 1.2 incompatibility with url() helper * #4569337 - use redis 2.2.2 by default * #4398193 - ping should only send push messages to unique device pin list ## 2.1.1 (2011-01-04) * #7679395 - added support for gzipped bulk data files * #8167507 - fixed typo in console login page * #7025387 - customizable redis.conf for windows ## 2.1.0 * #4302316 - don't allow set blank admin password * #5672322 - stats for user count * #5672316 - stats for device count * #5717916 - stats api call * #5821277 - http stats by source not showing * #5899454 - move lock prefix to beginning so we don't return stats keys with it * #5822966 - bulk sync data file cannot handle space in the username * #6450519 - blob sync resend_page doesn't send metadata * #4646791 - cryptic error message if client exists, but source name is bogus * #6827511 - fill in schema column in bulk sync file sources table * #4490679 - support schema method in source adapter (runtime schema for bulk data) * #6573429 - if schema changed in any adapter, invalidate bulk data file * #7034095 - don't ping device if device_pin is empty or nil * #7089047 - fixed application.rb template store_blob method * #7055889 - fixed schema tables should have 'object' primary key * #6011821 - try to make bin_dir on redis:install and dtach:install ## 2.0.9 (2010-10-14) * #5154725 - stats framework * #5013521 - new web interface style * #5615901 - fixing hsqldata bulk data file format * #5672140 - http request timings middleware * #5672148 - source adapter execution timings * #5620719 - session secret override didn't work * #3713049 - added support for Android Cloud to Device Messaging ## 2.0.8 (2010-10-08) * #5185540 - don't try to load licensefile if env var exists * #5246936 - changed settings.yml-belongs_to format to use array instead of hash * #5578580 - allow Store.db to accept an existing redis object (useful for overriding redis settings) ## 2.0.7 (2010-09-13) * #4893692 - fixed infinite search loop * search properly handles multiple page results ## 2.0.6 (2010-08-25) * #4701421 - dbfile url has junk characters * #4731763 - support 'apple' device type, deprecate 'iphone' device type * #4763532 - sound was missing from BB pap message ## 2.0.5 (2010-08-10) * #4650808 - use ENV['RHOSYNC_LICENSE'] if it exists * #4650820 - added UI checkbox for direct api calls ## 2.0.4 (2010-08-04) * #3624650 - support redis-rb ~>2.0.0 * #4480303 - support connection to redis uri, if ENV[REDIS_URL] exists * #4565808 - support direct ruby api calls ## 2.0.3 (2010-07-21) * #4379293 - don't fail ping job if device type is nil or empty, just skip the device ## 2.0.2 (2010-07-16) * #4236653 - add confirmation to console and task reset * #3582679 - added rhosync:set_admin_password task ## 2.0.1 (2010-07-01) * #4124559 - rake redis:install fails due to redis build changes, require 1.3.12 for now * #4094373 - default task is now rhosync:spec ## 2.0.0.rc2, 2.0.0 (2010-06-28) * #4040573 - sqlite3-ruby v1.3.0 breaks bulk data tests, require ~>1.2.5 for now ## 2.0.0.rc1 * dupe tag of 2.0.0.beta13 ## 2.0.0.beta13 * #3417862 - namespacing issue with HashWithIndifferentAccess ## 2.0.0.beta12 * #3851464 - log every error in client post parsing * #3795105 - store associations in sources table for bulk data ## 2.0.0.beta11 * #3850478 - fix hardcoded hsqldata.jar path ## 2.0.0.beta10 * #3662891 - adding rhosync:flushdb rake task * #3742919 - fixing sources json structure according to http://wiki.rhomobile.com/index.php/Rhom#Source_Configuration_Protocol * #3740205 - changed default admin user to 'rhoadmin' ## 2.0.0.beta9 * #3565139 - return better error message if client/source is unknown * #3616601 - added blob_attribs to bulk data job file * #3576126 - added expire_bulk_data source adapter method * #3576151 - trigger new bulk data job if any relevant dbfiles are missing * #3707791 - fixing ROOT_PATH problem on windows ## 2.0.0.beta8 * #3685476 - CGI escape api cookies ## 2.0.0.beta7 * #3651932 - support redis:* tasks on windows and linux/mac * #3663335 - don't need ENV['PWD'] in tasks.rb ## 2.0.0.beta6 * no new changes, rubygems.org upload failed for 2.0.0.beta5 ## 2.0.0.beta5 * #3628036 - support loading generator from gem ## 2.0.0.beta4 * #3316030 - added rspec test framework * #3557341 - create new bulk data instance if the file is missing * #3415335 - support fixed schema models * #3582235 - report error if client-posted json doesn't parse (instead of crashing server) ## 2.0.0.beta3 * #3316030 - added source adapter spec helper + infrastructure * #3475519 - return exception string on 401 / 500 login errors * #3513037 - re-animated bulk sync feature * #3511533 - added stash_result source adapter utility - useful for huge datasets * #3539092 - added rake rhosync:web task ## 2.0.0.beta2 * #3416343 - unify rake tasks to work on windows & Mac OS / *nix ## 2.0.0.beta1 * New implementation of RhoSync using redis storage engine * Support for modular routes (console & resque frontend optional) * Bulk Data synchronization * REST api for server management