adsf 1.4.0 → 1.4.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0d10dbc0c7655c4d10cfc4fd23f2c3dd4d80e6c39c2ea67f88e3ab85dcc38797
4
- data.tar.gz: 428273f5866ac20c98e634d8a17fb4d2b79666e87620f5982205ebf062d59eb9
3
+ metadata.gz: 2bed7a7c5f5574997d0eeec598d71b4dc147d7e06791882652e09aaadf268148
4
+ data.tar.gz: ef22cbacc165d8c1f52ec905e65a23890d64620cec940e20f613c78f4714927a
5
5
  SHA512:
6
- metadata.gz: 8c2f39e4e2e95d1a8e8800595b9e8efb50f1db75fca481f8f0c40a17b22fa138bac641c72edddcd9980c6a6c39f1a432afe9c1d8843c29f6ab88317b43bffd50
7
- data.tar.gz: 03c8c274075be4b448c38dfa0a7d59c9790403d02f20693f9eaf52d858dfdd4d1d632b77e21d6edace1623eca076078bf82a37af074919fae02745c30fe518f1
6
+ metadata.gz: e4ae8c69113fb49375848f7542a9e9105f4dea4ef95bf37d5bcae57e6214b34aa5c19eb0c42d45229dac4de680d15c105911ac3fc2516ed2df6abfb656f9e0af
7
+ data.tar.gz: a051d166b79f4d763b5ea4cb53cc881290d4411246822233a17ecb24d2e25bb4f21b212aa6738403a4490fe34385e4c9e203d44b92d05d2e8c3388bd2cc46d45
data/NEWS.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # Release notes for adsf
2
2
 
3
+ ## 1.4.5 (2020-12-31)
4
+
5
+ Changes:
6
+
7
+ * Added support for Ruby 3.0
8
+ * Dropped support for Ruby 2.4 and 2.5
9
+
10
+ ## 1.4.4 (2020-12-18)
11
+
12
+ Enhancements:
13
+
14
+ * Let Rack handler default to what Rack considers to be default (not Thin)
15
+
16
+ ## 1.4.3 (2019-12-06)
17
+
18
+ Fixes:
19
+
20
+ * Fixed incorrect Cache-Control stale-if-error header value (#20) [Chris Chapman]
21
+
22
+ ## 1.4.2 (2019-05-26)
23
+
24
+ Enhancements:
25
+
26
+ * Set `Cache-Control` HTTP header to prevent caching (#17, #18) [Daniel Aleksandersen]
27
+
28
+ ## 1.4.1 (2018-02-02)
29
+
30
+ Fixes:
31
+
32
+ * [adsf-live] Fixed Windows compatibility (#14)
33
+
3
34
  ## 1.4.0 (2017-11-26)
4
35
 
5
36
  Features:
data/README.md CHANGED
@@ -25,7 +25,7 @@ _adsf_ (**A** **D**ead **S**imple **F**ileserver) is a tiny static web server th
25
25
 
26
26
  See `adsf --help` for details.
27
27
 
28
- To use `adsf --live-reload`, please install the separate `adsf-live` gem. (The live-reload support is not part of adsf itself, because the dependencies of `adsf-life` make it difficult to install under some circumstances.)
28
+ To use `adsf --live-reload`, please install the separate `adsf-live` gem. (The live-reload support is not part of adsf itself, because the dependencies of `adsf-live` make it difficult to install under some circumstances.)
29
29
 
30
30
  Using adsf programmatically
31
31
  ---------------------------
@@ -6,4 +6,5 @@ module Adsf
6
6
  end
7
7
 
8
8
  require 'adsf/rack/index_file_finder'
9
+ require 'adsf/rack/caching'
9
10
  require 'adsf/rack/cors'
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Adsf::Rack
4
+ class Caching
5
+ def initialize(app)
6
+ @app = app
7
+ end
8
+
9
+ def call(env)
10
+ status, headers, body = *@app.call(env)
11
+
12
+ new_headers =
13
+ headers.merge(
14
+ 'Cache-Control' => 'max-age=0, stale-if-error=0',
15
+ )
16
+
17
+ [status, new_headers, body]
18
+ end
19
+ end
20
+ end
@@ -2,8 +2,6 @@
2
2
 
3
3
  module Adsf
4
4
  class Server
5
- DEFAULT_HANDLER_NAME = :thin
6
-
7
5
  def initialize(root:, live: false, index_filenames: ['index.html'], host: '127.0.0.1', port: 3000, handler: nil)
8
6
  @root = root
9
7
  @live = live
@@ -57,6 +55,7 @@ module Adsf
57
55
  use ::Rack::ShowExceptions
58
56
  use ::Rack::Lint
59
57
  use ::Rack::Head
58
+ use Adsf::Rack::Caching
60
59
  use Adsf::Rack::CORS
61
60
  use Adsf::Rack::IndexFileFinder,
62
61
  root: root,
@@ -75,11 +74,7 @@ module Adsf
75
74
  if @handler
76
75
  ::Rack::Handler.get(@handler)
77
76
  else
78
- begin
79
- ::Rack::Handler.get(DEFAULT_HANDLER_NAME)
80
- rescue LoadError
81
- ::Rack::Handler::WEBrick
82
- end
77
+ ::Rack::Handler.default
83
78
  end
84
79
  end
85
80
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Adsf
4
- VERSION = '1.4.0'
4
+ VERSION = '1.4.5'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: adsf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.4.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Denis Defreyne
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-26 00:00:00.000000000 Z
11
+ date: 2020-12-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -42,6 +42,7 @@ files:
42
42
  - bin/adsf
43
43
  - lib/adsf.rb
44
44
  - lib/adsf/rack.rb
45
+ - lib/adsf/rack/caching.rb
45
46
  - lib/adsf/rack/cors.rb
46
47
  - lib/adsf/rack/index_file_finder.rb
47
48
  - lib/adsf/server.rb
@@ -50,24 +51,23 @@ homepage: http://github.com/ddfreyne/adsf/
50
51
  licenses:
51
52
  - MIT
52
53
  metadata: {}
53
- post_install_message:
54
+ post_install_message:
54
55
  rdoc_options: []
55
56
  require_paths:
56
57
  - lib
57
58
  required_ruby_version: !ruby/object:Gem::Requirement
58
59
  requirements:
59
- - - "~>"
60
+ - - ">="
60
61
  - !ruby/object:Gem::Version
61
- version: '2.3'
62
+ version: '2.5'
62
63
  required_rubygems_version: !ruby/object:Gem::Requirement
63
64
  requirements:
64
65
  - - ">="
65
66
  - !ruby/object:Gem::Version
66
67
  version: '0'
67
68
  requirements: []
68
- rubyforge_project:
69
- rubygems_version: 2.7.2
70
- signing_key:
69
+ rubygems_version: 3.2.3
70
+ signing_key:
71
71
  specification_version: 4
72
72
  summary: a tiny static file server
73
73
  test_files: []