rwby 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 49d43566b964841a1960a442a8e19ab328b9c8d8afed4a7d239dccba604c58fd
4
+ data.tar.gz: 5bc86ad7dbd80eb58d3657e2cbe83d846e8ba73aa4b15892e76eea4d180496c1
5
+ SHA512:
6
+ metadata.gz: 00f6bb05a6f79f586e2a5396c4cab16cac6da414d8a614021ccef713c9a44fdfc7667837c31ecead8ce72802719d38754d290aef6132599a6220507d3961ee4c
7
+ data.tar.gz: 1c2036868a6db491202cca0a44692d4d2ddf33cf8a33a3795808d9cd81901004a1b9f36de6b3e9458b3e61644f98a6987576e669798c511b274587e6660c1c90
@@ -0,0 +1,9 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /_yardoc/
4
+ /coverage/
5
+ /doc/
6
+ /pkg/
7
+ /spec/reports/
8
+ /tmp/
9
+ *.gem
@@ -0,0 +1,6 @@
1
+ ---
2
+ language: ruby
3
+ cache: bundler
4
+ rvm:
5
+ - 2.7.1
6
+ before_install: gem install bundler -v 2.1.4
@@ -0,0 +1,24 @@
1
+ # v/0.0.3
2
+ Updated version to test changes with RubyGems as well as local development.
3
+
4
+ Added nonstandard license.
5
+
6
+ Added rack dependency version.
7
+
8
+ Enabled Application class under Rwby module.
9
+
10
+ # v/0.0.2
11
+ Updated the version number to reflect what's on the changelog. I probably won't do a "version bump" every commit, but for now, I want to keep a bit more detailed of a log, to get into the habit of recording and tracking the changes I've made. Hopefully I can build out a lot a data to mine, looking at things like how often do I make updates, what kinds of changes do I put in per commit or version bump, how that all evolves over time, if I end up being able to sustain a consistent level of effort into a pure training and skills enhancement project like this, etc.
12
+
13
+ Still not much of a shippable product. I want to think about this acutely per changelog entry. How many entries does it take me to get to something I would consider shippable? I want to be strict about it. If it does even one thing well, such as single sign on baked into every aspect of the framework, for API calls and for apps, with service principal accounts for machines (like roles in AWS IAM), as well as for users, then that's considered shippable. Even that is too huge of a feature to wait until completion. But let's make sure at least the basic functionality - whatever that single laser-sharp focused thing ends up being - let's make sure that key thing is foundational and opinionated and broadcast to the users of our framework: application developers. They need to be able to leverage the framework and build something on top of it that yields to them efficient business value.
14
+
15
+ Added runtime dependency of rack.
16
+
17
+ # v/0.0.1
18
+ Initial commit and changelog commit of RWBY inspired Rack-based web framework.
19
+
20
+ Not much of a shippable product.
21
+
22
+ Mostly a deep dive exercise in building a modern web framework on sound design goals and principles. Heavily influenced by Rails exposure as well as some of the opinions and direction of thought leaders such as the Gang of Four (Helm, Johnson, Gamma, Booch), Martin Fowler, DHH, Udi Dahan, and Uncle Bob Martin, to name a few.
23
+
24
+ Guided by Noah Gibbs' excellent book, Rebuilding Rails.
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in rwby.gemspec
4
+ gemspec
5
+
6
+ gem "rake", "~> 12.0"
7
+ gem "minitest", "~> 5.0"
@@ -0,0 +1,23 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ rwby (0.0.2)
5
+ rack (~> 2)
6
+
7
+ GEM
8
+ remote: https://rubygems.org/
9
+ specs:
10
+ minitest (5.14.1)
11
+ rack (2.2.3)
12
+ rake (12.3.3)
13
+
14
+ PLATFORMS
15
+ ruby
16
+
17
+ DEPENDENCIES
18
+ minitest (~> 5.0)
19
+ rake (~> 12.0)
20
+ rwby!
21
+
22
+ BUNDLED WITH
23
+ 2.1.4
@@ -0,0 +1,36 @@
1
+ # Rwby
2
+
3
+ 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/rwby`. To experiment with that code, run `bin/console` for an interactive prompt.
4
+
5
+ TODO: Delete this and the text above, and describe your gem
6
+
7
+ ## Installation
8
+
9
+ Add this line to your application's Gemfile:
10
+
11
+ ```ruby
12
+ gem 'rwby'
13
+ ```
14
+
15
+ And then execute:
16
+
17
+ $ bundle install
18
+
19
+ Or install it yourself as:
20
+
21
+ $ gem install rwby
22
+
23
+ ## Usage
24
+
25
+ TODO: Write usage instructions here
26
+
27
+ ## Development
28
+
29
+ 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.
30
+
31
+ 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).
32
+
33
+ ## Contributing
34
+
35
+ Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/rwby.
36
+
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+ require "rake/testtask"
3
+
4
+ Rake::TestTask.new(:test) do |t|
5
+ t.libs << "test"
6
+ t.libs << "lib"
7
+ t.test_files = FileList["test/**/*_test.rb"]
8
+ end
9
+
10
+ task :default => :test
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "rwby"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ # require "pry"
11
+ # Pry.start
12
+
13
+ require "irb"
14
+ IRB.start(__FILE__)
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
@@ -0,0 +1,17 @@
1
+ # rwby/lib/rwby.rb
2
+ require "rwby/version"
3
+
4
+ module Rwby
5
+ class Application
6
+ def call(env)
7
+ [
8
+ 200,
9
+ {'Content-Type' => 'text/html'},
10
+ ["Hello from RWBY Red!"]
11
+ ]
12
+ end
13
+ end
14
+
15
+ class Error < StandardError; end
16
+ # Your code goes here...
17
+ end
@@ -0,0 +1,3 @@
1
+ module Rwby
2
+ VERSION = "0.0.3"
3
+ end
@@ -0,0 +1,31 @@
1
+ require_relative 'lib/rwby/version'
2
+
3
+ Gem::Specification.new do |spec|
4
+ spec.name = "rwby"
5
+ spec.version = Rwby::VERSION
6
+ spec.authors = ["Ahad L. Amdani"]
7
+ spec.email = ["ahad@explainly.io"]
8
+ spec.license = "Nonstandard"
9
+
10
+ spec.summary = %q{A RWBY-inspired Rack-based Web Framework}
11
+ spec.description = %q{A Rack-based web framework heavily inspired by Rails and themed from Rooster Teeth's RWBY}
12
+ spec.homepage = "https://github.com/explainly/rwby"
13
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
14
+
15
+ # spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
16
+
17
+ spec.metadata["homepage_uri"] = spec.homepage
18
+ spec.metadata["source_code_uri"] = spec.homepage
19
+ spec.metadata["changelog_uri"] = "https://github.com/explainly/rwby/blob/main/CHANGELOG.md"
20
+
21
+ # Specify which files should be added to the gem when it is released.
22
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
23
+ spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
24
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
25
+ end
26
+ spec.bindir = "exe"
27
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
28
+ spec.require_paths = ["lib"]
29
+
30
+ spec.add_runtime_dependency "rack", '~> 2'
31
+ end
metadata ADDED
@@ -0,0 +1,73 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: rwby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.3
5
+ platform: ruby
6
+ authors:
7
+ - Ahad L. Amdani
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2020-07-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rack
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2'
27
+ description: A Rack-based web framework heavily inspired by Rails and themed from
28
+ Rooster Teeth's RWBY
29
+ email:
30
+ - ahad@explainly.io
31
+ executables: []
32
+ extensions: []
33
+ extra_rdoc_files: []
34
+ files:
35
+ - ".gitignore"
36
+ - ".travis.yml"
37
+ - CHANGELOG.md
38
+ - Gemfile
39
+ - Gemfile.lock
40
+ - README.md
41
+ - Rakefile
42
+ - bin/console
43
+ - bin/setup
44
+ - lib/rwby.rb
45
+ - lib/rwby/version.rb
46
+ - rwby.gemspec
47
+ homepage: https://github.com/explainly/rwby
48
+ licenses:
49
+ - Nonstandard
50
+ metadata:
51
+ homepage_uri: https://github.com/explainly/rwby
52
+ source_code_uri: https://github.com/explainly/rwby
53
+ changelog_uri: https://github.com/explainly/rwby/blob/main/CHANGELOG.md
54
+ post_install_message:
55
+ rdoc_options: []
56
+ require_paths:
57
+ - lib
58
+ required_ruby_version: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: 2.3.0
63
+ required_rubygems_version: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ requirements: []
69
+ rubygems_version: 3.1.4
70
+ signing_key:
71
+ specification_version: 4
72
+ summary: A RWBY-inspired Rack-based Web Framework
73
+ test_files: []