rage-rb 0.1.0 → 0.1.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 213f5a221d8e6cac6f5fde63e3ffaf17ea9258b8e62b22e101669efac42b3e03
4
- data.tar.gz: 8a2ff71ae4ade7ac77b4734557b345e93794a2a7559d7ca2f65186e102bfad75
3
+ metadata.gz: 88726c2fad086904077b7822723c8f840fee5beac920f21d08862c637c2c4b42
4
+ data.tar.gz: 37520e426a1036244dab498bbc3bb7c4155c2886ad3ecc3293f376d4dbcd6390
5
5
  SHA512:
6
- metadata.gz: 2389af124774b3c65aab25b88082df641af660a047d050ec0ac494f64a0d01054bd649b95e91cce0dacf98a685a749002e0fcebbf10bf6660f85b5b06faf0c2f
7
- data.tar.gz: 20d7122017e6fdb1084a762e6326cc5e140b814014353dcb88ea525f38cfe9a23cb8fc2a64e8a27e4b772231b8cb5b10cb74b2e000846f14316404ea79b7b6b9
6
+ metadata.gz: 1d635e49fc41cc68889ff1605ee1055e5ef443987b310730d91c675ca96083115f8de871a7f6d738535ee98790d2bd8b540aa476f18676fcbf6592dc719e60db
7
+ data.tar.gz: cdd975b3be0832d841455d736bdf1caa23d916e357ad8d20b641303b00d34dd2711fc8de34cb9a5488020ec59ec283aafc1aacb990119c075565b7c35dbfcfdd
data/README.md CHANGED
@@ -1,12 +1,15 @@
1
1
  # Rage
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/rage-rb.svg)](https://badge.fury.io/rb/rage-rb)
4
+ ![Tests](https://github.com/rage-rb/rage/actions/workflows/main.yml/badge.svg)
5
+
3
6
  Inspired by [Deno](https://deno.com) and built on top of [Iodine](https://github.com/rage-rb/iodine), this is a Ruby web framework that is based on the following design principles:
4
7
 
5
8
  * **Rails compatible API** - Rails' API is clean, straightforward, and simply makes sense. I believe it was one of the reasons why Rails was so successful in the past.
6
9
 
7
10
  * **High performance** - some think performance is not a major metric for a framework, but I don't believe it's true. Poor performance is a risk, and in today's world, companies refuse to use risky technologies.
8
11
 
9
- * **API-only** - the only technology we should use to create web UI is JavaScript. I recommend checking out [Vite](https://vitejs.dev) if you don't know where to start.
12
+ * **API-only** - the only technology we should be using to create web UI is JavaScript. I recommend checking out [Vite](https://vitejs.dev) if you don't know where to start.
10
13
 
11
14
  * **Acceptance of modern Ruby** - the framework includes a fiber scheduler, which means your code never blocks while waiting on IO.
12
15
 
@@ -16,7 +19,7 @@ This framework results from reflecting on [Ruby's declining popularity](https://
16
19
 
17
20
  Install the gem:
18
21
  ```
19
- $ gem install rage
22
+ $ gem install rage-rb
20
23
  ```
21
24
 
22
25
  Create a new app:
@@ -64,7 +67,7 @@ end
64
67
  ```
65
68
  ![Time to complete 100 requests](https://github.com/rage-rb/rage/assets/2270393/007044e9-efe0-4675-9cab-8a4868154118)
66
69
 
67
- ## Milestones
70
+ ## Upcoming releases
68
71
 
69
72
  Version | Changes
70
73
  ------- |------------
@@ -1,6 +1,6 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem "rage"
3
+ gem "rage-rb"
4
4
 
5
5
  # Build JSON APIs with ease
6
6
  # gem "alba"
data/lib/rage/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rage
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
data/lib/rage-rb.rb ADDED
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "rack"
4
+ require "json"
5
+ require "iodine"
6
+
7
+ module Rage
8
+ def self.application
9
+ Application.new(__router)
10
+ end
11
+
12
+ def self.routes
13
+ Rage::Router::DSL.new(__router)
14
+ end
15
+
16
+ def self.__router
17
+ @__router ||= Rage::Router::Backend.new
18
+ end
19
+
20
+ module Router
21
+ module Strategies
22
+ end
23
+ end
24
+ end
25
+
26
+ module RageController
27
+ end
28
+
29
+ require_relative "rage/application"
30
+ require_relative "rage/fiber"
31
+ require_relative "rage/fiber_scheduler"
32
+
33
+ require_relative "rage/router/strategies/host"
34
+ require_relative "rage/router/backend"
35
+ require_relative "rage/router/constrainer"
36
+ require_relative "rage/router/dsl"
37
+ require_relative "rage/router/handler_storage"
38
+ require_relative "rage/router/node"
39
+
40
+ require_relative "rage/controller/api"
data/lib/rage.rb CHANGED
@@ -1,40 +1 @@
1
- # frozen_string_literal: true
2
-
3
- require "rack"
4
- require "json"
5
- require "iodine"
6
-
7
- module Rage
8
- def self.application
9
- Application.new(__router)
10
- end
11
-
12
- def self.routes
13
- Rage::Router::DSL.new(__router)
14
- end
15
-
16
- def self.__router
17
- @__router ||= Rage::Router::Backend.new
18
- end
19
-
20
- module Router
21
- module Strategies
22
- end
23
- end
24
- end
25
-
26
- module RageController
27
- end
28
-
29
- require_relative "rage/application"
30
- require_relative "rage/fiber"
31
- require_relative "rage/fiber_scheduler"
32
-
33
- require_relative "rage/router/strategies/host"
34
- require_relative "rage/router/backend"
35
- require_relative "rage/router/constrainer"
36
- require_relative "rage/router/dsl"
37
- require_relative "rage/router/handler_storage"
38
- require_relative "rage/router/node"
39
-
40
- require_relative "rage/controller/api"
1
+ require "rage-rb"
data/rage.gemspec CHANGED
@@ -11,7 +11,7 @@ Gem::Specification.new do |spec|
11
11
  spec.summary = "Fast web framework compatible with Rails."
12
12
  spec.homepage = "https://github.com/rage-rb/rage"
13
13
  spec.license = "MIT"
14
- spec.required_ruby_version = ">= 3.0.0"
14
+ spec.required_ruby_version = ">= 3.1.0"
15
15
 
16
16
  spec.metadata["homepage_uri"] = spec.homepage
17
17
  spec.metadata["source_code_uri"] = "https://github.com/rage-rb/rage"
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = ["rage"]
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- spec.add_dependency "thor"
30
+ spec.add_dependency "thor", "~> 1.0"
31
31
  spec.add_dependency "rack", "~> 2.0"
32
32
  spec.add_dependency "rage-iodine", "~> 1.0"
33
33
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rage-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roman Samoilov
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-09-15 00:00:00.000000000 Z
11
+ date: 2023-09-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rack
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -68,6 +68,7 @@ files:
68
68
  - README.md
69
69
  - Rakefile
70
70
  - exe/rage
71
+ - lib/rage-rb.rb
71
72
  - lib/rage.rb
72
73
  - lib/rage/application.rb
73
74
  - lib/rage/cli.rb
@@ -106,7 +107,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
107
  requirements:
107
108
  - - ">="
108
109
  - !ruby/object:Gem::Version
109
- version: 3.0.0
110
+ version: 3.1.0
110
111
  required_rubygems_version: !ruby/object:Gem::Requirement
111
112
  requirements:
112
113
  - - ">="