jekyll-log-wrapper 1.0.0

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4c5b9e03eb9448cdc1c594b6107da95e425230c5
4
+ data.tar.gz: 20deffb02708975c560f1d796683206f47adaade
5
+ SHA512:
6
+ metadata.gz: '09319ceeb8abe19a320e52f5a3f7197e8cdfdbb76e49b027790686b2bdddbf9af18f68ebaf4708f3fad9ffbcb3109a8b35b927abc8f23d36335ba58b40182cda'
7
+ data.tar.gz: 0c8c60d9f41785e18202f425c6c6149d2a2e37a5b922f0e2063707741c7a6c06629bc1b8f56ab7cfe69d216d9bf4cda7da1e863da663913d10474970d4a9f6e7
data/Gemfile ADDED
@@ -0,0 +1,14 @@
1
+ # Frozen-string-literal: true
2
+ # Copyright: 2017 Jordon Bedwell - MIT License
3
+ # Encoding: utf-8
4
+
5
+ source "https://rubygems.org"
6
+ gemspec
7
+
8
+ gem "rake"
9
+ gem "pry"
10
+
11
+ if ENV["JEKYLL_VERSION"]
12
+ # So we can test across all our supported.
13
+ gem "jekyll", "~> #{ENV["JEKYLL_VERSION"]}"
14
+ end
@@ -0,0 +1,5 @@
1
+ # Frozen-String-Literal: true
2
+ # Copyright 2017 Jordon Bedwell - MIT License
3
+ # Encoding: UTF-8
4
+
5
+ require "jekyll/log_wrapper"
@@ -0,0 +1,57 @@
1
+ # Frozen-String-Literal: true
2
+ # Copyright 2017 Jordon Bedwell - MIT License
3
+ # Encoding: UTF-8
4
+
5
+ require "forwardable/extended"
6
+ require "logger"
7
+
8
+ module Jekyll
9
+ class LogWrapper
10
+ extend Forwardable::Extended
11
+ rb_delegate :level , :to => :"@logger.writer"
12
+ attr_reader :logger
13
+
14
+ # --
15
+ # @return [Jekyll::LogWrapper]
16
+ # @param logger [Jekyll::Logger] the logger
17
+ # Initialize a new instance.
18
+ # --
19
+ def initialize(obj)
20
+ @logger = obj
21
+ end
22
+
23
+ # --
24
+ # @return [Symbol] because that's what Jekyll does.
25
+ # Wraps around Jekyll's handling of log levels to translate
26
+ # numbers into what they expect (:symbols) so that your
27
+ # logger behaves as expected.
28
+ # --
29
+ def level=(val)
30
+ if val.is_a?(Integer)
31
+ val = Logger::SEV_LABEL.fetch(val).
32
+ downcase.to_sym
33
+ end
34
+
35
+ @logger.writer.level = val
36
+ end
37
+
38
+ [:error, :warn, :info, :debug].each do |k|
39
+ rb_delegate "#{k}?", to: :"@logger.writer"
40
+
41
+ # --
42
+ # @return [true,false] if it logged.
43
+ # Wraps around the original method so that we can
44
+ # accept, a block (which is what most loggers allow)
45
+ # for you to do anyways.
46
+ # --
47
+ define_method k do |*msgs, &block|
48
+ if block
49
+ msgs << msgs.pop+":"
50
+ msgs << block.call
51
+ end
52
+
53
+ @logger.send(k, *msgs)
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,9 @@
1
+ # Frozen-String-Literal: true
2
+ # Copyright 2017 Jordon Bedwell - MIT License
3
+ # Encoding: UTF-8
4
+
5
+ module Jekyll
6
+ class LogWrapper
7
+ VERSION = "1.0.0"
8
+ end
9
+ end
metadata ADDED
@@ -0,0 +1,110 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jekyll-log-wrapper
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Jordon Bedwell
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-08-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rspec
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '3'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '4'
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '3'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '4'
33
+ - !ruby/object:Gem::Dependency
34
+ name: luna-rspec-formatters
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '3.7'
40
+ type: :development
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '3.7'
47
+ - !ruby/object:Gem::Dependency
48
+ name: forwardable-extended
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '2.6'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.6'
61
+ - !ruby/object:Gem::Dependency
62
+ name: jekyll
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '3.1'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '3.1'
75
+ description: A wrapper to make Jekyll's logger compliant
76
+ email:
77
+ - jordon@envygeeks.io
78
+ executables: []
79
+ extensions: []
80
+ extra_rdoc_files: []
81
+ files:
82
+ - Gemfile
83
+ - lib/jekyll-log-wrapper.rb
84
+ - lib/jekyll/log_wrapper.rb
85
+ - lib/jekyll/log_wrapper/version.rb
86
+ homepage: http://github.com/envygeeks/jekyll-log-wrapper
87
+ licenses:
88
+ - MIT
89
+ metadata: {}
90
+ post_install_message:
91
+ rdoc_options: []
92
+ require_paths:
93
+ - lib
94
+ required_ruby_version: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: 2.1.0
99
+ required_rubygems_version: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ requirements: []
105
+ rubyforge_project:
106
+ rubygems_version: 2.6.11
107
+ signing_key:
108
+ specification_version: 4
109
+ summary: A logger compliant wrapper.
110
+ test_files: []