anchor.diff:  Transactions
   ~~~~~~~~~~~~
   
  -_suricatta_ does not have support for low level usage of transactions, instead of it, offers
  -lightweight abstraction: `atomic` high order function and `with-atomic` convenient macro.
  +The _suricatta_ library does not have support for low level transactions api, instead of it, offers a
  +lightweight abstraction over complex transaction api.
  +
  +Let see an example:
   
   .Execute some query in a transaction block
   [source, clojure]
  
positive.code: - And obviously, you can forget jdbc and use _suricatta_ for both purposes, building and
    executing queries.
  
  Project Maturity
  ----------------
  
  Since _suricatta_ is a young project there may be some API breakage.
  
  Install
  -------
  
  This section covers the _suricatta_ library installing process and its requirements.
  
  Requirements
  ~~~~~~~~~~~~
  
  
negative.code: SQL Execution
  -------------
  
  This section intends to explain the usage of a sql execution part of the library.
  
  
  Connecting to database
  ~~~~~~~~~~~~~~~~~~~~~~
  
  _suricatta_, unlike other database libraries, uses a concept of *context instead of *connection*.
  A **context** has the resposibility of jdbc connection resource management, transaction isolation
  flags and sql rendering dialect.
  
  You can create it **context** from:
  
  - Plain jdbc connection.
  - link:http://niwibe.github.io/clojure.jdbc[clojure.jdbc] connection object
  - `dbspec` hash-map (same format that link:http://niwibe.github.io/clojure.jdbc/#_connecting_to_database[clojure.jdbc] accepts, including with datasource)
  
  
  Let see some examples:
  
  