Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Generate api docment(OpenAPI) side only from Rails
routing.
Provides a rake command to help generate
, view
, and edit
OpenAPI documents.
bunlde exec rake routes:oas:init # initialize
bundle exec rake routes:oas:docs # generate
bundle exec rake routes:oas:ui # view
bundle exec rake routes:oas:editor # edit
bundle exec rake routes:oas:monitor # monitor
bundle exec rake routes:oas:build # build
bundle exec rake routes:oas:clean # clean
bundle exec rake routes:oas:analyze # analyze
bundle exec rake routes:oas:deploy # deploy
Add this line to your application's Gemfile:
group :development do
gem 'r2-oas'
end
And then execute:
$ bundle
Or install it yourself as:
$ gem install r2-oas
If you want to view with Swagger UI
or edit with Swagger Editor
, This gem needs the following:
If you do not have it download as below.
$ docker pull swaggerapi/swagger-editor:latest
$ docker pull swaggerapi/swagger-ui:latest
$ brew cask install chromedriver
After requiring a gem and Configure Rakefile
in your rails project
R2OAS.load_tasks
$ bundle exec rake routes:oas:init
create oas_docs
create oas_docs/.paths
create oas_docs/plugins/helpers
create oas_docs/tasks/helpers
create oas_docs/plugins/.gitkeep
create oas_docs/plugins/helpers/.gitkeep
create oas_docs/tasks/.gitkeep
create oas_docs/tasks/helpers/.gitkeep
$ bundle exec rake routes:oas:docs
$ bundle exec rake routes:oas:editor
You can execute the following command in the root directory of rails.
The following are examples of typical command usage.
Full docs are available at https://yukihirop.github.io/r2-oas
Initialize r2-oas.
$ bundle exec rake routes:oas:init
create oas_docs
create oas_docs/.paths
create oas_docs/plugins/helpers
create oas_docs/tasks/helpers
create oas_docs/plugins/.gitkeep
create oas_docs/plugins/helpers/.gitkeep
create oas_docs/tasks/.gitkeep
create oas_docs/tasks/helpers/.gitkeep
Generate docs.
$ bundle exec rake routes:oas:docs # Generate docs
$ PATHS_FILE="oas_docs/schema/paths/api/v1/task.yml" bundle exec rake routes:oas:docs # Generate docs by specify unit paths
Start swagger editor.
$ bundle exec rake routes:oas:editor # Start swagger editor
$ PATHS_FILE="oas_docs/schema/paths/api/v1/task.yml" bundle exec rake routes:oas:editor # Start swagger editor by specify unit paths
Start swagger ui.
$ bundle exec rake routes:oas:ui # Start swagger ui
$ PATHS_FILE="oas_docs/schema/paths/api/v1/task.yml" bundle exec rake routes:oas:ui # Start swagger ui by specify unit paths
Build docs.
Plugin is applied
$ bundle exec rake routes:oas:build
Analyze docs.
Reads OpenAPI format document and divides it into several parts to generate a source file
$ OAS_FILE="~/Desktop/swagger.yml" bundle exec rake routes:oas:analyze
Full docs are available at https://yukihirop.github.io/r2-oas
Full docs are available at https://yukihirop.github.io/r2-oas/#/schema/3.0.0
tag name
represents controller name
and determine paths file name
.
controller name
is Api::V1::UsersController
, tag_name
is api/v1/user
. and paths file name
is api/v1/user.yml
_
of components/{schemas,requestBodies, ...} name
convert /
when save file.
components/schemas name
is Api_V1_User
, components/schemas file name
is api/v1/user.yml
._
is supposed to be used to express namespace
.Namespace1_Namespace2_Model
..
of components/{schemas,requestBodies, ...} name
convert /
when save file.
components/schemas name
is api.v1.User
, components/schemas file name
is api/v1/user.yml
..
is supposed to be used to express namespace
.namespace1.namespace2.Model
.All settings are optional
Full docs are available at https://yukihirop.github.io/r2-oas/#/setting/configure
/bin/bash devscript/all_support_ruby.sh bundle
.
.
.
===== Bundle install for All Support Ruby Result =====
ruby-2.5.8: 0
ruby-2.6.6: 0
ruby-2.7.1: 0
======================================================
If specify ruby version 2.6.6
and 2.7.1
/bin/bash devscript/all_support_ruby.sh bundle 2.6.6 2.7.1
.
.
.
===== Bundle install for All Support Ruby Result =====
ruby-2.6.6: 0
ruby-2.7.1: 0
======================================================
/bin/bash devscript/all_support_ruby.sh rspec
.
.
.
===== Rspec for All Support Ruby Result =====
ruby-2.5.8: 0
ruby-2.6.6: 0
ruby-2.7.1: 0
=============================================
If specify ruby version 2.6.6
and 2.7.1
/bin/bash devscript/all_support_ruby.sh rspec 2.6.6 2.7.1
.
.
.
===== Rspec for All Support Ruby Result =====
ruby-2.6.6: 0
ruby-2.7.1: 0
=============================================
Use rack-cors to enable CORS.
require 'rack/cors'
use Rack::Cors do
allow do
origins '*'
resource '*', headers: :any, methods: [ :get, :post, :put, :delete, :options ]
end
end
Alternatively you can set CORS headers in a before
block.
before do
header['Access-Control-Allow-Origin'] = '*'
header['Access-Control-Request-Method'] = '*'
end
The gem is available as open source under the terms of the MIT License.
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)FAQs
Unknown package
We found that r2-oas demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.