eitil 1.0.2 → 1.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +0 -1
  3. data/eitil_core/README.md +93 -4
  4. data/eitil_core/lib/eitil_core.rb +1 -0
  5. data/eitil_core/lib/eitil_core/application_controller/slice_params.rb +3 -0
  6. data/eitil_core/lib/eitil_core/application_record/all_associations.rb +3 -0
  7. data/eitil_core/lib/eitil_core/application_record/find_by_like.rb +3 -0
  8. data/eitil_core/lib/eitil_core/application_record/where_like.rb +3 -0
  9. data/eitil_core/lib/eitil_core/argument_helpers.rb +8 -0
  10. data/eitil_core/lib/eitil_core/argument_helpers/all_args_to_ivars_bang.rb +15 -0
  11. data/eitil_core/lib/eitil_core/argument_helpers/all_kwargs_to_ivars_bang.rb +15 -0
  12. data/eitil_core/lib/eitil_core/argument_helpers/args_to_h.rb +15 -0
  13. data/eitil_core/lib/eitil_core/argument_helpers/args_to_h_bang.rb +17 -0
  14. data/eitil_core/lib/eitil_core/argument_helpers/args_to_ivars_bang.rb +15 -0
  15. data/eitil_core/lib/eitil_core/float/safe_to_i.rb +3 -0
  16. data/eitil_core/lib/eitil_core/lookups.rb +2 -1
  17. data/eitil_core/lib/eitil_core/lookups/gem_path.rb +10 -0
  18. data/eitil_core/lib/eitil_core/mocks.rb +6 -0
  19. data/eitil_core/lib/eitil_core/mocks/array.rb +39 -0
  20. data/eitil_core/lib/eitil_core/mocks/hash.rb +36 -0
  21. data/eitil_core/lib/eitil_core/mocks/string.rb +11 -0
  22. data/eitil_core/lib/eitil_core/railtie.rb +0 -3
  23. data/eitil_integrate/README.md +11 -0
  24. data/eitil_integrate/lib/eitil_integrate.rb +4 -0
  25. data/eitil_integrate/lib/eitil_integrate/application_exporter.rb +22 -0
  26. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum.rb +10 -0
  27. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/drop_data.rb +54 -0
  28. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/format_data.rb +27 -0
  29. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/initialize.rb +22 -0
  30. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/present_data.rb +31 -0
  31. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/reduce_data.rb +18 -0
  32. data/eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/sum_data.rb +56 -0
  33. data/eitil_integrate/lib/eitil_integrate/application_exporter/default_export.rb +43 -0
  34. data/eitil_integrate/lib/eitil_integrate/application_exporter/helpers.rb +50 -0
  35. data/eitil_integrate/lib/eitil_integrate/application_exporter/infos.rb +20 -0
  36. data/eitil_integrate/lib/eitil_integrate/application_exporter/initialize.rb +28 -0
  37. data/eitil_integrate/lib/eitil_integrate/application_exporter/lookups.rb +46 -0
  38. data/eitil_integrate/lib/eitil_integrate/application_exporter/selectors.rb +58 -0
  39. data/eitil_integrate/lib/eitil_integrate/application_exporter/setters.rb +27 -0
  40. data/eitil_integrate/lib/eitil_integrate/application_exporter/store_file.rb +34 -0
  41. data/eitil_integrate/lib/eitil_integrate/application_exporter/style_cells.rb +97 -0
  42. data/eitil_integrate/lib/eitil_integrate/application_exporter/validations.rb +28 -0
  43. data/eitil_integrate/lib/eitil_integrate/application_exporter/write_cells.rb +78 -0
  44. data/eitil_integrate/lib/eitil_integrate/application_exporter/write_messages.rb +18 -0
  45. data/eitil_integrate/lib/eitil_integrate/railtie.rb +0 -3
  46. data/eitil_store/lib/eitil_store/railtie.rb +0 -3
  47. data/eitil_support/lib/eitil_support/directory/lookups.rb +3 -0
  48. data/eitil_support/lib/eitil_support/railtie.rb +0 -3
  49. data/eitil_wrapper/README.md +24 -0
  50. data/eitil_wrapper/lib/eitil_wrapper.rb +2 -1
  51. data/eitil_wrapper/lib/eitil_wrapper/jobs/single_method_job.rb +3 -0
  52. data/eitil_wrapper/lib/eitil_wrapper/railtie.rb +24 -7
  53. data/eitil_wrapper/lib/eitil_wrapper/request_logger.rb +5 -0
  54. data/eitil_wrapper/lib/eitil_wrapper/request_logger/controller_mixin.rb +48 -0
  55. data/eitil_wrapper/lib/eitil_wrapper/request_logger/logger_job.rb +17 -0
  56. data/eitil_wrapper/lib/eitil_wrapper/scopes/default_scopes.rb +6 -0
  57. data/lib/eitil.rb +0 -1
  58. data/lib/eitil/all.rb +5 -5
  59. data/lib/eitil/railtie.rb +28 -1
  60. data/lib/eitil/version.rb +1 -1
  61. metadata +63 -4
  62. data/lib/eitil/engine.rb +0 -38
  63. data/lib/tasks/eitil_tasks.rake +0 -4
@@ -0,0 +1,5 @@
1
+
2
+ # require "eitil_wrapper/request_logger"
3
+
4
+ require_relative "request_logger/controller_mixin"
5
+ require_relative "request_logger/logger_job"
@@ -0,0 +1,48 @@
1
+
2
+ # require "eitil_wrapper/request_logger/controller_mixin"
3
+
4
+ require_relative "logger_job"
5
+
6
+ module EitilWrapper
7
+ module RequestLogger
8
+ module ControllerMixin
9
+
10
+ private
11
+
12
+ def log_request
13
+ $request_logger_path ||= "#{Rails.root}/log/request_logger.log"
14
+ EitilWrapper::RequestLogger::LoggerJob.perform_later(request_logger_object)
15
+ end
16
+
17
+ def request_logger_object
18
+
19
+ log_request = {
20
+ path: request.env["REQUEST_PATH"],
21
+ method: request.env["REQUEST_METHOD"],
22
+ query_str: request.env["QUERY_STRING"],
23
+ }
24
+
25
+ log_params = {
26
+ params: params.as_json
27
+ }
28
+
29
+ log_attributes = {
30
+ time: Time.now.strftime("%Y-%m-%d %H:%M:%S")
31
+ }
32
+
33
+ log = {
34
+ request: log_request,
35
+ params: log_params,
36
+ attributes: log_attributes
37
+ }
38
+
39
+ log_time = log_attributes[:time]
40
+ log_strf = log.deep_symbolize_keys.to_s
41
+ # log_strf may be hashed through eval(log_strf)
42
+
43
+ return log_strf
44
+ end
45
+
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,17 @@
1
+
2
+ # require "eitil_wrapper/request_logger/logger_job"
3
+
4
+ # require "eitil_wrapper/railtie" to run the dynamic dispatch as an init hook during boot
5
+ require "eitil_wrapper/railtie"
6
+
7
+ # ISSUE: this code is currently defined eitil_wrapper/railtie.rb, since module inclusion
8
+ # somehow leads to errors in the initialization process. Ideally, this code would be
9
+ # defined in eitil_wrapper/request_logger/logger_job.rb and dispatched in eitil_wrapper/railtie.rb
10
+
11
+ module EitilWrapper
12
+ module RequestLogger
13
+ module CreateLoggerJob
14
+
15
+ end
16
+ end
17
+ end
@@ -1,3 +1,9 @@
1
+
2
+ # require "eitil_wrapper/scopes/default_scopes"
3
+
4
+ # require "eitil_wrapper/railtie" to run the dynamic dispatch as an init hook during boot
5
+ require "eitil_wrapper/railtie"
6
+
1
7
  module EitilWrapper
2
8
  module Scopes
3
9
  module DefaultScopes
data/lib/eitil.rb CHANGED
@@ -1,5 +1,4 @@
1
1
  require "eitil/version"
2
- require "eitil/engine"
3
2
  require "eitil/railtie"
4
3
 
5
4
  module Eitil
data/lib/eitil/all.rb CHANGED
@@ -1,18 +1,18 @@
1
1
 
2
- require "rails"
3
2
  require "eitil"
3
+ require "pry"
4
4
 
5
5
  Eitil::Layers.each do |layer|
6
6
 
7
7
  begin
8
8
  require "#{layer}/railtie"
9
- puts "succesfully required #{layer}/railtie"
9
+ require "#{layer}"
10
+ puts "succesfully required #{layer} and #{layer}/railtie"
10
11
 
11
12
  rescue LoadError => e
12
- puts "failed to require #{layer}/railtie"
13
+ puts "failed to require #{layer} and #{layer}/railtie"
13
14
  puts "message: #{e.message}"
14
- puts "backtrace: #{e.backtrace}"
15
- binding.pry
15
+ # binding.pry
16
16
 
17
17
  end
18
18
  end
data/lib/eitil/railtie.rb CHANGED
@@ -1,6 +1,33 @@
1
+
2
+ require 'eitil/railtie'
3
+
4
+ # Constants
5
+
1
6
  module Eitil
2
7
 
3
- class Railtie < ::Rails::Railtie
8
+ Root = Gem.loaded_specs['eitil'].full_gem_path
9
+ Layers = %w( eitil_core eitil_support eitil_wrapper eitil_store eitil_integrate )
10
+
11
+ end
12
+
13
+
14
+ # Configuration
15
+
16
+ module Eitil
17
+
18
+ class Railtie < ::Rails::Railtie
19
+
20
+ # Add lib dirs to $LOAD_PATH, making them available in your main app.
21
+ Eitil::Layers.each do |layer|
22
+ $LOAD_PATH << "#{Eitil::Root}/#{layer}/lib"
23
+ end
24
+
25
+ end
26
+
27
+ mattr_accessor :get_controller_ivars_method
28
+
29
+ def self.set_config(&block)
30
+ yield self
4
31
  end
5
32
 
6
33
  end
data/lib/eitil/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Eitil
2
2
 
3
- VERSION = '1.0.2'
3
+ VERSION = '1.1.1'
4
4
 
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eitil
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jurriaan Schrofer
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-06-14 00:00:00.000000000 Z
11
+ date: 2021-06-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -38,6 +38,34 @@ dependencies:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
40
  version: 1.9.2
41
+ - !ruby/object:Gem::Dependency
42
+ name: binding_of_caller
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.0.0
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '='
53
+ - !ruby/object:Gem::Version
54
+ version: 1.0.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: rubyXL
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
41
69
  description: "Eitil (eitje utility) never stops increasing your life's efficacy and
42
70
  productivity, yay!\n Our gem currently exists of five seperate
43
71
  layers (Railties), which can be integrated as standalone gems. \n This
@@ -62,8 +90,13 @@ files:
62
90
  - eitil_core/lib/eitil_core/application_record/where_like.rb
63
91
  - eitil_core/lib/eitil_core/argument_helpers.rb
64
92
  - eitil_core/lib/eitil_core/argument_helpers/all_args_to_ivars.rb
93
+ - eitil_core/lib/eitil_core/argument_helpers/all_args_to_ivars_bang.rb
65
94
  - eitil_core/lib/eitil_core/argument_helpers/all_kwargs_to_ivars.rb
95
+ - eitil_core/lib/eitil_core/argument_helpers/all_kwargs_to_ivars_bang.rb
96
+ - eitil_core/lib/eitil_core/argument_helpers/args_to_h.rb
97
+ - eitil_core/lib/eitil_core/argument_helpers/args_to_h_bang.rb
66
98
  - eitil_core/lib/eitil_core/argument_helpers/args_to_ivars.rb
99
+ - eitil_core/lib/eitil_core/argument_helpers/args_to_ivars_bang.rb
67
100
  - eitil_core/lib/eitil_core/concerns.rb
68
101
  - eitil_core/lib/eitil_core/concerns/include_concerns_of.rb
69
102
  - eitil_core/lib/eitil_core/datetime.rb
@@ -76,6 +109,11 @@ files:
76
109
  - eitil_core/lib/eitil_core/hash/auto_dig.rb
77
110
  - eitil_core/lib/eitil_core/lookups.rb
78
111
  - eitil_core/lib/eitil_core/lookups/all_methods.rb
112
+ - eitil_core/lib/eitil_core/lookups/gem_path.rb
113
+ - eitil_core/lib/eitil_core/mocks.rb
114
+ - eitil_core/lib/eitil_core/mocks/array.rb
115
+ - eitil_core/lib/eitil_core/mocks/hash.rb
116
+ - eitil_core/lib/eitil_core/mocks/string.rb
79
117
  - eitil_core/lib/eitil_core/railtie.rb
80
118
  - eitil_core/lib/eitil_core/safe_executions.rb
81
119
  - eitil_core/lib/eitil_core/safe_executions/safe_call.rb
@@ -88,6 +126,26 @@ files:
88
126
  - eitil_core/lib/eitil_core/validations/run_validations.rb
89
127
  - eitil_integrate/README.md
90
128
  - eitil_integrate/lib/eitil_integrate.rb
129
+ - eitil_integrate/lib/eitil_integrate/application_exporter.rb
130
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum.rb
131
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/drop_data.rb
132
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/format_data.rb
133
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/initialize.rb
134
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/present_data.rb
135
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/reduce_data.rb
136
+ - eitil_integrate/lib/eitil_integrate/application_exporter/auto_sum/sum_data.rb
137
+ - eitil_integrate/lib/eitil_integrate/application_exporter/default_export.rb
138
+ - eitil_integrate/lib/eitil_integrate/application_exporter/helpers.rb
139
+ - eitil_integrate/lib/eitil_integrate/application_exporter/infos.rb
140
+ - eitil_integrate/lib/eitil_integrate/application_exporter/initialize.rb
141
+ - eitil_integrate/lib/eitil_integrate/application_exporter/lookups.rb
142
+ - eitil_integrate/lib/eitil_integrate/application_exporter/selectors.rb
143
+ - eitil_integrate/lib/eitil_integrate/application_exporter/setters.rb
144
+ - eitil_integrate/lib/eitil_integrate/application_exporter/store_file.rb
145
+ - eitil_integrate/lib/eitil_integrate/application_exporter/style_cells.rb
146
+ - eitil_integrate/lib/eitil_integrate/application_exporter/validations.rb
147
+ - eitil_integrate/lib/eitil_integrate/application_exporter/write_cells.rb
148
+ - eitil_integrate/lib/eitil_integrate/application_exporter/write_messages.rb
91
149
  - eitil_integrate/lib/eitil_integrate/railtie.rb
92
150
  - eitil_store/README.md
93
151
  - eitil_store/lib/eitil_store.rb
@@ -113,16 +171,17 @@ files:
113
171
  - eitil_wrapper/lib/eitil_wrapper/jobs/new_job_debugger.rb
114
172
  - eitil_wrapper/lib/eitil_wrapper/jobs/single_method_job.rb
115
173
  - eitil_wrapper/lib/eitil_wrapper/railtie.rb
174
+ - eitil_wrapper/lib/eitil_wrapper/request_logger.rb
175
+ - eitil_wrapper/lib/eitil_wrapper/request_logger/controller_mixin.rb
176
+ - eitil_wrapper/lib/eitil_wrapper/request_logger/logger_job.rb
116
177
  - eitil_wrapper/lib/eitil_wrapper/routes.rb
117
178
  - eitil_wrapper/lib/eitil_wrapper/routes/extended_resources.rb
118
179
  - eitil_wrapper/lib/eitil_wrapper/scopes.rb
119
180
  - eitil_wrapper/lib/eitil_wrapper/scopes/default_scopes.rb
120
181
  - lib/eitil.rb
121
182
  - lib/eitil/all.rb
122
- - lib/eitil/engine.rb
123
183
  - lib/eitil/railtie.rb
124
184
  - lib/eitil/version.rb
125
- - lib/tasks/eitil_tasks.rake
126
185
  homepage: https://github.com/eitje-app/eitil_engine
127
186
  licenses:
128
187
  - MIT
data/lib/eitil/engine.rb DELETED
@@ -1,38 +0,0 @@
1
-
2
- require 'eitil/railtie'
3
-
4
-
5
- # Constants
6
-
7
- module Eitil
8
-
9
- # preferably find a less hacky way to retrieve the gem's root path, perhaps with Kernel#pwd?
10
- Root = $LOAD_PATH.find { |x| x.match /eitil/ }.chomp('/lib')
11
- Layers = %w( eitil_core eitil_support eitil_wrapper eitil_store eitil_integrate )
12
-
13
- end
14
-
15
-
16
- # Configuration
17
-
18
- module Eitil
19
-
20
- class Engine < ::Rails::Engine
21
-
22
- isolate_namespace Eitil
23
- config.generators.api_only = true
24
-
25
- # Add lib dirs to $LOAD_PATH, making them available in your main app.
26
- Eitil::Layers.each do |layer|
27
- $LOAD_PATH << "#{Eitil::Root}/#{layer}/lib"
28
- end
29
-
30
- end
31
-
32
- mattr_accessor :get_controller_ivars_method
33
-
34
- def self.set_config(&block)
35
- yield self
36
- end
37
-
38
- end
@@ -1,4 +0,0 @@
1
- # desc "Explaining what the task does"
2
- # task :eitil do
3
- # # Task goes here
4
- # end