Releases: cortoproject/corto
Releases · cortoproject/corto
v2.1.1
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
v2.1.0
The first non-beta release of corto!
v1.3.0-beta
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
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
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
v.0.2.12-alpha
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
This release contains the following new features:
- Fixed bug in creating dependencies between non-corto packages
v0.2.10-alpha
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
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
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