From 00a96197aa39808630ae72b0845e530bdc711d07 Mon Sep 17 00:00:00 2001 From: Tony Arcieri Date: Sun, 23 Apr 2017 12:14:55 -0700 Subject: [PATCH] Initial project skeleton --- .gitignore | 12 ++++++++++++ .rakeTasks | 7 +++++++ .rspec | 2 ++ .rubocop.yml | 31 +++++++++++++++++++++++++++++++ Gemfile | 11 +++++++++++ README.md | 4 ++++ Rakefile | 11 +++++++++++ lib/sivchain.rb | 5 +++++ lib/sivchain/version.rb | 3 +++ sivchain.gemspec | 24 ++++++++++++++++++++++++ spec/sivchain_spec.rb | 7 +++++++ spec/spec_helper.rb | 6 ++++++ 12 files changed, 123 insertions(+) create mode 100644 .gitignore create mode 100644 .rakeTasks create mode 100644 .rspec create mode 100644 .rubocop.yml create mode 100644 Gemfile create mode 100644 README.md create mode 100644 Rakefile create mode 100644 lib/sivchain.rb create mode 100644 lib/sivchain/version.rb create mode 100644 sivchain.gemspec create mode 100644 spec/sivchain_spec.rb create mode 100644 spec/spec_helper.rb diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8eb3b06 --- /dev/null +++ b/.gitignore @@ -0,0 +1,12 @@ +/.bundle/ +/.yardoc +/Gemfile.lock +/_yardoc/ +/coverage/ +/doc/ +/pkg/ +/spec/reports/ +/tmp/ + +# rspec failure tracking +.rspec_status diff --git a/.rakeTasks b/.rakeTasks new file mode 100644 index 0000000..fef078e --- /dev/null +++ b/.rakeTasks @@ -0,0 +1,7 @@ + + diff --git a/.rspec b/.rspec new file mode 100644 index 0000000..8c18f1a --- /dev/null +++ b/.rspec @@ -0,0 +1,2 @@ +--format documentation +--color diff --git a/.rubocop.yml b/.rubocop.yml new file mode 100644 index 0000000..9e1e2ad --- /dev/null +++ b/.rubocop.yml @@ -0,0 +1,31 @@ +AllCops: + DisplayCopNames: true + +# +# Style +# + +LineLength: + Max: 128 + +Style/StringLiterals: + EnforcedStyle: double_quotes + +# +# Metrics +# + +Metrics/AbcSize: + Enabled: false + +Metrics/CyclomaticComplexity: + Enabled: false + +Metrics/PerceivedComplexity: + Enabled: false + +Metrics/ClassLength: + Max: 100 + +Metrics/MethodLength: + Max: 25 diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..d5825e8 --- /dev/null +++ b/Gemfile @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +source "https://rubygems.org" + +gemspec + +group :development, :test do + gem "rake" + gem "rspec", "~> 3.5" + gem "rubocop", "0.48.1" +end diff --git a/README.md b/README.md new file mode 100644 index 0000000..139c79a --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +# SIVChain + +Advanced symmetric encryption using the AES-SIV ([RFC 5297]) and CHAIN +constructions diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..beca898 --- /dev/null +++ b/Rakefile @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +require "bundler/gem_tasks" + +require "rspec/core/rake_task" +RSpec::Core::RakeTask.new + +require "rubocop/rake_task" +RuboCop::RakeTask.new + +task default: %w[spec rubocop] diff --git a/lib/sivchain.rb b/lib/sivchain.rb new file mode 100644 index 0000000..ee5d694 --- /dev/null +++ b/lib/sivchain.rb @@ -0,0 +1,5 @@ +require "sivchain/version" + +# Advanced symmetric encryption using the AES-SIV (RFC 5297) and CHAIN constructions +module SIVChain +end diff --git a/lib/sivchain/version.rb b/lib/sivchain/version.rb new file mode 100644 index 0000000..350cd70 --- /dev/null +++ b/lib/sivchain/version.rb @@ -0,0 +1,3 @@ +module SIVChain + VERSION = "0.0.0".freeze +end diff --git a/sivchain.gemspec b/sivchain.gemspec new file mode 100644 index 0000000..5080414 --- /dev/null +++ b/sivchain.gemspec @@ -0,0 +1,24 @@ +# coding: utf-8 + +lib = File.expand_path("../lib", __FILE__) +$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) +require "sivchain/version" + +Gem::Specification.new do |spec| + spec.name = "sivchain" + spec.version = SIVChain::VERSION + spec.authors = ["Tony Arcieri"] + spec.email = ["bascule@gmail.com"] + spec.licenses = ["MIT"] + spec.homepage = "https://github.com/zcred/sivchain/tree/master/ruby/" + spec.summary = "AES-SIV and CHAIN symmetric encryption" + spec.description = "Advanced symmetric encryption using the AES-SIV (RFC 5297) and CHAIN constructions" + spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) } + spec.bindir = "exe" + spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } + spec.require_paths = ["lib"] + + spec.required_ruby_version = ">= 2.2.2" + + spec.add_development_dependency "bundler", "~> 1.14" +end diff --git a/spec/sivchain_spec.rb b/spec/sivchain_spec.rb new file mode 100644 index 0000000..59de631 --- /dev/null +++ b/spec/sivchain_spec.rb @@ -0,0 +1,7 @@ +require "spec_helper" + +RSpec.describe SIVChain do + it "has a version number" do + expect(SIVChain::VERSION).not_to be nil + end +end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 0000000..b43548f --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +require "bundler/setup" +require "sivchain" + +RSpec.configure(&:disable_monkey_patching!)