parse-stack 1.6.5 → 1.6.9
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.
- checksums.yaml +4 -4
- data/.gitignore +4 -1
- data/Changes.md +11 -0
- data/Gemfile +1 -1
- data/Gemfile.lock +12 -7
- data/{LICENSE → LICENSE.txt} +2 -0
- data/README.md +42 -8
- data/Rakefile +2 -2
- data/bin/parse-console +80 -0
- data/lib/parse/api/all.rb +0 -1
- data/lib/parse/client.rb +0 -1
- data/lib/parse/client/batch.rb +1 -0
- data/lib/parse/client/protocol.rb +1 -3
- data/lib/parse/model/classes/product.rb +1 -0
- data/lib/parse/model/core/properties.rb +7 -4
- data/lib/parse/model/pointer.rb +6 -1
- data/lib/parse/stack/version.rb +1 -1
- data/parse-stack.gemspec +13 -4
- metadata +11 -9
- data/lib/parse/api/apps.rb +0 -75
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 9d9cd70e7c2fd02eed7ee1ae5fc51a41c82d8872
|
|
4
|
+
data.tar.gz: fda840e7ef5ebee534d6d9129caa6209c0dce3b7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fd0e8042a4c4efef6879708eb457fad2ec39a46b774fcb8295333658974396efdc667a56051c268fd45d9f2741699e373616026ae388d5ee0d682f27aa0c50b4
|
|
7
|
+
data.tar.gz: 1828de9ca5b1bcdbdd61be4366d48e0536ff0b3974a1114199cff22a661c86e7ff653e95682360128e5af69ae90b49887a64185627ccb16a53b76f01dacf154d
|
data/.gitignore
CHANGED
data/Changes.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
## Parse-Stack Changelog
|
|
2
2
|
|
|
3
|
+
### 1.6.8
|
|
4
|
+
- NEW: Parse::Object#sig method to get quick information about an instance.
|
|
5
|
+
- Adds :delete as an alias method to :destroy
|
|
6
|
+
- FIXES: Typo fix when using Array#objectIds.
|
|
7
|
+
- Additional tests.
|
|
8
|
+
|
|
9
|
+
### 1.6.7
|
|
10
|
+
- Default SERVER_URL changed to http://localhost:1337/parse
|
|
11
|
+
- NEW: Command line tool `parse-console` to do interactive Parse development with parse-stack.
|
|
12
|
+
- REMOVED: Deprecated parse.com specific APIs under the `/apps/` path.
|
|
13
|
+
|
|
3
14
|
### 1.6.5
|
|
4
15
|
- Client handles HTTP Status 429 (RetryLimitExceeded)
|
|
5
16
|
- Role class does not automatically set default ACLs for Roles. You can restore
|
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
parse-stack (1.6.
|
|
4
|
+
parse-stack (1.6.9)
|
|
5
5
|
active_model_serializers (>= 0.9, < 1)
|
|
6
6
|
activemodel (>= 4.2.1, < 6)
|
|
7
7
|
activesupport (>= 4.2.1, < 6)
|
|
@@ -27,10 +27,11 @@ GEM
|
|
|
27
27
|
erubis (~> 2.7.0)
|
|
28
28
|
rails-dom-testing (~> 2.0)
|
|
29
29
|
rails-html-sanitizer (~> 1.0, >= 1.0.2)
|
|
30
|
-
active_model_serializers (0.10.
|
|
30
|
+
active_model_serializers (0.10.4)
|
|
31
31
|
actionpack (>= 4.1, < 6)
|
|
32
32
|
activemodel (>= 4.1, < 6)
|
|
33
|
-
|
|
33
|
+
case_transform (>= 0.2)
|
|
34
|
+
jsonapi (= 0.1.1.beta6)
|
|
34
35
|
activemodel (5.0.1)
|
|
35
36
|
activesupport (= 5.0.1)
|
|
36
37
|
activesupport (5.0.1)
|
|
@@ -42,6 +43,8 @@ GEM
|
|
|
42
43
|
debug_inspector (>= 0.0.1)
|
|
43
44
|
builder (3.2.2)
|
|
44
45
|
byebug (9.0.6)
|
|
46
|
+
case_transform (0.2)
|
|
47
|
+
activesupport
|
|
45
48
|
coderay (1.1.1)
|
|
46
49
|
concurrent-ruby (1.0.4)
|
|
47
50
|
daemons (1.2.4)
|
|
@@ -54,9 +57,11 @@ GEM
|
|
|
54
57
|
faraday_middleware (0.10.1)
|
|
55
58
|
faraday (>= 0.7.4, < 1.0)
|
|
56
59
|
i18n (0.7.0)
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
+
jsonapi (0.1.1.beta6)
|
|
61
|
+
jsonapi-parser (= 0.1.1.beta3)
|
|
62
|
+
jsonapi-renderer (= 0.1.1.beta1)
|
|
63
|
+
jsonapi-parser (0.1.1.beta3)
|
|
64
|
+
jsonapi-renderer (0.1.1.beta1)
|
|
60
65
|
loofah (2.0.3)
|
|
61
66
|
nokogiri (>= 1.5.9)
|
|
62
67
|
method_source (0.8.2)
|
|
@@ -64,7 +69,7 @@ GEM
|
|
|
64
69
|
minitest (5.10.1)
|
|
65
70
|
moneta (0.8.1)
|
|
66
71
|
multipart-post (2.0.0)
|
|
67
|
-
nokogiri (1.7.0)
|
|
72
|
+
nokogiri (1.7.0.1)
|
|
68
73
|
mini_portile2 (~> 2.1.0)
|
|
69
74
|
parallel (1.10.0)
|
|
70
75
|
pry (0.10.4)
|
data/{LICENSE → LICENSE.txt}
RENAMED
data/README.md
CHANGED
|
@@ -1,21 +1,25 @@
|
|
|
1
1
|
<img src='https://raw.githubusercontent.com/modernistik/parse-stack/master/.github/parse-ruby-sdk.png?raw=true' width='500' alt='Ruby Parse SDK'/>
|
|
2
2
|
|
|
3
|
-
# Parse
|
|
3
|
+
# Parse Stack - The Parse Ruby Client SDK
|
|
4
4
|
|
|
5
|
-
Parse-
|
|
5
|
+
[Parse Stack](https://github.com/modernistik/parse-stack) is the [Parse Server](https://github.com/ParsePlatform/parse-server) SDK, REST Client and ORM framework for [Ruby](https://www.ruby-lang.org/en/). It provides a client adapter, a query engine, an object relational mapper (ORM) and a Cloud Code Webhooks rack application.
|
|
6
6
|
|
|
7
7
|
Below is a [quick start guide](https://github.com/modernistik/parse-stack#overview), but you can also check out the full [API Reference](http://www.rubydoc.info/github/modernistik/parse-stack) for more detailed information about our Parse Server SDK.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
#### Tutorial Videos
|
|
10
|
+
1. Getting Started: https://youtu.be/zoYSGmciDlQ
|
|
11
|
+
2. Custom Classes and Relations: https://youtu.be/tfSesotfU7w
|
|
12
|
+
3. Working with Existing Schemas: https://youtu.be/EJGPT7YWyXA
|
|
10
13
|
|
|
11
14
|
### Parse File Migration Tool
|
|
12
15
|
**If you are looking for a tool to migrate your hosted Parse Files to an Amazon S3 bucket, see our [Parse File Migration tool here](https://github.com/modernistik/parse-file-migration). This should be done before January 28th, 2017**
|
|
13
16
|
|
|
14
17
|
### Code Status
|
|
15
|
-
[](https://gitter.im/modernistik/parse-stack?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
|
19
|
+
[](https://github.com/modernistik/parse-stack)
|
|
20
|
+
[](https://rubygems.org/gems/parse-stack)
|
|
16
21
|
[](https://travis-ci.org/modernistik/parse-stack)
|
|
17
22
|
[](http://www.rubydoc.info/github/modernistik/parse-stack)
|
|
18
|
-
[](https://github.com/modernistik/parse-stack)
|
|
19
23
|
|
|
20
24
|
## Installation
|
|
21
25
|
|
|
@@ -41,6 +45,14 @@ Parse-Stack comes with support for Rails by adding additional rake tasks and gen
|
|
|
41
45
|
|
|
42
46
|
For a more details on the rails integration see [Parse-Stack Rails Example](https://github.com/modernistik/parse-stack-rails-example).
|
|
43
47
|
|
|
48
|
+
### Interactive Command Line
|
|
49
|
+
You can also used the bundled `parse-console` command line to connect and interact with your Parse Server and its data in an irb-like console:
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
$ parse-console -h # see all options
|
|
53
|
+
$ parse-console -a appId -k restAPIKey http://localhost:1337/parse
|
|
54
|
+
```
|
|
55
|
+
|
|
44
56
|
## Overview
|
|
45
57
|
Parse-Stack is a full stack framework that utilizes several ideas behind [DataMapper](http://datamapper.org/docs/find.html) and [ActiveModel](https://github.com/rails/rails/tree/master/activemodel) to manage and maintain larger scale ruby applications and tools that utilize the [Parse Server Platform](https://github.com/ParsePlatform/parse-server). If you are familiar with these technologies, the framework should feel familiar to you.
|
|
46
58
|
|
|
@@ -353,6 +365,25 @@ If you already have a Parse application with defined schemas and collections, yo
|
|
|
353
365
|
Song.all(artist: artist)
|
|
354
366
|
```
|
|
355
367
|
|
|
368
|
+
You can always combine both approaches by defining special attributes before you auto generate your models:
|
|
369
|
+
|
|
370
|
+
```ruby
|
|
371
|
+
# create a Song class, but only create the artist array pointer association.
|
|
372
|
+
class Song < Parse::Object
|
|
373
|
+
has_many :artists, through: :array
|
|
374
|
+
end
|
|
375
|
+
|
|
376
|
+
# Now let Parse Stack generate the rest of the properties and associations
|
|
377
|
+
# based on your remote schema. Assume there is a `title` field for the `Song`
|
|
378
|
+
# collection.
|
|
379
|
+
Parse.auto_generate_models!
|
|
380
|
+
|
|
381
|
+
song = Song.first
|
|
382
|
+
song.artists # created with our definition above
|
|
383
|
+
song.title # auto-generated property
|
|
384
|
+
|
|
385
|
+
```
|
|
386
|
+
|
|
356
387
|
## Parse Config
|
|
357
388
|
Getting your configuration variables once you have a default client setup can be done with `Parse.config`. The first time this method is called, Parse-Stack will get the configuration from Parse Server, and cache it. To force a reload of the config, use `config!`. You
|
|
358
389
|
|
|
@@ -2349,7 +2380,10 @@ Song.client.clear_cache!
|
|
|
2349
2380
|
|
|
2350
2381
|
```
|
|
2351
2382
|
|
|
2352
|
-
##
|
|
2353
|
-
|
|
2383
|
+
## Contributing
|
|
2384
|
+
|
|
2385
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/modernistik/parse-stack.
|
|
2386
|
+
|
|
2387
|
+
## License
|
|
2354
2388
|
|
|
2355
|
-
|
|
2389
|
+
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
data/Rakefile
CHANGED
|
@@ -18,11 +18,11 @@ end
|
|
|
18
18
|
task :c => :console
|
|
19
19
|
|
|
20
20
|
desc 'List undocumented methods'
|
|
21
|
-
task '
|
|
21
|
+
task 'yard:stats' do
|
|
22
22
|
exec 'yard stats --list-undoc'
|
|
23
23
|
end
|
|
24
24
|
|
|
25
25
|
desc 'Start the yard server'
|
|
26
|
-
task '
|
|
26
|
+
task 'yard' do
|
|
27
27
|
exec 'rm -rf ./yard && yard server --reload'
|
|
28
28
|
end
|
data/bin/parse-console
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require 'optparse'
|
|
4
|
+
require 'json'
|
|
5
|
+
|
|
6
|
+
opts = { verbose: false, pry: false }
|
|
7
|
+
opt_parser = OptionParser.new do |o|
|
|
8
|
+
|
|
9
|
+
o.banner = "Usage: #{File.basename($0)} [options] SERVER_URL"
|
|
10
|
+
o.separator ""
|
|
11
|
+
o.separator "Example:"
|
|
12
|
+
o.separator "#{File.basename($0)} -a APP_ID -k REST_API_KEY http://your-parser-server-url"
|
|
13
|
+
o.separator "#{File.basename($0)} -a APP_ID -m MASTER_KEY http://localhost:1337/parse"
|
|
14
|
+
o.separator ""
|
|
15
|
+
o.separator "Options"
|
|
16
|
+
o.on('-a APP_ID', '--appId APP_ID', 'Parse App ID (required)') { |a| opts[:app_id] = a }
|
|
17
|
+
o.on('-k REST_API_KEY', '--restAPIKey REST_API_KEY', 'Parse REST API Key') { |a| opts[:api_key] = a }
|
|
18
|
+
o.on('-m MASTER_KEY', '--masterKey MASTER_KEY', 'Parse Master Key') { |a| opts[:master_key] = a }
|
|
19
|
+
o.on('-s SERVER_URL', '--serverURL SERVER_URL', 'The Parse server url.', 'Defaults to http://localhost:1337/parse') { |a| opts[:server_url] = a }
|
|
20
|
+
o.on('-v','--[no-]verbose', 'Run verbosely') { |v| opts[:verbose] ||= v }
|
|
21
|
+
o.on('--pry', 'Use Pry instead of IRB') { |v| opts[:pry] = v }
|
|
22
|
+
o.on('--version', 'Parse Stack version') do |v|
|
|
23
|
+
require_relative '../lib/parse/stack/version'
|
|
24
|
+
puts "Parse Stack : #{Parse::Stack::VERSION}"
|
|
25
|
+
exit 1
|
|
26
|
+
end
|
|
27
|
+
o.on('-c','--config CONFIG_JSON', "Load config from a parse-dashboard json compatible file.") do |filepath|
|
|
28
|
+
begin
|
|
29
|
+
file = File.read(filepath)
|
|
30
|
+
config = JSON.parse file
|
|
31
|
+
app = config["apps"].is_a?(Array) ? config["apps"].first : config["apps"]
|
|
32
|
+
opts[:server_url] ||= app["serverURL"]
|
|
33
|
+
opts[:app_id] ||= app["appId"]
|
|
34
|
+
opts[:api_key] ||= app["restAPIKey"]
|
|
35
|
+
opts[:master_key] ||= app["masterKey"]
|
|
36
|
+
rescue Exception => e
|
|
37
|
+
$stderr.puts "Error: Incompatible JSON format for #{filepath}"
|
|
38
|
+
exit 1
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
opt_parser.parse!
|
|
44
|
+
|
|
45
|
+
opts[:server_url] ||= ARGV[0] || 'http://localhost:1337/parse'
|
|
46
|
+
|
|
47
|
+
if opts[:app_id].nil?
|
|
48
|
+
$stderr.puts "Error: Option --app_id missing\n"
|
|
49
|
+
$stderr.puts opt_parser
|
|
50
|
+
exit 1
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
if opts[:api_key].nil? && opts[:master_key].nil?
|
|
54
|
+
$stderr.puts "Error: You must supply either --api_key (REST API Key) or --master_key (Parse Master key).\n"
|
|
55
|
+
$stderr.puts opt_parser
|
|
56
|
+
exit 1
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
# lazy loading
|
|
60
|
+
require_relative "../lib/parse/stack"
|
|
61
|
+
Parse.setup server_url: opts[:server_url],
|
|
62
|
+
app_id: opts[:app_id],
|
|
63
|
+
api_key: opts[:api_key],
|
|
64
|
+
master_key: opts[:master_key]
|
|
65
|
+
Parse.logging = true if opts[:verbose]
|
|
66
|
+
puts "Server : #{Parse.client.server_url}"
|
|
67
|
+
puts "App Id : #{Parse.client.app_id}"
|
|
68
|
+
puts "Master : #{opts[:master_key].present?}"
|
|
69
|
+
|
|
70
|
+
Parse.auto_generate_models!.each do |model|
|
|
71
|
+
puts "Generated #{model}" if opts[:verbose]
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
if opts[:pry]
|
|
75
|
+
require "pry"
|
|
76
|
+
Pry.start
|
|
77
|
+
else
|
|
78
|
+
require "irb"
|
|
79
|
+
IRB.start
|
|
80
|
+
end
|
data/lib/parse/api/all.rb
CHANGED
data/lib/parse/client.rb
CHANGED
data/lib/parse/client/batch.rb
CHANGED
|
@@ -6,9 +6,7 @@ module Parse
|
|
|
6
6
|
# Set of Parse protocol constants.
|
|
7
7
|
module Protocol
|
|
8
8
|
# The default server url, based on the hosted Parse platform.
|
|
9
|
-
SERVER_URL = '
|
|
10
|
-
# The default legacy server url, based on the hosted Parse platform.
|
|
11
|
-
LEGACY_SERVER_URL = 'https://api.parse.com/1/'.freeze
|
|
9
|
+
SERVER_URL = 'http://localhost:1337/parse'.freeze
|
|
12
10
|
# The request header field to send the application Id.
|
|
13
11
|
APP_ID = 'X-Parse-Application-Id'
|
|
14
12
|
# The request header field to send the REST API key.
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
require_relative '../object'
|
|
4
4
|
require_relative 'user'
|
|
5
|
+
|
|
5
6
|
module Parse
|
|
6
7
|
# This class represents the data and columns contained in the standard Parse `_Product` collection.
|
|
7
8
|
# These records are usually used when implementing in-app purchases in mobile applications.
|
|
@@ -128,11 +128,14 @@ module Parse
|
|
|
128
128
|
# it can be overriden by the :field parameter
|
|
129
129
|
parse_field = opts[:field].to_sym
|
|
130
130
|
if self.fields[key].present? && BASE_FIELD_MAP[key].nil?
|
|
131
|
-
|
|
131
|
+
warn "Property #{self}##{key} already defined with data type #{data_type}. Will be ignored."
|
|
132
|
+
return
|
|
132
133
|
end
|
|
133
134
|
# We keep the list of fields that are on the remote Parse store
|
|
134
135
|
if self.fields[parse_field].present?
|
|
135
|
-
|
|
136
|
+
warn "Alias property #{self}##{parse_field} conflicts with previously defined property. Will be ignored."
|
|
137
|
+
return
|
|
138
|
+
# raise ArgumentError
|
|
136
139
|
end
|
|
137
140
|
#dirty tracking. It is declared to use with ActiveModel DirtyTracking
|
|
138
141
|
define_attribute_methods key
|
|
@@ -301,7 +304,7 @@ module Parse
|
|
|
301
304
|
# support question mark methods for boolean
|
|
302
305
|
if data_type == :boolean
|
|
303
306
|
if self.method_defined?("#{key}?")
|
|
304
|
-
|
|
307
|
+
warn "Creating boolean helper :#{key}?. Will overwrite existing method #{self}##{key}?."
|
|
305
308
|
end
|
|
306
309
|
|
|
307
310
|
# returns true if set to true, false otherwise
|
|
@@ -311,7 +314,7 @@ module Parse
|
|
|
311
314
|
end
|
|
312
315
|
elsif data_type == :integer || data_type == :float
|
|
313
316
|
if self.method_defined?("#{key}_increment!")
|
|
314
|
-
|
|
317
|
+
warn "Creating increment helper :#{key}_increment!. Will overwrite existing method #{self}##{key}_increment!."
|
|
315
318
|
end
|
|
316
319
|
|
|
317
320
|
define_method("#{key}_increment!") do |amount = 1|
|
data/lib/parse/model/pointer.rb
CHANGED
|
@@ -93,6 +93,11 @@ module Parse
|
|
|
93
93
|
@parse_class
|
|
94
94
|
end
|
|
95
95
|
|
|
96
|
+
# @return [String] a string representing the class and id of this instance.
|
|
97
|
+
def sig
|
|
98
|
+
"#{@parse_class}##{id || 'new'}"
|
|
99
|
+
end
|
|
100
|
+
|
|
96
101
|
# @return [Hash]
|
|
97
102
|
def attributes
|
|
98
103
|
ATTRIBUTES
|
|
@@ -185,7 +190,7 @@ class Array
|
|
|
185
190
|
# This method maps all the ids (String) of all Parse::Objects in the array.
|
|
186
191
|
# @return [Array<String>] an array of strings of ids.
|
|
187
192
|
def objectIds
|
|
188
|
-
map { |m| m.
|
|
193
|
+
map { |m| m.is_a?(Parse::Pointer) ? m.id : nil }.compact
|
|
189
194
|
end
|
|
190
195
|
|
|
191
196
|
# Filter all objects in the array that do not inherit from Parse::Pointer or
|
data/lib/parse/stack/version.rb
CHANGED
data/parse-stack.gemspec
CHANGED
|
@@ -9,8 +9,8 @@ Gem::Specification.new do |spec|
|
|
|
9
9
|
spec.authors = ["Anthony Persaud"]
|
|
10
10
|
spec.email = ["persaud@modernistik.com"]
|
|
11
11
|
|
|
12
|
-
spec.summary = %q{Parse
|
|
13
|
-
spec.description = %q{Parse
|
|
12
|
+
spec.summary = %q{Parse Server Ruby Client SDK}
|
|
13
|
+
spec.description = %q{Parse Server Ruby Client. Perform Object-relational mapping between Parse Server and Ruby classes, with authentication, cloud code webhooks, push notifications and more built in.}
|
|
14
14
|
spec.homepage = "https://github.com/modernistik/parse-stack"
|
|
15
15
|
spec.license = "MIT"
|
|
16
16
|
# Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
|
|
@@ -22,8 +22,8 @@ Gem::Specification.new do |spec|
|
|
|
22
22
|
# end
|
|
23
23
|
|
|
24
24
|
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
|
25
|
-
spec.bindir = "
|
|
26
|
-
spec.executables = spec.files.grep(%r{^
|
|
25
|
+
spec.bindir = "bin"
|
|
26
|
+
spec.executables = ['parse-console'] #spec.files.grep(%r{^bin/pstack/}) { |f| File.basename(f) }
|
|
27
27
|
spec.require_paths = ["lib"]
|
|
28
28
|
spec.required_ruby_version = '>= 2.2.2'
|
|
29
29
|
|
|
@@ -46,3 +46,12 @@ Gem::Specification.new do |spec|
|
|
|
46
46
|
#
|
|
47
47
|
# UPGRADE
|
|
48
48
|
end
|
|
49
|
+
|
|
50
|
+
## Development
|
|
51
|
+
# After checking out the repo, run `bin/setup` to install dependencies. You can
|
|
52
|
+
# also run `bin/console` for an interactive prompt that will allow you to experiment.
|
|
53
|
+
#
|
|
54
|
+
# To install this gem onto your local machine, run `bundle exec rake install`.
|
|
55
|
+
# To release a new version, update the version number in `version.rb`, and then run
|
|
56
|
+
# `bundle exec rake release`, which will create a git tag for the version,
|
|
57
|
+
# push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: parse-stack
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.6.
|
|
4
|
+
version: 1.6.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Anthony Persaud
|
|
8
8
|
autorequire:
|
|
9
|
-
bindir:
|
|
9
|
+
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2017-01-
|
|
11
|
+
date: 2017-01-16 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activemodel
|
|
@@ -164,11 +164,13 @@ dependencies:
|
|
|
164
164
|
- - "<"
|
|
165
165
|
- !ruby/object:Gem::Version
|
|
166
166
|
version: '3'
|
|
167
|
-
description: Parse
|
|
168
|
-
|
|
167
|
+
description: Parse Server Ruby Client. Perform Object-relational mapping between Parse
|
|
168
|
+
Server and Ruby classes, with authentication, cloud code webhooks, push notifications
|
|
169
|
+
and more built in.
|
|
169
170
|
email:
|
|
170
171
|
- persaud@modernistik.com
|
|
171
|
-
executables:
|
|
172
|
+
executables:
|
|
173
|
+
- parse-console
|
|
172
174
|
extensions: []
|
|
173
175
|
extra_rdoc_files: []
|
|
174
176
|
files:
|
|
@@ -178,17 +180,17 @@ files:
|
|
|
178
180
|
- Changes.md
|
|
179
181
|
- Gemfile
|
|
180
182
|
- Gemfile.lock
|
|
181
|
-
- LICENSE
|
|
183
|
+
- LICENSE.txt
|
|
182
184
|
- README.md
|
|
183
185
|
- Rakefile
|
|
184
186
|
- _config.yml
|
|
185
187
|
- bin/console
|
|
188
|
+
- bin/parse-console
|
|
186
189
|
- bin/server
|
|
187
190
|
- bin/setup
|
|
188
191
|
- lib/parse-stack.rb
|
|
189
192
|
- lib/parse/api/all.rb
|
|
190
193
|
- lib/parse/api/analytics.rb
|
|
191
|
-
- lib/parse/api/apps.rb
|
|
192
194
|
- lib/parse/api/batch.rb
|
|
193
195
|
- lib/parse/api/cloud_functions.rb
|
|
194
196
|
- lib/parse/api/config.rb
|
|
@@ -279,5 +281,5 @@ rubyforge_project:
|
|
|
279
281
|
rubygems_version: 2.6.8
|
|
280
282
|
signing_key:
|
|
281
283
|
specification_version: 4
|
|
282
|
-
summary: Parse
|
|
284
|
+
summary: Parse Server Ruby Client SDK
|
|
283
285
|
test_files: []
|
data/lib/parse/api/apps.rb
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
# frozen_string_literal: true
|
|
3
|
-
|
|
4
|
-
module Parse
|
|
5
|
-
|
|
6
|
-
module API
|
|
7
|
-
# @deprecated These specific APIs will no longer be available after Jan 28th, 2017.
|
|
8
|
-
# Defines the Apps interface for the Parse REST API
|
|
9
|
-
module Apps
|
|
10
|
-
|
|
11
|
-
# @!visibility private
|
|
12
|
-
APPS_PATH = "apps"
|
|
13
|
-
|
|
14
|
-
# @deprecated This method will no longer be available after Jan 28th, 2017.
|
|
15
|
-
# Fetch the application keys.
|
|
16
|
-
# @param appid [String] the application id.
|
|
17
|
-
# @param email [String] your hosted Parse account email.
|
|
18
|
-
# @param password [String] your hosted Parse account password.
|
|
19
|
-
# @param headers [Hash] additional HTTP headers to send with the request.
|
|
20
|
-
# @note Only supported by the hosted Parse platform and not the open source Parse-Server.
|
|
21
|
-
# @return [Parse::Response]
|
|
22
|
-
# @deprecated
|
|
23
|
-
def fetch_app_keys(appid, email, password, headers: {})
|
|
24
|
-
warn "[Parse::Client#fetch_app_keys] This method will no longer be available after Jan 28th, 2017."
|
|
25
|
-
headers.merge!( { Parse::Protocol::EMAIL => email, Parse::Protocol::PASSWORD => password } )
|
|
26
|
-
request :get, "#{APPS_PATH}/#{appid}", headers: headers
|
|
27
|
-
end
|
|
28
|
-
|
|
29
|
-
# @deprecated This method will no longer be available after Jan 28th, 2017.
|
|
30
|
-
# Fetch the applications.
|
|
31
|
-
# @param email [String] your hosted Parse account email.
|
|
32
|
-
# @param password [String] your hosted Parse account password.
|
|
33
|
-
# @param headers [Hash] additional HTTP headers to send with the request.
|
|
34
|
-
# @note Only supported by the hosted Parse platform and not the open source Parse-Server.
|
|
35
|
-
# @return [Parse::Response]
|
|
36
|
-
def fetch_apps(email, password, headers: {})
|
|
37
|
-
warn "[Parse::Client#fetch_apps] This method will no longer be available after Jan 28th, 2017."
|
|
38
|
-
headers.merge!( { Parse::Protocol::EMAIL => email, Parse::Protocol::PASSWORD => password } )
|
|
39
|
-
request :get, APPS_PATH, headers: headers
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
# @deprecated This method will no longer be available after Jan 28th, 2017.
|
|
43
|
-
# Create a new application in the hosted Parse Platform.
|
|
44
|
-
# @param body [Hash] parameters for creating the app.
|
|
45
|
-
# @param email [String] your hosted Parse account email.
|
|
46
|
-
# @param password [String] your hosted Parse account password.
|
|
47
|
-
# @param headers [Hash] additional HTTP headers to send with the request.
|
|
48
|
-
# @note Only supported by the hosted Parse platform and not the open source Parse-Server.
|
|
49
|
-
# @return [Parse::Response]
|
|
50
|
-
def create_app(body, email, password, headers: {})
|
|
51
|
-
warn "[Parse::Client#create_app] This method will no longer be available after Jan 28th, 2017."
|
|
52
|
-
headers.merge!( { Parse::Protocol::EMAIL => email, Parse::Protocol::PASSWORD => password } )
|
|
53
|
-
request :post, APPS_PATH, body: body, headers: headers
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
# @deprecated This method will no longer be available after Jan 28th, 2017.
|
|
57
|
-
# Updates information about a particular app.
|
|
58
|
-
# @param appid [String] the application id.
|
|
59
|
-
# @param body [Hash] parameters to update the app.
|
|
60
|
-
# @param email [String] your hosted Parse account email.
|
|
61
|
-
# @param password [String] your hosted Parse account password.
|
|
62
|
-
# @param headers [Hash] additional HTTP headers to send with the request.
|
|
63
|
-
# @note Only supported by the hosted Parse platform and not the open source Parse-Server.
|
|
64
|
-
# @return [Parse::Response]
|
|
65
|
-
def update_app(appid, body, email, password, headers: {})
|
|
66
|
-
warn "[Parse::Client#update_app] This method will no longer be available after Jan 28th, 2017."
|
|
67
|
-
headers.merge!( { Parse::Protocol::EMAIL => email, Parse::Protocol::PASSWORD => password } )
|
|
68
|
-
request :put, "#{APPS_PATH}/#{appid}", body: body, headers: headers
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
end
|
|
73
|
-
end
|
|
74
|
-
|
|
75
|
-
end
|