kruptos 0.0.1 → 0.0.2
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.
- data/.travis.yml +4 -0
- data/Gemfile +6 -0
- data/Rakefile +47 -7
- data/VERSION +1 -0
- data/kruptos.gemspec +7 -0
- data/lib/kruptos.rb +1 -0
- data/lib/kruptos/version.rb +1 -1
- data/lib/tasks/version.rake +138 -0
- metadata +102 -3
data/.travis.yml
ADDED
data/Gemfile
CHANGED
data/Rakefile
CHANGED
@@ -1,11 +1,51 @@
|
|
1
|
-
|
2
|
-
require "rake/testtask"
|
1
|
+
# encoding: utf-8
|
3
2
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler'
|
5
|
+
begin
|
6
|
+
Bundler.setup(:default, :development)
|
7
|
+
rescue Bundler::BundlerError => e
|
8
|
+
$stderr.puts e.message
|
9
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
+
exit e.status_code
|
8
11
|
end
|
12
|
+
require 'rake'
|
9
13
|
|
10
|
-
|
14
|
+
require 'rspec/core'
|
15
|
+
require 'rspec/core/rake_task'
|
16
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
17
|
+
spec.pattern = FileList['spec/**/*_spec.rb']
|
18
|
+
spec.rspec_opts = Dir.glob("[0-9][0-9][0-9]_*").collect { |x| "-I#{x}" }
|
19
|
+
spec.rspec_opts << '--color -f d'
|
20
|
+
end
|
21
|
+
|
22
|
+
RSpec::Core::RakeTask.new(:rcov) do |spec|
|
23
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
24
|
+
spec.rcov = true
|
25
|
+
end
|
26
|
+
|
27
|
+
RSpec::Core::RakeTask.new(:coverage) do |spec|
|
28
|
+
# add simplecov
|
29
|
+
ENV["COVERAGE"] = 'yes'
|
30
|
+
|
31
|
+
# run the specs
|
32
|
+
Rake::Task['spec'].execute
|
33
|
+
end
|
34
|
+
|
35
|
+
require 'cucumber/rake/task'
|
36
|
+
Cucumber::Rake::Task.new(:features)
|
37
|
+
|
38
|
+
task :default => :spec
|
39
|
+
|
40
|
+
require 'rdoc/task'
|
41
|
+
Rake::RDocTask.new do |rdoc|
|
42
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
43
|
+
|
44
|
+
rdoc.rdoc_dir = 'rdoc'
|
45
|
+
rdoc.title = "gitit #{version}"
|
46
|
+
rdoc.rdoc_files.include('README*')
|
47
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
48
|
+
end
|
49
|
+
|
50
|
+
Dir.glob('lib/tasks/*.rake').each {|r| import r}
|
11
51
|
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.2.0
|
data/kruptos.gemspec
CHANGED
@@ -16,4 +16,11 @@ Gem::Specification.new do |gem|
|
|
16
16
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
18
|
gem.require_paths = ["lib"]
|
19
|
+
|
20
|
+
gem.add_development_dependency 'rspec'
|
21
|
+
gem.add_development_dependency 'cli-colorize'
|
22
|
+
gem.add_development_dependency 'rdoc', '>= 3.12'
|
23
|
+
gem.add_development_dependency 'cucumber', '>= 1.0'
|
24
|
+
gem.add_development_dependency 'bundler', '>= 1.0.0'
|
25
|
+
gem.add_development_dependency 'simplecov'
|
19
26
|
end
|
data/lib/kruptos.rb
CHANGED
data/lib/kruptos/version.rb
CHANGED
@@ -0,0 +1,138 @@
|
|
1
|
+
require 'cli-colorize'
|
2
|
+
|
3
|
+
def valid? version
|
4
|
+
pattern = /^\d+\.\d+\.\d+(\-(dev|beta|rc\d+))?$/
|
5
|
+
raise "Tried to set invalid version: #{version}".red unless version =~ pattern
|
6
|
+
end
|
7
|
+
|
8
|
+
def correct_version version
|
9
|
+
ver, flag = version.split '-'
|
10
|
+
v = ver.split '.'
|
11
|
+
(0..2).each do |n|
|
12
|
+
v[n] = v[n].to_i
|
13
|
+
end
|
14
|
+
[v.join('.'), flag].compact.join '-'
|
15
|
+
end
|
16
|
+
|
17
|
+
def read_version
|
18
|
+
begin
|
19
|
+
File.read 'VERSION'
|
20
|
+
rescue
|
21
|
+
raise "VERSION file not found or unreadable.".red
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def write_version version
|
26
|
+
valid? version
|
27
|
+
begin
|
28
|
+
File.open 'VERSION', 'w' do |file|
|
29
|
+
file.write correct_version(version)
|
30
|
+
end
|
31
|
+
rescue
|
32
|
+
raise "VERSION file not found or unwritable.".red
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
def reset current, which
|
37
|
+
version, flag = current.split '-'
|
38
|
+
v = version.split '.'
|
39
|
+
which.each do |part|
|
40
|
+
v[part] = 0
|
41
|
+
end
|
42
|
+
[v.join('.'), flag].compact.join '-'
|
43
|
+
end
|
44
|
+
|
45
|
+
def increment current, which
|
46
|
+
version, flag = current.split '-'
|
47
|
+
v = version.split '.'
|
48
|
+
v[which] = v[which].to_i + 1
|
49
|
+
[v.join('.'), flag].compact.join '-'
|
50
|
+
end
|
51
|
+
|
52
|
+
desc "Prints the current application version"
|
53
|
+
version = read_version
|
54
|
+
task :version do
|
55
|
+
puts <<HELP
|
56
|
+
Available commands are:
|
57
|
+
-----------------------
|
58
|
+
rake version:write[version] # set custom version in the x.x.x-? format
|
59
|
+
rake version:patch # increment the patch x.x.x+1 (keeps any flags on)
|
60
|
+
rake version:minor # increment minor and reset patch x.x+1.0 (keeps any flags on)
|
61
|
+
rake version:major # increment major and reset others x+1.0.0 (keeps any flags on)
|
62
|
+
rake version:dev # set the dev flag on x.x.x-dev
|
63
|
+
rake version:beta # set the beta flag on x.x.x-beta
|
64
|
+
rake version:rc # set or increment the rc flag x.x.x-rcX
|
65
|
+
rake version:release # removes any flags from the current version
|
66
|
+
|
67
|
+
HELP
|
68
|
+
puts "Current version is: #{version.green}"
|
69
|
+
end
|
70
|
+
|
71
|
+
namespace :version do
|
72
|
+
|
73
|
+
desc "Write version explicitly by specifying version number as a parameter"
|
74
|
+
task :write, [:version] do |task, args|
|
75
|
+
write_version args[:version].strip
|
76
|
+
puts "Version explicitly written: #{read_version.green}"
|
77
|
+
end
|
78
|
+
|
79
|
+
desc "Increments the patch version"
|
80
|
+
task :patch do
|
81
|
+
new_version = increment read_version, 2
|
82
|
+
write_version new_version
|
83
|
+
puts "Application patched: #{new_version.green}"
|
84
|
+
end
|
85
|
+
|
86
|
+
desc "Increments the minor version and resets the patch"
|
87
|
+
task :minor do
|
88
|
+
incremented = increment read_version, 1
|
89
|
+
new_version = reset incremented, [2]
|
90
|
+
write_version new_version
|
91
|
+
puts "New version released: #{new_version.green}"
|
92
|
+
end
|
93
|
+
|
94
|
+
desc "Increments the major version and resets both minor and patch"
|
95
|
+
task :major do
|
96
|
+
incremented = increment read_version, 0
|
97
|
+
new_version = reset incremented, [1, 2]
|
98
|
+
write_version new_version
|
99
|
+
puts "Major application version change: #{new_version.green}. Congratulations!"
|
100
|
+
end
|
101
|
+
|
102
|
+
desc "Sets the development flag on"
|
103
|
+
task :dev do
|
104
|
+
version, flag = read_version.split '-'
|
105
|
+
new_version = [version, 'dev'].join '-'
|
106
|
+
write_version new_version
|
107
|
+
puts "Version in development: #{new_version.green}"
|
108
|
+
end
|
109
|
+
|
110
|
+
desc "Sets the beta flag on"
|
111
|
+
task :beta do
|
112
|
+
version, flag = read_version.split '-'
|
113
|
+
new_version = [version, 'beta'].join '-'
|
114
|
+
write_version new_version
|
115
|
+
puts "Version in beta: #{new_version.green}"
|
116
|
+
end
|
117
|
+
|
118
|
+
desc "Sets or increments the rc flag"
|
119
|
+
task :rc do
|
120
|
+
version, flag = read_version.split '-'
|
121
|
+
rc = /^rc(\d+)$/.match flag
|
122
|
+
if rc
|
123
|
+
new_version = [version, "rc#{rc[1].to_i+1}"].join '-'
|
124
|
+
else
|
125
|
+
new_version = [version, 'rc1'].join '-'
|
126
|
+
end
|
127
|
+
write_version new_version
|
128
|
+
puts "New version release candidate: #{new_version.green}"
|
129
|
+
end
|
130
|
+
|
131
|
+
desc "Removes any version flags"
|
132
|
+
task :release do
|
133
|
+
version, flag = read_version.split '-'
|
134
|
+
write_version version
|
135
|
+
puts "Released stable version: #{version.green}"
|
136
|
+
end
|
137
|
+
|
138
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kruptos
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,8 +9,104 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
13
|
-
dependencies:
|
12
|
+
date: 2013-07-24 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rspec
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: cli-colorize
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: rdoc
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '3.12'
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.12'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: cucumber
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '1.0'
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '1.0'
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: bundler
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: 1.0.0
|
86
|
+
type: :development
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: 1.0.0
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: simplecov
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: '0'
|
102
|
+
type: :development
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
14
110
|
description: Crypto ruby gem
|
15
111
|
email:
|
16
112
|
- pat@covenofchaos.com
|
@@ -19,10 +115,12 @@ extensions: []
|
|
19
115
|
extra_rdoc_files: []
|
20
116
|
files:
|
21
117
|
- .gitignore
|
118
|
+
- .travis.yml
|
22
119
|
- Gemfile
|
23
120
|
- LICENSE.txt
|
24
121
|
- README.md
|
25
122
|
- Rakefile
|
123
|
+
- VERSION
|
26
124
|
- kruptos.gemspec
|
27
125
|
- lib/kruptos.rb
|
28
126
|
- lib/kruptos/blowfish-tables.rb
|
@@ -33,6 +131,7 @@ files:
|
|
33
131
|
- lib/kruptos/noise.rb
|
34
132
|
- lib/kruptos/stringxor.rb
|
35
133
|
- lib/kruptos/version.rb
|
134
|
+
- lib/tasks/version.rake
|
36
135
|
- test/test-blowfish.rb
|
37
136
|
- test/test-gost.rb
|
38
137
|
- test/test-idea.rb
|