Code Monkey home page Code Monkey logo

moneta's Issues

github hosted gem seems dated and buggy

The github hosted gem seems dated:

The Moneta::Memcache#key? method in the installed gem looks like:

def key?(key)
!self["key"].nil?
end

which does not work ("key" vs. key).
Is there a way to update the gem?

thanks.

[Feature] Abstract value marshaling

I noticed that some Moneta backends do backend.put(value) and some do backend.put(Marshal.dump(value)). I would like to be able to control which I use, because I have a legacy system that uses the former. But, I also see the value in having the latter.

Furthermore, I can see how one would potentially want to write class-specific marshaling - for example, marshal just @attributes for ActiveRecord objects.

current master - NOT a valid gemspec

moneta at /Users/kmandrup/.rvm/gems/ruby-1.9.2-p290/bundler/gems/moneta-eab31e7bb849 did not have a valid gemspec.
This prevents bundler from installing bins or native extensions, but that may not affect its functionality.
The validation message from Rubygems was:
  ["lib/moneta/datamapper.rb", "lib/moneta/file.rb", "lib/moneta/memcache.rb", "lib/moneta/memory.rb", "lib/moneta/xattr.rb"] are not files

Memcached initializer should be fixed

I struggled a bit with this gem and memcached.
Line 15 in memcache.rb when using memcached should be:
@cache = Memcached.new(options.delete(:server), options)
and not:
@cache = MemCache.new(options.delete(:server), options)

BerkeleyDB adapter removed?

I noticed Berkeley DB adapter (lib/moneta/adapters/berkeley.rb)removed from latest code, is there a reason behind this??

Moneta::Memory fetch(key, &block) throws warnings

If you try to call .fetch("key") {|el| ... } Ruby 1.8.7 and 1.9.2 with the Memory implementation both print "warning: block supersedes default value argument". This is because Moneta's signature is "def fetch(key, value=nil, &block)" and defers to Hash's fetch(key, &block) implementation, which then checks the number of arguments -- i.e. if you pass two arguments to it (and the second is nil, like in my original example) it will print a warning. It's not as clean, but the value variable should be checked for nil before explicitly calling super with arguments.

Support for Redis 2.x

The Redis 2.x gem has a different API to go along with several new commands for Redis 2.x. Delete, flush_db and setex are all notable changes. My current fork has support for both 1.x and 2.x side-by-side, but maybe there should be a different module for each version:

http://github.com/subwindow/moneta

Gem spec files

Hi,

The files line in the gemspec doesn't contain all the adapters under lib/moneta/ . I'm not sure if this on purpose, but when moneta is installed via rubygems, these aren't included.

Cheers

Mike

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.