rhosync 2.0.0.beta1 → 2.0.0.beta2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. data/README.md +5 -20
  2. data/Rakefile +7 -5
  3. data/bench/lib/bench.rb +1 -2
  4. data/doc/protocol.html +154 -80
  5. data/lib/rhosync/client_sync.rb +7 -6
  6. data/lib/rhosync/console/app/routes/auth.rb +0 -2
  7. data/lib/rhosync/console/app/routes/client.rb +4 -5
  8. data/lib/rhosync/console/app/routes/docs.rb +25 -7
  9. data/lib/rhosync/console/app/routes/home.rb +1 -1
  10. data/lib/rhosync/console/app/routes/user.rb +6 -7
  11. data/lib/rhosync/console/app/views/doc.erb +3 -51
  12. data/lib/rhosync/console/app/views/docdata.erb +28 -0
  13. data/lib/rhosync/console/app/views/docs.erb +2 -1
  14. data/lib/rhosync/console/app/views/index.erb +1 -1
  15. data/lib/rhosync/console/app/views/select_doc.erb +19 -0
  16. data/lib/rhosync/console/app/views/upload_doc.erb +23 -0
  17. data/lib/rhosync/console/rhosync_api.rb +31 -30
  18. data/lib/rhosync/license.rb +1 -1
  19. data/lib/rhosync/tasks.rb +26 -12
  20. data/lib/rhosync/version.rb +1 -1
  21. data/spec/api/create_client_spec.rb +1 -1
  22. data/spec/api/create_user_spec.rb +1 -1
  23. data/spec/api/delete_client_spec.rb +1 -1
  24. data/spec/api/delete_user_spec.rb +2 -2
  25. data/spec/api/get_api_token_spec.rb +1 -2
  26. data/spec/api/get_source_params_spec.rb +1 -1
  27. data/spec/api/list_client_docs_spec.rb +1 -1
  28. data/spec/api/list_clients_spec.rb +2 -2
  29. data/spec/api/list_source_docs_spec.rb +2 -2
  30. data/spec/api/list_sources_spec.rb +4 -4
  31. data/spec/api/list_users_spec.rb +3 -3
  32. data/spec/api/set_refresh_time_spec.rb +8 -8
  33. data/spec/api/upload_file_spec.rb +2 -2
  34. data/spec/apps/rhotestapp/sources/simple_adapter.rb +3 -2
  35. data/spec/client_spec.rb +1 -1
  36. data/spec/client_sync_spec.rb +45 -17
  37. data/spec/doc/doc_spec.rb +21 -7
  38. data/spec/license_spec.rb +1 -1
  39. data/spec/perf/bulk_data_perf_spec.rb +0 -1
  40. data/spec/perf/perf_spec_helper.rb +2 -0
  41. data/spec/perf/store_perf_spec.rb +0 -1
  42. data/spec/server/server_spec.rb +8 -10
  43. metadata +39 -37
data/README.md CHANGED
@@ -1,26 +1,11 @@
1
- Rhosync
1
+ RhoSync
2
2
  -------------------------------------------------------------
3
-
4
- Redis-powered rhosync with built-in sinatra application.
5
-
6
- INSTALL
7
- -------------------------------------------------------------
8
- 1. Make sure you have the following gems installed:
9
-
10
- * rspec rcov json sqlite3-ruby faker redis redis-namespace sinatra rack-test rubyzip uuidtools resque
11
-
12
- 2. Install and start a redis server (v1.2 or greater is required) (see <http://code.google.com/p/redis/>)
13
-
14
- 3. Install hsqldata.jar to vendor/ directory. See <http://github.com/rhomobile/hsqldata> for instructions on how to build hsqldata.
15
-
16
- 4. "rake" to run all specs
17
-
18
- Windows Notes: when run any spec task error message box (ruby.exe - Unable to locate component) will appear. Just press 'OK'. This is problem with rcov.
3
+ RhoSync 2.0 is a redis-powered implementation of the RhoSync synchronization system.
19
4
 
20
5
  DOCS
21
6
  -------------------------------------------------------------
22
- * Intro to Rhodes & Rhosync: <http://wiki.rhomobile.com/index.php/Rhomobile> -> Read this first!
7
+ * Intro to Rhodes & Rhosync: <http://wiki.rhomobile.com/index.php/Rhomobile>
8
+ * RhoSync 2.0: <http://wiki.rhomobile.com/index.php/RhoSync_2.0>
23
9
  * Tutorial: <http://wiki.rhomobile.com/index.php/Tutorial>
24
- * Architecture: <http://wiki.rhomobile.com/index.php/RhoSync_2.0>
25
- * Rdoc (still rough): <http://rdoc.info/projects/rhomobile/rhosync>
10
+ * RDoc (still rough): <http://rdoc.info/projects/rhomobile/rhosync>
26
11
  * Client/Server Protocol: See doc/protocol.html
data/Rakefile CHANGED
@@ -55,28 +55,30 @@ begin
55
55
  Jeweler::Tasks.new do |gemspec|
56
56
  gemspec.name = "rhosync"
57
57
  gemspec.summary = %q{Rhosync Server}
58
- gemspec.description = %q{Rhosync Server and related command-line utilities for using Rhosync}
58
+ gemspec.description = %q{Rhosync library and related command-line utilities for using Rhosync}
59
59
  gemspec.homepage = %q{http://rhomobile.com/products/rhosync}
60
60
  gemspec.authors = ["Rhomobile"]
61
+ gemspec.email = %q{dev@rhomobile.com}
61
62
  gemspec.version = Rhosync::VERSION
62
63
  gemspec.files = FileList["[A-Z]*", "{bench,bin,doc,generators,lib,spec,tasks}/**/*"]
63
64
 
64
- gemspec.add_dependency "json", ">=1.2.3"
65
+ # TODO: Due to https://www.pivotaltracker.com/story/show/3417862, we can't use JSON 1.4.3
66
+ gemspec.add_dependency "json", "<=1.4.2"
65
67
  gemspec.add_dependency "log4r", ">=1.1.7"
66
68
  gemspec.add_dependency "sqlite3-ruby", ">=1.2.5"
67
69
  gemspec.add_dependency "rubyzip", ">=0.9.4"
68
70
  gemspec.add_dependency "uuidtools", ">=2.1.1"
69
- gemspec.add_dependency "redis", ">=0.2.0"
71
+ gemspec.add_dependency "redis", ">=1.0.7"
70
72
  gemspec.add_dependency "resque", ">=1.8.0"
71
73
  gemspec.add_dependency "rest-client", ">=1.4.2"
72
- gemspec.add_dependency "sinatra", ">=0.9.2"
74
+ gemspec.add_dependency "sinatra", ">=1.0"
73
75
  gemspec.add_dependency "templater", ">=1.0.0"
76
+ gemspec.add_dependency "rake", ">=0.8.7"
74
77
  gemspec.add_development_dependency "jeweler", ">=1.4.0"
75
78
  gemspec.add_development_dependency "rspec", ">=1.3.0"
76
79
  gemspec.add_development_dependency "rcov", ">=0.9.8"
77
80
  gemspec.add_development_dependency "faker", ">=0.3.1"
78
81
  gemspec.add_development_dependency "rack-test", ">=0.5.3"
79
- gemspec.add_development_dependency "mechanize", ">=1.0.0"
80
82
  end
81
83
  rescue LoadError
82
84
  puts "Jeweler not available. Install it with: "
data/bench/lib/bench.rb CHANGED
@@ -2,7 +2,6 @@
2
2
  require 'rest_client'
3
3
  require 'log4r'
4
4
  require 'json'
5
- require 'mechanize'
6
5
  require 'zip/zip'
7
6
  $:.unshift File.dirname(__FILE__)
8
7
  require 'bench/timer'
@@ -48,7 +47,7 @@ module Bench
48
47
  end
49
48
 
50
49
  def reset_app
51
- Mechanize.new.post("#{@host}/api/reset",:api_token => get_token)
50
+ RestClient.post("#{@host}/api/reset",{:api_token => get_token}.to_json, :content_type => :json)
52
51
  end
53
52
 
54
53
  def create_user