nit.git
9 years agotests: test new policy in test_superstring
Jean Privat [Wed, 2 Jul 2014 17:11:15 +0000 (13:11 -0400)]
tests: test new policy in test_superstring

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotyping: refuse a null value in superstrings
Jean Privat [Wed, 2 Jul 2014 17:09:07 +0000 (13:09 -0400)]
typing: refuse a null value in superstrings

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Enable dummy executions of mnit applications
Jean Privat [Wed, 2 Jul 2014 06:04:51 +0000 (02:04 -0400)]
Merge: Enable dummy executions of mnit applications

A dummy execution need a stream of input events and a dummy display that is not connected to a physical screen.

`lib/mnit/mnit_injected_events.nit` gives the injection of pseudo-events read from a file.
It can be used, by mixin-refinement, with any existing mnit programs.

Eg. to have a replay of a game, just compile with `-m` and run with some environment variables
~~~
$ cd examples/shoot
$ ../../bin/nitc -o bin/shoot src/shoot_linux.nit -m ../../lib/mnit/mnit_injected_input.nit
$ MNIT_SRAND=0 MNIT_READ_INPUT=../../tests/shoot_null.inputs bin/shoot
~~~

`lib/mnit/mnit_null.nit` gives a new dummy target-platform with no display.
It must be used instead of `mnit_linux` and `mnit_android`.

Eg. for the same run, but without display ; note that the main module is `shoot.nit` instead of `shoot_linux.nit`
~~~
$ cd examples/shoot
$ ../../bin/nitc -o bin/shoot src/shoot.nit -m ../../lib/mnit/mnit_null.nit
$ MNIT_SRAND=0 MNIT_READ_INPUT=../../tests/shoot_null.inputs bin/shoot
~~~

All this is mainly a proof of concept, and not that useful, except maybe for testing, it is why tests.sh has be extended to control the run of a dummy `shoot` game.

Pull-Request: #509
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agotests: update mnit
Jean Privat [Wed, 2 Jul 2014 05:56:43 +0000 (01:56 -0400)]
tests: update mnit

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge master to resolve conflict in tests not present yet
Jean Privat [Wed, 2 Jul 2014 05:54:26 +0000 (01:54 -0400)]
Merge master to resolve conflict in tests not present yet

9 years agoMerge: String api
Jean Privat [Wed, 2 Jul 2014 05:52:22 +0000 (01:52 -0400)]
Merge: String api

Modified a bit of the API for Strings/Buffers as a reaction to the `appendgate` that occured earlier this week.

Now, copy methods (+,*,to_upper/lower) are deferred to String and in-place equivalents are available for Buffer.

Pull-Request: #516
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: model: fix a compiler crash on access to null constructor signature
Jean Privat [Tue, 1 Jul 2014 19:23:40 +0000 (15:23 -0400)]
Merge: model: fix a compiler crash on access to null constructor signature

Before this patch, compilation process stopped on a null pointer exception.
Because of the compilation workflow, nitg tried to access a super init even
if this init was malformed (type error) and thus not modelized properly.

This commit add one more condition to ensure that msignature is initialized before the test
and raise the correct error instead of crashing.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

Pull-Request: #538
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agotests_full: add mnit_null variants, and the .inputs file for shoot
Jean Privat [Mon, 16 Jun 2014 15:38:50 +0000 (11:38 -0400)]
tests_full: add mnit_null variants, and the .inputs file for shoot

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotests: teach tests.sh to use MNIT_* environment variables
Jean Privat [Mon, 16 Jun 2014 15:37:34 +0000 (11:37 -0400)]
tests: teach tests.sh to use MNIT_* environment variables

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoshoot: add a `null` target that uses mnit::mnit_null
Jean Privat [Mon, 16 Jun 2014 15:30:28 +0000 (11:30 -0400)]
shoot: add a `null` target that uses mnit::mnit_null

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agolib/mnit: introduce `mnit_null` to execute mnit without a display
Jean Privat [Mon, 16 Jun 2014 15:29:10 +0000 (11:29 -0400)]
lib/mnit: introduce `mnit_null` to execute mnit without a display

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agolib/mnit: introduce `mnit_injected_input` to inject events into mnit applications
Jean Privat [Tue, 1 Jul 2014 19:05:24 +0000 (15:05 -0400)]
lib/mnit: introduce `mnit_injected_input` to inject events into mnit applications

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agomodel: fix a compiler crash on access to null constructor signature
Alexandre Terrasa [Tue, 1 Jul 2014 16:17:17 +0000 (12:17 -0400)]
model: fix a compiler crash on access to null constructor signature

Before this patch, compilation process stopped on a null pointer exception.
Because of the compilation workflow, nitg tried to access a super init even
if this init was malformed (type error) and thus not modelized properly.

This commit add one more condition to ensure that msignature is initialized before the test
and raise the correct error instead of crashing.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: java: intro pop_from_local_frame
Jean Privat [Tue, 1 Jul 2014 12:52:33 +0000 (08:52 -0400)]
Merge: java: intro pop_from_local_frame

A very useful features when using the JNI reference stack to clean up local references.

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

Pull-Request: #533
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: Improvements to Pep8analysis Web version
Jean Privat [Tue, 1 Jul 2014 12:51:01 +0000 (08:51 -0400)]
Merge: Improvements to Pep8analysis Web version

* Support C++ in the emscripten platform
* The emscripten platoform support for the `--release` option reduces the file size of 50%
* pep8analysis error messages are now friendlier
* Do not spend as much time trying to find a fixed point (which is much faster!)
* Use Google Analytics to collect data and events
* Report fatal crash of the tool to the user
* Notice the user when the tool is working
* Does not lauch the full main for each analysis, only call a single Nit method
* Launch computation async using web workers when supported

The stack size of web workers are limited in Google Chrome under Linux, you are better off using Firefox to test big programs. Maybe they should be deactivated by default under this OS and browser.

Pull-Request: #530
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agojava: intro pop_from_local_frame
Alexis Laferrière [Fri, 27 Jun 2014 18:13:17 +0000 (14:13 -0400)]
java: intro pop_from_local_frame

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: do work async using workers
Alexis Laferrière [Thu, 26 Jun 2014 18:43:14 +0000 (14:43 -0400)]
pep8analysis: do work async using workers

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: Web interface launches only the analysis (not the full main)
Alexis Laferrière [Thu, 26 Jun 2014 16:34:06 +0000 (12:34 -0400)]
pep8analysis: Web interface launches only the analysis (not the full main)

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: report fatal crash of the tool
Alexis Laferrière [Thu, 26 Jun 2014 16:15:57 +0000 (12:15 -0400)]
pep8analysis: report fatal crash of the tool

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: fix use of #consolePanel and its code block
Alexis Laferrière [Thu, 26 Jun 2014 16:14:08 +0000 (12:14 -0400)]
pep8analysis: fix use of #consolePanel and its code block

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: add "Working..." panel to Web interface
Alexis Laferrière [Thu, 26 Jun 2014 16:13:21 +0000 (12:13 -0400)]
pep8analysis: add "Working..." panel to Web interface

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: add some google analytics event tracking
Alexis Laferrière [Thu, 26 Jun 2014 00:38:44 +0000 (20:38 -0400)]
pep8analysis: add some google analytics event tracking

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: set larger maximum memory
Alexis Laferrière [Mon, 16 Jun 2014 20:20:03 +0000 (16:20 -0400)]
pep8analysis: set larger maximum memory

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: minor correction in text
Alexis Laferrière [Thu, 26 Jun 2014 16:34:43 +0000 (12:34 -0400)]
pep8analysis: minor correction in text

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: minor indentation fix
Alexis Laferrière [Thu, 26 Jun 2014 00:38:20 +0000 (20:38 -0400)]
pep8analysis: minor indentation fix

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: clean up include of Google Analytics
Alexis Laferrière [Thu, 26 Jun 2014 18:40:50 +0000 (14:40 -0400)]
pep8analysis: clean up include of Google Analytics

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: remove duplicated code
Alexis Laferrière [Thu, 26 Jun 2014 00:53:48 +0000 (20:53 -0400)]
pep8analysis: remove duplicated code

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: improve error messages
Alexis Laferrière [Tue, 17 Jun 2014 20:40:50 +0000 (16:40 -0400)]
pep8analysis: improve error messages

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: short format of CFG contains code only
Alexis Laferrière [Thu, 26 Jun 2014 18:40:39 +0000 (14:40 -0400)]
pep8analysis: short format of CFG contains code only

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: make `manager` a top level method
Alexis Laferrière [Thu, 26 Jun 2014 16:21:44 +0000 (12:21 -0400)]
pep8analysis: make `manager` a top level method

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: suggest garbage collection between phases
Alexis Laferrière [Thu, 26 Jun 2014 16:17:47 +0000 (12:17 -0400)]
pep8analysis: suggest garbage collection between phases

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: do not crash on expected errors
Alexis Laferrière [Thu, 26 Jun 2014 16:17:12 +0000 (12:17 -0400)]
pep8analysis: do not crash on expected errors

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agopep8analysis: reduce the max amount of looping to find fixed point
Alexis Laferrière [Thu, 26 Jun 2014 16:09:18 +0000 (12:09 -0400)]
pep8analysis: reduce the max amount of looping to find fixed point

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoemscripten: minify code when release
Alexis Laferrière [Thu, 26 Jun 2014 16:32:52 +0000 (12:32 -0400)]
emscripten: minify code when release

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoMerge: No old style accessors
Jean Privat [Thu, 26 Jun 2014 19:51:50 +0000 (15:51 -0400)]
Merge: No old style accessors

Old-style accessors are those in the form

~~~
readable writable var _foo: Foo
~~~

The plan is to remove them from the grammar (and the AST and modelize_property) in future PR.
This PR only update the exisiting code to remove the remaining occurences by:

* using new-style attributes, or
* keep old style attributes with explicit getters/setters if using new-style attributes has a too big impact on the performances (or is too complex to update)

Because of performance implications, old-style attribute may remains in the language to implements some intern parts.

Pull-Request: #528
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoemscripten: use the macro CXX to support C++
Alexis Laferrière [Thu, 26 Jun 2014 16:32:16 +0000 (12:32 -0400)]
emscripten: use the macro CXX to support C++

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoemscripten: add GC controls
Alexis Laferrière [Thu, 26 Jun 2014 16:11:18 +0000 (12:11 -0400)]
emscripten: add GC controls

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoemscripten: enable dynamic memory size
Alexis Laferrière [Mon, 16 Jun 2014 20:20:21 +0000 (16:20 -0400)]
emscripten: enable dynamic memory size

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoFFI with C++: use a customizable macro to compile C++ code
Alexis Laferrière [Thu, 26 Jun 2014 16:12:11 +0000 (12:12 -0400)]
FFI with C++: use a customizable macro to compile C++ code

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoMerge: private DFAState
Jean Privat [Thu, 26 Jun 2014 17:16:08 +0000 (13:16 -0400)]
Merge: private DFAState

nitcc genrates a bunch of subclasses of DFAState, but did not mark them private altrought they are not useful for the programme and polute the auto-documentation.

Pull-Request: #529
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: PNaCl: Added 'create_thread' function in the pnacl lib.
Jean Privat [Thu, 26 Jun 2014 17:16:00 +0000 (13:16 -0400)]
Merge: PNaCl: Added 'create_thread' function in the pnacl lib.

Added 'create_thread' function to enable thread creation after a exit.

Pull-Request: #519
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Concerns sorter
Jean Privat [Thu, 26 Jun 2014 17:15:50 +0000 (13:15 -0400)]
Merge: Concerns sorter

Just replace some sorters by an MEntity sorter.

Pull-Request: #526
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agomodel_utils: replace many sorters by MEntityNameSorter
Alexandre Terrasa [Thu, 19 Jun 2014 20:03:34 +0000 (16:03 -0400)]
model_utils: replace many sorters by MEntityNameSorter

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agomodel_utils: add MEntityNameSorter
Alexandre Terrasa [Wed, 18 Jun 2014 18:24:51 +0000 (14:24 -0400)]
model_utils: add MEntityNameSorter

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agomodelize_property: remove old-style accesors
Jean Privat [Thu, 26 Jun 2014 10:05:47 +0000 (06:05 -0400)]
modelize_property: remove old-style accesors

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agopep8analysis: remove old-style accessors in the AST
Jean Privat [Thu, 26 Jun 2014 10:04:06 +0000 (06:04 -0400)]
pep8analysis: remove old-style accessors in the AST

Note: the transformation was done with a script.
The parser cannot seem to be regenerated.
A future move could be to use nitcc instead.

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotests: remove remaining old-style accessors
Jean Privat [Thu, 26 Jun 2014 02:13:50 +0000 (22:13 -0400)]
tests: remove remaining old-style accessors

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agolib/json: regenerate json_lexer with private DFAStates
Jean Privat [Thu, 26 Jun 2014 09:18:48 +0000 (05:18 -0400)]
lib/json: regenerate json_lexer with private DFAStates

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agonitcc: DFAStates are private
Jean Privat [Thu, 26 Jun 2014 09:17:36 +0000 (05:17 -0400)]
nitcc: DFAStates are private

One does not want to see them in the documentation.

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: ordered_tree: make OrderedTree implement Collection
Jean Privat [Thu, 26 Jun 2014 02:42:24 +0000 (22:42 -0400)]
Merge: ordered_tree: make OrderedTree implement Collection

OrderedTree now implement major Collection services

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

Pull-Request: #524
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agoparser: remove generated old-style accesors.
Jean Privat [Thu, 26 Jun 2014 02:06:23 +0000 (22:06 -0400)]
parser: remove generated old-style accesors.

ANodes use new style attributes (with two accesors)
Other use old-style attributes with two explicit getter and setters.

Using new-style attributes has a too big impact on performance because of
the redefined setter

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoparser: remove some remaining old style accessors
Jean Privat [Thu, 26 Jun 2014 02:02:30 +0000 (22:02 -0400)]
parser: remove some remaining old style accessors

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoMerge: names and concerns in model
Jean Privat [Thu, 26 Jun 2014 01:10:11 +0000 (21:10 -0400)]
Merge: names and concerns in model

First commit adapt the MEntity implementation to it's documentation by moving up the `name` property.

Second commit introduce a new kind of MEntity: MConcern that will be used in documentation tools as a common interface for MProject, MGroup and MModule.

Pull-Request: #522
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agoMerge: Model utils
Jean Privat [Wed, 25 Jun 2014 23:49:29 +0000 (19:49 -0400)]
Merge: Model utils

This pull request needs #522 to be merged.

Introduce some usefull services in model_utils for further uses in documentation tools.

Pull-Request: #523
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>

9 years agoordered_tree: add some tests
Alexandre Terrasa [Wed, 25 Jun 2014 23:12:26 +0000 (19:12 -0400)]
ordered_tree: add some tests

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoUpdated 'create_thread' function comments.
Djomanix [Wed, 25 Jun 2014 23:09:19 +0000 (19:09 -0400)]
Updated 'create_thread' function comments.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoordered_tree: make OrderedTree a subclass of Collection and implements missing methods
Alexandre Terrasa [Wed, 25 Jun 2014 22:55:42 +0000 (18:55 -0400)]
ordered_tree: make OrderedTree a subclass of Collection and implements missing methods

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: Rope api
Jean Privat [Wed, 25 Jun 2014 22:07:11 +0000 (18:07 -0400)]
Merge: Rope api

Small modifications of the API that will be required for future pull requests such as Splay ropes and Bufferized ropes.

Pull-Request: #518
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agomodel: introduce MConcern
Alexandre Terrasa [Thu, 19 Jun 2014 19:52:51 +0000 (15:52 -0400)]
model: introduce MConcern

Each MProject, MGroup and MModules represents a documentable concern.

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agomodel: introduce `name` in MEntity according to it's documentation
Alexandre Terrasa [Wed, 25 Jun 2014 21:32:34 +0000 (17:32 -0400)]
model: introduce `name` in MEntity according to it's documentation

Documentation was:
 # A named and possibly documented entity in the model.
So I added the name...

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: Removed sockets from 'debugger.nit' to put them in a new module
Jean Privat [Wed, 25 Jun 2014 19:56:36 +0000 (15:56 -0400)]
Merge: Removed sockets from 'debugger.nit' to put them in a new module

Removed sockets from 'debugger.nit' to put them in 'debugger_socket.nit', because it caused compilation problems for the interpreter in PNaCl.

Pull-Request: #520
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Jean Privat <jean@pryen.org>

9 years agomodel_utils: allow intro and redef mclasses filtering
Alexandre Terrasa [Wed, 18 Jun 2014 19:14:08 +0000 (15:14 -0400)]
model_utils: allow intro and redef mclasses filtering

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agomodel_utils: collect mmodules in mproject and mgroups
Alexandre Terrasa [Wed, 25 Jun 2014 15:24:43 +0000 (11:24 -0400)]
model_utils: collect mmodules in mproject and mgroups

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agomodel_utils: extract mclasses and mclassdefs from MProject and Mgroup
Alexandre Terrasa [Wed, 25 Jun 2014 15:24:07 +0000 (11:24 -0400)]
model_utils: extract mclasses and mclassdefs from MProject and Mgroup

Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agolib/ropes_debug: Adapted new leaves for to_dot operation.
Lucas Bajolet [Mon, 23 Jun 2014 15:38:08 +0000 (11:38 -0400)]
lib/ropes_debug: Adapted new leaves for to_dot operation.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agolib/standard/ropes: Added to_leaf method on RopeNode.
Lucas Bajolet [Mon, 23 Jun 2014 15:12:35 +0000 (11:12 -0400)]
lib/standard/ropes: Added to_leaf method on RopeNode.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agoAdded an import for 'debugger_socket'.
Djomanix [Wed, 25 Jun 2014 18:30:36 +0000 (14:30 -0400)]
Added an import for 'debugger_socket'.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agomailcap: fix Julien Pagès
Jean Privat [Wed, 25 Jun 2014 13:12:50 +0000 (09:12 -0400)]
mailcap: fix Julien Pagès

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoPut sockets in 'debugger_socket.nit
Djomanix [Mon, 23 Jun 2014 20:06:03 +0000 (16:06 -0400)]
Put sockets in 'debugger_socket.nit

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoRemoved sockets from 'debugger.nit' to put them in 'debugger_socket.nit
Djomanix [Mon, 23 Jun 2014 20:05:11 +0000 (16:05 -0400)]
Removed sockets from 'debugger.nit' to put them in 'debugger_socket.nit

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agoMerge: Nit for mac
Jean Privat [Mon, 23 Jun 2014 19:30:53 +0000 (15:30 -0400)]
Merge: Nit for mac

Some minor, but needed, tweaks to allow the compilation of Nit on Mac OS X

A special page is also created: http://nitlanguage.org/on_mac/

Currenlty, only 31 tests does not pass, most of them are platform or FFI related (some SDK are missing).

Pull-Request: #517
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: Tests emscripten
Jean Privat [Mon, 23 Jun 2014 19:30:45 +0000 (15:30 -0400)]
Merge: Tests emscripten

The produced .js files are then executed by nodejs.

All base tests that do not import kernel are skipped because
since the module lib/emscripten.nit imports the kernel module,
an automatic double definition of classes `Object` and `Sys` occurs.

nodejs cannot perform correctly synchronized input, thus `stdin` and all
file reading does not work although they work in a browser.
As a workaround, a special module `emscripten_nodejs.nit` is added that just
print "NOT_YET_IMPLEMENTED" on unsupported services on synchronized input,
thus marking the test as skipped.

Currently, 99 (7% of the 1390 tests) still cause some other kind of failures;
they will be investigated later.

The whole testing of all the tests takes 68m on my machine.
ccache in unusable and the option --jcache of emcc does not bring any boost.
So it is unlikely that `testall.sh` will include this engine.

Pull-Request: #514
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoMerge: Bench scripts
Jean Privat [Mon, 23 Jun 2014 19:29:49 +0000 (15:29 -0400)]
Merge: Bench scripts

Reunited common functions for benches in a new shell file.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

Pull-Request: #515
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

9 years agoAdded 'create_thread' function to enable thread creation after a exit.
Djomanix [Mon, 23 Jun 2014 18:28:09 +0000 (14:28 -0400)]
Added 'create_thread' function to enable thread creation after a exit.

Signed-off-by: Djomanix <johan.kayser@viacesi.fr>

9 years agotests: Updated to fit new API.
Lucas Bajolet [Mon, 23 Jun 2014 13:50:40 +0000 (09:50 -0400)]
tests: Updated to fit new API.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agolib/standard/text: Updated API for String/Buffer, a few methods disappear from Text...
Lucas Bajolet [Mon, 23 Jun 2014 13:48:53 +0000 (09:48 -0400)]
lib/standard/text: Updated API for String/Buffer, a few methods disappear from Text and are relocated a level below.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

9 years agomkcsrc: clear OLDNITCOPT in src/Makefile
Jean Privat [Sat, 21 Jun 2014 02:31:07 +0000 (22:31 -0400)]
mkcsrc: clear OLDNITCOPT in src/Makefile

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agoc_src: update Makefile to compile on MacOSX
Jean Privat [Fri, 20 Jun 2014 19:27:12 +0000 (15:27 -0400)]
c_src: update Makefile to compile on MacOSX

Add a make variable OLDNITCOPT to give options for the first step

Signed-off-by: Jean Privat <jean@pryen.org>

9 years agotests: update some tests to pass on Mac
Jean Privat [Fri, 20 Jun 2014 20:03:09 +0000 (16:03 -0400)]
tests: update some tests to pass on Mac

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agoMakefile: use `--no-stacktrace` on c_src/nitg to deal with the -lunwind issue on...
Jean Privat [Fri, 20 Jun 2014 19:39:16 +0000 (15:39 -0400)]
Makefile: use `--no-stacktrace` on c_src/nitg to deal with the -lunwind issue on MacOSX

10 years agotests.sh: force LC_ALL that cause issues with MacOSX
Jean Privat [Fri, 20 Jun 2014 19:28:23 +0000 (15:28 -0400)]
tests.sh: force LC_ALL that cause issues with MacOSX

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agoglobal: compiler remove a useless `const` that cause C warnings
Jean Privat [Fri, 20 Jun 2014 19:25:05 +0000 (15:25 -0400)]
global: compiler remove a useless `const` that cause C warnings

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agoabstract_compiler: remove -lunwind if target is Darwin (macosx)
Jean Privat [Fri, 20 Jun 2014 19:19:33 +0000 (15:19 -0400)]
abstract_compiler: remove -lunwind if target is Darwin (macosx)

10 years agoabstract_compiler: add -Qunused-argument if clang
Jean Privat [Fri, 20 Jun 2014 19:18:01 +0000 (15:18 -0400)]
abstract_compiler: add -Qunused-argument if clang

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agoabstract_compiler: add some flags to teach clang to be more silent
Jean Privat [Fri, 20 Jun 2014 19:13:20 +0000 (15:13 -0400)]
abstract_compiler: add some flags to teach clang to be more silent

gcc also accepts these flags, so it is OK.

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agobenchmarks: Reunited common functions for benches in a new shell file.
Lucas Bajolet [Wed, 18 Jun 2014 19:38:06 +0000 (15:38 -0400)]
benchmarks: Reunited common functions for benches in a new shell file.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agolib/standard/ropes: Concat nodes cannot be constructed without children anymore.
Lucas Bajolet [Thu, 19 Jun 2014 17:19:07 +0000 (13:19 -0400)]
lib/standard/ropes: Concat nodes cannot be constructed without children anymore.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agolib/standard/ropes: API change, Leaves are now abstract for future flexibility.
Lucas Bajolet [Thu, 19 Jun 2014 16:13:49 +0000 (12:13 -0400)]
lib/standard/ropes: API change, Leaves are now abstract for future flexibility.

Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>

10 years agoMerge: Tests nitg --semi-global
Jean Privat [Thu, 19 Jun 2014 15:01:24 +0000 (11:01 -0400)]
Merge: Tests nitg --semi-global

Some work and cleanup on tests.sh and cie.
Also add a new engine `nitg-sg` that is `nitg --semi-global`

Pull-Request: #513
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>

10 years agotests.sh: new engine `emscripten` for `nitg -m emscripten`
Jean Privat [Wed, 18 Jun 2014 20:01:21 +0000 (16:01 -0400)]
tests.sh: new engine `emscripten` for `nitg -m emscripten`

The produced .js files are then executed by nodejs.

All base tests that do not import kernel are skipped because
since the module lib/emscripten.nit imports the kernel module,
an automatic double definition of classes `Object` and `Sys` occurs.

nodejs cannot perform correctly synchronized input, thus `stdin` and all
file reading does not work although they work in a browser.
As a workaround, a special module `emscripten_nodejs.nit` is added that just
print "NOT_YET_IMPLEMENTED" on unsupported services on synchronized input,
thus marking the test as skipped.

Currently, 99 (7% of the 1390 tests) still cause some other kind of failures;
they will be investigated later.

The whole testing of all the tests takes 68m on my machine.
ccache in unusable and the option --jcache of emcc does not bring any boost.
So it is unlikely that `testall.sh` will include this engine.

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests: testall.sh include nitg-sg
Jean Privat [Wed, 18 Jun 2014 16:51:25 +0000 (12:51 -0400)]
tests: testall.sh include nitg-sg

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests.sh: distinguish the generated file from the executed file
Jean Privat [Wed, 18 Jun 2014 16:42:05 +0000 (12:42 -0400)]
tests.sh: distinguish the generated file from the executed file

Some some future engines that does not produce directly executable files
could still use the tests.sh framework.

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests: add engine `nitg-sg` for --semi-global
Jean Privat [Wed, 18 Jun 2014 14:23:17 +0000 (10:23 -0400)]
tests: add engine `nitg-sg` for --semi-global

Some platforms starts using it, so better check that we do
not broke it.

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests: clean some .skip files (use some UNDEFINED .res)
Jean Privat [Wed, 18 Jun 2014 15:19:53 +0000 (11:19 -0400)]
tests: clean some .skip files (use some UNDEFINED .res)

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests: teach a res file to contains `UNDEFINED` and always match
Jean Privat [Wed, 18 Jun 2014 15:05:30 +0000 (11:05 -0400)]
tests: teach a res file to contains `UNDEFINED` and always match

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests: add tests for tests.sh so we can test the test script
Jean Privat [Wed, 18 Jun 2014 14:20:57 +0000 (10:20 -0400)]
tests: add tests for tests.sh so we can test the test script

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests.sh: soso are always detected as failed tests
Jean Privat [Wed, 18 Jun 2014 14:17:25 +0000 (10:17 -0400)]
tests.sh: soso are always detected as failed tests

A `soso` is when a test fails only because errors and warnings
differs.

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests.sh: less hackish way to handle fixme directories for savdirs
Jean Privat [Wed, 18 Jun 2014 13:59:21 +0000 (09:59 -0400)]
tests.sh: less hackish way to handle fixme directories for savdirs

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests.sh: remove tap output
Jean Privat [Wed, 18 Jun 2014 13:57:00 +0000 (09:57 -0400)]
tests.sh: remove tap output

Badly implemented and unused now since junit-xml-output

Signed-off-by: Jean Privat <jean@pryen.org>

10 years agotests: fix base_inline
Jean Privat [Wed, 18 Jun 2014 15:25:32 +0000 (11:25 -0400)]
tests: fix base_inline

Signed-off-by: Jean Privat <jean@pryen.org>