acts_as_archive 0.1.6 → 0.2.0

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.
data/README.markdown CHANGED
@@ -5,16 +5,11 @@ Don't delete your records, move them to a different table.
5
5
 
6
6
  Like <code>acts\_as\_paranoid</code>, but doesn't mess with your SQL queries.
7
7
 
8
- Compatibility
9
- -------------
10
-
11
- Tested with Ruby 1.8.6, 1.8.7, and 1.9.1.
12
-
13
8
  Install
14
9
  -------
15
10
 
16
11
  <pre>
17
- sudo gem install acts_as_archive --source http://gemcutter.org
12
+ sudo gem install acts_as_archive
18
13
  </pre>
19
14
 
20
15
  **environment.rb**:
@@ -39,19 +34,17 @@ end
39
34
  Run acts\_as\_archive
40
35
  ---------------------
41
36
 
42
- Terminal:
43
-
44
37
  <pre>
45
38
  cd your_rails_app
46
39
  acts_as_archive Article
47
40
  </pre>
48
41
 
42
+ Run this command every time you add <code>acts\_as\_archive</code> to a new model.
43
+
49
44
  This command creates your archive tables (<code>archived_articles</code> as per the example).
50
45
 
51
46
  Archive tables mirror your table's structure, but with an additional <code>deleted_at</code> column.
52
47
 
53
- Run this command every time you add <code>acts\_as\_archive</code> to a new model.
54
-
55
48
  That's it!
56
49
  ----------
57
50
 
@@ -62,7 +55,7 @@ Records move into the archive table instead of being destroyed.
62
55
  What if my schema changes?
63
56
  --------------------------
64
57
 
65
- Any new migrations on your table are automatically applied to the archive table.
58
+ New migrations are automatically applied to the archive table.
66
59
 
67
60
  Query the archive
68
61
  -----------------
@@ -85,7 +78,7 @@ Article.restore_all([ 'id = ?', 1 ])
85
78
  Auto-migrate from acts\_as\_paranoid
86
79
  ------------------------------------
87
80
 
88
- If you previously used <code>acts\_as\_paranoid</code>, running the <code>acts\_as\_archive</code>
81
+ If you previously used <code>acts\_as\_paranoid</code>, the <code>acts\_as\_archive</code>
89
82
  command will automatically move your deleted records to the archive table
90
83
  (see <a href="#run_acts_as_archive">_Run acts\_as\_archive_</a>).
91
84
 
@@ -104,5 +97,5 @@ class Article < ActiveRecord::Base
104
97
  end
105
98
  </pre>
106
99
 
107
- Run the <code>acts\_as\_archive</code> command any time you add new indexes
100
+ Run the <code>acts\_as\_archive</code> command upon adding new indexes
108
101
  (see <a href="#run_acts_as_archive">_Run acts\_as\_archive_</a>).
data/Rakefile CHANGED
@@ -1,49 +1,2 @@
1
- require 'rubygems'
2
- require 'rake'
3
- require 'rake/gempackagetask'
4
- require 'spec/rake/spectask'
5
-
6
- GEM_NAME = 'acts_as_archive'
7
- PKG_FILES = FileList['**/*'] - FileList['coverage', 'coverage/**/*', 'pkg', 'pkg/**/*', 'spec/db/log/*.log']
8
-
9
- spec = Gem::Specification.new do |s|
10
- s.author = "Winton Welsh"
11
- s.email = "mail@wintoni.us"
12
- s.executables << GEM_NAME
13
- s.extra_rdoc_files = [ "README.markdown" ]
14
- s.files = PKG_FILES.to_a
15
- s.homepage = "http://github.com/winton/#{GEM_NAME}"
16
- s.name = GEM_NAME
17
- s.platform = Gem::Platform::RUBY
18
- s.require_path = "lib"
19
- s.summary = "Don't delete your records, move them to a different table"
20
- s.version = "0.1.6"
21
- end
22
-
23
- desc "Package gem"
24
- Rake::GemPackageTask.new(spec) do |pkg|
25
- pkg.gem_spec = spec
26
- end
27
-
28
- desc "Install gem"
29
- task :install do
30
- Rake::Task['gem'].invoke
31
- `gem uninstall #{GEM_NAME} -x`
32
- `gem install pkg/#{GEM_NAME}*.gem`
33
- `rm -Rf pkg`
34
- end
35
-
36
- desc "Generate gemspec"
37
- task :gemspec do
38
- File.open("#{File.dirname(__FILE__)}/#{GEM_NAME}.gemspec", 'w') do |f|
39
- f.write(spec.to_ruby)
40
- end
41
- end
42
-
43
- desc "Run specs"
44
- Spec::Rake::SpecTask.new do |t|
45
- t.spec_opts = ["--format", "specdoc", "--colour"]
46
- t.spec_files = FileList["spec/**/*_spec.rb"]
47
- end
48
-
49
- task :default => :spec
1
+ require "#{File.dirname(__FILE__)}/require"
2
+ Require.rakefile!
data/bin/acts_as_archive CHANGED
@@ -1,3 +1,2 @@
1
1
  #!/usr/bin/env ruby
2
-
3
- puts `script/runner "ActsAsArchive.update #{ARGV.join ', '}"`
2
+ puts `script/runner "ActsAsArchive.update #{ARGV.join ', '}"`
@@ -1,20 +1,5 @@
1
- require File.dirname(__FILE__) + "/base/destroy"
2
- require File.dirname(__FILE__) + "/base/restore"
3
- require File.dirname(__FILE__) + "/base/table"
4
-
5
1
  module ActsAsArchive
6
2
 
7
- def self.update(*models)
8
- models.each do |klass|
9
- if klass.respond_to?(:acts_as_archive?) && klass.acts_as_archive?
10
- klass.create_archive_table
11
- klass.migrate_from_acts_as_paranoid
12
- klass.create_archive_indexes
13
- puts 'Success!'
14
- end
15
- end
16
- end
17
-
18
3
  module Base
19
4
  def self.included(base)
20
5
  base.extend ActMethods
@@ -1,2 +1,16 @@
1
- require File.dirname(__FILE__) + "/acts_as_archive/base"
2
- require File.dirname(__FILE__) + "/acts_as_archive/migration"
1
+ require File.expand_path("#{File.dirname(__FILE__)}/../require")
2
+ Require.lib!
3
+
4
+ module ActsAsArchive
5
+
6
+ def self.update(*models)
7
+ models.each do |klass|
8
+ if klass.respond_to?(:acts_as_archive?) && klass.acts_as_archive?
9
+ klass.create_archive_table
10
+ klass.migrate_from_acts_as_paranoid
11
+ klass.create_archive_indexes
12
+ puts 'Success!'
13
+ end
14
+ end
15
+ end
16
+ end
data/rails/init.rb CHANGED
@@ -1,4 +1,5 @@
1
- require File.expand_path(File.dirname(__FILE__) + "/../lib/acts_as_archive")
1
+ require File.expand_path("#{File.dirname(__FILE__)}/../require")
2
+ Require.rails_init!
2
3
 
3
4
  ActiveRecord::Base.send(:include, ActsAsArchive::Base)
4
- ActiveRecord::Migration.send(:include, ActsAsArchive::Migration)
5
+ ActiveRecord::Migration.send(:include, ActsAsArchive::Migration)
data/require.rb ADDED
@@ -0,0 +1,47 @@
1
+ require 'rubygems'
2
+ gem 'require'
3
+ require 'require'
4
+
5
+ Require File.dirname(__FILE__) do
6
+ gem(:activerecord) { require 'active_record' }
7
+ gem :require, '=0.1.8'
8
+ gem(:rake, '=0.8.7') { require 'rake' }
9
+ gem :rspec, '=1.3.0'
10
+
11
+ gemspec do
12
+ author 'Winton Welsh'
13
+ dependencies do
14
+ gem :require
15
+ end
16
+ email 'mail@wintoni.us'
17
+ name 'acts_as_archive'
18
+ homepage "http://github.com/winton/#{name}"
19
+ summary "Don't delete your records, move them to a different table"
20
+ version '0.2.0'
21
+ end
22
+
23
+ lib do
24
+ require "lib/acts_as_archive/base"
25
+ require "lib/acts_as_archive/base/destroy"
26
+ require "lib/acts_as_archive/base/restore"
27
+ require "lib/acts_as_archive/base/table"
28
+ require "lib/acts_as_archive/migration"
29
+ end
30
+
31
+ rails_init { require 'lib/acts_as_archive' }
32
+
33
+ rakefile do
34
+ gem(:rake) { require 'rake/gempackagetask' }
35
+ gem(:rspec) { require 'spec/rake/spectask' }
36
+ require 'require/tasks'
37
+ end
38
+
39
+ spec_helper do
40
+ require 'require/spec_helper'
41
+ gem :activerecord
42
+ require 'logger'
43
+ require 'yaml'
44
+ require 'pp'
45
+ require 'rails/init'
46
+ end
47
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,13 +1,5 @@
1
- $TESTING=true
2
- SPEC = File.expand_path(File.dirname(__FILE__))
3
-
4
- require 'rubygems'
5
- require 'active_record'
6
- require 'logger'
7
- require 'yaml'
8
- require 'pp'
9
-
10
- require File.expand_path("#{SPEC}/../rails/init")
1
+ require File.expand_path("#{File.dirname(__FILE__)}/../require")
2
+ Require.spec_helper!
11
3
 
12
4
  Spec::Runner.configure do |config|
13
5
  end
@@ -54,12 +46,6 @@ def create_records(klass=Article, values={})
54
46
  end
55
47
  end
56
48
 
57
- def debug(object)
58
- puts "<pre>"
59
- pp object
60
- puts "</pre>"
61
- end
62
-
63
49
  def establish_test_db
64
50
  # Establish connection
65
51
  unless ActiveRecord::Base.connected?
@@ -97,4 +83,4 @@ def migrate_up(directory='migrate')
97
83
  ActiveRecord::Migrator.migrate("#{SPEC}/db/#{directory}")
98
84
  @new_article_columns = columns("articles")
99
85
  @new_archive_columns = columns("archived_articles")
100
- end
86
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: acts_as_archive
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Winton Welsh
@@ -11,8 +11,17 @@ cert_chain: []
11
11
 
12
12
  date: 2010-02-03 00:00:00 -08:00
13
13
  default_executable:
14
- dependencies: []
15
-
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: require
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - "="
22
+ - !ruby/object:Gem::Version
23
+ version: 0.1.8
24
+ version:
16
25
  description:
17
26
  email: mail@wintoni.us
18
27
  executables:
@@ -34,6 +43,7 @@ files:
34
43
  - rails/init.rb
35
44
  - Rakefile
36
45
  - README.markdown
46
+ - require.rb
37
47
  - spec/acts_as_archive/base/destroy_spec.rb
38
48
  - spec/acts_as_archive/base/restore_spec.rb
39
49
  - spec/acts_as_archive/base/table_spec.rb