Introduction
The Bleeding Edge
You have three ways of using Padrino edge; the first one is using the git source code in a gem file, the second one is using a vendored version, and the third is to install edge into system gems from repository.
Git in Gemfile is suitable for those that only want Padrino's latest bleeding edge code.
System Gems is suitable for people that want to use the latest padrino and
freely use padrino g
and padrino
.
Path in Gemfile is recommended for developers because they can share their changes and merge repos between projects.
Git in Gemfile
# Edit Gemfile
gem 'padrino', :git => "git://github.com/padrino/padrino-framework.git"
and from console:
$ bundle install
after that you need to run your app in the bundler environment because if you call directly:
$ padrino g admin
you will use system wide gems. So for do that remember to run commands with
bundle exec
as a prefix like:
$ bundle exec padrino start
$ bundle exec padrino g controller foo
$ bundle exec padrino g admin
$ bundle exec padrino g model post
You can find more info about bundler usage on their site.
System Gems
If you want to install the padrino edge gems into your system rubygems, simply follow the following steps. First, clone the padrino repository:
$ cd /tmp
$ git clone git://github.com/padrino/padrino-framework.git
Next, we should mark the version as dev(elopment) to get a fresh set of gems:
# /tmp/padrino-framework/padrino-core/lib/padrino-core/version.rb
module Padrino
VERSION = '0.13.1.beta1' unless defined?(Padrino::VERSION) # Change to bump version
#...
end
Finally, run the fresh
rake command to install the latest version:
padrino-framework$ rake fresh
~/.rvm/rubies/ruby-2.2.1/bin/ruby -S rake install
padrino-support 0.13.1 built to pkg/padrino-support-0.13.1.gem.
padrino-support (0.13.1) installed.
~/.rvm/rubies/ruby-2.2.1/bin/ruby -S rake install
padrino-core 0.13.1 built to pkg/padrino-core-0.13.1.gem.
padrino-core (0.13.1) installed.
...
this will install the latest 'edge' gems into rubygems. Be sure to verify your project's Gemfile depends on the edge version you installed:
Gemfile
# Padrino
gem 'padrino', '0.13.1.beta1'
or you can generate a new project easily and you can use padrino commands normally:
$ padrino g project test-project
This should allow you to use the latest padrino code from your system.
Path in Gemfile
$ mkdir /src
# Remember to use your fork
$ git clone git://github.com/padrino/padrino-framework.git
# Edit your ~/.profile or ~/.bash_profile or some and add
alias padrino-dev="/src/padrino-framework/padrino-core/bin/padrino"
alias padrino-dev-gen="/src/padrino-framework/padrino-gen/bin/padrino-gen" # you can omit this
Reload source or open a new terminal window and check if you have padrino-dev and padrino-dev-gen commands correctly added to your path.
Create a new padrino project:
padrino-dev-gen project test-project --dev
or if you don't have padrino-dev-gen
padrino-dev g project test-project --dev
This will append the following lines to your test-app/Gemfile:
# Vendored Padrino
%w(core gen helpers mailer admin).each do |gem|
gem 'padrino-' + gem, :path => "/src/padrino-framework/padrino-" + gem
end
Make changes accordingly to your /src/padrino-framework to see them reflected through your padrino project now using your own vendored version of the framework.
REMEMBER to add always --dev
when generating a project because without
that the generated project will use the gem instead the git checkout.
last updated: 2022-02-22
comments powered by Disqus