Jean Privat [Thu, 19 May 2016 19:04:51 +0000 (15:04 -0400)]
docker/full: add nitunits
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 19 May 2016 19:04:27 +0000 (15:04 -0400)]
docker/full: add postgresql
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 19 May 2016 19:02:56 +0000 (15:02 -0400)]
docker: split into a basic and a full Docker
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 19 May 2016 15:06:31 +0000 (11:06 -0400)]
Merge: doc: Fix a mispelled word in the parser’s README
Pull-Request: #2082
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 19 May 2016 14:56:40 +0000 (10:56 -0400)]
Merge: make the nitcatalog slightly more robust on person variations
The various person-related fields were parsed verbatim.
So a slight change in spaces was enough to differentiate two persons.
Now the canonical person representation is used.
e.g. `Lucas Bajolet<r4pass@hotmail.com>` vs `Lucas Bajolet <r4pass@hotmail.com>
` is now the same person (hint: the change is the space between the `t` and the `<`).
Note that to present the original information,
names/emails/url are still distinguished.
`Lucas Bajolet <r4pass@hotmail.com>`, `R4pass <r4pass@hotmail.com>
` and `Lucas Bajolet <lucas.bajolet@hotmail.com>
` are still 3 persons.
Pull-Request: #2103
Jean Privat [Thu, 19 May 2016 14:56:38 +0000 (10:56 -0400)]
Merge: .gitignore: ignore .swo files
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Pull-Request: #2102
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 20:17:43 +0000 (16:17 -0400)]
Merge: app.nit: navigate between windows with the back button
This should be the last big feature of _app.nit_ needed for my thesis!
Intro services to navigate between multiple windows of the same app.
Windows are added to a stack and popped back to the visible state on pressing the back key.
This behavior was implemented for Android by intercepting events raised by the "hardware" back key.
iOS offers the same features natively so there is no adaptation needed as of now.
On GNU/Linux with GTK+, a button is added to the window header when there's a window to go back to.
These feature will probably have to be tweaked in the future, but they are enough for the Benilux client app. Notably, the life-cylce of each individual window has to be reconsidered and we will probably need some adaptation on iOS to have a better integration.
This PR also fixes a few bugs. The `EditText` losing focus in a `ListLayout` is fixed by a change to the Android manifest file, and vertical layout should now look better on iOS.
I took the opportunity to add other key events while working on the Android back key support.
These will be useful when migrating games from the old low-level implementation on the NDK to our custom `NitActivity.java`.
Pull-Request: #2100
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Jean Privat [Tue, 17 May 2016 20:17:38 +0000 (16:17 -0400)]
Merge: app.nit: intro `ToggleEvent`
This PR adds an event when a checkbox is toggled. `ToggleEvent` is similar to the only previously existing event, `ButtonPressEvent`.
Pull-Request: #2099
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 20:17:32 +0000 (16:17 -0400)]
Merge: lib/core: Fix substring issue in `ASCIIFlatString`
A bug in the validation part of `ASCIIFlatString::substring` caused some substrings to be created with a negative length, which could be the cause of various negative side-effects.
In the example added in the substring test, this caused `stdout` to close due to a call to `fwrite` with a negative count, which was in turn converted to unsigned (I suspect this is undefined behaviour), provoking the closure of the stream in the nit part.
Reported by @Morriar
Close #2089
Pull-Request: #2091
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 20:17:28 +0000 (16:17 -0400)]
Merge: modelize: mark properties broken if they are a bad introduction (bad redef)
Some broken redefinitions of properties caused the modelize phase to crash.
An infrastructure exists to prevent the use of such broken entities: the `is_broken` attributes. But they have to be set and used to be effective.
So this PR sets the `is_broken` flag on some forgotten error paths, then prevents further processing if `is_broken` is set.
Pull-Request: #2078
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Tue, 17 May 2016 20:17:25 +0000 (16:17 -0400)]
Merge: model: introduce model_json
This PR makes all model entities Jsonable when `model_json` is imported.
Not sure if I was supposed to use the serialization process or not in this case? @xymus what do you think?
This is mostly hand picked services chosen to provide a comprehensive model representation usable by other tools like nitdoc, nitx, web tools or else.
Pull-Request: #2024
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 20:16:23 +0000 (16:16 -0400)]
make the nitcatalog slightly more robust on person variations
The various person-related fields were parsed verbatim.
So a slight change in spaces was enough to differentiate two persons.
Now the canonical person representation is used.
e.g. `Lucas Bajolet<r4pass@hotmail.com>` vs `Lucas Bajolet <r4pass@hotmail.com>
` is now the same person (hint: the change is the space between the `t` and the `<`).
Note that to present the original information,
names/emails/url are still distinguished.
`Lucas Bajolet <r4pass@hotmail.com>`, `R4pass <r4pass@hotmail.com>
` and `Lucas Bajolet <lucas.bajolet@hotmail.com>
` are still 3 persons.
Signed-off-by: Jean Privat <jean@pryen.org>
Alexandre Terrasa [Tue, 17 May 2016 16:03:18 +0000 (12:03 -0400)]
model: introduce model_json
Translates model entites to plain json
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Tue, 17 May 2016 18:22:15 +0000 (14:22 -0400)]
model_collect: collect modifiers for all MEntities
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Tue, 17 May 2016 15:57:31 +0000 (11:57 -0400)]
.gitignore: ignore .swo files
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Fri, 15 Apr 2016 19:08:31 +0000 (15:08 -0400)]
lib/ios: layouts have different behavior according to the orientation
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 17 May 2016 13:53:33 +0000 (09:53 -0400)]
tnitter & calculator: update app.nit clients
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 5 Apr 2016 20:29:07 +0000 (16:29 -0400)]
lib/android: fix text input losing focus on selection in a list layout
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 18 Mar 2016 20:17:59 +0000 (16:17 -0400)]
lib/android: implement back_button support using the "hardware" back key
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 11 Nov 2015 16:47:27 +0000 (11:47 -0500)]
lib/android: add onKey* callbacks to Nit_activity
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 18 Mar 2016 19:12:23 +0000 (15:12 -0400)]
lib/linux: implement back button
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 18 Mar 2016 18:50:58 +0000 (14:50 -0400)]
lib/app: intro back_button abstraction with navigation for multiple windows
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 17 May 2016 15:04:42 +0000 (11:04 -0400)]
Merge: Rubix: Fix package
Wrong email in the package, fixed with this PR
Pull-Request: #2097
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 15:04:37 +0000 (11:04 -0400)]
Merge: nitunit: set the envvar NIT_TESTING
Pull-Request: #2096
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Jean Privat [Tue, 17 May 2016 15:04:34 +0000 (11:04 -0400)]
Merge: Android: select the low-level implementations from other importations
This PR needs some context first: there is two low-level implementations for Nit apps on Android. The oldest is based on C code and `native_app_glue`, it is used by all our game engines. The new one is based on a custom Java class `NitActivity`, it is used to implement `app::ui` and should replace the oldest one when I have time to work on it.
Prior to this PR, importing `android` imported the old C implementation, and you had to import `android::ui` to get the Java implementation.
This PR changes this behavior and uses conditional importations to choose between the two low-level implementations. So importing `android` and `gamnit` uses the old C implementation (now `android::game`) and importing `android` and `app::ui` uses the new Java implementation (`android::nit_activity`).
This allows us to use the simple `nitc src/calculator.nit -m android`, instead of `nitc src/calculator.nit -m ../../lib/android/ui.nit`. And the most important is that the user doesn't have to chose between (or understand) the two low-level implementations.
Pull-Request: #2093
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Jean Privat [Tue, 17 May 2016 15:04:29 +0000 (11:04 -0400)]
Merge: Wrap postgresql #1810
Started working on a wrapper for PostgresSQL as per issue: https://github.com/nitlang/nit/issues/1810
So far this wrapper provides basic functionality allowing:
* a connection to be made
* a statement to be executed
* creation of prepared statements
* executions of prepared statements
* connection status functions
according to the [PostgresSQL libpq interface](http://www.postgresql.org/docs/9.5/interactive/libpq.html). It's about equivalent to the `native_sqlite3.nit` class.
Just wondering how much more functionality we want to add and looking for some review on the usage of the FFI and style.
@xymus @privat
Pull-Request: #2051
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Tue, 17 May 2016 14:53:51 +0000 (10:53 -0400)]
lib/linux: implement ToggleEvent
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 20 Apr 2016 18:22:51 +0000 (14:22 -0400)]
lib/ios: implement ToggleEvent
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 6 Apr 2016 02:04:20 +0000 (22:04 -0400)]
lib/android: implement ToggleEvent
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 6 Apr 2016 02:04:06 +0000 (22:04 -0400)]
lib/app: ToogleEvent
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Lucas Bajolet [Tue, 17 May 2016 14:08:01 +0000 (10:08 -0400)]
Fix package Rubix
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Tue, 17 May 2016 11:27:10 +0000 (07:27 -0400)]
lib/android: portrait and landscape import the main module
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Tue, 17 May 2016 11:20:25 +0000 (07:20 -0400)]
Merge: Asteronits: fix mobile on-screen controls
This is a long overdue update to Asteronits, the on-screen controls for mobiles devices were broken since the inverted Y axis incident. The problem is that a correct Y axis in 3D, when sharing world coordinates with the 2D, doesn't look right in 2D. The origin is at the bottom left of the screen, and positive angles are counter-clockwise. I don't like this representation in 2D, but I don't know to improve it, so let's update the clients of `gamnit::flat` instead!
Pull-Request: #2095
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Romain Chanoir <romain.chanoir@viacesi.fr>
Jean Privat [Tue, 17 May 2016 11:20:22 +0000 (07:20 -0400)]
Merge: src/nitlight: Updated client to avoid crashes on unparsed modules
Since the loader has been upgraded, `nitlight` crashed when using the `--full` option since some modules were recognized by the model but left unparsed, causing the program to crash when fetching the `AModule` from `modelbuilder.mmodule2node`.
This PR fixes the issue by rendering only loaded and parsed modules from the importation chain.
Pull-Request: #2088
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 11:19:49 +0000 (07:19 -0400)]
nitunit: set the envvar NIT_TESTING
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 01:22:59 +0000 (21:22 -0400)]
Merge: SQLite: update and simplify wrapper
This PR updates the SQLite wrapper so it is easier to understand and maintain, and as a bonus it is now compatible with the interpreter.
The C code and native layer now uses only `NativeString`, and the calls `to_cstring` and `NativeString::to_s` are moved to the Nit code and nity layer. The error code on opening a database is kept on the C side and retrieved only as needed. This removes a lot of callbacks which simplifies the code and makes the module compatible with the interpreter.
Pull-Request: #2092
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 17 May 2016 01:22:55 +0000 (21:22 -0400)]
Merge: Admin interface for Benitlux and fixes
This PR adds a RESTful admin interface to the Benitlux server. This interface is used to trigger sending out the daily menu notifications from an external program / cron.
As a fix to the diff showing everything as new on the menu, the server now standardizes the received dates to the format expected by SQLite. There is also a small fix to the library used by the code generated by nitrestful to correctly check for errors.
Pull-Request: #2090
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Tue, 17 May 2016 01:22:52 +0000 (21:22 -0400)]
Merge: Add quality metrics to the nit catalog
Three new metrics:
* number of errors (boo)
* number of warnings (and advices)
* percentage of documentation (with ponderation)
The 3 firsts commits was to make errors&warnings accessible without printing them.
Pull-Request: #2081
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Jean Privat [Tue, 17 May 2016 01:22:48 +0000 (21:22 -0400)]
Merge: JSON: merge 2 services into `serialize_to_json` and isolate from `static`
The first goal of this PR is to create a simple but customizable service to write Nit objects to JSON (replacing `to_json_string` and `to_plain_json`). It also clarifies how the serialization of a single object can be customized by refining `accept_json_serializer` which allows the same customization of the existing recursive `to_json` but on any `Serializable` objects.
The second goal is to isolate `json::serialization` from `json::static`. This allows to hide the complexity of `static` to clients of `serialization` and will help to deprecate the `static` writing services. After this PR, `serialization` uses really only one service from `static`, `String::to_json` which escapes strings. While `paser_json` uses the new @R4PaSs implementation. The types of `static` didn't add any useful services in the context of the `JsonDeserializer` (they only have writing services) and added both complexity and dependencies to the module.
All of this would make it easy (if there is still interest) to unify all JSON writing APIs and replace the current `Jsonable::to_json` with a single `Serializable::to_json` using the implementation of the new method `serialize_to_json`. And we can update the existing `redef fun to_json` to `redef fun accept_json_serializer` writing to a stream instead of a string.
Pull-Request: #2068
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Tue, 17 May 2016 00:32:22 +0000 (20:32 -0400)]
lib/android: update import and doc of `sensors`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 13 May 2016 16:31:53 +0000 (12:31 -0400)]
contrib/asteronits: fix touch_ui (Mobile on screen controls)
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 16 May 2016 17:22:00 +0000 (13:22 -0400)]
lib/sqlite3: update error management to be more simple use only the light FFI
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 8 Apr 2016 12:58:58 +0000 (08:58 -0400)]
lib/sqlite3: use only NativeString in the native layer
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 13 May 2016 16:26:24 +0000 (12:26 -0400)]
lib/android: update README with info on the 2 core implementations
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 13 May 2016 16:07:50 +0000 (12:07 -0400)]
contrib & examples: update Android adaptations to the new entrypoint
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sun, 1 May 2016 19:11:35 +0000 (15:11 -0400)]
lib/android: revamp entrypoint
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 6 Apr 2016 02:17:41 +0000 (22:17 -0400)]
contrib/benitlux: intro `BenitluxRESTAction::check_token`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 5 Apr 2016 20:29:28 +0000 (16:29 -0400)]
contrib/benitlux: intro the admin server interface with daily notification
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 11 May 2016 13:34:19 +0000 (09:34 -0400)]
contrib/benitlux: standardize dates on the server-side
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Wed, 11 May 2016 13:33:48 +0000 (09:33 -0400)]
lib/sqlite3: intro `Text::to_sql_date_string`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Lucas Bajolet [Mon, 16 May 2016 20:01:36 +0000 (16:01 -0400)]
tests: Updated `test_substring` for edge case in `ASCIIFlatString::substring`
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Mon, 16 May 2016 19:59:03 +0000 (15:59 -0400)]
lib/core: Fix substring in `ASCIIFlatString`
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Mon, 16 May 2016 18:41:42 +0000 (14:41 -0400)]
src/nitlight: Updated client to avoid crashes on unparsed modules
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
itsWill [Sun, 27 Dec 2015 08:27:03 +0000 (09:27 +0100)]
started working on a wrapper for postgres
Signed-off-by: itsWill <guilhermerpmansur@gmail.com>
Alexis Laferrière [Tue, 5 Apr 2016 03:19:06 +0000 (23:19 -0400)]
lib/nitcorn: fix checking errors after deserialization in nitrestful lib
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
jcbrinfo [Sat, 14 May 2016 15:58:56 +0000 (11:58 -0400)]
doc: Fix a mispelled word in the parser’s README
Jean Privat [Sat, 14 May 2016 15:56:13 +0000 (11:56 -0400)]
Merge: Some nitunit love
Two small changes
* nitunit works on directories. e.g. `nitunit lib/ contrib/`
* static errors are shown with precise location.
~~~
test_doc3.nit:17,9--15: Syntax Error: unexpected identifier 'garbage'. To suppress this message, enclose the block with a fence tagged `nitish` or `raw` (see `man nitdoc`). (invalid-block)
# *garbage*
^
~~~
runtime errors are a more complex beast to track. Two solutions:
* pragma to inject line informations in the generated test program. This need to find a syntax for line pragmas and teach the parser to use them
* post-error management that parse error messages and substitute the locations from the the generated program with the original locations in the real source. Doable but more code is needed.
Pull-Request: #2075
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Sat, 14 May 2016 15:56:12 +0000 (11:56 -0400)]
Merge: CSV Benchmarks
This PR introduces a new benchmark script for CSV parsers.
Are tested here:
* Nit CSV Ad-hoc parser
* Go standard parser
* Java Apache Commons CSV parser
* Python - Pandas
* Python - Standard
* Ruby - Standard
Will upload some measurements later but *spoiler alert* Python - Pandas is the fastest on large files, Ruby is the slowest by far, Java is the second slower with a big margin from the rest.
Go/Nit/Python-Standard are almost equivalent.
Pull-Request: #2072
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 15:56:10 +0000 (11:56 -0400)]
Merge: Add a Dockerfile to build a full image of a Nit install
The image is based on Debian stable (jessie) with a lot of packages.
I'm not sure what is the point of such images for the end-users.
My objective was just to test a Nit installation on a fresh, full & reproductible base.
Image will be available in the docker hub: https://hub.docker.com/r/nitlang/nit/
The only tests that fails are:
* ballz_android dino_android shoot_android ui_test test_platform_android: no android
* emscripten_nodejs: no emstripten
* test_neo_args1 test_neo4j test_neo4j_batch: no neo4j
* mpi_simple: bizarre error messages
* simple_file_server: the user is root so 80 can be opened :/
* test_glsl_validation: not installed
nitunit need also to be run
Pull-Request: #2070
Reviewed-by: Jean-Philippe Caissy <jpcaissy@piji.ca>
Jean Privat [Sat, 14 May 2016 15:23:21 +0000 (11:23 -0400)]
modelize: mark property broken is they are bad introduction
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 02:51:18 +0000 (22:51 -0400)]
tests: update *light tests with more popup messages
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 02:50:48 +0000 (22:50 -0400)]
tests: update catalog res with quality box
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 02:19:43 +0000 (22:19 -0400)]
Merge: Rubix cube - Catalog and documentation update
A .ini file has been added for support in catalog, along with some module documentation for `lib/rubix.nit`
Close #2076.
Pull-Request: #2077
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Sat, 14 May 2016 02:19:34 +0000 (22:19 -0400)]
Merge: Promote location in MEntity
For some unknown historical reasons, the location was only provided to some specific model entities. By extending it to all entities, this simplify clients that need to process, visit or filter entities.
Location is not nullable for all entities. This is simpler but need some place-holder object for fictive location. ie some location objects that mean "no location".
Pull-Request: #2045
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Sat, 14 May 2016 01:48:00 +0000 (21:48 -0400)]
catalog: add documentation score
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 01:28:47 +0000 (21:28 -0400)]
catalog: count errors and warnings for each package
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 01:27:47 +0000 (21:27 -0400)]
toolcontext: also register messages to the source-files
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 01:26:59 +0000 (21:26 -0400)]
toolcontext: attach messages to location, even if quieted
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sat, 14 May 2016 01:26:08 +0000 (21:26 -0400)]
toolcontext: add Message::level
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 13 May 2016 20:48:46 +0000 (16:48 -0400)]
nitc/neo.nit: adapt code to promoted locations
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sun, 1 May 2016 18:55:03 +0000 (14:55 -0400)]
nitc/model: add location to MType
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sun, 1 May 2016 15:58:50 +0000 (11:58 -0400)]
nitc: model_visitor shows the location
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sun, 1 May 2016 15:45:51 +0000 (11:45 -0400)]
model: add location to MClass and MProperty
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 13 May 2016 17:53:50 +0000 (13:53 -0400)]
model: filepath is now just an alias on the location
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sun, 1 May 2016 15:43:36 +0000 (11:43 -0400)]
model: add location to packages and groups
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Sun, 1 May 2016 15:42:20 +0000 (11:42 -0400)]
model: promote location to any `MEntity`
Signed-off-by: Jean Privat <jean@pryen.org>
Lucas Bajolet [Fri, 13 May 2016 19:28:06 +0000 (15:28 -0400)]
lib: Added catalog ini for `rubix` project
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Fri, 13 May 2016 19:27:33 +0000 (15:27 -0400)]
lib: Added documentation on rubix module
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Thu, 12 May 2016 19:22:33 +0000 (15:22 -0400)]
benchmarks/csv: Added README
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Lucas Bajolet [Thu, 12 May 2016 19:22:20 +0000 (15:22 -0400)]
benchmarks: Added CSV benchmark to bench suite
Signed-off-by: Lucas Bajolet <r4pass@hotmail.com>
Alexis Laferrière [Fri, 13 May 2016 18:09:27 +0000 (14:09 -0400)]
tests: update expected errors to the new JSON parser engine
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 13 May 2016 18:04:56 +0000 (14:04 -0400)]
contrib: update clients of `to_json_string`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 12 May 2016 13:59:16 +0000 (09:59 -0400)]
lib/json: serialization services use the new string_parser
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 12 May 2016 13:17:49 +0000 (09:17 -0400)]
lib/json: add a reference to `serialize_to_json` in `to_json`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 12 May 2016 12:53:36 +0000 (08:53 -0400)]
lib/json: add error checking in the json deserialization example
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 12 May 2016 13:29:55 +0000 (09:29 -0400)]
lib/json: document how to refine `accept_json_serializer` and make it protected
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 22 Apr 2016 14:35:34 +0000 (10:35 -0400)]
lib/json: merge different `to_jsons` into a single `serialize_to_json`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Sun, 1 May 2016 15:39:28 +0000 (11:39 -0400)]
nitc/location: add named constructor `opaque_file`
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 13 May 2016 17:18:42 +0000 (13:18 -0400)]
Merge: lib/base64: Support line breaks in base64 strings.
This allows to read directly ascii-armored blocks.
close #2069
Pull-Request: #2071
Reviewed-by: Lucas Bajolet <r4pass@hotmail.com>
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 13 May 2016 17:18:37 +0000 (13:18 -0400)]
Merge: Introduce crapto modules for cryptographic attacks.
Introduce a frequency analysis service for the english language.
Pull-Request: #2063
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 13 May 2016 17:14:58 +0000 (13:14 -0400)]
tests: unitunit gives more precise error locations
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Fri, 13 May 2016 14:21:58 +0000 (10:21 -0400)]
nitunit: give precise error location on invalid docunits.
Signed-off-by: Jean Privat <jean@pryen.org>
Philippe Pepos Petitclerc [Tue, 10 May 2016 19:29:31 +0000 (15:29 -0400)]
Introduce lib/crapto and a frequency analysis service.
Signed-off-by: Philippe Pepos Petitclerc <ppeposp@gmail.com>
Jean Privat [Fri, 13 May 2016 01:14:06 +0000 (21:14 -0400)]
nitc/loader: filter_nit_source accept directories
so `nitunit lib/` will test all the package of the `lib/` directory
Signed-off-by: Jean Privat <jean@pryen.org>
Philippe Pepos Petitclerc [Thu, 12 May 2016 19:06:31 +0000 (15:06 -0400)]
lib/base64: Support line breaks in base64 strings.
This allows to read directly ascii-armored blocks.
Signed-off-by: Philippe Pepos Petitclerc <ppeposp@gmail.com>
Jean Privat [Thu, 12 May 2016 18:19:00 +0000 (14:19 -0400)]
Add a Dockerfile to build a full image of a Nit install
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Tue, 26 Apr 2016 12:01:24 +0000 (08:01 -0400)]
lib/json: rename serialize_to_json to accept_json_serializer
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 25 Apr 2016 14:36:09 +0000 (10:36 -0400)]
lib/json: remove public dependency from serialization to static
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 11 May 2016 23:11:47 +0000 (19:11 -0400)]
Merge: Calculator: add scientific features and nicer adaptations for Android and iOS
This is a long overdue update to the calculator which is the reference example for the _app.nit_ framework.
This PR adds scientific operations and constants to the calculator, directly in the logic, and only as a refinement of the UI. There is also new aesthetic adaptations for Android and iOS.
The calculator now uses Unicode operators like ÷ and ×, and internally a string instead of a `FlatBuffer` for simplicity. This change revealed errors in FFI wrappers where `to_s_with_copy` should have been used.
Pull-Request: #2066
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Wed, 11 May 2016 23:11:44 +0000 (19:11 -0400)]
Merge: Added a service to xor `Bytes`
Needed a new constructor for `Bytes` to facilitate things.
Pull-Request: #2061
Reviewed-by: Jean Privat <jean@pryen.org>