Commit graph

361 commits

Author SHA1 Message Date
Andreas Rumpf
f388817a79
update the Nimble version we ship with Nim (#12236) 2019-09-23 14:24:36 +02:00
Andreas Rumpf
82d5e773e3
make testament a tool we ship with Nim; fixes #12084 (#12088)
* make testament a tool we ship with Nim; fixes #12084
* moved config to fit
* adapt testament tests to use the testament binary
2019-08-30 15:43:07 +02:00
Andreas Rumpf
c8cffaf420
Incremental compilation (IC): Improvements (#11881)
* IC: C codegen is aware of IC
* manual: minor change to make VSCode's RST plugin render it properly
* IC: minor refactoring
* testament: code refactorings
* rodutils: removed dead code
* IC: always build the compiler with the IC feature
* IC: C codegen improvements
* IC: implement the undocumented -d:nimMustCache option for testing purposes
* IC: added first basic tests
* IC: extensive testing of the deserialization feature
* testament: refactoring; better IC tests
* IC: removes 'nimMustCache' flag; readonly does the same
* testament: minor refactoring
* update Nimble version
* testament: removed dead code and imports; IC: added simple test
* IC: progress
2019-08-08 08:41:05 +02:00
Araq
6d125da93f koch/nim: completion of the 'better run' feature 2019-07-12 10:48:29 +02:00
Araq
511b6ae27c koch temp bugfix 2019-07-12 10:11:34 +02:00
Andreas Rumpf
3d88d06b32
better run [feature] (#11709)
* track the checksums of all involved Nim files for smarter 'nim c -r' recompiles
* don't recompile unless necessary for 'nim c -r' [feature]
* [feature] koch boot uses a two step process in order to free the RAM before the GCC/Clang invocations
* fixes a serious regression
2019-07-11 21:36:23 +02:00
Araq
38bdf1cd7f minor style changes 2019-07-10 23:55:56 +02:00
Araq
7a39eb13a5 koch temp: use -d:leanCompiler if possible 2019-07-10 00:29:58 +02:00
Ivan Bobev
5be5bf0222 Pass additional koch options to the nim compiler (#11615)
Add possibility when "koch tools" command is used, nim compiler options
to be passed. The current options are kept and the new user specified
options will be added to the end of the command line if present.

Example:
> koch --latest tools -d:danger --debugInfo --lineDir:on
bin\nim.exe c -o:bin\nimsuggest.exe -d:release -d:danger -d:danger
 --debugInfo --lineDir:on nimsuggest/nimsuggest.nim
...
bin\nim.exe c -o:bin\nimgrep.exe -d:release -d:danger --debugInfo
 --lineDir:on tools/nimgrep.nim
...
bin\nim.exe c -o:bin\vccexe.exe -d:danger --debugInfo --lineDir:on
 tools/vccexe/vccexe.nim
...
bin\nim.exe c -o:bin\nimpretty.exe -d:release -d:danger --debugInfo
 --lineDir:on nimpretty/nimpretty.nim
...
bin\nim.exe c -o:bin\nimfind.exe -d:release -d:danger --debugInfo
 --lineDir:on tools/nimfind.nim
...
bin\nim.exe c -o:bin\nimble.exe --noNimblePath --nilseqs:on -d:release
 -d:danger --debugInfo --lineDir:on dist\nimble\src\nimble.nim
2019-06-28 18:06:43 +02:00
Kaushal Modi
f8c8e319bc Ensure that koch-built nim exe has +x perm for u/g/others [bugfix] (#11444)
Fixes https://github.com/nim-lang/Nim/issues/11427.
2019-06-10 20:52:56 +02:00
Andreas Rumpf
e7471cebae koch.nim: hotfix for nightly builds 2019-06-06 19:57:54 +02:00
Araq
9230862534 koch now ignores the existance of .git and always builds the latest tagged stable release of Nimble unless you use the --latest switch; fixes #11402; fixes #9017 2019-06-05 11:34:09 +02:00
Araq
8ab94cdd45 refs #11402; now koch ships a fixed version of Nimble so that the connection between Nim and Nimble version is obvious when you do 'git checkout v0.20' in Nim's repo 2019-06-05 11:26:10 +02:00
Andreas Rumpf
7215341190
make fullpaths the default in error messages and stack traces for mor… (#11385)
* make fullpaths the default in error messages and stack traces for more convenient development
* split up -d:release into -d:release and -d:danger flags
* workaround a Nim config parser bug
* fixes an old nim config parser bug
* make megatest green again
* make nimpretty tests work again
* make nimsuggest green
2019-06-05 08:02:54 +02:00
alaviss
1d00f7f9d7 travis: cleanup & add 32-bit Linux testing (#11337) 2019-05-30 07:34:54 +02:00
Araq
8b9d59d973 koch.nim: nothing to do here 2019-05-06 21:42:49 +02:00
Miran
091da5c979 testament: catch failing nimble tests (#10832)
* testament: catch failing nimble tests and clean up a bit
* fix name collision
2019-03-13 11:52:15 +01:00
Andreas Rumpf
c5dbb0379f disable compile-time FFI support 2019-02-23 11:34:39 +01:00
Timothee Cour
adbabf145c FFI at CT (#10150)
* enable FFI at CT
* rename useFFI=>nimHasLibFFI; improve formatting rawExecute traceCode
* disable libffi on windows (works for win32, not yet win64)
2019-02-23 11:31:01 +01:00
Araq
2990a5ea54 koch.nim: indentation uses 2 spaces 2019-02-20 12:28:43 +01:00
Timothee Cour
1d66222901 fixes #10659 koch boot fails on windows (#10660) 2019-02-18 12:18:52 +01:00
Arne Döring
6870345cd2 32 bit fixes (#10608) 2019-02-12 22:00:31 +01:00
Andreas Rumpf
9f98678008 attempt to make nightlies work again 2019-02-11 15:28:23 +01:00
Andreas Rumpf
dee9a94278
new AppVeyor configuration that should test the compiler against sele… (#10549) 2019-02-09 07:40:00 +01:00
Andreas Rumpf
c751c914fc koch and testament improvement; make testing command easier to get right 2019-02-08 20:01:20 +01:00
Araq
e33544ad13 koch winrelease: also bundle c2nim for Windows [backport] 2019-02-06 14:39:32 +01:00
genotrance
07553034de Enable Travis folding in winrelease (#10528) 2019-02-02 13:26:32 +01:00
Federico Ceratto
aa0a9dd78c Improve Travis CI folding (#10473) 2019-01-28 17:33:35 +01:00
Federico Ceratto
54fecdb8df Enable log folding in Travis CI (#10414)
Prevent log truncation in browsers
2019-01-22 15:50:50 +01:00
Timothee Cour
42bac52426 [CI] now enables NIM_COMPILE_TO_CPP=true to run without allow_failures (#10315)
* better fix for `nim cpp` bootstrap error: error: no member named raise_id
* [CI] now enables runs NIM_COMPILE_TO_CPP=true without allow_failures
* workaround refs #10343
2019-01-17 08:00:44 +01:00
Araq
2039dad273 koch.nim: Make bootstrapping in C++ mode robust 2019-01-16 21:19:51 +01:00
Timothee Cour
e0afacb9f2 properly fix #10030 by skipping all external configs (#10324) 2019-01-16 08:14:55 +01:00
Araq
ece5887ab0 another attempt to fix https://github.com/nim-lang/nightlies/issues/17 2019-01-15 23:08:09 +01:00
Araq
ef769e20b3 attempt to fix https://github.com/nim-lang/nightlies/issues/17 2019-01-15 22:57:50 +01:00
Timothee Cour
9a92bc15b3 [CI] runCI runs kochExec "boot" regardless of nim mode (#10312) 2019-01-15 14:46:29 +01:00
Timothee Cour
0bb76dde54 fixes #10030 bootstrap is insulated from user config (#10244) 2019-01-10 17:49:57 +01:00
Timothee Cour
d2b95cb476 fixes #10039 : CI now runs buildTools (eg, nimfind wasn't being compiled before); refactoring (#10242) 2019-01-10 09:35:37 +01:00
Timothee Cour
c60916a2af [CI] fixes #10041 move bulk of travis and appveyor logic to koch.nim (#10183) 2019-01-08 13:08:19 +01:00
Araq
e6cbf9e790 koch.nim: speed up tests for the 'testinstall' target for the nightly builds (these tests are also covered by the other CIs) 2019-01-03 23:45:42 +01:00
Araq
0ab1229c69 resolve merge conflicts 2018-12-12 18:16:53 +01:00
Arne Döring
ef44c12a34 kick taint mode 2018-12-11 21:23:18 +01:00
Neelesh Chandola
04a4ff5671 Fixes #9913 2018-12-09 15:54:53 +05:30
Timothee Cour
2eb14bdd41 add nimCompile to simplify koch; add nimfind to koch tools (#9723) 2018-11-15 20:32:31 +01:00
Timothee Cour
6e003eeecb refs #9637 ; cleanup installation of nimsuggest (#9703) 2018-11-15 10:02:34 +01:00
Arne Döring
8507e506ce
change dir when koch starts (#9663) 2018-11-09 14:18:09 +01:00
Timothee Cour
f9bf095853 remove redundant -p:compiler in koch.nim given modules use import compiler/foo 2018-11-07 19:52:11 +01:00
Andreas Rumpf
cb4d810659 make Nim take roughly 100MB less RAM for bootstrapping via a new compiler switch -d:leanCompiler; useful for the Raberry PI 2018-11-07 18:36:52 +01:00
Arne Döring
eb6225ad8c fixes #9276 (#9317) 2018-10-24 13:10:44 +02:00
Araq
d2ca808106 koch: bootstrap with C++ for NIM_COMPILE_TO_CPP env var 2018-10-18 10:58:28 +02:00
Jacek Sieka
97738a4f28 Testament pre parallel (#9137)
* testament: move to root dir (it's not a test)

* osproc: fix process index passed to afterRunEvent for parallel runs

it was passing the index of the process, not index of all commands

* testament: complete file move
2018-10-12 17:27:47 +02:00