| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
|
|
|
|
| |
* new minor feature: macros for proc types, to be documented
* Finished the implementation and added tests
* [skip ci] Describe the new custom pragmas in the manual and the changelog
Co-authored-by: Zahary Karadjov <zahary@gmail.com>
|
|
|
|
|
|
|
|
| |
* stacktraces can now show custom runtime msgs
* improve tests/stdlib/tstackframes.nim
* fix test for --gc:arc
* test --stacktraceMsgs:on and --stacktraceMsgs:off
* --stacktracemsgs:off by default
|
| |
|
| |
|
|
|
|
|
| |
and improve wording in other ways
Showing that `nil` can be assigned helps to warn readers that variables can be `nil` even after being assigned a value.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Update Documentation about GC, add ARC based on code observations and https://forum.nim-lang.org/t/5734#35562
* Rephrase 'Garbage Collector' on documentation, see #13331
* Peer Review Feedbacks
* When the body of a documentation section is all for garbage collector details then add 'for garbage collectors' to the title to identify they may not apply for ARC
* Change 'GC' for 'garbage collector'.
* Move 'Memory Management Strategies' at the top, without changes
* Move the info for RefC GC from 'Introduction' to 'RefC' section without changes, make 'Introduction' about Nims 'Multi-paradigm Memory Management Strategies'.
|
|
|
|
|
| |
* scope based destructors
* handle 'or' and 'and' expressions properly, see the new test arc/tcontrolflow.nim
* make this branch mergable, logic is disabled for now
|
| |
|
|
|
|
|
|
|
|
| |
other fixes (#13550)
* fix #13218: avoid some irrelevant warnings for nim doc,rst2html
* suppress warnRedefinitionOfLabel for nim doc
* lots of fixes for UnusedImport warnings
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* ensure capitalize doesn't take an inferred sink parameter
* sink parameter inference: first version, for now disabled. Changed that sink parameters can be consumed multiple times in order to adhere to our spec.
* sink inference can now be disabled with .nosinks; sometimes for proc type interop this is required
* fixes yet another critical DFA bug
* better implementation that also understands if expressions etc
* document sink parameter inference and allow for global disabling
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
* only enable linenoise for -d:nimUseLinenoise
* fixup
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* manual: documents changes regarding dynlib
Closes #13416
* manual: clean up sentence phrasing
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* fix #13150 `nim doc --project` works with duplicate names and with imports below main project file
* add to help; fixup after #13212 isRelativeTo got merged
* fix test tests/compilerapi/tcompilerapi.nim
* remove nimblePkg field; compute on the fly instead
* kochdocs: compiler docs now under compiler/
* --docRoot now has smart default: best among @pkg, @path
|
| |
|
|
|
|
| |
nimAllocStats (#13247)
|
|
|
|
|
|
| |
* Updated 'nim for embedded systems' section to use --os:any and --gc:arc
* Added section about size optimization to embedded systems
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* make sink operator optional
* bug fix, add changelog entry
* Trigger build
* fix one regression
* fix test
* Trigger build
* fix typos
|
| |
|
| |
|
|
|
|
|
|
| |
* --hint:link:on now shows link cmd instead of nothing
* update doc for --listCmd
|
| |
|
|
|
|
|
| |
This implements "deterministic" exception handling for Nim based on goto instead of setjmp. This means raising an exception is much cheaper than in C++'s table based implementations. Supports hard realtime systems. Default for --gc:arc and the C target because it's generally a good idea and arc is all about deterministic behavior.
Note: This implies that fatal runtime traps are not catchable anymore! This needs to be documented.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* first implementation of the =trace and =dispose hooks for the cycle collector
* a cycle collector for ARC: progress
* manual: the .acyclic pragma is a thing once again
* gcbench: adaptations for --gc:arc
* enable valgrind tests for the strutils tests
* testament: better valgrind support
* ARC refactoring: growable jumpstacks
* ARC cycle detector: non-recursive algorithm
* moved and renamed core/ files back to system/
* refactoring: --gc:arc vs --gc:orc since 'orc' is even more experimental and we want to ship --gc:arc soonish
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Implement gorgeous Dracula themed Nim documentation
* Add color for escape sequences
* fixes the test cases
* the big CSS cleanup
|
|
|
| |
Said that you can have custom exceptions and showed how to create and raise them.
|
|
|
|
|
|
| |
* Remove mention of using `discard` for block comments
* Add a 32x32 alternate favicon
|
| |
|
| |
|
| |
|
| |
|
| |
|