raykit 0.0.319 → 0.0.320
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/lib/raykit/command.rb +63 -62
 - data/lib/raykit/console.rb +62 -63
 - data/lib/raykit/dir.rb +6 -6
 - data/lib/raykit/dotnet.rb +1 -1
 - data/lib/raykit/environment.rb +19 -19
 - data/lib/raykit/git/directory.rb +18 -18
 - data/lib/raykit/git/files.rb +5 -4
 - data/lib/raykit/git/repositories.rb +7 -7
 - data/lib/raykit/git/repository.rb +10 -10
 - data/lib/raykit/log.rb +8 -6
 - data/lib/raykit/logevent.rb +13 -12
 - data/lib/raykit/logging.rb +7 -7
 - data/lib/raykit/msbuild.rb +14 -7
 - data/lib/raykit/project.rb +16 -17
 - data/lib/raykit/rake.rb +6 -6
 - data/lib/raykit/runner.rb +10 -10
 - data/lib/raykit/secrets.rb +7 -7
 - data/lib/raykit/sourceImport.rb +16 -16
 - data/lib/raykit/sourceImports.rb +4 -4
 - data/lib/raykit/string.rb +3 -3
 - data/lib/raykit/tasks.rb +26 -26
 - data/lib/raykit/text.rb +2 -4
 - data/lib/raykit/timer.rb +2 -2
 - data/lib/raykit/version.rb +12 -12
 - data/lib/raykit/vstest.rb +8 -8
 - data/lib/raykit.rb +7 -7
 - metadata +2 -2
 
    
        data/lib/raykit/secrets.rb
    CHANGED
    
    | 
         @@ -1,13 +1,13 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            require  
     | 
| 
      
 3 
     | 
    
         
            +
            require "time"
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Raykit
         
     | 
| 
       6 
6 
     | 
    
         
             
              # Provides functionality to record the time execution times
         
     | 
| 
       7 
7 
     | 
    
         
             
              class Secrets < Hash
         
     | 
| 
       8 
8 
     | 
    
         
             
                def initialize
         
     | 
| 
       9 
     | 
    
         
            -
                  if ENV.key?( 
     | 
| 
       10 
     | 
    
         
            -
                    secrets_file = ENV[ 
     | 
| 
      
 9 
     | 
    
         
            +
                  if ENV.key?("RAYKIT_SECRETS_PATH")
         
     | 
| 
      
 10 
     | 
    
         
            +
                    secrets_file = ENV["RAYKIT_SECRETS_PATH"]
         
     | 
| 
       11 
11 
     | 
    
         
             
                    if File.exist?(secrets_file)
         
     | 
| 
       12 
12 
     | 
    
         
             
                      text = IO.read(secrets_file)
         
     | 
| 
       13 
13 
     | 
    
         
             
                      if text.length > 7
         
     | 
| 
         @@ -23,15 +23,15 @@ module Raykit 
     | 
|
| 
       23 
23 
     | 
    
         
             
                def hide(text)
         
     | 
| 
       24 
24 
     | 
    
         
             
                  hidden = text
         
     | 
| 
       25 
25 
     | 
    
         
             
                  each do |_k, v|
         
     | 
| 
       26 
     | 
    
         
            -
                    hidden = hidden.gsub(v,  
     | 
| 
      
 26 
     | 
    
         
            +
                    hidden = hidden.gsub(v, "****") if !v.nil? && v.length.positive?
         
     | 
| 
       27 
27 
     | 
    
         
             
                  end
         
     | 
| 
       28 
28 
     | 
    
         
             
                  hidden
         
     | 
| 
       29 
29 
     | 
    
         
             
                end
         
     | 
| 
       30 
30 
     | 
    
         | 
| 
       31 
31 
     | 
    
         
             
                def save
         
     | 
| 
       32 
     | 
    
         
            -
                  if ENV.key?( 
     | 
| 
       33 
     | 
    
         
            -
                    secrets_file = ENV[ 
     | 
| 
       34 
     | 
    
         
            -
                    File.open(secrets_file,  
     | 
| 
      
 32 
     | 
    
         
            +
                  if ENV.key?("RAYKIT_SECRETS_PATH")
         
     | 
| 
      
 33 
     | 
    
         
            +
                    secrets_file = ENV["RAYKIT_SECRETS_PATH"]
         
     | 
| 
      
 34 
     | 
    
         
            +
                    File.open(secrets_file, "w") { |f| f.puts to_json }
         
     | 
| 
       35 
35 
     | 
    
         
             
                  end
         
     | 
| 
       36 
36 
     | 
    
         
             
                end
         
     | 
| 
       37 
37 
     | 
    
         
             
              end
         
     | 
    
        data/lib/raykit/sourceImport.rb
    CHANGED
    
    | 
         @@ -3,36 +3,36 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            module Raykit
         
     | 
| 
       4 
4 
     | 
    
         
             
              class SourceImport < Hash
         
     | 
| 
       5 
5 
     | 
    
         
             
                def initialize(url, source, glob, target, commit)
         
     | 
| 
       6 
     | 
    
         
            -
                  self[ 
     | 
| 
       7 
     | 
    
         
            -
                  self[ 
     | 
| 
       8 
     | 
    
         
            -
                  self[ 
     | 
| 
       9 
     | 
    
         
            -
                  self[ 
     | 
| 
       10 
     | 
    
         
            -
                  self[ 
     | 
| 
      
 6 
     | 
    
         
            +
                  self["remote"] = url
         
     | 
| 
      
 7 
     | 
    
         
            +
                  self["source"] = source
         
     | 
| 
      
 8 
     | 
    
         
            +
                  self["glob"] = glob
         
     | 
| 
      
 9 
     | 
    
         
            +
                  self["target"] = target
         
     | 
| 
      
 10 
     | 
    
         
            +
                  self["commit"] = commit
         
     | 
| 
       11 
11 
     | 
    
         
             
                end
         
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
                def remote
         
     | 
| 
       14 
     | 
    
         
            -
                  self[ 
     | 
| 
      
 14 
     | 
    
         
            +
                  self["remote"]
         
     | 
| 
       15 
15 
     | 
    
         
             
                end
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
                def source
         
     | 
| 
       18 
     | 
    
         
            -
                  self[ 
     | 
| 
      
 18 
     | 
    
         
            +
                  self["source"]
         
     | 
| 
       19 
19 
     | 
    
         
             
                end
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
                def target
         
     | 
| 
       22 
     | 
    
         
            -
                  self[ 
     | 
| 
      
 22 
     | 
    
         
            +
                  self["target"]
         
     | 
| 
       23 
23 
     | 
    
         
             
                end
         
     | 
| 
       24 
24 
     | 
    
         | 
| 
       25 
25 
     | 
    
         
             
                def glob
         
     | 
| 
       26 
     | 
    
         
            -
                  self[ 
     | 
| 
      
 26 
     | 
    
         
            +
                  self["glob"]
         
     | 
| 
       27 
27 
     | 
    
         
             
                end
         
     | 
| 
       28 
28 
     | 
    
         | 
| 
       29 
29 
     | 
    
         
             
                def update
         
     | 
| 
       30 
     | 
    
         
            -
                  work = self[ 
     | 
| 
      
 30 
     | 
    
         
            +
                  work = self["remote"].work_dir
         
     | 
| 
       31 
31 
     | 
    
         
             
                  work_parent = File.dirname(work)
         
     | 
| 
       32 
32 
     | 
    
         
             
                  FileUtils.mkdir_p(work_parent) unless Dir.exist?(work_parent)
         
     | 
| 
       33 
33 
     | 
    
         
             
                  if Dir.exist?(work)
         
     | 
| 
       34 
34 
     | 
    
         
             
                    Dir.chdir(work) do
         
     | 
| 
       35 
     | 
    
         
            -
                      cmd = Command.new( 
     | 
| 
      
 35 
     | 
    
         
            +
                      cmd = Command.new("git pull")
         
     | 
| 
       36 
36 
     | 
    
         
             
                    end
         
     | 
| 
       37 
37 
     | 
    
         
             
                  else
         
     | 
| 
       38 
38 
     | 
    
         
             
                    PROJECT.run("git clone #{remote} #{work}")
         
     | 
| 
         @@ -41,22 +41,22 @@ module Raykit 
     | 
|
| 
       41 
41 
     | 
    
         
             
                  Dir.chdir(work) do
         
     | 
| 
       42 
42 
     | 
    
         
             
                    text = `git log -n 1`
         
     | 
| 
       43 
43 
     | 
    
         
             
                    scan = text.scan(/commit (\w+)\s/)
         
     | 
| 
       44 
     | 
    
         
            -
                    self[ 
     | 
| 
      
 44 
     | 
    
         
            +
                    self["commit"] = scan[0][0].to_s
         
     | 
| 
       45 
45 
     | 
    
         
             
                  end
         
     | 
| 
       46 
46 
     | 
    
         
             
                end
         
     | 
| 
       47 
47 
     | 
    
         | 
| 
       48 
48 
     | 
    
         
             
                def copy
         
     | 
| 
       49 
49 
     | 
    
         
             
                  if target.length.zero?
         
     | 
| 
       50 
     | 
    
         
            -
                    puts  
     | 
| 
      
 50 
     | 
    
         
            +
                    puts "target has not been specified"
         
     | 
| 
       51 
51 
     | 
    
         
             
                  else
         
     | 
| 
       52 
52 
     | 
    
         
             
                    FileUtils.remove_dir(target) if Dir.exist?(target)
         
     | 
| 
       53 
53 
     | 
    
         
             
                    count = 0
         
     | 
| 
       54 
54 
     | 
    
         
             
                    source_names = []
         
     | 
| 
       55 
     | 
    
         
            -
                    work = self[ 
     | 
| 
      
 55 
     | 
    
         
            +
                    work = self["remote"].work_dir
         
     | 
| 
       56 
56 
     | 
    
         
             
                    Dir.chdir(work) do
         
     | 
| 
       57 
     | 
    
         
            -
                      cmd = Command.new( 
     | 
| 
      
 57 
     | 
    
         
            +
                      cmd = Command.new("rake clean") if File.exist?("rakefile.rb")
         
     | 
| 
       58 
58 
     | 
    
         
             
                      Dir.chdir(source) do
         
     | 
| 
       59 
     | 
    
         
            -
                        source_names = Dir.glob(self[ 
     | 
| 
      
 59 
     | 
    
         
            +
                        source_names = Dir.glob(self["glob"])
         
     | 
| 
       60 
60 
     | 
    
         
             
                      end
         
     | 
| 
       61 
61 
     | 
    
         
             
                    end
         
     | 
| 
       62 
62 
     | 
    
         
             
                    source_names.each do |source_name|
         
     | 
    
        data/lib/raykit/sourceImports.rb
    CHANGED
    
    | 
         @@ -4,7 +4,7 @@ module Raykit 
     | 
|
| 
       4 
4 
     | 
    
         
             
              class SourceImports < Array
         
     | 
| 
       5 
5 
     | 
    
         
             
                def initialize(urls)
         
     | 
| 
       6 
6 
     | 
    
         
             
                  urls.each do |url|
         
     | 
| 
       7 
     | 
    
         
            -
                    self << SourceImport.new(url,  
     | 
| 
      
 7 
     | 
    
         
            +
                    self << SourceImport.new(url, "src", "**/*.cs", "dep", "")
         
     | 
| 
       8 
8 
     | 
    
         
             
                  end
         
     | 
| 
       9 
9 
     | 
    
         
             
                end
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
         @@ -24,7 +24,7 @@ module Raykit 
     | 
|
| 
       24 
24 
     | 
    
         
             
                end
         
     | 
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         
             
                def save(filename)
         
     | 
| 
       27 
     | 
    
         
            -
                  File.open(filename,  
     | 
| 
      
 27 
     | 
    
         
            +
                  File.open(filename, "w") do |f|
         
     | 
| 
       28 
28 
     | 
    
         
             
                    f.write(JSON.pretty_generate(self))
         
     | 
| 
       29 
29 
     | 
    
         
             
                  end
         
     | 
| 
       30 
30 
     | 
    
         
             
                end
         
     | 
| 
         @@ -33,8 +33,8 @@ module Raykit 
     | 
|
| 
       33 
33 
     | 
    
         
             
                  sourceImports = SourceImports.new([])
         
     | 
| 
       34 
34 
     | 
    
         
             
                  array = JSON.parse(IO.read(filename))
         
     | 
| 
       35 
35 
     | 
    
         
             
                  array.each do |hash|
         
     | 
| 
       36 
     | 
    
         
            -
                    sourceImport = SourceImport.new(hash[ 
     | 
| 
       37 
     | 
    
         
            -
                                                    hash[ 
     | 
| 
      
 36 
     | 
    
         
            +
                    sourceImport = SourceImport.new(hash["remote"], hash["source"], hash["glob"], hash["target"],
         
     | 
| 
      
 37 
     | 
    
         
            +
                                                    hash["commit"])
         
     | 
| 
       38 
38 
     | 
    
         
             
                    sourceImports << sourceImport
         
     | 
| 
       39 
39 
     | 
    
         
             
                  end
         
     | 
| 
       40 
40 
     | 
    
         
             
                  sourceImports
         
     | 
    
        data/lib/raykit/string.rb
    CHANGED
    
    | 
         @@ -1,11 +1,11 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            require_relative( 
     | 
| 
      
 3 
     | 
    
         
            +
            require_relative("./environment")
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            class String
         
     | 
| 
       6 
6 
     | 
    
         
             
              def work_dir
         
     | 
| 
       7 
     | 
    
         
            -
                rel_name = sub( 
     | 
| 
       8 
     | 
    
         
            -
                "#{Raykit::Environment.get_dev_dir( 
     | 
| 
      
 7 
     | 
    
         
            +
                rel_name = sub("https://", "").gsub("http://", "").gsub(".git", "")
         
     | 
| 
      
 8 
     | 
    
         
            +
                "#{Raykit::Environment.get_dev_dir("work")}/#{rel_name}"
         
     | 
| 
       9 
9 
     | 
    
         
             
              end
         
     | 
| 
       10 
10 
     | 
    
         | 
| 
       11 
11 
     | 
    
         
             
              def latest_commit
         
     | 
    
        data/lib/raykit/tasks.rb
    CHANGED
    
    | 
         @@ -1,33 +1,33 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            desc  
     | 
| 
      
 3 
     | 
    
         
            +
            desc "Display project information"
         
     | 
| 
       4 
4 
     | 
    
         
             
            task :info do
         
     | 
| 
       5 
5 
     | 
    
         
             
              PROJECT.info
         
     | 
| 
       6 
6 
     | 
    
         
             
            end
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
     | 
    
         
            -
            desc  
     | 
| 
      
 8 
     | 
    
         
            +
            desc "integrate changes into the git repository"
         
     | 
| 
       9 
9 
     | 
    
         
             
            task :integrate do
         
     | 
| 
       10 
     | 
    
         
            -
              puts Rainbow( 
     | 
| 
      
 10 
     | 
    
         
            +
              puts Rainbow(":integrate").blue.bright
         
     | 
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
              git_dir = Raykit::Git::Directory.new(Rake.application.original_dir)
         
     | 
| 
       13 
13 
     | 
    
         
             
              if git_dir.detached?
         
     | 
| 
       14 
     | 
    
         
            -
                puts  
     | 
| 
      
 14 
     | 
    
         
            +
                puts "detached head state, skipping integrate operations"
         
     | 
| 
       15 
15 
     | 
    
         
             
              else
         
     | 
| 
       16 
16 
     | 
    
         
             
                if PROJECT.outstanding_commit?
         
     | 
| 
       17 
     | 
    
         
            -
                  Rake::Task[ 
     | 
| 
      
 17 
     | 
    
         
            +
                  Rake::Task["test"].invoke if Rake::Task.task_defined?("test")
         
     | 
| 
       18 
18 
     | 
    
         
             
                else
         
     | 
| 
       19 
     | 
    
         
            -
                  puts  
     | 
| 
      
 19 
     | 
    
         
            +
                  puts "no outstanding commits detected"
         
     | 
| 
       20 
20 
     | 
    
         
             
                end
         
     | 
| 
       21 
21 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
                if !File.exist?( 
     | 
| 
       23 
     | 
    
         
            -
                  puts  
     | 
| 
      
 22 
     | 
    
         
            +
                if !File.exist?(".gitignore")
         
     | 
| 
      
 23 
     | 
    
         
            +
                  puts "warning: .gitignore does not exist."
         
     | 
| 
       24 
24 
     | 
    
         
             
                else
         
     | 
| 
       25 
     | 
    
         
            -
                  PROJECT.run( 
     | 
| 
       26 
     | 
    
         
            -
                  unless `git status`.include?( 
     | 
| 
      
 25 
     | 
    
         
            +
                  PROJECT.run("git add --all")
         
     | 
| 
      
 26 
     | 
    
         
            +
                  unless `git status`.include?("nothing to commit")
         
     | 
| 
       27 
27 
     | 
    
         
             
                    # if(PROJECT.outstanding_commit?)
         
     | 
| 
       28 
     | 
    
         
            -
                    commit_message =  
     | 
| 
      
 28 
     | 
    
         
            +
                    commit_message = "integrate"
         
     | 
| 
       29 
29 
     | 
    
         
             
                    PROJECT.run("git commit -m\"#{commit_message}\"") if PROJECT.outstanding_commit?
         
     | 
| 
       30 
     | 
    
         
            -
                    PROJECT.run( 
     | 
| 
      
 30 
     | 
    
         
            +
                    PROJECT.run("git pull")
         
     | 
| 
       31 
31 
     | 
    
         
             
                    # PROJECT.run("git push")
         
     | 
| 
       32 
32 
     | 
    
         
             
                    # PROJECT.run("git push --tags")
         
     | 
| 
       33 
33 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -35,40 +35,40 @@ task :integrate do 
     | 
|
| 
       35 
35 
     | 
    
         
             
              end
         
     | 
| 
       36 
36 
     | 
    
         
             
            end
         
     | 
| 
       37 
37 
     | 
    
         | 
| 
       38 
     | 
    
         
            -
            desc  
     | 
| 
      
 38 
     | 
    
         
            +
            desc "push changes including tags"
         
     | 
| 
       39 
39 
     | 
    
         
             
            task :push do
         
     | 
| 
       40 
40 
     | 
    
         
             
              git_dir = Raykit::Git::Directory.new(Rake.application.original_dir)
         
     | 
| 
       41 
41 
     | 
    
         
             
              if git_dir.detached?
         
     | 
| 
       42 
     | 
    
         
            -
                puts  
     | 
| 
      
 42 
     | 
    
         
            +
                puts "detached head state, skipping push operations"
         
     | 
| 
       43 
43 
     | 
    
         
             
              else
         
     | 
| 
       44 
     | 
    
         
            -
                PROJECT.run( 
     | 
| 
       45 
     | 
    
         
            -
                PROJECT.run( 
     | 
| 
      
 44 
     | 
    
         
            +
                PROJECT.run("git push")
         
     | 
| 
      
 45 
     | 
    
         
            +
                PROJECT.run("git push --tags")
         
     | 
| 
       46 
46 
     | 
    
         
             
              end
         
     | 
| 
       47 
47 
     | 
    
         
             
            end
         
     | 
| 
       48 
48 
     | 
    
         | 
| 
       49 
     | 
    
         
            -
            desc  
     | 
| 
      
 49 
     | 
    
         
            +
            desc "clean files not tracked by git"
         
     | 
| 
       50 
50 
     | 
    
         
             
            task :clean do
         
     | 
| 
       51 
     | 
    
         
            -
              puts Rainbow( 
     | 
| 
       52 
     | 
    
         
            -
              PROJECT.run( 
     | 
| 
      
 51 
     | 
    
         
            +
              puts Rainbow(":clean").blue.bright
         
     | 
| 
      
 52 
     | 
    
         
            +
              PROJECT.run("git clean -dXf")
         
     | 
| 
       53 
53 
     | 
    
         
             
            end
         
     | 
| 
       54 
54 
     | 
    
         | 
| 
       55 
     | 
    
         
            -
            desc  
     | 
| 
      
 55 
     | 
    
         
            +
            desc "update_source from sourceImports.json"
         
     | 
| 
       56 
56 
     | 
    
         
             
            task :update_source do
         
     | 
| 
       57 
     | 
    
         
            -
              if File.exist?( 
     | 
| 
       58 
     | 
    
         
            -
                puts Rainbow( 
     | 
| 
       59 
     | 
    
         
            -
                sourceImports = Raykit::SourceImports.load( 
     | 
| 
      
 57 
     | 
    
         
            +
              if File.exist?("sourceImports.json")
         
     | 
| 
      
 58 
     | 
    
         
            +
                puts Rainbow(":update_source").blue.bright
         
     | 
| 
      
 59 
     | 
    
         
            +
                sourceImports = Raykit::SourceImports.load("sourceImports.json")
         
     | 
| 
       60 
60 
     | 
    
         
             
                json = sourceImports.to_json
         
     | 
| 
       61 
61 
     | 
    
         
             
                sourceImports.update
         
     | 
| 
       62 
62 
     | 
    
         | 
| 
       63 
63 
     | 
    
         
             
                json2 = sourceImports.to_json
         
     | 
| 
       64 
64 
     | 
    
         
             
                if json2 != json || !sourceImports.targets_exist?
         
     | 
| 
       65 
     | 
    
         
            -
                  sourceImports.save( 
     | 
| 
      
 65 
     | 
    
         
            +
                  sourceImports.save("sourceImports.json")
         
     | 
| 
       66 
66 
     | 
    
         
             
                  sourceImports.copy
         
     | 
| 
       67 
67 
     | 
    
         
             
                else
         
     | 
| 
       68 
     | 
    
         
            -
                  puts  
     | 
| 
      
 68 
     | 
    
         
            +
                  puts "        no update required."
         
     | 
| 
       69 
69 
     | 
    
         
             
                end
         
     | 
| 
       70 
70 
     | 
    
         
             
              end
         
     | 
| 
       71 
71 
     | 
    
         
             
            end
         
     | 
| 
       72 
72 
     | 
    
         | 
| 
       73 
     | 
    
         
            -
            desc  
     | 
| 
      
 73 
     | 
    
         
            +
            desc "update source files"
         
     | 
| 
       74 
74 
     | 
    
         
             
            task update: [:update_source]
         
     | 
    
        data/lib/raykit/text.rb
    CHANGED
    
    | 
         @@ -10,10 +10,8 @@ module Raykit 
     | 
|
| 
       10 
10 
     | 
    
         
             
                  text1 = IO.read(filename)
         
     | 
| 
       11 
11 
     | 
    
         
             
                  text2 = text1.gsub(search) { |_str| str = replace }
         
     | 
| 
       12 
12 
     | 
    
         
             
                  unless text1 == text2
         
     | 
| 
       13 
     | 
    
         
            -
                     
     | 
| 
       14 
     | 
    
         
            -
             
     | 
| 
       15 
     | 
    
         
            -
                      return true
         
     | 
| 
       16 
     | 
    
         
            -
                    end
         
     | 
| 
      
 13 
     | 
    
         
            +
                    File.open(filename, "w") { |f| f.puts text2 }
         
     | 
| 
      
 14 
     | 
    
         
            +
                    return true
         
     | 
| 
       17 
15 
     | 
    
         
             
                  end
         
     | 
| 
       18 
16 
     | 
    
         
             
                  false
         
     | 
| 
       19 
17 
     | 
    
         
             
                end
         
     | 
    
        data/lib/raykit/timer.rb
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            require  
     | 
| 
      
 3 
     | 
    
         
            +
            require "time"
         
     | 
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Raykit
         
     | 
| 
       6 
6 
     | 
    
         
             
              # Provides functionality to record the time execution times
         
     | 
| 
         @@ -25,7 +25,7 @@ module Raykit 
     | 
|
| 
       25 
25 
     | 
    
         
             
                # Converts a time span in seconds to a formatted string
         
     | 
| 
       26 
26 
     | 
    
         
             
                def self.get_elapsed_str(elapsed, pad = 0)
         
     | 
| 
       27 
27 
     | 
    
         
             
                  # "[" + "%.0f" % (elapsed) + "s]".ljust(pad)
         
     | 
| 
       28 
     | 
    
         
            -
                  format( 
     | 
| 
      
 28 
     | 
    
         
            +
                  format("%.0f", elapsed) + "s".ljust(pad)
         
     | 
| 
       29 
29 
     | 
    
         
             
                end
         
     | 
| 
       30 
30 
     | 
    
         
             
              end
         
     | 
| 
       31 
31 
     | 
    
         
             
            end
         
     | 
    
        data/lib/raykit/version.rb
    CHANGED
    
    | 
         @@ -27,19 +27,19 @@ module Raykit 
     | 
|
| 
       27 
27 
     | 
    
         | 
| 
       28 
28 
     | 
    
         
             
                  if verbose
         
     | 
| 
       29 
29 
     | 
    
         
             
                    warning = "\u26A0"
         
     | 
| 
       30 
     | 
    
         
            -
                    symbol = Rainbow(warning.encode( 
     | 
| 
      
 30 
     | 
    
         
            +
                    symbol = Rainbow(warning.encode("utf-8")).yellow
         
     | 
| 
       31 
31 
     | 
    
         
             
                    puts "#{symbol} version not detected"
         
     | 
| 
       32 
32 
     | 
    
         
             
                  end
         
     | 
| 
       33 
     | 
    
         
            -
                   
     | 
| 
      
 33 
     | 
    
         
            +
                  ""
         
     | 
| 
       34 
34 
     | 
    
         
             
                end
         
     | 
| 
       35 
35 
     | 
    
         | 
| 
       36 
36 
     | 
    
         
             
                def self.detect_from_file(filename, regex, verbose)
         
     | 
| 
       37 
     | 
    
         
            -
                  version =  
     | 
| 
      
 37 
     | 
    
         
            +
                  version = ""
         
     | 
| 
       38 
38 
     | 
    
         
             
                  if File.exist?(filename)
         
     | 
| 
       39 
39 
     | 
    
         
             
                    match = IO.read(filename).match(regex)
         
     | 
| 
       40 
40 
     | 
    
         
             
                    version = match.captures[0] if !match.nil? && match.captures.length.positive?
         
     | 
| 
       41 
41 
     | 
    
         
             
                  else
         
     | 
| 
       42 
     | 
    
         
            -
                    return  
     | 
| 
      
 42 
     | 
    
         
            +
                    return ""
         
     | 
| 
       43 
43 
     | 
    
         
             
                  end
         
     | 
| 
       44 
44 
     | 
    
         
             
                  if verbose
         
     | 
| 
       45 
45 
     | 
    
         
             
                    if version.length.positive?
         
     | 
| 
         @@ -53,12 +53,12 @@ module Raykit 
     | 
|
| 
       53 
53 
     | 
    
         | 
| 
       54 
54 
     | 
    
         
             
                def self.set_version_in_file(filename, version)
         
     | 
| 
       55 
55 
     | 
    
         
             
                  text = IO.read(filename)
         
     | 
| 
       56 
     | 
    
         
            -
                  new_text = text.gsub(/version\s?=\s?['|"]([.\d]+)['|"]/, "version='#{version}'") if filename.include?( 
     | 
| 
       57 
     | 
    
         
            -
                  new_text = text.gsub(/<Version>([-\w\d.]+)</, "<Version>#{version}<") if filename.include?( 
     | 
| 
      
 56 
     | 
    
         
            +
                  new_text = text.gsub(/version\s?=\s?['|"]([.\d]+)['|"]/, "version='#{version}'") if filename.include?(".gemspec")
         
     | 
| 
      
 57 
     | 
    
         
            +
                  new_text = text.gsub(/<Version>([-\w\d.]+)</, "<Version>#{version}<") if filename.include?(".csproj")
         
     | 
| 
       58 
58 
     | 
    
         
             
                  # new_text=text.gsub(/<Version>([-\w\d.]+)</,"<Version>#{version}<")
         
     | 
| 
       59 
59 
     | 
    
         
             
                  # new_text=new_text.gsub(/version[\s]+=\s?['|"]([.\d]+)['|"]/,"version='#{version}'")
         
     | 
| 
       60 
60 
     | 
    
         
             
                  # new_text=new_text.gsub(/Version="([.\d]+)"/,"Version=\"#{version}\"")
         
     | 
| 
       61 
     | 
    
         
            -
                  File.open(filename,  
     | 
| 
      
 61 
     | 
    
         
            +
                  File.open(filename, "w") { |f| f.write(new_text) } if new_text != text
         
     | 
| 
       62 
62 
     | 
    
         
             
                end
         
     | 
| 
       63 
63 
     | 
    
         | 
| 
       64 
64 
     | 
    
         
             
                def self.sync_file_versions(source_filename, destination_filename)
         
     | 
| 
         @@ -69,19 +69,19 @@ module Raykit 
     | 
|
| 
       69 
69 
     | 
    
         
             
                # increment to last digit of a version string
         
     | 
| 
       70 
70 
     | 
    
         
             
                def self.bump(version)
         
     | 
| 
       71 
71 
     | 
    
         
             
                  # major.minor[.build[.revision]]  (example: 1.2.12.102)
         
     | 
| 
       72 
     | 
    
         
            -
                  version_ints = version.split( 
     | 
| 
      
 72 
     | 
    
         
            +
                  version_ints = version.split(".").map(&:to_i)
         
     | 
| 
       73 
73 
     | 
    
         
             
                  version_ints[-1] = version_ints.last + 1
         
     | 
| 
       74 
     | 
    
         
            -
                  version_ints.map(&:to_s).join( 
     | 
| 
      
 74 
     | 
    
         
            +
                  version_ints.map(&:to_s).join(".")
         
     | 
| 
       75 
75 
     | 
    
         
             
                end
         
     | 
| 
       76 
76 
     | 
    
         | 
| 
       77 
77 
     | 
    
         
             
                def self.bump_file(filename)
         
     | 
| 
       78 
78 
     | 
    
         
             
                  warn "Raykit::Version.bump_file filename '#{filename}' does not exist." unless File.exist?(filename)
         
     | 
| 
       79 
79 
     | 
    
         | 
| 
       80 
     | 
    
         
            -
                  old_version =  
     | 
| 
       81 
     | 
    
         
            -
                  if filename.include?( 
     | 
| 
      
 80 
     | 
    
         
            +
                  old_version = ""
         
     | 
| 
      
 81 
     | 
    
         
            +
                  if filename.include?(".gemspec")
         
     | 
| 
       82 
82 
     | 
    
         
             
                    old_version = detect_from_file(filename, /version\s?=\s?['|"]([.\d]+)['|"]/, false)
         
     | 
| 
       83 
83 
     | 
    
         
             
                  end
         
     | 
| 
       84 
     | 
    
         
            -
                  old_version = detect_from_file(filename, /<Version>([-\w\d.]+)</, false) if filename.include?( 
     | 
| 
      
 84 
     | 
    
         
            +
                  old_version = detect_from_file(filename, /<Version>([-\w\d.]+)</, false) if filename.include?(".csproj")
         
     | 
| 
       85 
85 
     | 
    
         | 
| 
       86 
86 
     | 
    
         
             
                  if old_version.length.positive?
         
     | 
| 
       87 
87 
     | 
    
         
             
                    new_version = bump(old_version)
         
     | 
    
        data/lib/raykit/vstest.rb
    CHANGED
    
    | 
         @@ -3,19 +3,19 @@ 
     | 
|
| 
       3 
3 
     | 
    
         
             
            module Raykit
         
     | 
| 
       4 
4 
     | 
    
         
             
              class VsTest
         
     | 
| 
       5 
5 
     | 
    
         
             
                def self.vstest_path
         
     | 
| 
       6 
     | 
    
         
            -
                  [ 
     | 
| 
       7 
     | 
    
         
            -
                    
     | 
| 
       8 
     | 
    
         
            -
                    
     | 
| 
       9 
     | 
    
         
            -
                    
     | 
| 
       10 
     | 
    
         
            -
                    
     | 
| 
       11 
     | 
    
         
            -
                    [ 
     | 
| 
       12 
     | 
    
         
            -
                      
     | 
| 
      
 6 
     | 
    
         
            +
                  ["2019/Community/Common7/IDE/CommonExtensions/Microsoft",
         
     | 
| 
      
 7 
     | 
    
         
            +
                   "2019/Professional/Common7/IDE/Extensions/TestPlatform",
         
     | 
| 
      
 8 
     | 
    
         
            +
                   "2019/Community/Common7/IDE/Extensions",
         
     | 
| 
      
 9 
     | 
    
         
            +
                   "2019/Community/Common7/IDE/Extensions/TestPlatform",
         
     | 
| 
      
 10 
     | 
    
         
            +
                   "2022/Preview/Common7/IDE/Extensions/TestPlatform"].each do |relative_path|
         
     | 
| 
      
 11 
     | 
    
         
            +
                    ["C:/Program Files (x86)/Microsoft Visual Studio/",
         
     | 
| 
      
 12 
     | 
    
         
            +
                     "C:/Program Files/Microsoft Visual Studio/"].each do |root_path|
         
     | 
| 
       13 
13 
     | 
    
         
             
                      path = root_path + relative_path
         
     | 
| 
       14 
14 
     | 
    
         
             
                      exe_path = "#{path}/vstest.console.exe"
         
     | 
| 
       15 
15 
     | 
    
         
             
                      return path if Dir.exist?(path) && File.exist?(exe_path)
         
     | 
| 
       16 
16 
     | 
    
         
             
                    end
         
     | 
| 
       17 
17 
     | 
    
         
             
                  end
         
     | 
| 
       18 
     | 
    
         
            -
                   
     | 
| 
      
 18 
     | 
    
         
            +
                  "vstest_path not found"
         
     | 
| 
       19 
19 
     | 
    
         
             
                end
         
     | 
| 
       20 
20 
     | 
    
         
             
              end
         
     | 
| 
       21 
21 
     | 
    
         
             
            end
         
     | 
    
        data/lib/raykit.rb
    CHANGED
    
    | 
         @@ -1,10 +1,10 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            # frozen_string_literal: true
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
     | 
    
         
            -
            require  
     | 
| 
       4 
     | 
    
         
            -
            require  
     | 
| 
       5 
     | 
    
         
            -
            require  
     | 
| 
       6 
     | 
    
         
            -
            require  
     | 
| 
       7 
     | 
    
         
            -
            require  
     | 
| 
      
 3 
     | 
    
         
            +
            require "rainbow"
         
     | 
| 
      
 4 
     | 
    
         
            +
            require "rake/clean"
         
     | 
| 
      
 5 
     | 
    
         
            +
            require "open3"
         
     | 
| 
      
 6 
     | 
    
         
            +
            require "rake/testtask"
         
     | 
| 
      
 7 
     | 
    
         
            +
            require "digest"
         
     | 
| 
       8 
8 
     | 
    
         | 
| 
       9 
9 
     | 
    
         
             
            lib_dir = File.dirname(__FILE__)
         
     | 
| 
       10 
10 
     | 
    
         
             
            Dir.glob("#{lib_dir}/raykit/**/*.rb").sort.each { |file| require file }
         
     | 
| 
         @@ -13,5 +13,5 @@ PROJECT = Raykit::Project.new 
     | 
|
| 
       13 
13 
     | 
    
         
             
            SECRETS = Raykit::Secrets.new
         
     | 
| 
       14 
14 
     | 
    
         
             
            # TIMER=Raykit::Timer.new
         
     | 
| 
       15 
15 
     | 
    
         | 
| 
       16 
     | 
    
         
            -
            REPOSITORIES = Raykit::Git::Repositories.new("#{Raykit::Environment.get_dev_dir( 
     | 
| 
       17 
     | 
    
         
            -
            GIT_DIRECTORY = Raykit::Git::Directory.new(Rake.application.original_dir)  
     | 
| 
      
 16 
     | 
    
         
            +
            REPOSITORIES = Raykit::Git::Repositories.new("#{Raykit::Environment.get_dev_dir("log")}/Raykit.Git.Repositories.json")
         
     | 
| 
      
 17 
     | 
    
         
            +
            GIT_DIRECTORY = Raykit::Git::Directory.new(Rake.application.original_dir) if Dir.exist?(".git")
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: raykit
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.0.320
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Lou Parslow
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2021-12- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2021-12-27 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: bundler
         
     |