tzispa 0.7.0 → 0.7.1
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/CHANGELOG.md +5 -0
- data/lib/tzispa/api/handler.rb +20 -12
- data/lib/tzispa/controller/base.rb +5 -1
- data/lib/tzispa/server.rb +2 -0
- data/lib/tzispa/version.rb +1 -1
- data/tzispa.gemspec +1 -1
- metadata +7 -7
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA1:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: f50c454f5ef7dadfebaba6ef100dd0b0c46cf195
         | 
| 4 | 
            +
              data.tar.gz: ea1f5f7ba86c28537a1cb6cd3bbc2837e5d75da4
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: 4d25afce79bda116c7b7794eae00b10403edd4573950c3a9c6ee19cffe90dc2eb9d730865ba253eb460175abb0e5f206332aa4eac9ee7394730919565debed39
         | 
| 7 | 
            +
              data.tar.gz: 587680df83f8d2c9016dd3c86b50d2baaf941398a791335ff5f570408b2ae0c2c83d85f83270ea15a7c57c76476e7af35cc6d9f3909a224cac69266f5fa3d18a
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    | @@ -2,6 +2,11 @@ Tzispa | |
| 2 2 |  | 
| 3 3 | 
             
            General purpose web framework
         | 
| 4 4 |  | 
| 5 | 
            +
            ## v0.7.1
         | 
| 6 | 
            +
            - ensure set response status in prepare_client/server_error
         | 
| 7 | 
            +
            - added result_redirect method in api handlers
         | 
| 8 | 
            +
            - bug fixes
         | 
| 9 | 
            +
             | 
| 5 10 | 
             
            ## v0.7.0
         | 
| 6 11 | 
             
            - distinct error and http status in api handlers
         | 
| 7 12 | 
             
            - better api responses by content type
         | 
    
        data/lib/tzispa/api/handler.rb
    CHANGED
    
    | @@ -41,12 +41,6 @@ module Tzispa | |
| 41 41 | 
             
                    @status = nil
         | 
| 42 42 | 
             
                  end
         | 
| 43 43 |  | 
| 44 | 
            -
                  def result(type:, data: nil, error: nil)
         | 
| 45 | 
            -
                    @type = type
         | 
| 46 | 
            -
                    @data = data
         | 
| 47 | 
            -
                    @error = error
         | 
| 48 | 
            -
                  end
         | 
| 49 | 
            -
             | 
| 50 44 | 
             
                  class << self
         | 
| 51 45 | 
             
                    def before(*args)
         | 
| 52 46 | 
             
                      (@before_chain ||= []).tap do |bef|
         | 
| @@ -59,7 +53,7 @@ module Tzispa | |
| 59 53 | 
             
                  end
         | 
| 60 54 |  | 
| 61 55 | 
             
                  def error?
         | 
| 62 | 
            -
                    error && error != HANDLER_OK
         | 
| 56 | 
            +
                    @error && @error != HANDLER_OK
         | 
| 63 57 | 
             
                  end
         | 
| 64 58 |  | 
| 65 59 | 
             
                  def error_status(error, status = nil)
         | 
| @@ -67,12 +61,22 @@ module Tzispa | |
| 67 61 | 
             
                    @status = status
         | 
| 68 62 | 
             
                  end
         | 
| 69 63 |  | 
| 70 | 
            -
                  def  | 
| 71 | 
            -
                     | 
| 64 | 
            +
                  def result(type:, data: nil, error: nil)
         | 
| 65 | 
            +
                    @type = type
         | 
| 66 | 
            +
                    @data = data
         | 
| 67 | 
            +
                    @error = error if error
         | 
| 68 | 
            +
                  end
         | 
| 69 | 
            +
             | 
| 70 | 
            +
                  def result_json(data)
         | 
| 71 | 
            +
                    result type: :json, data: data
         | 
| 72 72 | 
             
                  end
         | 
| 73 73 |  | 
| 74 | 
            -
                  def result_download(data | 
| 75 | 
            -
                    result type: :download, data: data | 
| 74 | 
            +
                  def result_download(data)
         | 
| 75 | 
            +
                    result type: :download, data: data
         | 
| 76 | 
            +
                  end
         | 
| 77 | 
            +
             | 
| 78 | 
            +
                  def result_redirect(data)
         | 
| 79 | 
            +
                    result type: :redirect, data: data
         | 
| 76 80 | 
             
                  end
         | 
| 77 81 |  | 
| 78 82 | 
             
                  def not_found
         | 
| @@ -80,7 +84,11 @@ module Tzispa | |
| 80 84 | 
             
                  end
         | 
| 81 85 |  | 
| 82 86 | 
             
                  def message
         | 
| 83 | 
            -
                    I18n.t( | 
| 87 | 
            +
                    I18n.t(error_id, default: error.to_s) if error
         | 
| 88 | 
            +
                  end
         | 
| 89 | 
            +
             | 
| 90 | 
            +
                  def error_id
         | 
| 91 | 
            +
                    "#{self.class.name.dottize}.#{error}" if error
         | 
| 84 92 | 
             
                  end
         | 
| 85 93 |  | 
| 86 94 | 
             
                  def run!(verb, predicate = nil)
         | 
| @@ -53,13 +53,15 @@ module Tzispa | |
| 53 53 | 
             
                  end
         | 
| 54 54 |  | 
| 55 55 | 
             
                  def prepare_response(status, content = nil)
         | 
| 56 | 
            -
                    response.status = status if status.is_a?(Integer)
         | 
| 57 56 | 
             
                    if response.client_error?
         | 
| 58 57 | 
             
                      prepare_client_error(status)
         | 
| 59 58 | 
             
                    elsif response.server_error?
         | 
| 60 59 | 
             
                      prepare_server_error(status)
         | 
| 61 60 | 
             
                    elsif content
         | 
| 61 | 
            +
                      response.status = status if status.is_a?(Integer)
         | 
| 62 62 | 
             
                      response.body = content
         | 
| 63 | 
            +
                    elsif status.is_a?(Integer)
         | 
| 64 | 
            +
                      response.status = status
         | 
| 63 65 | 
             
                    end
         | 
| 64 66 | 
             
                  end
         | 
| 65 67 |  | 
| @@ -69,6 +71,7 @@ module Tzispa | |
| 69 71 |  | 
| 70 72 | 
             
                  def prepare_client_error(status, error = nil)
         | 
| 71 73 | 
             
                    status.tap do |code|
         | 
| 74 | 
            +
                      response.status = status if status.is_a?(Integer)
         | 
| 72 75 | 
             
                      context.logger.info log_format(code, error.to_s) if error
         | 
| 73 76 | 
             
                      response.body = error_page(context.domain, status: code)
         | 
| 74 77 | 
             
                    end
         | 
| @@ -76,6 +79,7 @@ module Tzispa | |
| 76 79 |  | 
| 77 80 | 
             
                  def prepare_server_error(status, error = nil)
         | 
| 78 81 | 
             
                    status.tap do |code|
         | 
| 82 | 
            +
                      response.status = status if status.is_a?(Integer)
         | 
| 79 83 | 
             
                      context.logger.error log_format(code, error_log(error)) if error
         | 
| 80 84 | 
             
                      response.body = if error && Tzispa::Environment.development?
         | 
| 81 85 | 
             
                                        debug_info(error)
         | 
    
        data/lib/tzispa/server.rb
    CHANGED
    
    | @@ -23,8 +23,10 @@ module Tzispa | |
| 23 23 | 
             
                def setup
         | 
| 24 24 | 
             
                  instance_eval 'load "./config/boot.rb"'
         | 
| 25 25 | 
             
                  @app = if code_reloading?
         | 
| 26 | 
            +
                           puts 'Tzispa is booting server with code reloading'
         | 
| 26 27 | 
             
                           Shotgun::Loader.new(rackup_file)
         | 
| 27 28 | 
             
                         else
         | 
| 29 | 
            +
                           puts 'Tzispa is booting server without code reloading'
         | 
| 28 30 | 
             
                           config = "Rack::Builder.new {( #{::File.read(rackup_file)}\n )}.to_app"
         | 
| 29 31 | 
             
                           instance_eval config, rackup_file
         | 
| 30 32 | 
             
                         end
         | 
    
        data/lib/tzispa/version.rb
    CHANGED
    
    
    
        data/tzispa.gemspec
    CHANGED
    
    | @@ -28,7 +28,7 @@ Gem::Specification.new do |s| | |
| 28 28 | 
             
              s.add_dependency 'tzispa_data',    '~> 0.4'
         | 
| 29 29 | 
             
              s.add_dependency 'dotenv',         '~> 2.2'
         | 
| 30 30 |  | 
| 31 | 
            -
              s.add_development_dependency 'shotgun'
         | 
| 31 | 
            +
              s.add_development_dependency 'shotgun', '~> 0.9'
         | 
| 32 32 |  | 
| 33 33 | 
             
              s.files         = Dir.glob('{lib,bin}/**/*') + %w(README.md CHANGELOG.md LICENSE tzispa.gemspec)
         | 
| 34 34 | 
             
              s.executables   = s.files.grep(%r{^bin/}) { |f| File.basename(f) }
         | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: tzispa
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.7. | 
| 4 | 
            +
              version: 0.7.1
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Juan Antonio Piñero
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2017- | 
| 11 | 
            +
            date: 2017-04-21 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: bundler
         | 
| @@ -160,16 +160,16 @@ dependencies: | |
| 160 160 | 
             
              name: shotgun
         | 
| 161 161 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 162 162 | 
             
                requirements:
         | 
| 163 | 
            -
                - - " | 
| 163 | 
            +
                - - "~>"
         | 
| 164 164 | 
             
                  - !ruby/object:Gem::Version
         | 
| 165 | 
            -
                    version: '0'
         | 
| 165 | 
            +
                    version: '0.9'
         | 
| 166 166 | 
             
              type: :development
         | 
| 167 167 | 
             
              prerelease: false
         | 
| 168 168 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 169 169 | 
             
                requirements:
         | 
| 170 | 
            -
                - - " | 
| 170 | 
            +
                - - "~>"
         | 
| 171 171 | 
             
                  - !ruby/object:Gem::Version
         | 
| 172 | 
            -
                    version: '0'
         | 
| 172 | 
            +
                    version: '0.9'
         | 
| 173 173 | 
             
            description: A sparkling web framework Rack based
         | 
| 174 174 | 
             
            email:
         | 
| 175 175 | 
             
            - japinero@area-integral.com
         | 
| @@ -241,7 +241,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 241 241 | 
             
                  version: '0'
         | 
| 242 242 | 
             
            requirements: []
         | 
| 243 243 | 
             
            rubyforge_project: 
         | 
| 244 | 
            -
            rubygems_version: 2.6. | 
| 244 | 
            +
            rubygems_version: 2.6.11
         | 
| 245 245 | 
             
            signing_key: 
         | 
| 246 246 | 
             
            specification_version: 4
         | 
| 247 247 | 
             
            summary: A sparkling web framework
         |