* Added a backup test suite. This suite is supposed to entirely drop an ArangoDB _system and restore it into a fresh one. This also includes system collections.
* Added more test cases for backup suite. Now tests several authorization/rights cenarios
* Fixed RestReplication Handlers to restore _user collections Properly.
* Updated Changelog
* Added special handling of _users in Restore for MMFiles as well.
* Added JWT secret for cluster execution of this test, also added JWT secret to shutdown call
* Improve Foxx cluster resilience
Fixes#2083Fixes#2384Fixes#2408
Addresses #1892
* Port old Foxx API
* Implement single-file services
* Add console.errorStack/warnStack/infoStack helpers
* Simplify serviceInfo validation
* Extract github/upload logic into Aardvark and old FM API
* Move generator logic into Aardvark
* Move zip/js buffer logic into FM core
* Add Foxxmanager tests
* Send empty response when no README
* Disambiguate script arg format
Historically we allow passing an array of positional arguments or an arbitrary first argument.
This is surprising behaviour, so we should just always treat the value as a first argument.
* Rebuild bundle in development mode
* Nicer HTTP docs formatting
* Create Foxx HTTP docs
* Simplify service upload handling
* Remove inline swagger docs
* Implement public download route
* Consistency
* Rebuild aardvark
* Move bundle route into /_api/foxx/_local
* Rebuild Swagger API docs
* Add changes to CHANGELOG
* More docs
Calls to require should stay within the ArangoDB paths or Foxx service root.
The require cache for Foxx services should be service specific.
Reloading a service's controllers should clear the service's require cache.
See #1577.
Calls to require should stay within the ArangoDB paths or Foxx service root.
The require cache for Foxx services should be service specific.
Reloading a service's controllers should clear the service's require cache.
See #1577.
The require function should now behave as expected and treat ArangoDB's module paths as sources for "external" modules.
The "assert", "buffer" and "path" modules have been moved out of ./js/node into the bootstrap modules.
The module "org/arangodb/foxx/arangoApp" (as well as any modules depending on it) is incompatible with the new module loading behaviour and will be have to be rewritten from scratch.
The "Package" class has been removed entirely and is no longer needed.
Support for the database-stored modules is currently missing and needs to be re-implemented within the module loader.