torquebox 4.0.0.alpha1-java

Sign up to get free protection for your applications and to get access to all the features.
Files changed (5) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +84 -0
  3. data/LICENSE +175 -0
  4. data/README.md +214 -0
  5. metadata +271 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d5fb50f527b53a5d7b25804868ff511a85e2cb90
4
+ data.tar.gz: 8fdb4206bad06fcdc3060b67404a1bb8f3e471d4
5
+ SHA512:
6
+ metadata.gz: 23730371d2f8faa8aeff50e521c86e8dfeee5fa04b55bd13eab33ab443cba59d2b997001f14d404c6d7c19e044425c4d5f111dec006262b86e5f42a3b2b8d330
7
+ data.tar.gz: 8781604d73a57ba7346b3afbf5abcae1b469eba7a4b988f243ef3f81f0cd5f7fea594030355f82fce456922677deeab9d82445222a4d7583eaf5d35caacd41dd
@@ -0,0 +1,84 @@
1
+ ## 4.0.0.alpha1 - Big Changes
2
+
3
+ * The gem previous known as 'torqbox' is now 'torquebox-web'
4
+ 4.0.0.alpha1. The 'torquebox' gem pulls in the complete TorqueBox
5
+ 4.0 stack.
6
+
7
+ * The 'torqbox' command is now 'torquebox run'.
8
+
9
+ * Switched from bundling wunderboss-rack.jar to pulling in wunderboss
10
+ and other necessary jars via maven.
11
+
12
+ * All the Rack components that used to exist in wunderboss were moved
13
+ here, so the build was restructured to allow compiling java source
14
+ files with maven dependencies without actually needing to use maven.
15
+
16
+ * Added --context-path option to 'torquebox' command to start web
17
+ applications at a non-root context. In embedded mode this probably
18
+ isn't all that useful outside of testing.
19
+
20
+ * Listen for SIGTERM (in addition to SIGINT) to know when to
21
+ gracefully stop.
22
+
23
+ ## 0.1.7
24
+
25
+ * Bundled wunderboss-rack commit
26
+ fc2378dfe02394fa406e1aba1ac2efe07305cadd that upgrades to Undertow
27
+ 1.0.0.Beta30
28
+
29
+ ## 0.1.6
30
+
31
+ * Bundled wunderboss-rack commit
32
+ 7bce2a980976cb215ff28548d2eef19c48a7410f to fix a bug preventing
33
+ Rails 3.2 apps from working and some Ruby runtime creation/destory
34
+ changes to get our specs passing again
35
+
36
+ ## 0.1.5
37
+
38
+ * Bundled wunderboss-rack commit
39
+ 26ddebe347d5763f76dedeea9da62a95a78c7cb4 that lazily looks up Rack
40
+ environment values as-needed, converts Rack response headers to Java
41
+ response headers more efficiently, and simplifies the
42
+ container/application API a bit
43
+
44
+ ## 0.1.4
45
+
46
+ * Bundled wunderboss-rack commit
47
+ d33c77329993c3697a265987c17ab72ecf751037 which improves performance
48
+ of retrieving HTTP request headers
49
+
50
+ ## 0.1.3
51
+
52
+ * Fix an issue where Rails application started via 'torqbox' would get
53
+ 'Bad file descriptor' errors when trying to write to Rails logs
54
+
55
+ * Bundled wunderboss-rack commit
56
+ 6cb09be797bbb265f35561d736692e2afcaea77d which fixes a bug in HTTP
57
+ header parsing and adds Date and Server response headers
58
+
59
+
60
+ ## 0.1.2
61
+
62
+ * Add torqbox -E <development/test/production> option to control the
63
+ RACK_ENV and RAILS_ENV
64
+
65
+ * Bundled wunderboss-rack.jar commit
66
+ 4fcdf2c1dc9d5665b8f94e97dd0c93d8d64607be which improves web
67
+ performance
68
+
69
+ ## 0.1.1
70
+
71
+ * Fix an issue that prevented `rails s torqbox` from working because
72
+ Rails thought the server stopped immediately after starting
73
+
74
+ * wunderboss-all.jar renamed to wunderboss-rack.jar, updated to commit
75
+ 498d5badcaefffa19e0c529caa62c490497f3079 which improves overall
76
+ throughput by rewriting our Rack implementation from a Servlet
77
+ adapter to an Undertow HttpHandler
78
+
79
+ ## 0.1.0
80
+
81
+ * Initial release
82
+
83
+ * Bundled wunderboss-all.jar from projectodd/wunderboss commit
84
+ 23dd4ab2ca9321a7f57aa09c1dee041eaf1667c9
data/LICENSE ADDED
@@ -0,0 +1,175 @@
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
@@ -0,0 +1,214 @@
1
+ # TorqueBox
2
+
3
+ This is TorqueBox 4 and represents a substantial change in direction
4
+ from previous TorqueBox releases. We're moving to a lightweight,
5
+ embedded model that runs without any Java application server, at the
6
+ expense of a few of the more enterprisy features. For users that want
7
+ to run in a Java application server or need those enterprisy features,
8
+ we'll provide a way to take your TorqueBox application and run it
9
+ unmodified on a stock [WildFly][wildfly] installation.
10
+
11
+ ## Documentation
12
+
13
+ We have various guides available to help with installation, migration,
14
+ usage, and deployment of TorqueBox 4.
15
+
16
+ - [Installation Guide](docs/installation.md)
17
+ - [Migration Guide](docs/migration.md)
18
+ - [Web Guide](docs/web.md)
19
+ - [Messaging Guide](docs/messaging.md)
20
+ - [Scheduling Guide](docs/scheduling.md)
21
+ - [Caching Guide](docs/caching.md)
22
+ - [Executable Jar Guide](docs/jar.md)
23
+ - [Wildfly Guide](docs/wildfly.md)
24
+
25
+
26
+ ## Quickstart for running TorqueBox
27
+
28
+ ### Requirements
29
+
30
+ TorqueBox requires JRuby 1.7.x running on Java 7+ in Ruby 1.9 or 2.0
31
+ mode. The code has only been tested on JRuby 1.7.6 and higher but
32
+ should work on earlier versions.
33
+
34
+ ### Installation
35
+
36
+ Read the [Installation Guide](docs/installation.md) for installation
37
+ details.
38
+
39
+ ### Running directly
40
+
41
+ From inside your Rack application's root directory:
42
+
43
+ torquebox run
44
+
45
+ ### Rails
46
+
47
+ Ensure `torquebox` is in your `Gemfile`, then:
48
+
49
+ rails s torquebox
50
+
51
+ ### Rack
52
+
53
+ rackup -s torquebox
54
+
55
+
56
+ ## Motivation
57
+
58
+ We want a smaller, more modular TorqueBox that is easier to get
59
+ started with, embeddable, and lets users bring in additional
60
+ functionality as-needed. More details of our motivation and community
61
+ feedback are expressed in [an email thread][tb_future_thread] from the
62
+ torquebox-user mailing list.
63
+
64
+ ## Technology
65
+
66
+ TorqueBox runs on JRuby and sits on top of a new lightweight, pluggable,
67
+ polyglot server codenamed [WunderBoss][wunderboss] (at least for
68
+ now). All the new features of TorqueBox will be implemented in
69
+ WunderBoss then exposed via a Ruby API in the TorqueBox project. This
70
+ lets other projects, in other languages, reuse the same functionality
71
+ by creating small language-specific API wrappers.
72
+
73
+ The web portion of WunderBoss uses [JBoss Undertow][undertow], which
74
+ is also the same web server used in [WildFly][wildfly] (the successor
75
+ to JBoss Application Server).
76
+
77
+ We aim to reuse the same underlying components as WildFly so that
78
+ TorqueBox applications can run on top of WildFly in addition to
79
+ running without it, to give users an option between a full-blown Java
80
+ application server and a very lightweight, minimal server.
81
+
82
+
83
+ ## Current status
84
+
85
+ Right now TorqueBox 4 provides a high-performance Rack implementation
86
+ for web applications and basic APIs for messaging, caching, and
87
+ scheduled jobs. The Rack support is considered production-ready, but
88
+ the messaging, caching, and scheduling implementations are still in a
89
+ bit more flux.
90
+
91
+ ## Roadmap
92
+
93
+ We're developing TorqueBox 4 while also maintaining TorqueBox 3, and
94
+ we expect it to take some time before TorqueBox 4 comes out of alpha
95
+ and betas and into a final release.
96
+
97
+ ## Building TorqueBox
98
+
99
+ bundle install
100
+ rake build
101
+
102
+ ## Running specs
103
+
104
+ rake spec
105
+
106
+ ## Running integration tests
107
+
108
+ Make sure `phantomjs` is available on your $PATH -
109
+ http://phantomjs.org/download.html.
110
+
111
+ The first time you run the integration tests may take longer as
112
+ bundler gets invoked for each test application to install its
113
+ dependencies. Subsequent runs with the same JRuby installation should
114
+ be faster.
115
+
116
+ cd integration-tests
117
+ rake spec
118
+
119
+ ## Running a single integration test
120
+
121
+ cd integration-tests
122
+ SPEC=spec/basic_sinatra_spec.rb rake spec
123
+
124
+ ## Running specs with more verbose output
125
+
126
+ DEBUG=true rake spec
127
+
128
+ ## Running all integration test variants (disk, jar, wildfly)
129
+
130
+ There are several variants of integration tests. Each runs the same
131
+ applications and same specs, but packaged in different ways. This
132
+ takes quite a bit longer, but is what CI runs.
133
+
134
+ rake spec:all
135
+
136
+ ## Installing from source
137
+
138
+ rake install
139
+
140
+ ## Releasing
141
+
142
+ ### Preparation
143
+
144
+ TorqueBox 4 is released from the `torqbox` branch of
145
+ [torquebox/torquebox-release][release_repo].
146
+
147
+ Set up this repository as an additional remote for your workspace:
148
+
149
+ git remote add release git@github.com:torquebox/torquebox-release.git
150
+
151
+ Ensure that the `torqbox` branch has the contents you wish to release. Using the `-f`
152
+ flag to force is allowed in this case, since the **torquebox-release** repository is not
153
+ a public-facing human-cloneable repository.
154
+
155
+ git push release torqbox:torqbox -f
156
+
157
+
158
+ ### Perform the build
159
+
160
+ Using the [build system](http://projectodd.ci.cloudbees.com/), select
161
+ the **torquebox4-release** job, entering in the branch to release from
162
+ (usually 'torqbox'), the version to release, and the next version
163
+ after release.
164
+
165
+ If something goes wrong in the release job and it needs to run again,
166
+ be sure to reset the torquebox-release repository with the correct code first:
167
+
168
+ git push release torqbox:torqbox -f
169
+
170
+ ### Deploy RubyGems
171
+
172
+ After the job complete successfully, the generated RubyGems will need
173
+ to be manually deployed. Download them from the job and push each
174
+ using:
175
+
176
+ gem push <gem_name>.gem
177
+
178
+ You'll have to be an owner of the gems to do this. Bug bbrowning,
179
+ bobmcw, or tcrawley if you are not.
180
+
181
+ ### Build the release API documentation
182
+
183
+ Under the **Release** tab on CI, there is a
184
+ **torquebox4-release-docs** job which builds against a tag in the
185
+ release git repository, and publishes the API documentation to
186
+ torquebox.org. No preparation or modification of the release
187
+ repository is needed. In fact, the exact tag pushed by the primary
188
+ **torquebox-release** job is required to build the docs.
189
+
190
+ ### Push changes from the release repository to the official repository
191
+
192
+ git fetch release
193
+ git merge release/torqbox
194
+ git push origin torqbox
195
+
196
+ ### Release the project in JIRA
197
+
198
+ ### Announce it
199
+
200
+ #### Post it on `torquebox.org`
201
+
202
+ #### Notify the `torquebox-users@` list
203
+
204
+ #### Tweet it.
205
+
206
+ #### Set the /topic in #torquebox IRC channel using ChanServ (if you can).
207
+
208
+
209
+ [tb_future_thread]: http://markmail.org/thread/4ffelg3qklycwhfo
210
+ [community]: http://torquebox.org/community/
211
+ [wunderboss]: https://github.com/projectodd/wunderboss
212
+ [undertow]: http://undertow.io/
213
+ [wildfly]: http://wildfly.org/
214
+ [release_repo]: http://github.com/torquebox/torquebox-release
metadata ADDED
@@ -0,0 +1,271 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: torquebox
3
+ version: !ruby/object:Gem::Version
4
+ version: 4.0.0.alpha1
5
+ platform: java
6
+ authors:
7
+ - The TorqueBox Team
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-12-04 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: torquebox-core
15
+ version_requirements: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 4.0.0.alpha1
20
+ requirement: !ruby/object:Gem::Requirement
21
+ requirements:
22
+ - - '='
23
+ - !ruby/object:Gem::Version
24
+ version: 4.0.0.alpha1
25
+ prerelease: false
26
+ type: :runtime
27
+ - !ruby/object:Gem::Dependency
28
+ name: torquebox-scheduling
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '='
32
+ - !ruby/object:Gem::Version
33
+ version: 4.0.0.alpha1
34
+ requirement: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - '='
37
+ - !ruby/object:Gem::Version
38
+ version: 4.0.0.alpha1
39
+ prerelease: false
40
+ type: :runtime
41
+ - !ruby/object:Gem::Dependency
42
+ name: torquebox-web
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '='
46
+ - !ruby/object:Gem::Version
47
+ version: 4.0.0.alpha1
48
+ requirement: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - '='
51
+ - !ruby/object:Gem::Version
52
+ version: 4.0.0.alpha1
53
+ prerelease: false
54
+ type: :runtime
55
+ - !ruby/object:Gem::Dependency
56
+ name: jbundler
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 0.5.4
62
+ requirement: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - ~>
65
+ - !ruby/object:Gem::Version
66
+ version: 0.5.4
67
+ prerelease: false
68
+ type: :development
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ requirement: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - '>='
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ prerelease: false
82
+ type: :development
83
+ - !ruby/object:Gem::Dependency
84
+ name: rake-compiler
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ requirement: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - '>='
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ prerelease: false
96
+ type: :development
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 2.99.0
104
+ requirement: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ~>
107
+ - !ruby/object:Gem::Version
108
+ version: 2.99.0
109
+ prerelease: false
110
+ type: :development
111
+ - !ruby/object:Gem::Dependency
112
+ name: torquespec
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: '0.6'
118
+ requirement: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - ~>
121
+ - !ruby/object:Gem::Version
122
+ version: '0.6'
123
+ prerelease: false
124
+ type: :development
125
+ - !ruby/object:Gem::Dependency
126
+ name: poltergeist
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 1.5.1
132
+ requirement: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ~>
135
+ - !ruby/object:Gem::Version
136
+ version: 1.5.1
137
+ prerelease: false
138
+ type: :development
139
+ - !ruby/object:Gem::Dependency
140
+ name: activesupport
141
+ version_requirements: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ~>
144
+ - !ruby/object:Gem::Version
145
+ version: '4.1'
146
+ requirement: !ruby/object:Gem::Requirement
147
+ requirements:
148
+ - - ~>
149
+ - !ruby/object:Gem::Version
150
+ version: '4.1'
151
+ prerelease: false
152
+ type: :development
153
+ - !ruby/object:Gem::Dependency
154
+ name: edn
155
+ version_requirements: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - '='
158
+ - !ruby/object:Gem::Version
159
+ version: 1.0.3
160
+ requirement: !ruby/object:Gem::Requirement
161
+ requirements:
162
+ - - '='
163
+ - !ruby/object:Gem::Version
164
+ version: 1.0.3
165
+ prerelease: false
166
+ type: :development
167
+ - !ruby/object:Gem::Dependency
168
+ name: yard
169
+ version_requirements: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ~>
172
+ - !ruby/object:Gem::Version
173
+ version: 0.8.7.4
174
+ requirement: !ruby/object:Gem::Requirement
175
+ requirements:
176
+ - - ~>
177
+ - !ruby/object:Gem::Version
178
+ version: 0.8.7.4
179
+ prerelease: false
180
+ type: :development
181
+ - !ruby/object:Gem::Dependency
182
+ name: yard-doctest
183
+ version_requirements: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ~>
186
+ - !ruby/object:Gem::Version
187
+ version: 0.1.2
188
+ requirement: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - ~>
191
+ - !ruby/object:Gem::Version
192
+ version: 0.1.2
193
+ prerelease: false
194
+ type: :development
195
+ - !ruby/object:Gem::Dependency
196
+ name: kramdown
197
+ version_requirements: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ~>
200
+ - !ruby/object:Gem::Version
201
+ version: 1.4.1
202
+ requirement: !ruby/object:Gem::Requirement
203
+ requirements:
204
+ - - ~>
205
+ - !ruby/object:Gem::Version
206
+ version: 1.4.1
207
+ prerelease: false
208
+ type: :development
209
+ - !ruby/object:Gem::Dependency
210
+ name: builder
211
+ version_requirements: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ~>
214
+ - !ruby/object:Gem::Version
215
+ version: 3.2.2
216
+ requirement: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - ~>
219
+ - !ruby/object:Gem::Version
220
+ version: 3.2.2
221
+ prerelease: false
222
+ type: :development
223
+ - !ruby/object:Gem::Dependency
224
+ name: rubocop
225
+ version_requirements: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - ~>
228
+ - !ruby/object:Gem::Version
229
+ version: 0.25.0
230
+ requirement: !ruby/object:Gem::Requirement
231
+ requirements:
232
+ - - ~>
233
+ - !ruby/object:Gem::Version
234
+ version: 0.25.0
235
+ prerelease: false
236
+ type: :development
237
+ description:
238
+ email: torquebox-dev@torquebox.org
239
+ executables: []
240
+ extensions: []
241
+ extra_rdoc_files: []
242
+ files:
243
+ - CHANGELOG.md
244
+ - README.md
245
+ - LICENSE
246
+ homepage: http://torquebox.org/torqbox
247
+ licenses:
248
+ - Apache-2.0
249
+ metadata: {}
250
+ post_install_message:
251
+ rdoc_options: []
252
+ require_paths:
253
+ - lib
254
+ required_ruby_version: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - '>='
257
+ - !ruby/object:Gem::Version
258
+ version: 1.9.3
259
+ required_rubygems_version: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - '>'
262
+ - !ruby/object:Gem::Version
263
+ version: 1.3.1
264
+ requirements: []
265
+ rubyforge_project:
266
+ rubygems_version: 2.1.9
267
+ signing_key:
268
+ specification_version: 4
269
+ summary: TorqueBox Next Generation
270
+ test_files: []
271
+ has_rdoc: