parse-stack 1.6.5 → 1.6.9
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
-
[![
|
18
|
+
[![Gitter](https://badges.gitter.im/modernistik/parse-stack.svg)](https://gitter.im/modernistik/parse-stack?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
|
19
|
+
[![Gem Version](https://img.shields.io/gem/v/parse-stack.svg)](https://github.com/modernistik/parse-stack)
|
20
|
+
[![Downloads](https://img.shields.io/gem/dt/parse-stack.svg)](https://rubygems.org/gems/parse-stack)
|
16
21
|
[![Build Status](https://travis-ci.org/modernistik/parse-stack.svg?branch=master)](https://travis-ci.org/modernistik/parse-stack)
|
17
22
|
[![API Reference](http://img.shields.io/badge/api-docs-blue.svg)](http://www.rubydoc.info/github/modernistik/parse-stack)
|
18
|
-
[![Source Code](https://img.shields.io/badge/github-code-orange.svg)](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
|