
Security News
Follow-up and Clarification on Recent Malicious Ruby Gems Campaign
A clarification on our recent research investigating 60 malicious Ruby gems.
= TinyMongo
Simple MongoDB wrapper
== Notice
This gem is not yet ready for production use.
== Install
gem install tinymongo
== Rails Setup (Rails 3)
To create TinyMongo config file (config/tinymongo.yml) and initializer file (config/initializers/tinymongo.rb), do the following:
rails generate tinymongo
== Connecting To MongoDB directly (for non-Rails projects)
TinyMongo.configure({:host => 'localhost', :database => 'db_name'}) TinyMongo.connect
== Example
class Person < TinyMongo::Model mongo_collection :people # optional if using Rails mongo_key :name mongo_key :age, :default => 0 mongo_key :children, :default => []
def make_child
child = Person.create(:name => 'Baby')
push({:children => child}) # push child into children array
end
def grow_up
inc({:age => 1}) # increments age by 1
end
def set_stuff(n,a,c)
# don't forget to put self
self.name = n
self.age = a
self.children = c
save
end
end
Person.drop # empty person collection
p = Person.create(:name => 'John', :age => 20) p.make_child p.grow_up
Person.find.each do |person| puts person.name end
Person.find_one(:name => 'John').age
Person.create(:name => 'Jim') Person.create(:name => 'Pam')
Person.find.to_a.map { |person| person.name }
Person.find.has_next?
Person.find.sort({:name => 1}).skip(2).limit(1).next!.name
Person.find({:name => 'John'}, {:age => 1}) # select only age field
Person.find.count # count ignores skip and limit Person.find.skip(1).size # size is affected by skip and limit
Person.distinct(:name)
Person.ensure_index({:name => 1}) Person.drop_index({:name => 1})
== Copyright
Copyright (c) 2010 Peter Jihoon Kim. See LICENSE for details.
FAQs
Unknown package
We found that tinymongo 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.
Security News
A clarification on our recent research investigating 60 malicious Ruby gems.
Security News
ESLint now supports parallel linting with a new --concurrency flag, delivering major speed gains and closing a 10-year-old feature request.
Research
/Security News
A malicious Go module posing as an SSH brute forcer exfiltrates stolen credentials to a Telegram bot controlled by a Russian-speaking threat actor.