diff --git a/.gitignore b/.gitignore index e3200e0..9106b2a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,56 +1,8 @@ -*.gem -*.rbc -/.config +/.bundle/ +/.yardoc +/_yardoc/ /coverage/ -/InstalledFiles +/doc/ /pkg/ /spec/reports/ -/spec/examples.txt -/test/tmp/ -/test/version_tmp/ /tmp/ - -# Used by dotenv library to load environment variables. -# .env - -# Ignore Byebug command history file. -.byebug_history - -## Specific to RubyMotion: -.dat* -.repl_history -build/ -*.bridgesupport -build-iPhoneOS/ -build-iPhoneSimulator/ - -## Specific to RubyMotion (use of CocoaPods): -# -# We recommend against adding the Pods directory to your .gitignore. However -# you should judge for yourself, the pros and cons are mentioned at: -# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control -# -# vendor/Pods/ - -## Documentation cache and generated files: -/.yardoc/ -/_yardoc/ -/doc/ -/rdoc/ - -## Environment normalization: -/.bundle/ -/vendor/bundle -/lib/bundler/man/ - -# for a library or gem, you might want to ignore these files since the code is -# intended to run in multiple environments; otherwise, check them in: -# Gemfile.lock -# .ruby-version -# .ruby-gemset - -# unless supporting rvm < 1.11.0 or doing something fancy, ignore this: -.rvmrc - -# Used by RuboCop. Remote config files pulled in from inherit_from directive. -# .rubocop-https?--* diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..5062dc2 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,7 @@ +--- +sudo: false +language: ruby +cache: bundler +rvm: + - 2.6.2 +before_install: gem install bundler -v 2.0.2 diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..6cf76c3 --- /dev/null +++ b/Gemfile @@ -0,0 +1,4 @@ +source "https://rubygems.org" + +# Specify your gem's dependencies in dagwood.gemspec +gemspec diff --git a/README.md b/README.md new file mode 100644 index 0000000..3b43038 --- /dev/null +++ b/README.md @@ -0,0 +1,35 @@ +# Dagwood + +Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/dagwood`. To experiment with that code, run `bin/console` for an interactive prompt. + +TODO: Delete this and the text above, and describe your gem + +## Installation + +Add this line to your application's Gemfile: + +```ruby +gem 'dagwood' +``` + +And then execute: + + $ bundle + +Or install it yourself as: + + $ gem install dagwood + +## Usage + +TODO: Write usage instructions here + +## Development + +After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. + +To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). + +## Contributing + +Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/dagwood. diff --git a/Rakefile b/Rakefile new file mode 100644 index 0000000..d433a1e --- /dev/null +++ b/Rakefile @@ -0,0 +1,10 @@ +require "bundler/gem_tasks" +require "rake/testtask" + +Rake::TestTask.new(:test) do |t| + t.libs << "test" + t.libs << "lib" + t.test_files = FileList["test/**/*_test.rb"] +end + +task :default => :test diff --git a/bin/console b/bin/console new file mode 100755 index 0000000..8f9fe2f --- /dev/null +++ b/bin/console @@ -0,0 +1,14 @@ +#!/usr/bin/env ruby + +require "bundler/setup" +require "dagwood" + +# You can add fixtures and/or initialization code here to make experimenting +# with your gem easier. You can also use a different console, if you like. + +# (If you use this, don't forget to add pry to your Gemfile!) +# require "pry" +# Pry.start + +require "irb" +IRB.start(__FILE__) diff --git a/bin/setup b/bin/setup new file mode 100755 index 0000000..dce67d8 --- /dev/null +++ b/bin/setup @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +set -euo pipefail +IFS=$'\n\t' +set -vx + +bundle install + +# Do any other automated setup that you need to do here diff --git a/dagwood.gemspec b/dagwood.gemspec new file mode 100644 index 0000000..d38cb51 --- /dev/null +++ b/dagwood.gemspec @@ -0,0 +1,33 @@ +lib = File.expand_path("lib", __dir__) +$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib) +require "dagwood/version" + +Gem::Specification.new do |spec| + spec.name = "dagwood" + spec.version = Dagwood::VERSION + spec.authors = ["Marc Morinville"] + spec.email = ["marc@rewind.io"] + + spec.summary = %q{TODO: Write a short summary, because RubyGems requires one.} + spec.description = %q{TODO: Write a longer description or delete this line.} + spec.homepage = "TODO: Put your gem's website or public repo URL here." + + spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'" + + spec.metadata["homepage_uri"] = spec.homepage + spec.metadata["source_code_uri"] = "TODO: Put your gem's public repo URL here." + spec.metadata["changelog_uri"] = "TODO: Put your gem's CHANGELOG.md URL here." + + # Specify which files should be added to the gem when it is released. + # The `git ls-files -z` loads the files in the RubyGem that have been added into git. + spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do + `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) } + end + spec.bindir = "exe" + spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } + spec.require_paths = ["lib"] + + spec.add_development_dependency "bundler", "~> 2.0" + spec.add_development_dependency "rake", "~> 10.0" + spec.add_development_dependency "minitest", "~> 5.0" +end diff --git a/lib/dagwood.rb b/lib/dagwood.rb new file mode 100644 index 0000000..ddb5ffc --- /dev/null +++ b/lib/dagwood.rb @@ -0,0 +1,6 @@ +require "dagwood/version" + +module Dagwood + class Error < StandardError; end + # Your code goes here... +end diff --git a/lib/dagwood/version.rb b/lib/dagwood/version.rb new file mode 100644 index 0000000..2221353 --- /dev/null +++ b/lib/dagwood/version.rb @@ -0,0 +1,3 @@ +module Dagwood + VERSION = "0.1.0" +end diff --git a/test/dagwood_test.rb b/test/dagwood_test.rb new file mode 100644 index 0000000..cd0c9ed --- /dev/null +++ b/test/dagwood_test.rb @@ -0,0 +1,11 @@ +require "test_helper" + +class DagwoodTest < Minitest::Test + def test_that_it_has_a_version_number + refute_nil ::Dagwood::VERSION + end + + def test_it_does_something_useful + assert false + end +end diff --git a/test/test_helper.rb b/test/test_helper.rb new file mode 100644 index 0000000..07898c2 --- /dev/null +++ b/test/test_helper.rb @@ -0,0 +1,4 @@ +$LOAD_PATH.unshift File.expand_path("../lib", __dir__) +require "dagwood" + +require "minitest/autorun"