Alexis Laferrière [Fri, 17 Mar 2017 23:11:04 +0000 (19:11 -0400)]
tests: add basic MINGW64 skip list
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 16 Mar 2017 17:23:15 +0000 (13:23 -0400)]
exec: close child pipes from the parent process
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 16 Mar 2017 17:12:48 +0000 (13:12 -0400)]
core: split PATH on ; on Windows
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 24 Feb 2017 05:01:08 +0000 (00:01 -0500)]
core: standardize Windows path handling
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 9 Mar 2017 15:12:56 +0000 (10:12 -0500)]
Merge: realtime: 32 bits compatibility
Fix `realtime::Timespec` services on 32 bits systems and Windows by moving some critical code to C. This PR does not change the API. However, I have plans for a future revamp of the API to reduce the number of mallocs.
Pull-Request: #2380
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 9 Mar 2017 15:12:55 +0000 (10:12 -0500)]
Merge: nitweb: load catalog at startup instead of first page display
So the first user to access Nitweb does not have to wait 5 minutes for the catalog to be compiled.
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Pull-Request: #2387
Jean Privat [Thu, 9 Mar 2017 15:12:55 +0000 (10:12 -0500)]
Merge: lib/json: fix array serialization
Fixes serialization error for array subclasses.
Be the following Nit code:
~~~nit
class Foo
super Array[String]
serialize
var foo: String
end
print (new Foo("foo")).serialize_to_json
~~~
Output before:
~~~json
{"__kind":"obj","__id":0,"__class":"Foo", "__items":, "foo":"foo"[]}
~~~
Output after:
~~~json
{"__kind":"obj","__id":0,"__class":"Foo", "foo":"foo", "__items":[]}
~~~
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Pull-Request: #2388
Alexandre Terrasa [Mon, 6 Mar 2017 23:17:13 +0000 (18:17 -0500)]
lib/json: fix array serialization
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Fri, 17 Feb 2017 02:10:09 +0000 (21:10 -0500)]
nitweb: load catalog at startup instead of first page display
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 6 Mar 2017 16:14:55 +0000 (11:14 -0500)]
Merge: regen csrc for Windows and to fix 32 bits support
Fix #2355.
Pull-Request: #2382
Alexis Laferrière [Fri, 24 Feb 2017 04:15:49 +0000 (23:15 -0500)]
realtime: 32 bits safe
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Fri, 3 Mar 2017 17:52:01 +0000 (12:52 -0500)]
Merge: OSX use gtime
This could help to track why jenkins runs on osx are so slow
Pull-Request: #2384
Jean Privat [Fri, 3 Mar 2017 17:51:58 +0000 (12:51 -0500)]
Merge: re_parser: add pre-build target in the Makefile
Some automatic jenkins jobs expect that it this target exists, it can be
used to generate the missing .nit files
Signed-off-by: Jean Privat <jean@pryen.org>
Pull-Request: #2383
Jean Privat [Fri, 3 Mar 2017 17:51:55 +0000 (12:51 -0500)]
Merge: lib/ini: do not abort when lines does not have "="
aborting in a library is bad™
Pull-Request: #2381
Jean Privat [Fri, 3 Mar 2017 17:51:48 +0000 (12:51 -0500)]
Merge: Test out-of-tree projects
This is a simple script that allows jenkins (and human users) to test out-of-tree projects that live in other repositories.
The main file is `contrib/oot.txt` that contains the various projects and `contrib/oot.sh` that tries to build them.
A preview of the current state is available at:
http://gresil.org/jenkins/job/nit_oot/lastCompletedBuild/testReport/
I will improve the script to add checks.
Pull-Request: #2379
Reviewed-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexis Laferrière [Wed, 1 Mar 2017 20:08:31 +0000 (15:08 -0500)]
csrc: regen for 32 bits platforms and Windows
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 2 Mar 2017 16:01:01 +0000 (11:01 -0500)]
compiler: detect many versions of mingw64
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Thu, 2 Mar 2017 14:12:07 +0000 (09:12 -0500)]
macosx: silent error because hostame --vestion does no exists
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 2 Mar 2017 14:11:10 +0000 (09:11 -0500)]
macosx: use gtime (from gnu-time) if available to measure time
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Thu, 2 Mar 2017 01:15:37 +0000 (20:15 -0500)]
re_parser: add pre-build target in the Makefile
Some automatic jenkins jobs expect that it this target exists, it can be
used to generate the missing .nit files
Signed-off-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Wed, 1 Mar 2017 20:01:49 +0000 (15:01 -0500)]
tests: fix listfull.sh
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Jean Privat [Wed, 1 Mar 2017 19:08:50 +0000 (14:08 -0500)]
lib/ini: do not abort when lines does not have "="
aborting in a library is bad™
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 28 Feb 2017 15:35:44 +0000 (10:35 -0500)]
contrib/oot: script to update and check oot projects
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 28 Feb 2017 14:44:17 +0000 (09:44 -0500)]
misc: new script to try to make some targets
Signed-off-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 28 Feb 2017 13:26:03 +0000 (08:26 -0500)]
Merge: Counter: fixes
Hey there,
Some fixes to counter:
* the first one should not be subject to discussion since it only fix the to_s nullable elements.
* the second one is more tricky. I propose to change the add_all behavior to increment all values instead of just rewriting them.
@privat, you are the main user of the `counter` lib, what is you feeling about that?
Pull-Request: #2377
Jean Privat [Tue, 28 Feb 2017 13:25:59 +0000 (08:25 -0500)]
Merge: gamnit: use SDL2 windows and events
_gamnit_ update to use SDL2 instead of SDL1.2. This change brings better code portability and fixes a few known SDL1.2 limitations. This PR does not significantly change the API, asides from removing the workarounds for old limitations.
As support, this PR also:
* Adds more SDL2 events and surface services.
* Updates the `opengles1_hello_triangle` example to use SDL2 and make it compatible with ANGLE and Windows.
* Drops the _gamnit_ workarounds for the previously slow mouse move events and mouse wrap for FPS like controls.
* Fixes shader compatibility with some graphics card and driver.
* General cleanup for the `egl` module.
Pull-Request: #2376
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Tue, 28 Feb 2017 13:25:53 +0000 (08:25 -0500)]
Merge: Nit Actor Model, with some examples
A better version than the previous PR !
The model injection and support module generation are now two phases in the frontend.
Needs #2357 to be able to compile with `nitc`, for now you have to use it as `nitc module.nit -m actors_module.nit` for compiling.
Pull-Request: #2361
Reviewed-by: Alexis Laferrière <alexis.laf@xymus.net>
Reviewed-by: Jean Privat <jean@pryen.org>
Alexis Laferrière [Mon, 27 Feb 2017 19:47:18 +0000 (14:47 -0500)]
kernel: intro `Pointer::==` and `Pointer::hash`
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 24 Feb 2017 16:36:12 +0000 (11:36 -0500)]
app: minor refactor of the audio services
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 25 Feb 2017 19:54:03 +0000 (14:54 -0500)]
model_viewer: update to new gamnit API with move events
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Tue, 21 Feb 2017 20:53:42 +0000 (15:53 -0500)]
gamnit: update doc
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 23 Feb 2017 22:27:11 +0000 (17:27 -0500)]
gamnit: use SDL2
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Mon, 20 Feb 2017 05:37:22 +0000 (00:37 -0500)]
gamnit: don't use `texture` as it may be a std function
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 24 Feb 2017 15:44:02 +0000 (10:44 -0500)]
glesv2: use SDL2 for a portable hello triangle example
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 23 Feb 2017 20:09:07 +0000 (15:09 -0500)]
glesv2: minor improvements to the hello_triangle example
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Fri, 24 Feb 2017 01:38:40 +0000 (20:38 -0500)]
sdl2: implement more events
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Sat, 25 Feb 2017 21:17:44 +0000 (16:17 -0500)]
sdl2: more display and surface services
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexis Laferrière [Thu, 23 Feb 2017 22:26:26 +0000 (17:26 -0500)]
sdl2: fix initialization services
Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
Alexandre Terrasa [Mon, 27 Feb 2017 19:37:38 +0000 (14:37 -0500)]
counter: fix add all behavior
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Alexandre Terrasa [Mon, 27 Feb 2017 19:37:25 +0000 (14:37 -0500)]
counter: fix NPE on nullable element to_s
Signed-off-by: Alexandre Terrasa <alexandre@moz-code.org>
Jean Privat [Mon, 27 Feb 2017 18:08:17 +0000 (13:08 -0500)]
Merge: Windows: implement the `exec` module using `CreateProcess`
Until now, the `exec` services were implemented using the POSIX C functions `fork` and `execvp`. This PR introduces an alternative implement for Windows targets using `CreateProcess`.
The `exec` services are used by the compiler call external tools, most notably `pkg-config`. This should support more programs and tests with a dependency on native libraries.
The new `exec` implementation will probably need some tweaking. Testing under Windows is still problematic, but `test_exec` now passes, which is a good sign.
The `fflush` on every write is far from optimal and will slow down the compiler (and others). It solves an issue where a small write to the input of a subprocess would not be received by the subprocess. The data was probably kept in the write buffer (and not in the pipe buffer). I consider the use of `fflush` to be temporary until we have a better solution. Alternative (proven) solutions are welcome.
Pull-Request: #2375
Jean Privat [Mon, 27 Feb 2017 18:08:08 +0000 (13:08 -0500)]
Merge: lib/github: GitHub loader
Helper tool to download a Github repo and store it in a Mongo database.
Features:
* supports github wallets
* save current job and restore jobs after failure
* options to enable branches, commits, issues, pulls, comments and events loading
Pull-Request: #2369
Reviewed-by: Jean Privat <jean@pryen.org>
Jean Privat [Mon, 27 Feb 2017 18:06:48 +0000 (13:06 -0500)]
Merge: contrib/re_parser
# RE Parser
RE parser provides a simple API to regular expression parsing.
It is also able to convert a regular expression into a NFA or a DFA and produce dot files from it.
## Building RE parser
From the `re_parser` directory:
~~~bash
make all
~~~
## RE parser in command line
RE parser can be used as a command line tool to generate NFA and DFA dot files from a regular expression:
~~~bash
./re_parser "a(b|c)+d*"
~~~
Will produce the two files `nfa.dot` and `dfa.dot`.
These can be directly viwed with `xdot`:
~~~bash
xdot nfa.dot
xdot dfa.dot
~~~
Or translated to png images with `dot`:
~~~bash
dot -Tpng -onfa.png nfa.dot
dot -Tpng -odfa.png dfa.dot
~~~
See `man dot` for available formats.
## RE parser as a web app
RE parser comes with a web app that allow users to submit regular expression and see the resulting NFA and DFA.
To run the web app server:
~~~bash
./re_app --host localhost --port 3000
~~~
The server will be available at <a href='http://localhost:3000'>http://localhost:3000</a>.
## RE parser as a library
You can also use RE parser as a library by importing `re_parser`.
~~~nit
import re_parser
var re = "a(b|c)+d*"
# Parse the expression
var l = new Lexer_re_parser(re)
var p = new Parser_re_parser
p.tokens.add_all l.lex
var node = p.parse
# Check errors
if not node isa NProd then
print "Error parsing the regular expression"
abort
end
# Get NFA and DFA
var v = new REVisitor
v.start(node)
print v.nfa.to_dot
print v.nfa.to_dfa.to_dot
~~~
Web app demo: http://re.moz-code.org/
Pull-Request: #2373
Reviewed-by: Jean Privat <jean@pryen.org>
Reviewed-by: Jean-Christophe Beaupré <jcbrinfo.public@gmail.com>
Jean Privat [Mon, 27 Feb 2017 15:29:59 +0000 (10:29 -0500)]
Merge: inkscape_tools: update expected default DPI
Inkscape changed the default DPI to 96 from 90 in order to match the CSS DPI. This change broke compatibility with our tool `svg_to_png_and_nit`. This PR updates our tool to use the new 96 DPI and work properly with the newer versions of Inkscape.
Pull-Request: #2374
BlackMinou [Mon, 27 Feb 2017 15:05:22 +0000 (10:05 -0500)]
skip the execution of tests on actors_*.nit files
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Tue, 21 Feb 2017 15:26:15 +0000 (10:26 -0500)]
ignoring actors_*.nit files generated by nitc
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Wed, 15 Feb 2017 19:56:34 +0000 (14:56 -0500)]
initialize $WRITE for tests others than *.args
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
BlackMinou [Wed, 1 Feb 2017 19:11:15 +0000 (14:11 -0500)]
A very simple example using actors
Signed-off-by: BlackMinou <romain.chanoir@viacesi.fr>
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