Forum: Ruby NotNaughty 0.6.2

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
Florian Aßmann (Guest)
on 2008-10-31 02:11
(Received via mailing list)
Hi folks,

I released NotNaughty version 0.6.2.

NotNaughty is a validation framework. It's main purpose was to provide
more customizable validations to Ruby-Sequel but it can be used for
all things you might want to validate.


  * conditions
    with :if or :unless pointing to procs or methods

  * stateful
    you can define the set of conditions for the current state of your

  * easy to extend
    validations are encapsulated so you can just inherit from
NotNaughty::Validation and get a validates_xyz_of with conditions for

  * easy to use
    there are various ways to setup a validation on an attribute but
you can define them almost like with any other validation api

  * exception handler
    wrap SQLError or any other exception in validation errors


   $ gem install not-naughty
   $ gem install sequel_notnaughty


   require 'rubygems'
   require 'not_naughty'

   NotNaughty::Validation.load 'format' # load your validations

   class Setup
     extend NotNaughty

     attr_accessor :serial_no
     validates(:serial_no) { format :with => }


CHANGES since 0.5 (not-naughty)
  * NotNaughty::Builder is now NotNaughty::ClassMethods
  * NotNaughty::Builder::ValidationDelegator is now
  * NotNaughty::ClassMethods::Builder does not inherit from Delegation
anymore, so { format :with => /rx/ } works
  * NotNaughty::Validation loads validations from directories listed
in load_paths
  * cleaned up some code parts
  * added support for predefined format expressions [resolves:#19814]
  * fixed Rakefile
  * removed Ruby-Sequel adapter
  * removed assistance gem dependency

CHANGES (sequel_notnaughty)
  * split from not-naughty gem
  * added uniqueness validation with scope [resolves:#19650]
  * works with Ruby-Sequel >= 2



This topic is locked and can not be replied to.