nx-mongo.tcl

Clone Tools
  • last updated 8 hours ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
improve spelling

  1. … 3 more files in changeset.
Bump version number to 2.4.0

  1. … 11 more files in changeset.
improve documentation

  1. … 20 more files in changeset.
mongodb: add "bson asJSON" convenience method

  1. … 1 more file in changeset.
momgoDB interface: add option "-asJSON" to "find all" to ease interaction e.g. with single page applications.

change version number to first version number after the 2.2.0 release (2.3d0)

  1. … 6 more files in changeset.
updating mongodb interface for 2.2: - update to mongodb-c-driver 1.11.0 - reduce number of calls to deprecated driver functions as far as possible - improve cleanness of compilation (provde prototypes etc.) - bump version number to 2.2

  1. … 6 more files in changeset.
improve comments

  1. … 13 more files in changeset.
fix duplicated words in code documentation

  1. … 2 more files in changeset.
add destroy_on_cleanup similar to OpenACS to ease lifetime management of volatile objects

fixiing cut&paste error

white space changes

- added class names into serialization syntax (__class). This change allows us to make better use of polymorphism with (e.g. embedded) class structures. Previously, it was necessary, that the called had to know the class of the serialized object, now it is as well possible to use as well specializations. - fix bug, where default value for properties lead to errors, when no propery options where given.

  1. … 1 more file in changeset.
* nx.tcl, nx-mongo.tcl (parseParamSpec): Render target parameter non-positional, so that MetaSlot.parseParamSpec() becomes backward compatible. Adjusted callsites of parseParamSpec.

  1. … 1 more file in changeset.
Add missing argument to parseParameterSpec

Fix collateral damage of protection changes

- Use uniform spelling of "Tcl" - Fix more spelling errors

  1. … 18 more files in changeset.
Use uniform spelling of "Tcl"

  1. … 11 more files in changeset.
Make sure to initialize nsf object fetched from mongo

mongodb interface - add regular expression queries to conditions in NX

  1. … 1 more file in changeset.
- bump version number of nx::mongo to 2.1

MongoDB upgrade - Upgraded MongoDB and drivers to mongodb-c-driver 1.5.1, libbson 1.5.1 and MongoDB v3.4.0

- The upstream mongodb-c-driver has deprecated the old OP_QUERY syntax

with $-modifiers and old names like $orderby and $query, which will

be removed from the driver. The new interface is more in the mongodb

style, many former parameters (e.g. -limit, -skip, -project, -sort)

went to the new "-opts" argument.

mongo::collection::query /collection/ /filter/ ?-opts /opts/?

mongo::cursor::find /collection/ /filter/ ?-opts /opts/?

See the begin of nsf-mongo.test file for examples for queries

with the old and new interface. The high level interface

for nx::Object is unchanged.

- Support for new binary type "decimal128"

  1. … 7 more files in changeset.
nx.tcl: pluralism reform part 3 - introduced simple plural form "mixins" and "filters" for introspection - moved differentiated interface into slot methods. the slot methods "get" stay symmetrically to "set", but additional methods "classes" or "methods" are used like "guard" to obtain partial results of the mixin and filter specs - changed info methods /cls/ info mixin classes -> /cls/ info mixins /cls/ info filter methods -> /cls/ info filters /obj/ info object mixin classes -> /obj/ info object mixins /obj/ info object filter methods -> /obj/ info object filters - dropped /cls/ info mixin guard /cls/ info filter guard /obj/ info object mixin guard /obj/ info object filter guard - added /cls/ mixin classes /cls/ filter methods /obj/ object filter methods /obj/ object mixin classes

  1. … 14 more files in changeset.
nx.tcl: pluralism reform part 2 - changed methods /cls/ info subclass -> /cls/ info subclasses /cls/ info superclass -> /cls/ info superclasses /cls/ mixin ... -> /cls/ mixins /cls/ filter ... -> /cls/ filters /cls/ object mixin ... -> /cls/ object mixins /cls/ object filter ... -> /cls/ object filters - changed configure parameters /cls/ configure -mixin -> /cls/ configure -mixins /cls/ configure -filter -> /cls/ configure -filters /obj/ configure -object-mixin -> /obj/ configure -object-mixins /obj/ configure -object-filter -> /obj/ configure -object-filters - added handling for calling relationslot with unknown sub method

  1. … 31 more files in changeset.
mongodb - by directing calls to the setter, it is now more complex to determine the true calling object for an converter, since the set operation might be routed though the slot object. It would be nice to have framework support for this. - fix 2 error messages - provide shorter tracebacks by using "return -code error ..." rather than "error ..."

  1. … 1 more file in changeset.
nx-mongo: - optional support for mongodb connection pools (compile time macro USE_CLIENT_POOL controls this, per default, this is on) - allow to pass "-metadata" to gridfile::create to ease metadata attachment to gridfiles - some conveniance improvements in nx-mongo.tcl (ability to ignore attributes in "bson encode", ability to unset attributes in gridfs, ...) - bump version numbers of nsfmongo to 0.3 and nx-monogo to 0.5

  1. … 5 more files in changeset.
- minor cleanup

  1. … 1 more file in changeset.
nx-monogo: - Updated the mongo-c-driver and libbson to the actual tip version from github (this is a significant change, since 10gen essentially changed the officially supported c-driver of MongoDB) - mongo-c-driver was more or less new-implementation, since strucure and names changed in the mongo-c-driver substantially, serveral functions were added, several were dropped. The new interface supports now e.g. mongo URIs, and should be faster (by using collection objects instead of connection handles) - Although the low-level nsf interface changed significantly, the high level (nx level) interface remained unaffected. - Configure has now --with-mongoc=... and --with-bson instead of --with-mongodb - New commands: mongo::collection::open /mongoConn/ /dbName/ /collectionName/ mongo::collection::close /collection/ mongo::gridfs::store_string /content/ /name/ /contentType/ - Make use of the new collection handle mongo::count /mongoConn/ /ns/ ... -> mongo::collection::count /collection/ ... mongo::index /mongoConn/ /ns/ ... -> mongo::collection::index /collection/ ... mongo::insert /mongoConn/ /ns/ ... -> mongo::collection::insert /collection/ ... mongo::query /mongoConn/ /ns/ ... -> mongo::collection::query /collection/ ... mongo::remove /mongoConn/ /ns/ ... -> mongo::collection::delete /collection/ ... mongo::update /mongoConn/ /ns/ ... -> mongo::collection::update /collection/ ... mongo::cursor::find /mongoConn/ /ns/ ... -> mongo::cursor::find /collection/ ... - nsf::mongo::connect receives now a mongoc_uri https://github.com/mongodb/mongo-c-driver/blob/master/doc/mongoc_uri.txt - The gridfs interface allows now to store multiple revisions of a file - The gridfs interface allows now upload files from a string - The gridfs interface allows to refer to files by other attributes than just the filename (e.g. the mongo id). - Modified/new gridfile functions mongo::gridfile::create ?-source file|string? /gridfs/ /value/ /name/ /contentType/ mongo::gridfile::delete /gridfs/ /query/ mongo::gridfile::open /gridfs/ /query/ - Updated README - Updated regression test - Added editor hints for a more uniform appearance

  1. … 14 more files in changeset.
nx-mongo: - updated documentation (switch back to mongo-c-driver, but comment usage of tagged version v0.8.1) - added support for rep types (allow for mappings between certain instance variables such as arrays or dicts to customizable representations in MongoDB) - added nx-serialize to test cases (simple state persistance for nx objects) - added nx-rep to test cases (rep types for "array" and "dict")

  1. … 5 more files in changeset.
- implement simple persistent handle management based on per-thread objects

  1. … 2 more files in changeset.