Changeset 255

Show
Ignore:
Timestamp:
03/03/08 18:59:18 (6 months ago)
Author:
glenn
Message:

Starting change to gem.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • plugins/frozen_gems/trunk/CHANGELOG

    r254 r255  
    1 FrozenGems changelog 
    2 ==================== 
     1=== 0.4.0 / 2008-03-03 
    32 
    4 TODOs (someday/maybe) 
    5 * handle gems with binary components 
    6 * add --frozen option (analogous to --local) to restrict operations to *only* the frozen repository. 
     3* conversion from plugin to gem 
    74 
    8 0.3 
     5=== 0.3.0 / 2008-02-29 
     6 
    97* first public release 
  • plugins/frozen_gems/trunk/generators/frozen_gems/frozen_gems_generator.rb

    r253 r255  
    6464 
    6565class FrozenGemsGenerator < Rails::Generator::Base 
     66  VERSION = 0.4.0 
     67   
    6668  def manifest 
    6769    record do |m| 
  • plugins/frozen_gems/trunk/Rakefile

    r247 r255  
    1 require 'rake' 
    2 require 'rake/testtask' 
    3 require 'rake/rdoctask' 
     1# -*- ruby -*- 
    42 
    5 desc 'Default: run unit tests.
    6 task :default => :test 
     3require 'rubygems
     4require 'hoe' 
    75 
    8 desc 'Test the frozen_gems plugin.' 
    9 Rake::TestTask.new(:test) do |t| 
    10   t.libs << 'lib' 
    11   t.pattern = 'test/**/*_test.rb' 
    12   t.verbose = true 
     6Hoe.new('FrozenGemsGenerator', 0.4.0) do |p| 
     7  p.rubyforge_name = 'frozen_gems_generator' 
     8  p.author = 'Glenn Vanderburg' 
     9  p.email = 'glenn@thinkrelevance.com' 
     10  p.summary = 'Application-specific gem libraries for Rails projects.' 
     11  p.description = p.paragraphs_of('README.txt', 2..5).join("\n\n") 
     12  p.url = p.paragraphs_of('README.txt', 0).first.split(/\n/)[1..-1] 
     13  p.changes = p.paragraphs_of('History.txt', 0..1).join("\n\n") 
    1314end 
    1415 
    15 desc 'Generate documentation for the frozen_gems plugin.' 
    16 Rake::RDocTask.new(:rdoc) do |rdoc| 
    17   rdoc.rdoc_dir = 'rdoc' 
    18   rdoc.title    = 'FrozenGems' 
    19   rdoc.options << '--line-numbers' << '--inline-source' 
    20   rdoc.rdoc_files.include('README') 
    21   rdoc.rdoc_files.include('lib/**/*.rb') 
    22 end 
     16# vim: syntax=Ruby 
  • plugins/frozen_gems/trunk/README

    r252 r255  
    1 FrozenGems 
    2 ========== 
     1= FrozenGemsGenerator 
     2 
     3* http://opensource.thinkrelevance.com/wiki/FrozenGemsGenerator 
     4 
     5== DESCRIPTION: 
    36 
    47The FrozenGems plugin gives your Rails application its own private gem 
    5 library, in vendor/gems. 
     8library, in vendor/gems, and a script/gem command for managing that 
     9library. 
    610 
    711To enable, run 
    812 
    913    script/generate frozen_gems 
     14 
     15Scripts and tasks that load environment.rb will have access to the  
     16application's gem library.  Gems in the system-wide gem library are still  
     17accessible to your app, but gems in the private library will be found  
     18first.  (One consequence of this is that 'script/gem list' will show all 
     19of the gems installed in both libraries.) 
     20 
     21== FEATURES/PROBLEMS: 
     22 
     23Gems that have binary components install the binary components in 
     24the system-wide Ruby lib directories. Thus, when such gems are 
     25frozen and deployed, they  will be incomplete. I recommend that you 
     26install such gems  in the system-wide gem library on development 
     27machines and the deployment machine alike. Suggestions  for a 
     28satisfactory solution to this problem are welcome. 
     29 
     30== SYNOPSIS: 
    1031 
    1132To manage your app's gems, use the script/gem command (which is just a 
     
    2344subsequent attempts should succeed.)   
    2445 
    25 Scripts and tasks that load environment.rb will have access to the  
    26 application's gem library.  Gems in the system-wide gem library are still  
    27 accessible to your app, but gems in the private library will be found  
    28 first.  (One consequence of this is that 'script/gem list' will show all 
    29 of the gems installed in both libraries.) 
     46== REQUIREMENTS: 
    3047 
    31 WARNING: Gems that have binary components install the binary components in 
    32 the system-wide Ruby lib directories.  Thus, when such gems are frozen and  
    33 deployed, they will be incomplete.  I recommend that you install such gems  
    34 in the system-wide gem library on development machines and the deployment  
    35 machine alike.  Suggestions for a satisfactory solution to this problem  
    36 are welcome. 
    37  
    38 (FrozenGems assumes Rails 2.0 or greater, due to its dependency on  
     48FrozenGems assumes Rails 2.0 or greater, due to its dependency on  
    3949preinitializer.rb.  If you're using an earlier version of Rails, you 
    4050can copy the contents of config/preinitializer.rb into config/environment.rb, 
    41 just prior to the call to Rails::Initializer.run.) 
     51just prior to the call to Rails::Initializer.run. 
    4252 
    43 Author: Glenn Vanderburg <glenn@thinkrelevance.com> 
     53== INSTALL: 
     54 
     55* sudo gem install frozen_gems_generator 
     56* script/generate frozen_gems 
     57 
     58== LICENSE: 
     59 
     60(The MIT License) 
     61 
     62Copyright (c) 2008 Glenn Vanderburg 
     63 
     64Permission is hereby granted, free of charge, to any person obtaining 
     65a copy of this software and associated documentation files (the 
     66'Software'), to deal in the Software without restriction, including 
     67without limitation the rights to use, copy, modify, merge, publish, 
     68distribute, sublicense, and/or sell copies of the Software, and to 
     69permit persons to whom the Software is furnished to do so, subject to 
     70the following conditions: 
     71 
     72The above copyright notice and this permission notice shall be 
     73included in all copies or substantial portions of the Software. 
     74 
     75THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, 
     76EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
     77MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
     78IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 
     79CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
     80TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 
     81SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.