Corto Versions Save

A hierarchical object store for connecting realtime machine data with web applications, historians & more

2.1.1

5 years ago

New features:

  • singleton members
  • automatically set HOSTNAME environment variable if OS doesn't set it
  • support new cortoscript notation in string serializer and deserializer
  • Add CORTO_WALK_INIT to initialize corto_walk_opt values

Bugfixes:

  • Fix error in computing size of reference primitive types
  • Base of primitive meta type was PRIVATE, should have been HIDDEN
  • Fix issue that would prevent inheriting from container meta types

API changes (only unstable APIs)

  • corto_rw_init fields have been reordered to match ptr convention
  • corto_any_walk has been renamed to corto_walk_any

Other:

  • Core has been regenerated with latest c-binding, which fixes some warnings in generated code

2.1.0

5 years ago

The first non-beta release of corto!

v1.3.0

6 years ago

This is the last stable release before moving to corto 2.0.

This list provides the latest commit on cortoproject packages compatible with 1.3:

argparse: 073a7e86e62b09a06f6995b7a88e6e7d24ac974f
c-binding: 6220a13712173cef2acf64c7faf785d1aa4cc7a5
cdiff: ed9ce8dd0b923a4a69ad5f9fe39eac94c29eb7ea
corto: 2d7cfacd40645cf83f2268eb9ab2be6f80f947a1
cortodoc: 6ae32b680e99afbd744ea042612a7607f1ec42cc
corto-language: d167adc785e2847fc783b757905d66e79e2a594e
demo: 011595a2ea05b866886afa83c7fb06ec7ff951e0
driver-ext-json: c88ac511ea17ad501dfec27bff6ac8c9c6d537f1
driver-ext-xml: af0576d02e5266707730f5837b9a5f383da8aafc
driver-fmt-json: eed8216fa3cbb0cd29ec5561974f2e641aaacdde
driver-fmt-xml: 75fe08e0928c39c4f5a1db21007885256e1aa01a
driver-mnt-filestore: 0bd95d476ca588c478d470a239c1c81352f78ac1
driver-tool-add: 585b60b34b724801b1ebb0d4ebd8c64de0c6c177
driver-tool-build: d8b3fdba1a8031b2c7646829980ab76ccd7d6ed4
driver-tool-clean: 797c0759591d63f4b900d10a7fb3c59dc1fdb11d
driver-tool-create: 54356d764f8f9cccc2aabe7112eb8dd906485634
driver-tool-default: 64f371f6a1c8896754dec1825d037351ce405e9e
driver-tool-install: 48a000257d5c761976413056b620b2ff9eaf8f93
driver-tool-list: 99bb09208880b2adacc6f8c15021eb8b85350880
driver-tool-locate: f26299d35f934fe487c0479124fa4d11fb5b330e
driver-tool-pp: 5c36cc538e0cd80d8c25fa465283aba7241bda02
driver-tool-rakefile: 023f4a2c37d8b08e42a45bded02f7341115431aa
driver-tool-rebuild: 13a44e3a9060c20b9bdeb3cd5c502f2fb70789c3
driver-tool-remove: 3febdce9bf7571acf8f1a4ba24738015b5be53fc
driver-tool-run: edda2dc9471cc4b8aa7a91010cf0503c9bb2b634
driver-tool-sh: f93caccd8bb2b4fea3ab38416c0a22c39dda36ea
driver-tool-tar: 7bb1fe264a5fc0d61c94f358fe49ef139645bed5
driver-tool-test: 1dcb2bd0192e69945595741e9328e31e7c30de79
driver-tool-uninstall: b31b68e280a67bb08591717257e85a9af53d34bc
driver-tool-untar: fd7f04c4bdcb3a8357ea5122c36ce785dacc2718
g: 74a32435092d70f3d0d3c3653471592b4f2fe487
httpclient: 0e9b1b45aef9880ebffd920f5b556d9300983f57
httprouter: 6a16b85ceb3fc02b202cb49e2bcbd717010f10c4
httpserver: a1f5c419e564f89db74f4df6b9bcdf04f51cfb05
ic: d3c9fde235bc9c1133b33e98ccf61e4531b80f98
idl: 634cf06e16ae0fd6f9fdf5a756c4419f5d1a26f1
ipso: 73518430ffc16c5292750a31cd86a7c6bd806000
rest: b50499fa302fbae8cbf09ee293bc805c0e6b38d9
test: 7304a702679b5726e9b157f7700865e48446b1a2
ui: c836ab214947cf24a2ea8e4be8aead7ac94e6474
vm: 682a02a53e0e2217cc8022065ec27da662918c47
ws: 14c655e41eab09934b86b72bb422b50d167848bd
x: dddfaffc12f7282cab5e3bce62a72a51c1445457

v.0.2.15-alpha

7 years ago

This release contains the following new features and bugfixes:

  • improved order of loading packages and files in corto_load
  • corto_cp can now copy directories
  • ensure that std types are available in C++
  • add include paths to dependent projects
  • support for anonymous functions
  • replace generated wrapper functions with libffi
  • use symbolic links when copying files from project to local package repository
  • improve uninstaller behavior for recursive packages
  • fixed crash in managed strings
  • use managed strings for corto_cleanpath (now consistent with corto_path, corto_fullpath)
  • select from object store when mount doesn't override onRequest
  • add ON_RESUME and ON_SUSPEND events
  • add corto_fullname and corto_pathname to generate user-friendly paths
  • add support for unions
  • fix issue in copy serializer with sequences
  • only run initializer when object is declared (not when object is redeclared)
  • support for optional members
  • allow applications to be installed and organized in hierarchies
  • fix memory leaks in copy and string serializer
  • add corto_contentof and corto_fromcontent functions
  • fix race condition in package loader
  • add rate limiting to mounts
  • keep statistics for mounts
  • make updates automatically define undefined objects
  • add corto_mount_return function for easy returning of objects by onRequest
  • fix locking issue with corto_silence
  • use GCC builtin for atomic increments and decrements instead of assembly
  • improve evaluation of mount mask
  • make constructors and observers automatically set attribute to default
  • add support for ARM
  • change inheritance of procedure from struct to class
  • improve consistency of error handling of corto_select API
  • add support for queries for historical data
  • add option to buildsystem to bypass multithreaded build
  • fix issue where dependency resolver would expose anonymous objects multiple times
  • allow for platform-specific include files
  • introduce support for CORTO_VERBOSITY environment variable
  • add type filter to corto_select
  • make loader create directories in local package repo for dynamically created packages
  • improve architecture detection
  • add support for recursive queries in mounts
  • add option to "corto test" to only build testcases
  • make corto_declareChild never return undefined object when the object was declared in another thread
  • logging and tracing improvements
  • fix limit/offset behavior in combination with expression filters
  • add preliminary support for corto_publish and corto_subscribe
  • make mount automatically call onRequest when onResume is not implemented
  • add onNotify function to mount which doesn't require object references

v.0.2.13-alpha

8 years ago

This release contains the following new features:

  • corto_select no longer requires the parent parameter to be an object
  • added code coverage reporting to buildsystem
  • allow a user to specify "human-friendly" names for object of a specific type
  • support for multiple test projects per package
  • support for seamless persistent storage of objects through integrating replicators with corto_resolve and corto_define
  • implemented SINK replicator mode
  • allow specifying an offset and limit for corto_select query results
  • added initial support for augmentations
  • changed corto_select API to safer design
  • corto_fullpath returns only id of objects in corto/lang
  • improved the way "corto test" finds test projects
  • added loader replicator that exposes contents of local package repository
  • added c4cpp language binding
  • fixed bug that disallowed removing unresolved packages with "corto remove"
  • allow specifying language binding to "corto create"
  • allow using native types in corto type definitions

v0.2.12-alpha

8 years ago

This release contains the following new features:

  • Packages can now install files directly to lib, bin, include and etc in /usr/local
  • Removed generators, components and libraries from the build system (all merged with packages)
  • Packages can now include build instructions (like additional include paths) for projects that use the package
  • Fixed bugs with dependencies on nocorto packages
  • Support for nodef packages (packages without a definition file that do link with Corto)
  • Add --verbose option to build system that logs all commands
  • Fixed error in build system where uname -p was used to determine platform
  • Add corto/core/time type
  • g_fileOpen automatically creates path for file
  • Support for anonymous functions
  • New delegate convenience functions that can wrap around C functions
  • corto_binaryOperator now supports shift operators (<<, >>)
  • Fixed bug where alias members sometimes were hidden
  • Fixed bug in type dependency walk with any types where forward declaration to corto/lang/type was generated
  • Fixed many bugs in string, compare and copy serializers

v0.2.11

8 years ago

This release contains the following new features:

  • Fixed bug in creating dependencies between non-corto packages

v0.2.10-alpha

8 years ago

This release contains the following new features:

  • Allow for creation of packages that don't make use of Corto, and for which no code should be generated
  • Improve error reporting of installer
  • Improved error reporting of async functions
  • Improved error reporting when in debugging mode
  • Add option to trace operations of notification framework
  • Pass parameters to a select query
  • Improved initializer of lang/type
  • Add corto_seterrv function
  • Add capability of setting breakpoints on memory tracer

The following bugs were addressed:

  • Large string fields could cause crashes in the string serializer
  • corto_assert did not execute condition in release mode
  • Fix linking to nested packages
  • Fixed asynchronous locking behavior in notification framework
  • Asynchronous delete notifications read-locked an object after the lock was already deinitialized
  • Fixed issue where a deadlock would occur if dispatcher handles observable event in same thread
  • Fix issue with packaging a project into a tar
  • Fix memory leak in corto_path and corto_fullpath
  • Fixed issue where corto run would crash when a dependency is not installed
  • Preserve main header when regenerating package
  • Fix bug where documentation in an .md file would get lost upon regenerating a project

v0.2.9-alpha

8 years ago

This release contains the following new features:

  • Integration with replicators and corto_select seamlessly blends remote data with local data
  • The shell can browse data from all connected replicators
  • With corto_selectContentType apps can request, for example, a JSON string without loading objects in RAM
  • Pluggable serialization allow users build their own content types
  • Automatic translation between content types (for example, JSON to XML)
  • The corto_suspend API enables detaching object lifecycle from process lifecycle
  • Introduced corto_fullpath and corto_path APIs for obtaining object identifiers
  • Simplified notification API, specifically regarding instance observers
  • Added convenience 'Foreach' macro for iterator types
  • Separated infrastructure classes from the lang package into a separate core package
  • Shortened filenames by removing redundant prefix (for example, corto_object.c >> object.c)
  • Added memory tracer for easier debugging of reference counting bugs
  • Decreased footprint of objects
  • Destructors are now invoked directly when either corto_suspend or corto_delete is called
  • Improved loading of nested package dependencies
  • Build system support for C++ specific compiler options
  • Build system support for debug & release targets
  • HTML generator now generates an index table
  • HTML generator can generate documents from regular markdown (no Corto package required)
  • Improved font consistency of generated HTML

v0.2.8-alpha

8 years ago

This release contains the following new features:

  • corto_select now works correctly when user adds/deletes objects from scope
  • New corto publish command for project-level version management
  • Revised argument parsing library that enforces a more consistent tooling interface
  • Updated documentation CSS to new dark theme
  • Added CI mode in test framework that will display all tests (whether failed or not)
  • Minor bugfixes in parser & documentation framework