pliny 0.0.1 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- ODZiMjE4YWE5MDY1ZjBmOWUxYWEyZTgzZTc5OGYxMzUyNGFkZGYyNQ==
5
- data.tar.gz: !binary |-
6
- NWVmZDM4NTg1NmY4MWYxZjdlNGEzOTBlYzIwMDg5N2Y5ZTllZjM4YQ==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- ZDdjMWFhNjA4OGViMzAyZTE2ODkwYWRjZmZjY2NjYTQzMWM5N2NkYjY0OGM4
10
- MjA5ZmM1YTg3NzdkNDk4MjU3YTg5M2I5MDYzZjlkN2Y2NjU2MjIyOGIyMzZm
11
- MzEyNGIwODQ2MTAzZGEyZjRjM2Y5MWYzODE2ZWZkNGFkOTljMDU=
12
- data.tar.gz: !binary |-
13
- NjE2ZWI1ZDdjM2QyMDgzZDljN2RmNDNiN2NjOGE3NWUxNTc4NmJmM2UwOWMx
14
- YzAzM2ViMzJjY2I2MWEwNTE5M2I0Y2U5MTY2ZDMzYjk2YTAwM2Q4MjViMDI4
15
- NDYyOTk0NTRhNDUzZjUxYmExY2JiNDM3NWZmNDYwYTU4NWEyZmY=
2
+ SHA1:
3
+ metadata.gz: cfe2c266b812feb72f369c7f4948d9e598ee887e
4
+ data.tar.gz: fb25f44da90206ceffa0b43830d6c4c076778bfc
5
+ SHA512:
6
+ metadata.gz: 780a91278cdd16c28c911f96be667b5f399b03ec13c2707d44fe823725e9fd170e1351af0b676a60efae270e45150987f9a4f2b7e5637d607ac6196f003ccb83
7
+ data.tar.gz: 06e9501612f28d03c56cf03ff08057014626fa9229522378cc5c54bed5c2d4963b6a1da4f132e6fea15e59c5a734c2d673996abb090ffd4c850510f285ea058f
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Opinionated template Sinatra app for writing excellent APIs in Ruby.
4
4
 
5
- [![Build Status](https://travis-ci.org/12-oz/pliny.svg?branch=master)](https://travis-ci.org/12-oz/pliny)
5
+ [![Build Status](https://travis-ci.org/interagent/pliny.svg?branch=master)](https://travis-ci.org/interagent/pliny)
6
6
 
7
7
  It bundles some of the patterns we like to develop these apps:
8
8
 
@@ -87,6 +87,16 @@ Or to run a single test suite:
87
87
  bundle exec rspec spec/acceptance/artists_spec.rb
88
88
  ```
89
89
 
90
+ ## Development
91
+
92
+ Run tests:
93
+
94
+ ```
95
+ bundle install
96
+ git submodule update --init
97
+ rake
98
+ ```
99
+
90
100
  ## Meta
91
101
 
92
102
  Created by Brandur Leach and Pedro Belo.
data/bin/pliny-generate CHANGED
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require "bundler"
4
- Bundler.require
3
+ require "pliny"
5
4
 
6
5
  Pliny::Commands::Generator.run(ARGV.dup)
data/bin/pliny-new CHANGED
@@ -1,6 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require "bundler"
4
- Bundler.require
3
+ require "pliny"
5
4
 
6
5
  Pliny::Commands::Creator.run(ARGV.dup)
data/lib/pliny/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Pliny
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -0,0 +1,3 @@
1
+ DATABASE_URL=postgres://localhost/pliny-development
2
+ RACK_ENV=development
3
+ TZ=UTC
@@ -0,0 +1,3 @@
1
+ DATABASE_URL=postgres://localhost/pliny-test
2
+ RACK_ENV=test
3
+ TZ=UTC
@@ -0,0 +1 @@
1
+ .env
data/template/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format progress
@@ -0,0 +1 @@
1
+ 2.1.1
data/template/Gemfile ADDED
@@ -0,0 +1,29 @@
1
+ source "https://rubygems.org"
2
+ ruby "2.1.1"
3
+
4
+ gem "honeybadger"
5
+ gem "multi_json"
6
+ gem "oj"
7
+ gem "pg"
8
+ gem "pliny"
9
+ gem "puma"
10
+ gem "rack-ssl"
11
+ gem "rake"
12
+ gem "sequel"
13
+ gem "sequel_pg", require: "sequel"
14
+ gem "sinatra", require: "sinatra/base"
15
+ gem "sinatra-contrib", require: ["sinatra/namespace", "sinatra/reloader"]
16
+ gem "sinatra-router"
17
+
18
+ group :development do
19
+ gem "foreman"
20
+ end
21
+
22
+ group :test do
23
+ gem "committee"
24
+ gem "database_cleaner"
25
+ gem "rack-test"
26
+ gem "rr", require: false
27
+ gem "rspec-core"
28
+ gem "rspec-expectations"
29
+ end
@@ -0,0 +1,101 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ activesupport (4.1.1)
5
+ i18n (~> 0.6, >= 0.6.9)
6
+ json (~> 1.7, >= 1.7.7)
7
+ minitest (~> 5.1)
8
+ thread_safe (~> 0.1)
9
+ tzinfo (~> 1.1)
10
+ backports (3.6.0)
11
+ committee (0.4.13)
12
+ multi_json (> 0.0)
13
+ rack (> 0.0)
14
+ database_cleaner (1.2.0)
15
+ diff-lcs (1.2.5)
16
+ dotenv (0.7.0)
17
+ erubis (2.7.0)
18
+ foreman (0.67.0)
19
+ dotenv (~> 0.7.0)
20
+ thor (~> 0.17.0)
21
+ honeybadger (1.13.0)
22
+ json
23
+ http_accept (0.1.5)
24
+ i18n (0.6.9)
25
+ json (1.8.1)
26
+ minitest (5.3.4)
27
+ multi_json (1.10.1)
28
+ oj (2.9.0)
29
+ pg (0.17.1)
30
+ pliny (0.0.1)
31
+ activesupport (~> 4.1, >= 4.1.0)
32
+ http_accept (~> 0.1, >= 0.1.5)
33
+ multi_json (~> 1.9, >= 1.9.3)
34
+ pg (~> 0.17, >= 0.17.1)
35
+ prmd (~> 0.1, >= 0.1.1)
36
+ sequel (~> 4.9, >= 4.9.0)
37
+ sinatra (~> 1.4, >= 1.4.5)
38
+ sinatra-router (~> 0.2, >= 0.2.3)
39
+ prmd (0.3.2)
40
+ erubis (~> 2.7)
41
+ puma (2.8.2)
42
+ rack (>= 1.1, < 2.0)
43
+ rack (1.5.2)
44
+ rack-protection (1.5.3)
45
+ rack
46
+ rack-ssl (1.4.1)
47
+ rack
48
+ rack-test (0.6.2)
49
+ rack (>= 1.0)
50
+ rake (10.3.1)
51
+ rr (1.1.2)
52
+ rspec-core (2.14.8)
53
+ rspec-expectations (2.14.5)
54
+ diff-lcs (>= 1.1.3, < 2.0)
55
+ sequel (4.10.0)
56
+ sequel_pg (1.6.9)
57
+ pg (>= 0.8.0)
58
+ sequel (>= 3.39.0)
59
+ sinatra (1.4.5)
60
+ rack (~> 1.4)
61
+ rack-protection (~> 1.4)
62
+ tilt (~> 1.3, >= 1.3.4)
63
+ sinatra-contrib (1.4.2)
64
+ backports (>= 2.0)
65
+ multi_json
66
+ rack-protection
67
+ rack-test
68
+ sinatra (~> 1.4.0)
69
+ tilt (~> 1.3)
70
+ sinatra-router (0.2.3)
71
+ sinatra (~> 1.4)
72
+ thor (0.17.0)
73
+ thread_safe (0.3.3)
74
+ tilt (1.4.1)
75
+ tzinfo (1.1.0)
76
+ thread_safe (~> 0.1)
77
+
78
+ PLATFORMS
79
+ ruby
80
+
81
+ DEPENDENCIES
82
+ committee
83
+ database_cleaner
84
+ foreman
85
+ honeybadger
86
+ multi_json
87
+ oj
88
+ pg
89
+ pliny
90
+ puma
91
+ rack-ssl
92
+ rack-test
93
+ rake
94
+ rr
95
+ rspec-core
96
+ rspec-expectations
97
+ sequel
98
+ sequel_pg
99
+ sinatra
100
+ sinatra-contrib
101
+ sinatra-router
data/template/LICENSE ADDED
@@ -0,0 +1,19 @@
1
+ The MIT License
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
data/template/Procfile ADDED
@@ -0,0 +1 @@
1
+ web: bundle exec puma --config config/puma.rb config.ru
@@ -0,0 +1,5 @@
1
+ # Pliny Template app
2
+
3
+ This is the template app used by the [Pliny](https://github.com/12-oz/pliny) gem.
4
+
5
+ For more information please refer to the gem docs.
data/template/Rakefile ADDED
@@ -0,0 +1,14 @@
1
+ require "pliny/tasks"
2
+
3
+ # Add your rake tasks to lib/tasks!
4
+ Dir["./lib/tasks/*.rake"].each { |task| load task }
5
+
6
+ task :spec do
7
+ require "rspec/core"
8
+ code = RSpec::Core::Runner.run(
9
+ ["./spec"],
10
+ $stderr, $stdout)
11
+ exit(code) unless code == 0
12
+ end
13
+
14
+ task :default => :spec
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "irb"
4
+ require "irb/completion"
5
+ require "bundler"
6
+ Bundler.require
7
+ require "./lib/initializer"
8
+
9
+ IRB.start
data/template/bin/run ADDED
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler"
4
+ Bundler.require
5
+ require "./lib/initializer"
6
+
7
+ eval ARGV.join(" ")
@@ -0,0 +1,26 @@
1
+ #!/usr/bin/env bash
2
+
3
+ function main {
4
+ set -e
5
+
6
+ add_new_env_vars
7
+ bundle install
8
+ bundle exec rake db:setup db:schema:load db:migrate
9
+ }
10
+
11
+ function add_new_env_vars {
12
+ touch .env
13
+ export IFS=$'\n'
14
+ for var in `cat .env.sample`; do
15
+ key="${var%%=*}" # get var key
16
+ var=`eval echo $var` # generate dynamic values
17
+
18
+ # If .env doesn't contain this env key, add it
19
+ if ! `grep -qLE "^$key=" .env`; then
20
+ echo "Adding $key to .env"
21
+ echo $var >> .env
22
+ fi
23
+ done
24
+ }
25
+
26
+ main
@@ -0,0 +1,8 @@
1
+ require "bundler"
2
+ Bundler.require
3
+
4
+ require "./lib/initializer"
5
+
6
+ $stdout.sync = true
7
+
8
+ run Routes
@@ -0,0 +1,32 @@
1
+ require "pliny/config_helpers"
2
+
3
+ # Access all config keys like the following:
4
+ #
5
+ # Config.database_url
6
+ #
7
+ # Each accessor corresponds directly to an ENV key, which has the same name
8
+ # except upcased, i.e. `DATABASE_URL`.
9
+ #
10
+ # Note that *all* keys will come out as strings even if the override was a
11
+ # different type. Make sure to typecast any values that need to be something
12
+ # else (i.e. `.to_i`).
13
+ module Config
14
+ extend Pliny::ConfigHelpers
15
+
16
+ # Mandatory -- exception is raised for these variables when missing.
17
+ mandatory \
18
+ :database_url
19
+
20
+ # Optional -- value is returned or `nil` if it wasn't present.
21
+ optional \
22
+ :placeholder
23
+
24
+ # Override -- value is returned or the set default. Remember to typecast.
25
+ override \
26
+ db_pool: 5,
27
+ port: 5000,
28
+ puma_max_threads: 16,
29
+ puma_min_threads: 1,
30
+ puma_workers: 3,
31
+ rack_env: "development"
32
+ end
@@ -0,0 +1,3 @@
1
+ Honeybadger.configure do |config|
2
+ config.api_key = ENV["HONEYBADGER_API_KEY"]
3
+ end
@@ -0,0 +1,15 @@
1
+ require "./config/config"
2
+
3
+ environment Config.rack_env
4
+ port Config.port
5
+ quiet
6
+ threads Config.puma_min_threads.to_i, Config.puma_max_threads.to_i
7
+ workers Config.puma_workers.to_i
8
+
9
+ on_worker_boot do
10
+ # force Sequel's thread pool to be refreshed
11
+ Sequel::DATABASES.each { |db| db.disconnect }
12
+ end
13
+
14
+ preload_app!
15
+ Thread.abort_on_exception = true
@@ -0,0 +1,42 @@
1
+ --
2
+ -- PostgreSQL database dump
3
+ --
4
+
5
+ SET statement_timeout = 0;
6
+ SET client_encoding = 'UTF8';
7
+ SET standard_conforming_strings = on;
8
+ SET check_function_bodies = false;
9
+ SET client_min_messages = warning;
10
+
11
+ --
12
+ -- Name: plpgsql; Type: EXTENSION; Schema: -; Owner: -
13
+ --
14
+
15
+ CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog;
16
+
17
+
18
+ --
19
+ -- Name: EXTENSION plpgsql; Type: COMMENT; Schema: -; Owner: -
20
+ --
21
+
22
+ COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language';
23
+
24
+
25
+ --
26
+ -- Name: uuid-ossp; Type: EXTENSION; Schema: -; Owner: -
27
+ --
28
+
29
+ CREATE EXTENSION IF NOT EXISTS "uuid-ossp" WITH SCHEMA public;
30
+
31
+
32
+ --
33
+ -- Name: EXTENSION "uuid-ossp"; Type: COMMENT; Schema: -; Owner: -
34
+ --
35
+
36
+ COMMENT ON EXTENSION "uuid-ossp" IS 'generate universally unique identifiers (UUIDs)';
37
+
38
+
39
+ --
40
+ -- PostgreSQL database dump complete
41
+ --
42
+
@@ -0,0 +1,9 @@
1
+ {
2
+ "description": "A simple API template provided by the Pliny project.",
3
+ "id": "pliny-template-api",
4
+ "links": [{
5
+ "href": "https://api.example.com",
6
+ "rel": "self"
7
+ }],
8
+ "title": "Pliny Template API"
9
+ }
File without changes
@@ -0,0 +1,17 @@
1
+ module Endpoints
2
+ # The base class for all Sinatra-based endpoints. Use sparingly.
3
+ class Base < Sinatra::Base
4
+ register Pliny::Extensions::Instruments
5
+ register Sinatra::Namespace
6
+
7
+ configure :development do
8
+ register Sinatra::Reloader
9
+ end
10
+
11
+ not_found do
12
+ content_type :json
13
+ status 404
14
+ "{}"
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,7 @@
1
+ module Endpoints
2
+ class Root < Base
3
+ get "/" do
4
+ "hello."
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,46 @@
1
+ module Initializer
2
+ def self.run
3
+ require_config
4
+ initialize_database
5
+ require_lib
6
+ require_initializers
7
+ end
8
+
9
+ def self.require_config
10
+ require! "config/config"
11
+ end
12
+
13
+ def self.initialize_database
14
+ Sequel.connect(Config.database_url, max_connections: Config.db_pool)
15
+ end
16
+
17
+ def self.require_lib
18
+ require! %w(
19
+ lib/endpoints/base
20
+ lib/endpoints/**/*
21
+ lib/mediators/base
22
+ lib/mediators/**/*
23
+ lib/models/**/*
24
+ lib/routes
25
+ lib/serializers/base
26
+ lib/serializers/**/*.rb
27
+ )
28
+ end
29
+
30
+ def self.require_initializers
31
+ Pliny::Utils.require_glob("#{root}/config/initializers/*.rb")
32
+ end
33
+
34
+ def self.require!(globs)
35
+ globs = [globs] unless globs.is_a?(Array)
36
+ globs.each do |f|
37
+ Pliny::Utils.require_glob("#{root}/#{f}.rb")
38
+ end
39
+ end
40
+
41
+ def self.root
42
+ @@root ||= File.expand_path("../../", __FILE__)
43
+ end
44
+ end
45
+
46
+ Initializer.run
@@ -0,0 +1,7 @@
1
+ class Mediators
2
+ class Base
3
+ def self.run(options={})
4
+ new(options).call
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,18 @@
1
+ Routes = Rack::Builder.new do
2
+ use Pliny::Middleware::RescueErrors unless Config.rack_env == "development"
3
+ use Honeybadger::Rack
4
+ use Pliny::Middleware::CORS
5
+ use Pliny::Middleware::RequestID
6
+ use Pliny::Middleware::RequestStore, store: Pliny::RequestStore
7
+ use Pliny::Middleware::Timeout, timeout: 45
8
+ use Rack::Deflater
9
+ use Rack::MethodOverride
10
+ use Rack::SSL if Config.rack_env == "production"
11
+
12
+ use Pliny::Router do
13
+ # mount all endpoints here
14
+ end
15
+
16
+ # root app; but will also handle some defaults like 404
17
+ run Endpoints::Root
18
+ end
@@ -0,0 +1,17 @@
1
+ class Serializers
2
+ class Base
3
+ @@structures = {}
4
+
5
+ def self.structure(type, &blk)
6
+ @@structures["#{self.name}::#{type}"] = blk
7
+ end
8
+
9
+ def initialize(type)
10
+ @type = type
11
+ end
12
+
13
+ def serialize(object)
14
+ @@structures["#{self.class.name}::#{@type}"].call(object)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,45 @@
1
+ # This file was generated by the `rspec --init` command. Conventionally, all
2
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
3
+ # Require this file using `require "spec_helper"` to ensure that it is only
4
+ # loaded once.
5
+ #
6
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
7
+ #
8
+ ENV["RACK_ENV"] = "test"
9
+
10
+ require "bundler"
11
+ Bundler.require(:default, :test)
12
+
13
+ require "rr"
14
+
15
+ root = File.expand_path("../../", __FILE__)
16
+ ENV.update(Pliny::Utils.parse_env("#{root}/.env.test"))
17
+
18
+ require_relative "../lib/initializer"
19
+
20
+ DatabaseCleaner.strategy = :transaction
21
+
22
+ # pull in test initializers
23
+ Pliny::Utils.require_glob("#{Initializer.root}/spec/support/**/*.rb")
24
+
25
+ RSpec.configure do |config|
26
+ config.mock_framework = :rr
27
+
28
+ config.before :each do
29
+ DatabaseCleaner.start
30
+ end
31
+
32
+ config.after :each do
33
+ DatabaseCleaner.clean
34
+ end
35
+
36
+ config.treat_symbols_as_metadata_keys_with_true_values = true
37
+ config.run_all_when_everything_filtered = true
38
+ config.filter_run :focus
39
+
40
+ # Run specs in random order to surface order dependencies. If you find an
41
+ # order dependency and want to debug it, you can fix the order by providing
42
+ # the seed, which is printed after each run.
43
+ # --seed 1234
44
+ config.order = 'random'
45
+ end
@@ -0,0 +1,7 @@
1
+ unless ENV["TEST_LOGS"] == "true"
2
+ module Pliny::Log
3
+ def log(data, &block)
4
+ block.call if block
5
+ end
6
+ end
7
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pliny
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brandur Leach
@@ -9,180 +9,180 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-05-22 00:00:00.000000000 Z
12
+ date: 2014-06-03 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  requirements:
18
- - - ~>
18
+ - - "~>"
19
19
  - !ruby/object:Gem::Version
20
20
  version: '4.1'
21
- - - ! '>='
21
+ - - ">="
22
22
  - !ruby/object:Gem::Version
23
23
  version: 4.1.0
24
24
  type: :runtime
25
25
  prerelease: false
26
26
  version_requirements: !ruby/object:Gem::Requirement
27
27
  requirements:
28
- - - ~>
28
+ - - "~>"
29
29
  - !ruby/object:Gem::Version
30
30
  version: '4.1'
31
- - - ! '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: 4.1.0
34
34
  - !ruby/object:Gem::Dependency
35
35
  name: multi_json
36
36
  requirement: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.9'
41
- - - ! '>='
41
+ - - ">="
42
42
  - !ruby/object:Gem::Version
43
43
  version: 1.9.3
44
44
  type: :runtime
45
45
  prerelease: false
46
46
  version_requirements: !ruby/object:Gem::Requirement
47
47
  requirements:
48
- - - ~>
48
+ - - "~>"
49
49
  - !ruby/object:Gem::Version
50
50
  version: '1.9'
51
- - - ! '>='
51
+ - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: 1.9.3
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: pg
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
- - - ~>
58
+ - - "~>"
59
59
  - !ruby/object:Gem::Version
60
60
  version: '0.17'
61
- - - ! '>='
61
+ - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: 0.17.1
64
64
  type: :runtime
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
- - - ~>
68
+ - - "~>"
69
69
  - !ruby/object:Gem::Version
70
70
  version: '0.17'
71
- - - ! '>='
71
+ - - ">="
72
72
  - !ruby/object:Gem::Version
73
73
  version: 0.17.1
74
74
  - !ruby/object:Gem::Dependency
75
75
  name: prmd
76
76
  requirement: !ruby/object:Gem::Requirement
77
77
  requirements:
78
- - - ~>
78
+ - - "~>"
79
79
  - !ruby/object:Gem::Version
80
80
  version: '0.1'
81
- - - ! '>='
81
+ - - ">="
82
82
  - !ruby/object:Gem::Version
83
83
  version: 0.1.1
84
84
  type: :runtime
85
85
  prerelease: false
86
86
  version_requirements: !ruby/object:Gem::Requirement
87
87
  requirements:
88
- - - ~>
88
+ - - "~>"
89
89
  - !ruby/object:Gem::Version
90
90
  version: '0.1'
91
- - - ! '>='
91
+ - - ">="
92
92
  - !ruby/object:Gem::Version
93
93
  version: 0.1.1
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: sequel
96
96
  requirement: !ruby/object:Gem::Requirement
97
97
  requirements:
98
- - - ~>
98
+ - - "~>"
99
99
  - !ruby/object:Gem::Version
100
100
  version: '4.9'
101
- - - ! '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: 4.9.0
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ~>
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
110
  version: '4.9'
111
- - - ! '>='
111
+ - - ">="
112
112
  - !ruby/object:Gem::Version
113
113
  version: 4.9.0
114
114
  - !ruby/object:Gem::Dependency
115
115
  name: sinatra
116
116
  requirement: !ruby/object:Gem::Requirement
117
117
  requirements:
118
- - - ~>
118
+ - - "~>"
119
119
  - !ruby/object:Gem::Version
120
120
  version: '1.4'
121
- - - ! '>='
121
+ - - ">="
122
122
  - !ruby/object:Gem::Version
123
123
  version: 1.4.5
124
124
  type: :runtime
125
125
  prerelease: false
126
126
  version_requirements: !ruby/object:Gem::Requirement
127
127
  requirements:
128
- - - ~>
128
+ - - "~>"
129
129
  - !ruby/object:Gem::Version
130
130
  version: '1.4'
131
- - - ! '>='
131
+ - - ">="
132
132
  - !ruby/object:Gem::Version
133
133
  version: 1.4.5
134
134
  - !ruby/object:Gem::Dependency
135
135
  name: http_accept
136
136
  requirement: !ruby/object:Gem::Requirement
137
137
  requirements:
138
- - - ~>
138
+ - - "~>"
139
139
  - !ruby/object:Gem::Version
140
140
  version: '0.1'
141
- - - ! '>='
141
+ - - ">="
142
142
  - !ruby/object:Gem::Version
143
143
  version: 0.1.5
144
144
  type: :runtime
145
145
  prerelease: false
146
146
  version_requirements: !ruby/object:Gem::Requirement
147
147
  requirements:
148
- - - ~>
148
+ - - "~>"
149
149
  - !ruby/object:Gem::Version
150
150
  version: '0.1'
151
- - - ! '>='
151
+ - - ">="
152
152
  - !ruby/object:Gem::Version
153
153
  version: 0.1.5
154
154
  - !ruby/object:Gem::Dependency
155
155
  name: sinatra-router
156
156
  requirement: !ruby/object:Gem::Requirement
157
157
  requirements:
158
- - - ~>
158
+ - - "~>"
159
159
  - !ruby/object:Gem::Version
160
160
  version: '0.2'
161
- - - ! '>='
161
+ - - ">="
162
162
  - !ruby/object:Gem::Version
163
163
  version: 0.2.3
164
164
  type: :runtime
165
165
  prerelease: false
166
166
  version_requirements: !ruby/object:Gem::Requirement
167
167
  requirements:
168
- - - ~>
168
+ - - "~>"
169
169
  - !ruby/object:Gem::Version
170
170
  version: '0.2'
171
- - - ! '>='
171
+ - - ">="
172
172
  - !ruby/object:Gem::Version
173
173
  version: 0.2.3
174
174
  - !ruby/object:Gem::Dependency
175
175
  name: rake
176
176
  requirement: !ruby/object:Gem::Requirement
177
177
  requirements:
178
- - - ! '>='
178
+ - - ">="
179
179
  - !ruby/object:Gem::Version
180
180
  version: 0.8.7
181
181
  type: :development
182
182
  prerelease: false
183
183
  version_requirements: !ruby/object:Gem::Requirement
184
184
  requirements:
185
- - - ! '>='
185
+ - - ">="
186
186
  - !ruby/object:Gem::Version
187
187
  version: 0.8.7
188
188
  description: Pliny is a set of base classes and helpers to help developers write excellent
@@ -232,6 +232,35 @@ files:
232
232
  - lib/pliny/templates/serializer_test.erb
233
233
  - lib/pliny/utils.rb
234
234
  - lib/pliny/version.rb
235
+ - template/.env.sample
236
+ - template/.env.test
237
+ - template/.gitignore
238
+ - template/.rspec
239
+ - template/.ruby-version
240
+ - template/Gemfile
241
+ - template/Gemfile.lock
242
+ - template/LICENSE
243
+ - template/Procfile
244
+ - template/README.md
245
+ - template/Rakefile
246
+ - template/bin/console
247
+ - template/bin/run
248
+ - template/bin/setup
249
+ - template/config.ru
250
+ - template/config/config.rb
251
+ - template/config/initializers/honeybadger.rb
252
+ - template/config/puma.rb
253
+ - template/db/schema.sql
254
+ - template/docs/schema/meta.json
255
+ - template/docs/schema/schemata/.gitkeep
256
+ - template/lib/endpoints/base.rb
257
+ - template/lib/endpoints/root.rb
258
+ - template/lib/initializer.rb
259
+ - template/lib/mediators/base.rb
260
+ - template/lib/routes.rb
261
+ - template/lib/serializers/base.rb
262
+ - template/spec/spec_helper.rb
263
+ - template/spec/support/log.rb
235
264
  - test/commands/creator_test.rb
236
265
  - test/commands/generator_test.rb
237
266
  - test/errors_test.rb
@@ -257,17 +286,17 @@ require_paths:
257
286
  - lib
258
287
  required_ruby_version: !ruby/object:Gem::Requirement
259
288
  requirements:
260
- - - ! '>='
289
+ - - ">="
261
290
  - !ruby/object:Gem::Version
262
291
  version: '0'
263
292
  required_rubygems_version: !ruby/object:Gem::Requirement
264
293
  requirements:
265
- - - ! '>='
294
+ - - ">="
266
295
  - !ruby/object:Gem::Version
267
296
  version: '0'
268
297
  requirements: []
269
298
  rubyforge_project:
270
- rubygems_version: 2.0.7
299
+ rubygems_version: 2.2.1
271
300
  signing_key:
272
301
  specification_version: 4
273
302
  summary: Basic tooling to support API apps in Sinatra