happypdf_json_schema 0.1.2 → 0.1.3
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.
- data/CHANGELOG.md +13 -0
- data/{README.rdoc → README.md} +13 -14
- data/happypdf_json_schema.gemspec +1 -2
- data/lib/happypdf/version.rb +1 -1
- data/schema/v1.0/pdf.json +5 -5
- data/schema/v1.0/pdt.json +4 -4
- metadata +10 -8
- data/CHANGELOG.rdoc +0 -7
data/CHANGELOG.md
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
= Changelog for happyPDF API Schema
|
2
|
+
|
3
|
+
A more detailed view of the changes can be found in the [commit messages](https://github.com/happypdf/happypdf_json_schema/commits/)
|
4
|
+
|
5
|
+
|
6
|
+
2013-10
|
7
|
+
|
8
|
+
* add pdf resources
|
9
|
+
* refactor pdt, page resources
|
10
|
+
|
11
|
+
2012-12
|
12
|
+
|
13
|
+
* initial version
|
data/{README.rdoc → README.md}
RENAMED
@@ -1,6 +1,6 @@
|
|
1
|
-
|
1
|
+
# HappyPDF API Schema
|
2
2
|
|
3
|
-
|
3
|
+
[<img src="https://secure.travis-ci.org/happypdf/happypdf_json_schema.png?branch=master" alt="Build Status" />](http://travis-ci.org/happypdf/happypdf_json_schema)
|
4
4
|
|
5
5
|
Our API (objects,resources) is described with JSON Schema (http://json-schema.org).
|
6
6
|
Each Object has its own description, with those top-level keys:
|
@@ -11,36 +11,35 @@ Each Object has its own description, with those top-level keys:
|
|
11
11
|
"links": [ .. ] // CRUD actions, relationships to other resources
|
12
12
|
}
|
13
13
|
|
14
|
-
Look into the /
|
14
|
+
Look into the /schema/ folder for the resources schema-files
|
15
15
|
For ruby pirates this project is available as gem. It provides some utility
|
16
16
|
methods to read the schema files and convert objects to their schema notation.
|
17
|
-
See
|
17
|
+
See [/lib/happypdf/schema.rb](https://github.com/happypdf/happypdf_json_schema/blob/master/lib/happypdf/schema.rb)
|
18
18
|
|
19
19
|
Other languages should take advantage of the raw json files.
|
20
20
|
|
21
|
-
|
21
|
+
## Field types & formats
|
22
22
|
|
23
23
|
Most of the fields are of type 'string'. Their format(espacially date fields)
|
24
|
-
is casted on our side. We try to go with the
|
24
|
+
is casted on our side. We try to go with the [formats](http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.23) and [types])http://tools.ietf.org/html/draft-zyp-json-schema-03#section-5.1) defined by JSON-Schema
|
25
25
|
|
26
26
|
All text MUST be UTF-8 encoded.
|
27
27
|
|
28
|
-
*Text-Format* length varies, between ~16,000 to 65.535, with the occurence of non-ASCII Characters
|
28
|
+
*Text-Format* length varies, between ~16,000 to 65.535, with the occurence of non-ASCII Characters [see this post on stackoverflow](http://stackoverflow.com/questions/4420164/how-much-utf-8-text-fits-in-a-mysql-text-field)
|
29
29
|
|
30
30
|
|
31
|
-
|
31
|
+
## Install
|
32
32
|
|
33
33
|
gem install happypdf_json_schema
|
34
34
|
|
35
|
-
|
35
|
+
## Test
|
36
36
|
|
37
|
-
Tested with
|
37
|
+
Tested with [travis-ci](http://travis-ci.org/happypdf/happypdf_json_schema), but of
|
38
38
|
course you can run them too. Install required gems with bundler and go for it:
|
39
|
-
# git clone
|
40
|
-
bundle install
|
41
|
-
rake spec
|
42
39
|
|
40
|
+
# git clone
|
41
|
+
bundle install
|
42
|
+
rake spec
|
43
43
|
|
44
|
-
== ToDo:
|
45
44
|
|
46
45
|
Copyright (c) 2012-2013 Georg Leciejewski, released under the MIT license
|
@@ -12,7 +12,6 @@ Besides ruby users can use a small lib with utility methods to load and test the
|
|
12
12
|
s.authors = ['Georg Leciejewski']
|
13
13
|
s.email = %q{gl@happypdf.com}
|
14
14
|
s.homepage = %q{http://github.com/happypdf/happypdf_json_schema}
|
15
|
-
s.extra_rdoc_files = ['README.rdoc']
|
16
15
|
s.executables = nil
|
17
16
|
s.files = `git ls-files`.split("\n").reject{|i| i[/^docs\//] }
|
18
17
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
@@ -20,8 +19,8 @@ Besides ruby users can use a small lib with utility methods to load and test the
|
|
20
19
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
21
20
|
s.require_paths = ['lib']
|
22
21
|
|
23
|
-
s.add_development_dependency 'rdoc'
|
24
22
|
s.add_development_dependency 'rspec'
|
23
|
+
s.add_development_dependency 'activesupport'
|
25
24
|
s.add_development_dependency 'json_schema_tools'
|
26
25
|
s.add_development_dependency 'rake', '>= 0.9.2'
|
27
26
|
|
data/lib/happypdf/version.rb
CHANGED
data/schema/v1.0/pdf.json
CHANGED
@@ -19,6 +19,11 @@
|
|
19
19
|
"description": "PDF Template id, used to create this PDF.",
|
20
20
|
"type": "integer"
|
21
21
|
},
|
22
|
+
"public_id": {
|
23
|
+
"description": "Unique ID to be used in public URL e.g to get the screenshot image of a page.",
|
24
|
+
"readonly": true,
|
25
|
+
"type": "string"
|
26
|
+
},
|
22
27
|
"user_id": {
|
23
28
|
"description": "User who created the object",
|
24
29
|
"type": "integer"
|
@@ -29,11 +34,6 @@
|
|
29
34
|
"type": "string",
|
30
35
|
"format": "date-time"
|
31
36
|
},
|
32
|
-
"md5": {
|
33
|
-
"description": "MD5 hash created from pdf string.",
|
34
|
-
"type": "string",
|
35
|
-
"maxlength": 40
|
36
|
-
},
|
37
37
|
"account_id": {
|
38
38
|
"description": "Account this objects belongs to.",
|
39
39
|
"type": "integer"
|
data/schema/v1.0/pdt.json
CHANGED
@@ -13,12 +13,12 @@
|
|
13
13
|
"name": {
|
14
14
|
"description": "Name shown in interface",
|
15
15
|
"type": "string",
|
16
|
-
"maxlength":
|
16
|
+
"maxlength": 128
|
17
17
|
},
|
18
|
-
"
|
18
|
+
"filename": {
|
19
19
|
"description": "Filename",
|
20
20
|
"type": "string",
|
21
|
-
"maxlength":
|
21
|
+
"maxlength": 128
|
22
22
|
},
|
23
23
|
"description": {
|
24
24
|
"description": "A description of the template",
|
@@ -65,7 +65,7 @@
|
|
65
65
|
"type": "integer"
|
66
66
|
},
|
67
67
|
"pages": {
|
68
|
-
"description": "Pages of the
|
68
|
+
"description": "Pages of the template.",
|
69
69
|
"type": "array",
|
70
70
|
"properties":{"$ref":"./page.json#properties"}
|
71
71
|
}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: happypdf_json_schema
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -12,7 +12,7 @@ cert_chain: []
|
|
12
12
|
date: 2013-10-27 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
15
|
+
name: rspec
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
@@ -28,7 +28,7 @@ dependencies:
|
|
28
28
|
- !ruby/object:Gem::Version
|
29
29
|
version: '0'
|
30
30
|
- !ruby/object:Gem::Dependency
|
31
|
-
name:
|
31
|
+
name: activesupport
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
33
33
|
none: false
|
34
34
|
requirements:
|
@@ -83,14 +83,13 @@ description: ! 'happyPDF JSON Schema describes our PDF API in terms of available
|
|
83
83
|
email: gl@happypdf.com
|
84
84
|
executables: []
|
85
85
|
extensions: []
|
86
|
-
extra_rdoc_files:
|
87
|
-
- README.rdoc
|
86
|
+
extra_rdoc_files: []
|
88
87
|
files:
|
89
88
|
- .gitignore
|
90
89
|
- .travis.yml
|
91
|
-
- CHANGELOG.
|
90
|
+
- CHANGELOG.md
|
92
91
|
- Gemfile
|
93
|
-
- README.
|
92
|
+
- README.md
|
94
93
|
- Rakefile
|
95
94
|
- happypdf_json_schema.gemspec
|
96
95
|
- lib/happypdf/schema.rb
|
@@ -119,6 +118,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
119
118
|
- - ! '>='
|
120
119
|
- !ruby/object:Gem::Version
|
121
120
|
version: '0'
|
121
|
+
segments:
|
122
|
+
- 0
|
123
|
+
hash: -1543727035472563446
|
122
124
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
123
125
|
none: false
|
124
126
|
requirements:
|
@@ -127,7 +129,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
127
129
|
version: '0'
|
128
130
|
requirements: []
|
129
131
|
rubyforge_project:
|
130
|
-
rubygems_version: 1.8.
|
132
|
+
rubygems_version: 1.8.25
|
131
133
|
signing_key:
|
132
134
|
specification_version: 3
|
133
135
|
summary: happyPDF API - JSON Schema
|