kitten 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile ADDED
@@ -0,0 +1,21 @@
1
+ bundle_path "gems"
2
+
3
+ disable_system_gems
4
+
5
+ source "http://gemcutter.org"
6
+
7
+ dm_gems_version = "~> 0.10"
8
+ do_gems_version = "~> 0.10"
9
+
10
+ gem "data_objects", do_gems_version
11
+ gem "do_sqlite3", do_gems_version
12
+ gem "dm-core", dm_gems_version
13
+ gem "dm-aggregates", dm_gems_version
14
+ gem "dm-migrations", dm_gems_version
15
+ gem "dm-timestamps", dm_gems_version
16
+ gem "dm-types", dm_gems_version
17
+ gem "dm-validations", dm_gems_version
18
+ gem "dm-serializer", dm_gems_version
19
+ gem "dm-constraints", dm_gems_version
20
+
21
+ gem 'rake'
data/README.rdoc ADDED
@@ -0,0 +1,17 @@
1
+ = kitten
2
+
3
+ kitten is an evented webserver written in ruby for exposing application logic, models and assets in ruby web apps over websockets
4
+
5
+ == Note on Patches/Pull Requests
6
+
7
+ * Fork the project.
8
+ * Make your feature addition or bug fix.
9
+ * Add tests for it. This is important so I don't break it in a
10
+ future version unintentionally.
11
+ * Commit, do not mess with rakefile, version, or history.
12
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
13
+ * Send me a pull request. Bonus points for topic branches.
14
+
15
+ == Copyright
16
+
17
+ Copyright (c) 2009 Feisty Studios
data/Rakefile ADDED
@@ -0,0 +1,63 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ require 'version'
5
+
6
+ begin
7
+ require 'jeweler'
8
+ Jeweler::Tasks.new do |gem|
9
+ gem.name = "kitten"
10
+ gem.summary = %Q{kitten is an evented websocket server written in ruby}
11
+ gem.description = %Q{kitten is an evented webserver written in ruby for exposing application logic, models and assets in ruby web apps over websockets}
12
+ gem.email = "pyrotechnick@feistystudios.com"
13
+ gem.homepage = "http://github.com/feistystudios/kitten"
14
+ gem.authors = ["Feisty Studios"]
15
+ gem.add_development_dependency "thoughtbot-shoulda", ">= 0"
16
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
17
+
18
+ gem.files = FileList['lib/**/*.rb', 'bin/*', '[A-Z]*', 'test/**/*'].to_a
19
+
20
+ gem.version = Kitten.version
21
+
22
+ gem.executables = ['kitten']
23
+ end
24
+ Jeweler::GemcutterTasks.new
25
+
26
+ FileList['tasks/**/*.rake'].each { |task| import task }
27
+ rescue LoadError
28
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
29
+ end
30
+
31
+ require 'rake/testtask'
32
+ Rake::TestTask.new(:test) do |test|
33
+ test.libs << 'lib' << 'test'
34
+ test.pattern = 'test/**/test_*.rb'
35
+ test.verbose = true
36
+ end
37
+
38
+ begin
39
+ require 'rcov/rcovtask'
40
+ Rcov::RcovTask.new do |test|
41
+ test.libs << 'test'
42
+ test.pattern = 'test/**/test_*.rb'
43
+ test.verbose = true
44
+ end
45
+ rescue LoadError
46
+ task :rcov do
47
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
48
+ end
49
+ end
50
+
51
+ task :test => :check_dependencies
52
+
53
+ task :default => :test
54
+
55
+ require 'rake/rdoctask'
56
+ Rake::RDocTask.new do |rdoc|
57
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
58
+
59
+ rdoc.rdoc_dir = 'rdoc'
60
+ rdoc.title = "kitten #{version}"
61
+ rdoc.rdoc_files.include('README*')
62
+ rdoc.rdoc_files.include('lib/**/*.rb')
63
+ end
data/bin/edit_json.rb ADDED
@@ -0,0 +1,3 @@
1
+ #!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
2
+ require File.join(File.dirname(__FILE__), "../gems/environment")
3
+ load File.join(File.dirname(__FILE__), "../gems/gems/json_pure-1.2.0/bin/edit_json.rb")
data/bin/kitten ADDED
@@ -0,0 +1,53 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'pp'
4
+
5
+ puts 'kitten uses bundler'
6
+ # puts 'bundling kitten'
7
+ # `gem bundle`
8
+ puts ' - bundler environment file'
9
+ puts ' ' + File.expand_path(File.join(File.dirname(__FILE__), '../', 'gems', 'environment'))
10
+ require File.expand_path(File.join(File.dirname(__FILE__), '../', 'gems', 'environment'))
11
+ Bundler.require_env
12
+ puts ' - required gems'
13
+
14
+ puts 'Waking kitten...'
15
+ puts 'Meow! kitten wakes from its slumber.'
16
+
17
+ wd = `pwd`.gsub!(/\n/, '')
18
+
19
+ puts 'working directory'
20
+ puts " #{wd}"
21
+
22
+ puts 'kitten needs a user model'
23
+ user_model_path = ''
24
+
25
+ if wd =~ /gems\/gems/
26
+ puts 'in merb app'
27
+ user_model_path = wd.to_s + '/app/models/user.rb'
28
+ else
29
+ puts 'not in merb app'
30
+
31
+ puts 'using example data'
32
+
33
+ user_model_path = wd.to_s + '/examples/models/user.rb'
34
+ end
35
+
36
+ puts "kitten found user model: #{user_model_path}"
37
+ DataMapper.setup(:default, 'sqlite3::memory:')
38
+ require user_model_path
39
+ puts 'loaded user model'
40
+
41
+ if wd =~ /gems\/gems/
42
+ puts 'in merb app, looking for models'
43
+ files = Dir.glob(File.join(wd, '/*'))
44
+ puts "kitten found #{files.length.to_s} models in #{path}app/models"
45
+ puts 'Models'
46
+ pp files
47
+ end
48
+
49
+ User.new.model.properties.each do |property|
50
+ pp property.name
51
+ pp property.model
52
+ # pp property.validations
53
+ end
@@ -0,0 +1,3 @@
1
+ #!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
2
+ require File.join(File.dirname(__FILE__), "../gems/environment")
3
+ load File.join(File.dirname(__FILE__), "../gems/gems/json_pure-1.2.0/bin/prettify_json.rb")
data/bin/rake ADDED
@@ -0,0 +1,3 @@
1
+ #!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
2
+ require File.join(File.dirname(__FILE__), "../gems/environment")
3
+ load File.join(File.dirname(__FILE__), "../gems/gems/rake-0.8.7/bin/rake")
@@ -0,0 +1,10 @@
1
+ class User
2
+ include DataMapper::Resource
3
+
4
+ # property :id, UUID, :key => true, :default => lambda { |resource, property| UUIDTools::UUID.random_create }
5
+ property :id, Serial
6
+
7
+ property :handle, Text
8
+
9
+ # has n, :open_ids
10
+ end
data/lib/kitten.rb ADDED
File without changes
data/test/helper.rb ADDED
@@ -0,0 +1,10 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'shoulda'
4
+
5
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
6
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
7
+ require 'pangolin'
8
+
9
+ class Test::Unit::TestCase
10
+ end
@@ -0,0 +1,7 @@
1
+ require 'helper'
2
+
3
+ class TestKitten < Test::Unit::TestCase
4
+ should "probably rename this file and start testing for real" do
5
+ flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,75 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kitten
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Feisty Studios
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-12-17 00:00:00 +10:00
13
+ default_executable: kitten
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: thoughtbot-shoulda
17
+ type: :development
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: "0"
24
+ version:
25
+ description: kitten is an evented webserver written in ruby for exposing application logic, models and assets in ruby web apps over websockets
26
+ email: pyrotechnick@feistystudios.com
27
+ executables:
28
+ - kitten
29
+ extensions: []
30
+
31
+ extra_rdoc_files:
32
+ - README.rdoc
33
+ files:
34
+ - Gemfile
35
+ - README.rdoc
36
+ - Rakefile
37
+ - bin/edit_json.rb
38
+ - bin/kitten
39
+ - bin/prettify_json.rb
40
+ - bin/rake
41
+ - lib/kitten.rb
42
+ - test/helper.rb
43
+ - test/test_kitten.rb
44
+ has_rdoc: true
45
+ homepage: http://github.com/feistystudios/kitten
46
+ licenses: []
47
+
48
+ post_install_message:
49
+ rdoc_options:
50
+ - --charset=UTF-8
51
+ require_paths:
52
+ - lib
53
+ required_ruby_version: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ version: "0"
58
+ version:
59
+ required_rubygems_version: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: "0"
64
+ version:
65
+ requirements: []
66
+
67
+ rubyforge_project:
68
+ rubygems_version: 1.3.5
69
+ signing_key:
70
+ specification_version: 3
71
+ summary: kitten is an evented websocket server written in ruby
72
+ test_files:
73
+ - test/helper.rb
74
+ - test/test_kitten.rb
75
+ - examples/models/user.rb