makit 0.0.111 → 0.0.126

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.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/lib/makit/cli/repository_commands.rb +1 -1
  3. data/lib/makit/commands/middleware/cache.rb +3 -3
  4. data/lib/makit/commands/middleware/command_logger.rb +33 -45
  5. data/lib/makit/commands/request.rb +63 -1
  6. data/lib/makit/commands/runner.rb +56 -5
  7. data/lib/makit/commands/strategies/base.rb +13 -2
  8. data/lib/makit/commands/strategies/synchronous.rb +11 -6
  9. data/lib/makit/commands.rb +8 -0
  10. data/lib/makit/configuration/gitlab_helper.rb +0 -2
  11. data/lib/makit/configuration/project.rb +48 -8
  12. data/lib/makit/configuration/step.rb +3 -3
  13. data/lib/makit/content/default_gitignore.txt +226 -0
  14. data/lib/makit/directories.rb +3 -4
  15. data/lib/makit/docs/files.rb +1 -1
  16. data/lib/makit/docs/rake.rb +1 -1
  17. data/lib/makit/dotnet/cli.rb +69 -65
  18. data/lib/makit/dotnet/project.rb +71 -7
  19. data/lib/makit/examples/runner.rb +2 -2
  20. data/lib/makit/logging/configuration.rb +9 -6
  21. data/lib/makit/logging/format_registry.rb +84 -84
  22. data/lib/makit/logging/formatters/console_formatter.rb +22 -9
  23. data/lib/makit/logging/log_request.rb +6 -2
  24. data/lib/makit/logging/logger.rb +45 -5
  25. data/lib/makit/logging/sinks/base.rb +91 -91
  26. data/lib/makit/logging/sinks/structured.rb +123 -129
  27. data/lib/makit/logging/sinks/unified_file_sink.rb +39 -46
  28. data/lib/makit/logging.rb +45 -1
  29. data/lib/makit/mp/project_mp.rb +6 -6
  30. data/lib/makit/mp/string_mp.rb +108 -265
  31. data/lib/makit/serializer.rb +14 -1
  32. data/lib/makit/services/builder.rb +5 -5
  33. data/lib/makit/services/repository_manager.rb +8 -6
  34. data/lib/makit/setup/classlib.rb +44 -7
  35. data/lib/makit/setup/gem.rb +268 -250
  36. data/lib/makit/setup/razorclasslib.rb +91 -0
  37. data/lib/makit/setup/runner.rb +36 -22
  38. data/lib/makit/setup.rb +5 -0
  39. data/lib/makit/symbols.rb +10 -1
  40. data/lib/makit/tasks/at_exit.rb +3 -1
  41. data/lib/makit/tasks/build.rb +16 -12
  42. data/lib/makit/tasks/clean.rb +2 -0
  43. data/lib/makit/tasks/configure.rb +10 -0
  44. data/lib/makit/tasks/format.rb +10 -0
  45. data/lib/makit/tasks/hook_manager.rb +160 -8
  46. data/lib/makit/tasks/init.rb +2 -0
  47. data/lib/makit/tasks/integrate.rb +17 -3
  48. data/lib/makit/tasks/pull_incoming.rb +6 -5
  49. data/lib/makit/tasks/setup.rb +10 -3
  50. data/lib/makit/tasks/sync.rb +13 -7
  51. data/lib/makit/tasks/tag.rb +16 -0
  52. data/lib/makit/tasks/task_monkey_patch.rb +58 -56
  53. data/lib/makit/tasks/test.rb +22 -0
  54. data/lib/makit/tasks/update.rb +18 -0
  55. data/lib/makit/tasks.rb +20 -5
  56. data/lib/makit/v1/makit.v1_pb.rb +1 -0
  57. data/lib/makit/version.rb +1 -1
  58. data/lib/makit/version_util.rb +21 -0
  59. data/lib/makit copy.rb +44 -0
  60. data/lib/makit.rb +31 -0
  61. metadata +118 -13
  62. data/lib/makit/command_runner.rb +0 -463
  63. data/lib/makit/commands/compatibility.rb +0 -365
  64. data/lib/makit/commands/middleware/unified_logger.rb +0 -243
  65. data/lib/makit/task_hooks.rb +0 -125
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "../setup/runner"
4
+
5
+ if File.exist?(".makit.json")
6
+ desc "Test project artifacts.."
7
+ task :test do
8
+ Makit::Logging.default_logger.task_start("test")
9
+ # load the default project configuration
10
+ # puts "loading project configuration"
11
+ project = Makit::Configuration::Project.default
12
+
13
+ # if the project has a build step, run the commands
14
+ test_step = project.steps.find { |step| step.name == "test" }
15
+ test_step&.commands&.each do |command|
16
+ request = Makit::Commands::Request.from_string(command)
17
+ Makit::Commands::Runner.default.execute(request)
18
+ end
19
+ end
20
+ else
21
+ Makit::Logging.default_logger.debug("Project not configured, skipping setup task definition")
22
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ desc "Update project dependencies"
4
+ task :update do
5
+ "bundle update".run if File.exist?("Gemfile")
6
+ # are there any *.sln files?
7
+ Dir.glob("**/*.sln").each do |sln_file|
8
+ "dotnet sln migrate #{sln_file}".run
9
+ FileUtils.rm_f(sln_file) if File.exist?(sln_file.gsub(".sln", ".slnx"))
10
+ end
11
+ "dotnet tool update --global dotnet-outdated-tool".run
12
+ Dir.glob("**/*.slnx").each do |slnx_file|
13
+ "dotnet outdated #{slnx_file} --upgrade:Auto".run
14
+ end
15
+ Dir.glob("**/*.csproj").each do |csproj_file|
16
+ "dotnet outdated #{csproj_file} --upgrade:Auto".run
17
+ end
18
+ end
data/lib/makit/tasks.rb CHANGED
@@ -1,5 +1,20 @@
1
- # frozen_string_literal: true
2
-
3
- # Load all task-related modules
4
- require_relative "tasks/hook_manager"
5
- require_relative "tasks/task_monkey_patch"
1
+ # frozen_string_literal: true
2
+
3
+ # Load all task-related modules
4
+ require_relative "tasks/hook_manager"
5
+ require_relative "tasks/task_monkey_patch"
6
+
7
+ require_relative "tasks/build"
8
+ require_relative "tasks/clean"
9
+ require_relative "tasks/configure"
10
+ require_relative "tasks/integrate"
11
+ require_relative "tasks/tag"
12
+ require_relative "tasks/pull_incoming"
13
+ # require_relative "tasks/publish"
14
+ # require_relative "tasks/install"
15
+ require_relative "tasks/sync"
16
+ # require_relative "tasks/configure"
17
+ require_relative "tasks/setup"
18
+ require_relative "tasks/test"
19
+ require_relative "tasks/format"
20
+ require_relative "tasks/update"
@@ -1,4 +1,5 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  # Generated by the protocol buffer compiler. DO NOT EDIT!
3
4
  # source: lib/makit/v1/makit.v1.proto
4
5
 
data/lib/makit/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Makit
4
- VERSION = "0.0.111"
4
+ VERSION = "0.0.126"
5
5
  end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Makit
4
+ # Version utility class for handling version comparisons
5
+ class Version
6
+ # Get the highest version from a list of version strings
7
+ #
8
+ # @param versions [Array<String>] array of version strings
9
+ # @return [String, nil] highest version string or nil if empty
10
+ def self.get_highest_version(versions)
11
+ return nil if versions.nil? || versions.empty?
12
+
13
+ # Sort versions using Gem::Version for proper semantic versioning
14
+ sorted_versions = versions.sort_by { |v| Gem::Version.new(v) }
15
+ sorted_versions.last
16
+ rescue ArgumentError
17
+ # If any version is invalid, fall back to string sorting
18
+ versions.max
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ begin
4
+ require "colorize"
5
+ rescue LoadError
6
+ # colorize gem not available, define a no-op colorize method
7
+ class String
8
+ def colorize(*_args)
9
+ self
10
+ end
11
+ end
12
+ end
13
+
14
+ require_relative "makit/version"
15
+
16
+ # Load essential modules for Rakefile
17
+ require_relative "makit/version_util"
18
+ require_relative "makit/configuration"
19
+ require_relative "makit/logging"
20
+ require_relative "makit/commands"
21
+ require_relative "makit/serializer"
22
+ require_relative "makit/humanize"
23
+ require_relative "makit/directories"
24
+ require_relative "makit/files"
25
+ require_relative "makit/tasks"
26
+ require_relative "makit/environment"
27
+ require_relative "makit/process"
28
+ require_relative "makit/mp/string_mp"
29
+ require_relative "makit/git"
30
+ require_relative "makit/protoc"
31
+
32
+ module Makit
33
+ class Error < StandardError; end
34
+
35
+ # Your code goes here...
36
+ end
37
+
38
+ # Commands::Runner is now the primary command execution system
39
+
40
+ # Additional constants needed by Rakefile
41
+ Makit::GIT_FILE_INFOS = Makit::Git::Repository.get_file_infos
42
+ Makit::IS_READ_ONLY = Makit::Git::Repository.read_only?
43
+ Makit::IS_GIT_REPO = Makit::Git::Repository.git_repo?
44
+ Makit::PROJECT = Makit::Configuration::Project.default
data/lib/makit.rb CHANGED
@@ -1,8 +1,39 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "colorize"
4
+
5
+ # Set default LOG_LEVEL if not already set
6
+ ENV["LOG_LEVEL"] ||= "info"
7
+
3
8
  require_relative "makit/version"
9
+ require_relative "makit/dotnet"
10
+
11
+ # Load essential modules for Rakefile
12
+ require_relative "makit/version_util"
13
+ require_relative "makit/configuration"
14
+ require_relative "makit/logging"
15
+ require_relative "makit/commands"
16
+ require_relative "makit/serializer"
17
+ require_relative "makit/humanize"
18
+ require_relative "makit/directories"
19
+ require_relative "makit/files"
20
+ require_relative "makit/tasks"
21
+ require_relative "makit/environment"
22
+ require_relative "makit/process"
23
+ require_relative "makit/mp/string_mp"
24
+ require_relative "makit/git"
25
+ require_relative "makit/protoc"
4
26
 
5
27
  module Makit
6
28
  class Error < StandardError; end
29
+
7
30
  # Your code goes here...
8
31
  end
32
+
33
+ # Commands::Runner is now the primary command execution system
34
+
35
+ # Additional constants needed by Rakefile
36
+ Makit::GIT_FILE_INFOS = Makit::Git::Repository.get_file_infos
37
+ Makit::IS_READ_ONLY = Makit::Git::Repository.read_only?
38
+ Makit::IS_GIT_REPO = Makit::Git::Repository.git_repo?
39
+ Makit::PROJECT = Makit::Configuration::Project.default
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: makit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.111
4
+ version: 0.0.126
5
5
  platform: ruby
6
6
  authors:
7
7
  - Your Name
@@ -9,34 +9,76 @@ bindir: exe
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: colorize
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '0.8'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '0.8'
26
+ - !ruby/object:Gem::Dependency
27
+ name: google-protobuf
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - "~>"
31
+ - !ruby/object:Gem::Version
32
+ version: '3.0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '3.0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: logger
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '1.0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '1.0'
12
54
  - !ruby/object:Gem::Dependency
13
55
  name: bundler
14
56
  requirement: !ruby/object:Gem::Requirement
15
57
  requirements:
16
58
  - - "~>"
17
59
  - !ruby/object:Gem::Version
18
- version: '2.0'
60
+ version: '2.6'
19
61
  type: :development
20
62
  prerelease: false
21
63
  version_requirements: !ruby/object:Gem::Requirement
22
64
  requirements:
23
65
  - - "~>"
24
66
  - !ruby/object:Gem::Version
25
- version: '2.0'
67
+ version: '2.6'
26
68
  - !ruby/object:Gem::Dependency
27
- name: rake
69
+ name: fiddle
28
70
  requirement: !ruby/object:Gem::Requirement
29
71
  requirements:
30
72
  - - "~>"
31
73
  - !ruby/object:Gem::Version
32
- version: '13.0'
74
+ version: '1.0'
33
75
  type: :development
34
76
  prerelease: false
35
77
  version_requirements: !ruby/object:Gem::Requirement
36
78
  requirements:
37
79
  - - "~>"
38
80
  - !ruby/object:Gem::Version
39
- version: '13.0'
81
+ version: '1.0'
40
82
  - !ruby/object:Gem::Dependency
41
83
  name: minitest
42
84
  requirement: !ruby/object:Gem::Requirement
@@ -51,6 +93,62 @@ dependencies:
51
93
  - - "~>"
52
94
  - !ruby/object:Gem::Version
53
95
  version: '5.0'
96
+ - !ruby/object:Gem::Dependency
97
+ name: rake
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - "~>"
101
+ - !ruby/object:Gem::Version
102
+ version: '13.0'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '13.0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: rubocop
112
+ requirement: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - "~>"
115
+ - !ruby/object:Gem::Version
116
+ version: '1.0'
117
+ type: :development
118
+ prerelease: false
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: '1.0'
124
+ - !ruby/object:Gem::Dependency
125
+ name: rubocop-minitest
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '0.35'
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '0.35'
138
+ - !ruby/object:Gem::Dependency
139
+ name: rubocop-rake
140
+ requirement: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - "~>"
143
+ - !ruby/object:Gem::Version
144
+ version: '0.6'
145
+ type: :development
146
+ prerelease: false
147
+ version_requirements: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - "~>"
150
+ - !ruby/object:Gem::Version
151
+ version: '0.6'
54
152
  description: A Ruby gem description
55
153
  email:
56
154
  - your.email@example.com
@@ -60,6 +158,7 @@ extra_rdoc_files: []
60
158
  files:
61
159
  - README.md
62
160
  - exe/makit
161
+ - lib/makit copy.rb
63
162
  - lib/makit.rb
64
163
  - lib/makit/apache.rb
65
164
  - lib/makit/cli/build_commands.rb
@@ -84,14 +183,11 @@ files:
84
183
  - lib/makit/cli/project_commands.rb
85
184
  - lib/makit/cli/repository_commands.rb
86
185
  - lib/makit/cli/utility_commands.rb
87
- - lib/makit/command_runner.rb
88
186
  - lib/makit/commands.rb
89
- - lib/makit/commands/compatibility.rb
90
187
  - lib/makit/commands/factory.rb
91
188
  - lib/makit/commands/middleware/base.rb
92
189
  - lib/makit/commands/middleware/cache.rb
93
190
  - lib/makit/commands/middleware/command_logger.rb
94
- - lib/makit/commands/middleware/unified_logger.rb
95
191
  - lib/makit/commands/middleware/validator.rb
96
192
  - lib/makit/commands/request.rb
97
193
  - lib/makit/commands/result.rb
@@ -104,6 +200,7 @@ files:
104
200
  - lib/makit/configuration/rakefile_helper.rb
105
201
  - lib/makit/configuration/step.rb
106
202
  - lib/makit/content/default_gitignore.rb
203
+ - lib/makit/content/default_gitignore.txt
107
204
  - lib/makit/content/default_rakefile.rb
108
205
  - lib/makit/content/gem_rakefile.rb
109
206
  - lib/makit/context.rb
@@ -169,37 +266,45 @@ files:
169
266
  - lib/makit/services/error_handler.rb
170
267
  - lib/makit/services/repository_manager.rb
171
268
  - lib/makit/services/validator.rb
269
+ - lib/makit/setup.rb
172
270
  - lib/makit/setup/classlib.rb
173
271
  - lib/makit/setup/gem.rb
272
+ - lib/makit/setup/razorclasslib.rb
174
273
  - lib/makit/setup/runner.rb
175
274
  - lib/makit/show.rb
176
275
  - lib/makit/storage.rb
177
276
  - lib/makit/symbols.rb
178
- - lib/makit/task_hooks.rb
179
277
  - lib/makit/task_info.rb
180
278
  - lib/makit/tasks.rb
181
279
  - lib/makit/tasks/at_exit.rb
182
280
  - lib/makit/tasks/build.rb
183
281
  - lib/makit/tasks/clean.rb
282
+ - lib/makit/tasks/configure.rb
283
+ - lib/makit/tasks/format.rb
184
284
  - lib/makit/tasks/hook_manager.rb
185
285
  - lib/makit/tasks/init.rb
186
286
  - lib/makit/tasks/integrate.rb
187
287
  - lib/makit/tasks/pull_incoming.rb
188
288
  - lib/makit/tasks/setup.rb
189
289
  - lib/makit/tasks/sync.rb
290
+ - lib/makit/tasks/tag.rb
190
291
  - lib/makit/tasks/task_monkey_patch.rb
292
+ - lib/makit/tasks/test.rb
293
+ - lib/makit/tasks/update.rb
191
294
  - lib/makit/test_cache.rb
192
295
  - lib/makit/tree.rb
193
296
  - lib/makit/v1/makit.v1_pb.rb
194
297
  - lib/makit/v1/makit.v1_services_pb.rb
195
298
  - lib/makit/version.rb
299
+ - lib/makit/version_util.rb
196
300
  - lib/makit/wix.rb
197
301
  - lib/makit/yaml.rb
198
302
  - lib/makit/zip.rb
199
303
  homepage: https://github.com/yourusername/makit
200
304
  licenses:
201
305
  - MIT
202
- metadata: {}
306
+ metadata:
307
+ rubygems_mfa_required: 'true'
203
308
  rdoc_options: []
204
309
  require_paths:
205
310
  - lib
@@ -207,14 +312,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
207
312
  requirements:
208
313
  - - ">="
209
314
  - !ruby/object:Gem::Version
210
- version: '0'
315
+ version: '3.0'
211
316
  required_rubygems_version: !ruby/object:Gem::Requirement
212
317
  requirements:
213
318
  - - ">="
214
319
  - !ruby/object:Gem::Version
215
320
  version: '0'
216
321
  requirements: []
217
- rubygems_version: 3.6.9
322
+ rubygems_version: 3.7.0
218
323
  specification_version: 4
219
324
  summary: A Ruby gem
220
325
  test_files: []