summary refs log tree commit diff stats
path: root/koch.nim
Commit message (Collapse)AuthorAgeFilesLines
* fixes #14126 [backport:1.2] (#14390)Andreas Rumpf2020-05-201-1/+1
| | | | | * fixes #14126 [backport:1.2] * used more logic to optimize it further; updated Nimble version
* trunner was not actually being tested in non-CTFFI mode; minor testament ↵Timothee Cour2020-05-191-1/+1
| | | | | | | | | | cleanups (#14377) * use check * trunner now works with cpp * cleanup: move compiler/unittest_light => stdtest/unittest_light * fix tests/readme.md * remove deadcode references to rodfiles * fix for windows
* properly fixes #13758 so that `import std/macros` stays legal (#14291)Timothee Cour2020-05-121-3/+9
| | | | | * properly fix https://github.com/nim-lang/Nim/issues/12389 * use --lib:lib in koch.nim.cfg instead * third time is the charm
* Split testing important packages into two jobs (#14256)Miran2020-05-071-2/+4
| | | | | * split testing packages in two separate jobs * speed-up the slowest tests * special treatment for two packages
* fix regression: -d:nimHasLibFFI was not being tested anymore (#14234)Timothee Cour2020-05-061-3/+6
| | | | | | | | * * fix regression: -d:nimHasLibFFI was not being tested anymore, in part because testament was silently treating some errors as easy to overlook messages * turned that message into an error * -d:nimHasLibFFI is now being tested with nim cpp * use correct signatures for importc procs * workaround for openbsd to unblock ctffi testing
* Undefine `paramCount` & `paramStr` in nimscript.nim for *.nims (#12860)Neelesh Chandola2020-04-271-1/+1
| | | | | | | * Remove `paramStr` and `paramCount` from implicitly imported nimscript.nim * Update changelog.md * Update stable nimble commit hash Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* move tinyc to a separate repo and allow installing external dependencency ↵Timothee Cour2020-04-031-8/+19
| | | | | | | (eg tinyc) from koch / library code (#13850) * remove tinyc * installDeps * update tinyc paths
* DrNim (Nim compiler with Z3 integration) (#13743)Andreas Rumpf2020-03-311-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | * code cleanups and feature additions * added basic test and koch/CI integration * make it build on Unix * DrNim: now buildable on Unix, only takes 10 minutes, enjoy * added basic documentation for DrNim which can also be seen as the RFC we're following * drnim: change the build setup so that drnim.exe ends up in bin/ * makes simple floating point ranges work * added basic float range check * drnim: teach Z3 about Nim's range types plus code refactoring * drnim: make unsigned numbers work * added and fixed index checking under setLen * first implementation of .ensures, .invariant and .assume (.requires still missing and so is proc type compatibility checking * drnim: .requires checking implemented * drnim: implemented .ensures properly * more impressive test involving min() * drnim: check for proc type compatibility and base method compatibility wrt .requires and .ensures * testament: support for 'pattern <directory> * koch: uses new <directory> feature of testament * drnim: added tiny musings about 'old' * Make testament work with old SSL versions * koch: add support for 'koch drnim -d:release' * drnim: preparations for the param.old notation
* faster CIs (#13803)Miran2020-03-301-15/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ttables: smaller table, 5x speedup * thavlak: less iterations, less loops; 30% speedup * tasyncclosestall: shorter timeout; 35% speedup * gcleak4: less iterations, 2x speedup * ttimes: remove deprecated stuff * tdangerisrelease: remove cpp backend, 3x speedup * tfrexp1: smaller range, 2x speedup * trtree: fix warnings, less iterations, 6x speedup * tasyncawait_cyclebreaker: smaller swarm size; 2x speedup * trealloc: smaller number of iterations; 10x speedup * towned_binary_tree: less iterations, 4x speedup * tclosure: remove unused code, less iterations; 2x speedup * twaitany: less durations; 1.4x speedup * tasync_misc: less iterations, 2x speedup * t8535: smaller sleep, 1.5x speedup * tmanyjoin: smaller sleep, 2x speedup * t12221: shorter sleeps, removed two slower tests; 1.6x speedup * tfuturestream: smaller sleep; 1.5x speedup * growobjcrash: less iterations; 2x speedup * ttryrecv: smaller sleep; 1.5x speedup * treusetvar: less threads; 2x speedup * delete tthreadanalysis2, basically a duplicate of tthreadanalysis * t7758: less iterations, 1.5x speedup * tasyncawait: smaller swarm, less messages; 1.5x speedup * tjsandnativeasync: smaller sleep, 1.5x speedup * tpendingcheck: smaller sleep, 1.5x speedup * remove rodfiles test category * move tseq from its own category to 'collections' category * remove unneeded tests and helpers from 'assert' category * stdlib: merge tbitops2 into tbitops * remove 'trepr2' from 'stdlib' cat * merge 'tstreams' into one file * remove 'tinefficient_const_table' from 'ccbugs' cat * merge 'tcollections_to_string' into 'tcollections' * tblocking_channel: smaller sleep, small speedup * tconvexhull: less iterartions; 1.2x speedup * merge 'tdeepcopy2' into 'tdeepcopy' * merge 'tdisjoint_slice2' into 'tdisjoint_slice1' * tmissing_deepcopy: smaller sequence * tsendtwice: smaller arrays; 5x speedup * remove 'tindexerrorformatbounds' * disable multimethod tests * remove 'gc:none' and 'refc' without 'd:useRealtimeGC' from gc tests * koch.nim: bootstrap just with '-d:release', no need for 'csource' * add github workflow for documentation * testament: no need for 8 sub-second decimals
* Attempt to finish off araq cpp exceptions (#13695)cooldome2020-03-191-1/+5
| | | | | | | | | | | | | | | * config update * disable a questionable test * remove c++ exception handling IDs, new impl doesn't require it anymore * C++ based exceptions finally work * fixes bootstrapping problem in C++ mode * teach GCC it's 2020 now * more bugfixes for C++ based exception handling * apply cooldome's patch * another attempt to enable C++11 * bug fix Co-authored-by: Araq <rumpf_a@web.de> Co-authored-by: cooldome <ariabushenko@bk.ru>
* catchable defects (#13626)Andreas Rumpf2020-03-121-1/+1
| | | | | | | | | | * allow defects to be caught even for --exceptions:goto (WIP) * implemented the new --panics:on|off switch; refs https://github.com/nim-lang/RFCs/issues/180 * new implementation for integer overflow checking * produce a warning if a user-defined exception type inherits from Exception directly * applied Timothee's suggestions; improved the documentation and replace the term 'checked runtime check' by 'panic' * fixes #13627 * don't inherit from Exception directly
* Change order of forwarded koch boot command line options, so as to be able ↵Clyybber2020-03-121-4/+4
| | | | to overwrite the nimcache location (#13637)
* `koch --nim:pathto/nim boot` and `koch boot --hint:cc:off` now work (#13516)Timothee Cour2020-03-111-6/+3
| | | | | * `koch boot --hint:cc:off` now works * `koch --nim:pathto/nim boot` now works; code cleanup
* runCI: logs now show CPU/OS/etc info to be self contained (#13486)Timothee Cour2020-02-261-0/+5
|
* only enable linenoise for -d:nimUseLinenoise (#13478)Timothee Cour2020-02-241-2/+2
| | | | | | * only enable linenoise for -d:nimUseLinenoise * fixup
* miscellaneous bug fixes (part 3) (#13304)Timothee Cour2020-02-071-3/+3
| | | | | | | | | | * fix deprecation; fix indentation * git clone: use -q * fix Warning: pragma before generic parameter list is deprecated; fix typo * bugfix: sysTypeFromName("float64") was never cached
* enable testing -d:nimHasLibFFI mode (#13091)Timothee Cour2020-02-041-4/+7
|
* koch: enable checks in the compiler when running CI (#13323)alaviss2020-02-041-1/+1
|
* Quote nim executable before executing. (#13316) [backport]Fredrik Høisæther Rasch2020-02-021-3/+3
| | | | | In case nim executable is located in PATH containing spaces. fixes #13311
* fixes #12998 nim doc regression (#13117)Timothee Cour2020-01-161-1/+3
|
* fixes a koch regression that made 'koch boot --listcmd' not work anymore ↵Andreas Rumpf2019-10-101-2/+2
| | | | [backport] (#12400)
* [backport] bundle nimpretty on Windows (#12358)Miran2019-10-041-2/+6
|
* update the Nimble version we ship with Nim (#12236)Andreas Rumpf2019-09-231-1/+1
|
* make testament a tool we ship with Nim; fixes #12084 (#12088)Andreas Rumpf2019-08-301-5/+8
| | | | | | * make testament a tool we ship with Nim; fixes #12084 * moved config to fit * adapt testament tests to use the testament binary
* Incremental compilation (IC): Improvements (#11881)Andreas Rumpf2019-08-081-1/+1
| | | | | | | | | | | | | | | | | | | * 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
* koch/nim: completion of the 'better run' featureAraq2019-07-121-2/+4
|
* koch temp bugfixAraq2019-07-121-3/+2
|
* better run [feature] (#11709)Andreas Rumpf2019-07-111-1/+7
| | | | | | | * 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
* minor style changesAraq2019-07-101-1/+1
|
* koch temp: use -d:leanCompiler if possibleAraq2019-07-101-1/+3
|
* Pass additional koch options to the nim compiler (#11615)Ivan Bobev2019-06-281-36/+44
| | | | | | | | | | | | | | | | | | | | | | | | | 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
* Ensure that koch-built nim exe has +x perm for u/g/others [bugfix] (#11444)Kaushal Modi2019-06-101-1/+1
| | | Fixes https://github.com/nim-lang/Nim/issues/11427.
* koch.nim: hotfix for nightly buildsAndreas Rumpf2019-06-061-21/+12
|
* koch now ignores the existance of .git and always builds the latest tagged ↵Araq2019-06-051-9/+4
| | | | stable release of Nimble unless you use the --latest switch; fixes #11402; fixes #9017
* refs #11402; now koch ships a fixed version of Nimble so that the connection ↵Araq2019-06-051-2/+3
| | | | between Nim and Nimble version is obvious when you do 'git checkout v0.20' in Nim's repo
* make fullpaths the default in error messages and stack traces for mor… ↵Andreas Rumpf2019-06-051-3/+3
| | | | | | | | | | | | (#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
* travis: cleanup & add 32-bit Linux testing (#11337)alaviss2019-05-301-1/+1
|
* koch.nim: nothing to do hereAraq2019-05-061-1/+0
|
* testament: catch failing nimble tests (#10832)Miran2019-03-131-1/+1
| | | | | * testament: catch failing nimble tests and clean up a bit * fix name collision
* disable compile-time FFI supportAndreas Rumpf2019-02-231-3/+1
|
* FFI at CT (#10150)Timothee Cour2019-02-231-0/+7
| | | | | | * enable FFI at CT * rename useFFI=>nimHasLibFFI; improve formatting rawExecute traceCode * disable libffi on windows (works for win32, not yet win64)
* koch.nim: indentation uses 2 spacesAraq2019-02-201-5/+5
|
* fixes #10659 `koch boot` fails on windows (#10660)Timothee Cour2019-02-181-3/+5
|
* 32 bit fixes (#10608)Arne Döring2019-02-121-2/+1
|
* attempt to make nightlies work againAndreas Rumpf2019-02-111-1/+1
|
* new AppVeyor configuration that should test the compiler against sele… ↵Andreas Rumpf2019-02-091-28/+27
| | | | (#10549)
* koch and testament improvement; make testing command easier to get rightAndreas Rumpf2019-02-081-5/+0
|
* koch winrelease: also bundle c2nim for Windows [backport]Araq2019-02-061-1/+8
|
* Enable Travis folding in winrelease (#10528)genotrance2019-02-021-6/+10
|
* Improve Travis CI folding (#10473)Federico Ceratto2019-01-281-4/+4
|