BlackMinou [Wed, 1 Feb 2017 19:03:03 +0000 (14:03 -0500)]
Adding a README to the actors group
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Mon, 30 Jan 2017 19:41:58 +0000 (14:41 -0500)]
Adding actor phases to the frontend
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Mon, 30 Jan 2017 18:34:40 +0000 (13:34 -0500)]
Adding a hook on a module at the end of a phase
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Mon, 30 Jan 2017 17:09:24 +0000 (12:09 -0500)]
Actors support module generation phase
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
Alexis Laferrière [Thu, 23 Feb 2017 20:39:53 +0000 (15:39 -0500)]
sdl2: update window_handle to support Windows and intro display_handle
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 24 Feb 2017 02:09:16 +0000 (21:09 -0500)]
egl: standardize the name of the 2 different handles
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 23 Feb 2017 19:45:49 +0000 (14:45 -0500)]
egl: clean up `initialize` and `make_current`, and fix `extensions`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 22 Feb 2017 19:53:32 +0000 (11:53 -0800)]
windows: flush after each write
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 10 Feb 2017 16:02:14 +0000 (08:02 -0800)]
windows: implement services of the exec module
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
BlackMinou [Mon, 30 Jan 2017 17:09:10 +0000 (12:09 -0500)]
Actors model injection
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 17 Jan 2017 20:39:32 +0000 (15:39 -0500)]
Fannkuch-redux actor example
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 17 Jan 2017 20:38:40 +0000 (15:38 -0500)]
Chameneos-redux actor example
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Wed, 2 Nov 2016 02:12:30 +0000 (22:12 -0400)]
Mandelbrot example from benchmarks game
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Mon, 30 Jan 2017 21:00:07 +0000 (16:00 -0500)]
Adds an atomic Int to pthreads
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 13 Sep 2016 14:52:48 +0000 (10:52 -0400)]
thread ring example from benchmarksgame
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 5 Jul 2016 15:23:54 +0000 (11:23 -0400)]
Adding a Nitty version of a condition variable
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Mon, 26 Sep 2016 23:58:03 +0000 (19:58 -0400)]
Actors abstraction
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
Alexandre Terrasa [Mon, 20 Feb 2017 19:33:02 +0000 (14:33 -0500)]
contrib/re_parser: add Makefile, README and .gitignore
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 17 Feb 2017 01:02:05 +0000 (20:02 -0500)]
contrib/re_parser: add web app
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 17 Feb 2017 01:01:49 +0000 (20:01 -0500)]
contrib: introduce re_parser
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 20 Feb 2017 19:08:27 +0000 (14:08 -0500)]
contrib/nitcc: improve Automaton::to_dot
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 16 Feb 2017 23:12:49 +0000 (18:12 -0500)]
contrib/nitcc: make Automaton::to_dot return a String
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 13 Feb 2017 02:55:48 +0000 (21:55 -0500)]
lib/github: introduce loader
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 20 Feb 2017 18:49:31 +0000 (13:49 -0500)]
lib/github: fix deserialization of empty branch arrays
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Sat, 11 Feb 2017 15:00:47 +0000 (10:00 -0500)]
inkscape_tools: update expected default DPI
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Mon, 20 Feb 2017 14:20:34 +0000 (09:20 -0500)]
Merge: lib/popcorn: add response handler to return csv documents
Pull-Request: #2370
Reviewed-by: Jean Privat <jean@pryen.org>
Alexandre Terrasa [Thu, 16 Feb 2017 23:12:25 +0000 (18:12 -0500)]
nitcc: remove nullable warnings
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 16 Feb 2017 23:07:44 +0000 (18:07 -0500)]
nitcc: remove trailing spaces
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 16 Feb 2017 22:59:02 +0000 (17:59 -0500)]
nitcc: rename `rfa` in `nfa`
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 16 Feb 2017 22:58:18 +0000 (17:58 -0500)]
nitcc/re2nfa: remove redef make_rfa types
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Thu, 16 Feb 2017 22:57:49 +0000 (17:57 -0500)]
nitcc/re2nfa: remove redef value types
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Thu, 16 Feb 2017 18:06:27 +0000 (13:06 -0500)]
Merge: JSON: optimize writing strings
Changes how strings are serialized to JSON by grouping non-escaped characters in a single call to write. So if a string has no escape characters, it is written as is. This replaces the old behavior where there was a call to write for each character.
This PR addresses the same issue as #2367 and #2371 but it targets JSON string writing only. The best results are obtained when this PR is merged with #2371. On my machine, parsing and writing `magic.json` takes the following wall clock time depending on the branch:
* master: 14s
* #2367 (char cache): 6.2s
* #2371 (buffer): 4.0s
* this PR: 4.8s
* this PR + #2371: 3.6s
Pull-Request: #2372
Jean Privat [Thu, 16 Feb 2017 18:05:55 +0000 (13:05 -0500)]
Merge: Use a Buffer in StringWriter
This aims to replace the dirty #2367 and might solve the underlying problem in a better way by using a Buffer instead of an Array[String] in StringWriter.
With the following pseudo-oneliner
~~~nit
import json::string_parser
import json
print args.first.to_path.read_all.parse_json.as(not null).serialize_to_json(pretty=true, plain=true).length
~~~
And the file `nit/benchmarks/json/inputs/magic.json` a 54MB json file.
Before:
* User time (seconds): 18.02
* Elapsed (wall clock) time: 13.43
* Maximum resident set size (GB): 6.09
After:
* User time (seconds): 4.26 (-76%)
* Elapsed (wall clock) time: 3.98 (-70%)
* Maximum resident set size (GB): 1.16 (-80%)
Nevertheless, 1GB of ram to process a 54MB file is still huge.
Pull-Request: #2371
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Wed, 15 Feb 2017 21:44:56 +0000 (16:44 -0500)]
json: optimize writing strings
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 16 Feb 2017 14:40:25 +0000 (09:40 -0500)]
core/stream: StringWriter uses a Buffer internally
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 16 Feb 2017 14:39:52 +0000 (09:39 -0500)]
json: use `write_char c` instead of `write c.to_s`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 16 Feb 2017 13:54:40 +0000 (08:54 -0500)]
Merge: Windows: last changes for a working bootstrap
This PR tweaks the generated Makefile so it works under Windows and silences the excessive warnings when casting ints to pointers, which is used to optimize `Int`, `Char` and `Bool`. And, to fix the heuristic that finds the Nit dir, this PR modifies two methods to support Windows path separator `\` and the PATH env var separator `;`.
These should be the last changes to get a working bootstrap on Windows using msys2/mingw64 tools. Once we regen c_src, you can clone and make Nit from Windows by following the first guide at: http://nitlanguage.org/windows.html Using msys2/mingw64 allows to compile native Windows apps using GNU tools, so the resulting program is an exe file that can use any Windows .dll file and show standard Windows windows.
These changes are far from fixing all issues for running Nit on Windows. However, a working bootstrap will simplify future incremental improvements and will allow detecting regressions with automated testing.
Pull-Request: #2368
Reviewed-by: Jean-Christophe Beaupré <jcbrinfo.public@gmail.com>
Jean Privat [Thu, 16 Feb 2017 13:54:38 +0000 (08:54 -0500)]
Merge: new module annotation `is generated`
This annotation has no effect on the semantic.
is only intended on software engineering software to discriminate computer-generated modules from human-written ones.
Pull-Request: #2366
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Alexandre Terrasa [Mon, 13 Feb 2017 02:51:46 +0000 (21:51 -0500)]
lib/github: fix api pull request
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 13 Feb 2017 02:51:39 +0000 (21:51 -0500)]
lib/github: fix api milestone
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 18 Nov 2016 22:53:38 +0000 (17:53 -0500)]
lib/github: fix Commit api for users
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 18 Nov 2016 22:53:11 +0000 (17:53 -0500)]
lib/github/curl: fix error message matching
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 18 Nov 2016 22:53:05 +0000 (17:53 -0500)]
lib/json/serialization: fix serialization of first attribute
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 18 Nov 2016 22:52:57 +0000 (17:52 -0500)]
lib/json/store: fix object paths
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Sun, 12 Feb 2017 03:13:45 +0000 (22:13 -0500)]
lib/popcorn: add response handler for csv documents
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Sun, 12 Feb 2017 03:13:18 +0000 (22:13 -0500)]
lib/nitcorn: add some media types
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Fri, 10 Feb 2017 06:32:31 +0000 (22:32 -0800)]
core: simplify_path supports Windows style path
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 10 Feb 2017 06:16:30 +0000 (22:16 -0800)]
toolcontext: support Windows PATH separator ';'
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 10 Feb 2017 04:03:25 +0000 (23:03 -0500)]
nitc: silence pointer to int cast warnings on Windows
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 28 Oct 2016 00:42:02 +0000 (20:42 -0400)]
nitc: link with pcreposix but not rt on Windows when using mingw64
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 16 Aug 2016 13:29:38 +0000 (09:29 -0400)]
nitc: use '> nul' on windows
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 10 Feb 2017 16:00:14 +0000 (11:00 -0500)]
Merge: Use `UInt32` to manipulate Unicode chars and support 32 bits platforms
Unicode support was broken on 32 bits platforms and anywhere a C `long` was on 32 bits (such as 64 bits Windows). This caused issues when compiling Nit tools.
This PR modifies the critical code in order to use `UInt32` instead of `Int` to fit all the 32 bits of Unicode chars. To do so, the first commit inverts the dependency order of the modules `fixed_int` and `text` so that `text` becomes a client of `fixed_int`. Also, update how constants are declared and fix a few implicit cast warnings.
Fix Debian 32 bits support #2355 after a c_src regen.
Fix #1945 Unicode support on iOS.
Allows to bootstrap under Windows with other minor changes (for another PR).
Reported-by: Alexandre Blondin Massé <alexandre.blondin.masse@gmail.com>
Pull-Request: #2363
Jean Privat [Fri, 10 Feb 2017 16:00:07 +0000 (11:00 -0500)]
Merge: improve AST dump
The debug method `ANode.dump_tree` is now more versatile and powerful:
* it can hide tokens (and others non useful nodes)
* it can display code line along with the AST
* it can display model information (through refinement in modelize and semantize modules)
* it uses some color so the output is more readable
Eg: for the code
~~~nit
var a: nullable Object = "Hello".substring(1,3)
print "{a or else "?"}"
~~~
the AST dumped is
~~~
1 var a: nullable Object = "Hello".substring(1,3)
AMainMethPropdef @test_expr.nit:1,1--2,23
`--ABlockExpr @test_expr.nit:1,1--2,23
|--AVardeclExpr :nullable Object @test_expr.nit:1,1--47
| |--AType :nullable Object @test_expr.nit:1,8--22
| `--ACallExpr :String call=String.abstract_text$Text$substring(from: Int, count: Int): String @test_expr.nit:1,26--47
| |--AStringExpr :String @test_expr.nit:1,26--32
| `--AParExprs @test_expr.nit:1,43--47
| |--AIntegerExpr :Int @test_expr.nit:1,44
| `--AIntegerExpr :Int @test_expr.nit:1,46
2 print "{a or else "?"}"
`--ACallExpr call=Sys.file$Sys$print(object: Object) @test_expr.nit:2,1--23
|--AImplicitSelfExpr :Sys @test_expr.nit:2,1
`--AListExprs @test_expr.nit:2,7--23
`--ASuperstringExpr :String @test_expr.nit:2,7--23
|--AStartStringExpr :String @test_expr.nit:2,7--8
|--AOrElseExpr :Object @test_expr.nit:2,9--21
| |--AVarExpr :nullable Object @test_expr.nit:2,9
| `--AStringExpr :String @test_expr.nit:2,19--21
`--AEndStringExpr :String @test_expr.nit:2,22--23
~~~
Pull-Request: #2364
Jean Privat [Fri, 10 Feb 2017 16:00:00 +0000 (11:00 -0500)]
Merge: mongo::queries: add unwind method
Also fix `op` method so it matches the specification in the comment
Pull-Request: #2362
Jean Privat [Fri, 10 Feb 2017 13:40:10 +0000 (08:40 -0500)]
tests: update nitserial & nitresful sav files with 'generated'
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 10 Feb 2017 13:39:25 +0000 (08:39 -0500)]
nitc: use is_generated in various tools and generated files
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 10 Feb 2017 13:28:05 +0000 (08:28 -0500)]
nitc: add new module annotation `is generated`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 10 Feb 2017 01:30:26 +0000 (20:30 -0500)]
tests: update sav for test_parser
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 10 Feb 2017 00:49:01 +0000 (19:49 -0500)]
Merge: nitrestful: async services and deserialize plain JSON arguments
This PR brings new features to the generated RESTful services: asynchronous RESTful methods, deserialization of plain JSON objects and more.
Using the annotation and argument `is restful(async)` triggers a method to be executed asynchronously when invoked by an HTTP request. Each RESTful call to this method will be executed by the `thread_pool` attribute of the receiving `RestfulAction`. As such, careful attention should be paid to its code to make sure that it works in parallel to the rest of the services and to other instances/threads of itself. The `thread_pool` can be customized with the desired number of threads and it can also be shared with other services.
Arguments of the RESTful methods are deserialized from JSON format. This PR applies the latest features of the deserialization services and uses the static parameter types as a heuristic to guess the Nit type the incoming data. This is also safer as only subclasses of the static type will be deserialized.
The code generated by nitrestful now considers all RESTful methods in order of declaration. This means that many methods can answer to the same `foo` name, but only the first implementation accepting the HTTP method and the type of the arguments will be executed.
As support, this PR also adds threads support to libevent, handles signal interruptions in `Float::sleep`, makes the `ThreadPool` a bit more permissive, improves support of plain JSON map object and adds a test for the nitrestful example.
Pull-Request: #2360
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 18:15:37 +0000 (13:15 -0500)]
nitc: test_parser use dump_tree instead of an adhoc treeprinter
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Thu, 9 Feb 2017 18:20:04 +0000 (13:20 -0500)]
ios: remove temporary Unicode fix
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 8 Feb 2017 08:32:19 +0000 (03:32 -0500)]
nitc: explicitly cast long to int
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 8 Feb 2017 07:14:32 +0000 (02:14 -0500)]
nitc: fix large int constants
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 8 Feb 2017 06:51:21 +0000 (01:51 -0500)]
text: use UInt32 to manipulate chars
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 9 Feb 2017 18:14:39 +0000 (13:14 -0500)]
nitc: dump_tree can display the lines of the source-code
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 18:13:16 +0000 (13:13 -0500)]
lib/ordered_tree: factorize `write_line` so subclasses can redefine it.
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 17:08:14 +0000 (12:08 -0500)]
nitc: typing and modelbuilder extends dump_info
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 17:07:17 +0000 (12:07 -0500)]
nitc: ASTDump exposes color helpers
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 17:06:46 +0000 (12:06 -0500)]
nitc: ASTDump can display aditionnal information
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 17:05:52 +0000 (12:05 -0500)]
nitc: ANode::dump_tree can skip structural nodes
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 17:05:13 +0000 (12:05 -0500)]
nitc: add ANode::is_structural
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Feb 2017 17:04:28 +0000 (12:04 -0500)]
nitc: add Location::get_line
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Wed, 8 Feb 2017 06:27:09 +0000 (01:27 -0500)]
core: invert dependencies between `text` and `fixed_ints`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexandre Terrasa [Wed, 8 Feb 2017 04:53:25 +0000 (23:53 -0500)]
mongo: add query unwind stage
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Wed, 8 Feb 2017 04:50:52 +0000 (23:50 -0500)]
mongo: fix query op name to follow the comment/spec
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 6 Feb 2017 13:39:51 +0000 (08:39 -0500)]
Merge: nitunit: fix before and after methods
Before and after method were not actually called in the test suite process.
This PR enables the compilation and run of these methods.
The new behavior is: if the `before_module` test case fails, all the test cases and the `after_module` are skipped and marked as failed.
Pull-Request: #2359
Reviewed-by: Jean-Christophe Beaupré <jcbrinfo.public@gmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 6 Feb 2017 13:39:19 +0000 (08:39 -0500)]
Merge: macOS: update realtime lib for Sierra
The latest version of macOS, Sierra, defines the functions `clock_gettime` and `clock_getres` which were previously missing. This PR adds support for Sierra while preserving compatibility with El Capitan using a simple heuristic to either use the system provided functions or define them locally.
Reported-by: Marie-Pier Lessard @mplessard
Pull-Request: #2358
Reviewed-by: Jean-Philippe Caissy <jpcaissy@piji.ca>
Jean Privat [Mon, 6 Feb 2017 13:39:02 +0000 (08:39 -0500)]
Merge: nitc: inject importation
Extends the nitc code so a phase can inject new submodules.
The main new method the this PR is `ModelBuilder::inject_module_subimportation` that must be used during the analysis on a module.
Up to now, the module hierarchy was fixed and built by the loader before any phases are run.
The basic way was: 1. load the main module, 2. load its imported modules recursively and build the hierarchy, 3. run the phases on all the loaded modules from the most general to the most specific (top-down)
Now the phases can also extends the module hierarchy while running some phases.
This cause the following changes:
* `run_phase` use a work-list (instead of a simple loop)
* new modules can pop up even for the main module of a program, so a fictive main module is always created
* conditional_importations is extended to be used to by inject_module_subimportation.
Pull-Request: #2357
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean-Christophe Beaupré <jcbrinfo.public@gmail.com>
Alexis Laferrière [Thu, 2 Feb 2017 21:32:31 +0000 (16:32 -0500)]
nitcorn: add test for nitrestful
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Oct 2016 18:42:33 +0000 (14:42 -0400)]
nitcorn: update restful example with an async method and complex data type
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 16 Oct 2016 14:06:58 +0000 (10:06 -0400)]
nitcorn: intro module to simplify pthreads support
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Oct 2016 00:58:55 +0000 (20:58 -0400)]
nitrestful & lib: use static type to limit and as heuristic at deserialization
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Oct 2016 00:58:29 +0000 (20:58 -0400)]
nitrestful: use mclassdef instead of mclass
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Oct 2016 18:41:46 +0000 (14:41 -0400)]
nitrestful: generate code for async restful methods
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Oct 2016 13:29:38 +0000 (09:29 -0400)]
nitrestful: detect the async keyword
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Oct 2016 13:29:10 +0000 (09:29 -0400)]
nitcorn: intro RestfulTask
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Oct 2016 17:50:40 +0000 (13:50 -0400)]
nitrestful: intercept at `prepare_respond_and_close` instead
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 14 Oct 2016 17:49:25 +0000 (13:49 -0400)]
nitrestful: fallback on other restful services if one fails type check
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 16 Oct 2016 14:06:29 +0000 (10:06 -0400)]
libevent: intro services for threads and fork
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 3 Feb 2017 19:37:22 +0000 (14:37 -0500)]
pthreads: intro `ThreadPool::join_all`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 3 Feb 2017 19:37:01 +0000 (14:37 -0500)]
pthreads: allow to set `ThreadPool::nb_thread` before first execute
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 3 Feb 2017 19:35:56 +0000 (14:35 -0500)]
pthreads: `ThreadPool` accept any `Task`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexandre Terrasa [Fri, 3 Feb 2017 06:56:06 +0000 (01:56 -0500)]
tests: add tests for nitunit before and after module
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 3 Feb 2017 06:55:34 +0000 (01:55 -0500)]
lib/test_suite: update Sys class to nitunit fix
We need the private method so we can compile the test case with intrude.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 3 Feb 2017 06:54:28 +0000 (01:54 -0500)]
testing: compile before and after methods
Tests case will fail if the before method failed.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 3 Feb 2017 06:52:33 +0000 (01:52 -0500)]
testing: fix `before_module` and `after_module` method recognition
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 3 Feb 2017 06:51:55 +0000 (01:51 -0500)]
testing: extract `fail` method to make a test case fail without running it
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Thu, 2 Feb 2017 19:48:21 +0000 (14:48 -0500)]
core: Float::sleep to handle interruptions
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 15 Oct 2016 02:38:55 +0000 (22:38 -0400)]
json: support reading plain JSON map when the static type is known
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 1 Feb 2017 15:29:55 +0000 (10:29 -0500)]
tests: update metrics because the new fictive bottom module
Signed-off-by: Jean Privat <jean@pryen.org>