summary refs log tree commit diff stats
path: root/changelog.md
Commit message (Collapse)AuthorAgeFilesLines
* clean up changelog (#16155)flywind2020-11-271-3/+5
| | | | | | | | | | | | | | | | | * fix rope index * add testcase * fix ropes format * add `**` to jsffi * add testcase * changelog * clean up changelog Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* add `**` to jsffi (#16141)flywind2020-11-261-0/+1
| | | | | | | | | | | | | | | * fix rope index * add testcase * fix ropes format * add `**` to jsffi * add testcase * changelog Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* add simple writeStackTrace for JS backend (#16016)flywind2020-11-241-0/+2
| | | | | | | * add simple writeStackTrace for JS backend * add testcase for writeStackTrace * changelog
* fix #16025 repr now consistent: does not insert trailing newline (#16034)Timothee Cour2020-11-191-0/+2
|
* Disallow nil dereference at compile time (#16032)cooldome2020-11-181-1/+1
| | | | | | | | | | | | | * bring back the semfold of nil * remove space * fix test * proc type can't be dereferenced * disallow nil dereference at compile time * changelog
* ORC: prepare for another patent-pending optimization (#15996)Andreas Rumpf2020-11-181-0/+4
| | | | | | | | | | | | | | | | | * ORC: prepare for another patent-pending optimization * bugfix * '=copy' for refs can take a cyclic parameter for more ORC optimizations * ORC: exploit the common 'it = it.next' pattern * can't hurt to check for nil * use an algorithm that is not obviously broken * restore the test case * final cleanups for --gc:orc
* fix https://github.com/nim-lang/RFCs/issues/286: add FileInfo.blockSize (#16023)Timothee Cour2020-11-181-0/+2
|
* telling us once about a change is enough [ci skip]narimiran2020-11-161-2/+1
|
* attempt to make asynchttpserver better; fixes #15925; [backport:1.0]Araq2020-11-131-0/+6
|
* Update changelog.mdTimothee Cour2020-11-121-1/+1
|
* js -d:nodejs now supports osenv: `getEnv`, `putEnv`, `envPairs`, `delEnv`, ↵Timothee Cour2020-11-121-0/+2
| | | | | | | | | | | `existsEnv` (v2) (#15826) * js -d:nodejs now supports osenv: `getEnv`, `putEnv`, `envPairs`, `delEnv`, `existsEnv` * refactor to osenv * fix for js (without -d:nodejs) + VM Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* doAssertRaises improvements; nimscript supports `except Exception as e` (#15765)Timothee Cour2020-11-121-1/+2
| | | | | | | * doAssertRaises now correctly handles foreign exceptions; now shows which exception is raised on mismatch * nimscript now handles `Exception as e` * remove catch-all doAssertRaises overload from this PR Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* fix #14157 (#15877)flywind2020-11-121-0/+2
| | | | | | | | | | | | | * fix #14157 * Update compiler/jsgen.nim * add changelog * Update compiler/jsgen.nim * Update tests/js/tmodify_cstring.nim Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* remove ioutils mention in changelog (#15907)Timothee Cour2020-11-101-3/+0
|
* followup #15854: add a changelog entry about markdown tables supportnarimiran2020-11-101-12/+33
|
* new: `nim -e:cmd` to run a command directly; also fixes #15731 (#15687)Timothee Cour2020-11-091-0/+1
| | | | | | | | | | | | | | | * new: `nim -i cmd` * rename -i to -e (for eval); consistent with majority of other programing languages * `nim e -e:cmd` now works; bugfix: `echo cmd | nim e -` now works * honor --betterRun * address comments * --eval alias for -e (replaces undocumented --eval which was a noop) * --eval now defaults to e (nimscript) instead of r * address comment: remove -e, only keep --eval * address comment * fixup * Update compiler/nimconf.nim Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* Add a macro returning enum items count (#15824)Ivan Bobev2020-11-091-0/+2
| | | | | | | Add a macro `enumLen` which is used to determine the number of items in an enumeration type to the `typetraits.nim` module. Also, add unit tests for it in the `ttypetraits.nim` module. Related to nimlang/Nim#15824
* Make `{.requiresInit.}` to work for distinct types (#15869)Ivan Bobev2020-11-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make `requiresInit` pragma to work for distinct types in addition to objects. Tagging of distinct types with `requiresInit` pragma was already supported, but its impact wasn't applied. Now its behavior when applied on distinct types is as follows. Given the following distinct type definitions: ```nim type DistinctObject {.requiresInit, borrow: `.`.} = distinct MyObject DistinctString {.requiresInit.} = distinct string ``` The following code blocks will fail to compile: ```nim var foo: DistinctFoo foo.x = "test" doAssert foo.x == "test" ``` ```nim var s: DistinctString s = "test" doAssert s == "test" ``` But these ones will compile successfully: ```nim let foo = DistinctFoo(Foo(x: "test")) doAssert foo.x == "test" ``` ```nim let s = "test" doAssert s == "test" ```
* remove iup from stdlib in contrast to #15828 (#15830)flywind2020-11-031-0/+2
| | | | | * remove iup from stdlib * Update changelog.md
* EnumUtils, speed up findStr in compiler (#15777)cooldome2020-11-031-0/+1
| | | | | | | | * add parseEnumRange * fix runnable example * update changelog * use parseEnumRange in compiler * reorganise code * add changelog, make single normalizer argument
* add approxequal (#15766)Antonis Geralis2020-10-301-0/+2
| | | | | | | | | | | | * add approxequal * Address review comments, tests that pass * more wikipedia links [ci skip] * forgot since Co-authored-by: b3liever <b3liever@yandex.com> Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* fixes #15413 (#15768)Andreas Rumpf2020-10-291-0/+7
| | | | | | | * fixes #15413 * better hide it properly * see if this makes our list of important packages happy
* Make default state public (#15763)Antonis Geralis2020-10-291-1/+1
| | | | | | | * Make default state public * Address review comments Co-authored-by: b3liever <b3liever@yandex.com>
* Add C function dup and dup2 posix to system/io (#15675)Regis Caillaud2020-10-271-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | * * Add handle to dup and dup2 posix as duplicate and duplicateTo in std/ioutils. * Added small test & changelog entry * Fixed import in tioutils removed when isMainModule * * Nest test inside block. Rename proc var -> let in captureStdout * Renamed tmpfile to iotuils.txt * Added block: # duplicate, duplicateTo * Improved docstring * Clean non-idiomatic code * Added runnable examples * rm 2 trailing space in expected output * Made syntax prettier * Runnable example: file in getTempDir() * Tmp -> Temp * Fixed runnableExamples on windows
* Fix Prelude (#15714)Juan Carlos2020-10-261-0/+1
| | | | | | | | | * ReSync with Devel * Fix prelude for JS target * ReSync devel * Fix prelude for JS target
* small changelog cleanup [ci skip]narimiran2020-10-221-2/+3
|
* add Source+Edit links on top of every docgend file (#15642)Timothee Cour2020-10-221-0/+1
|
* add --declaredlocs (#15666)Timothee Cour2020-10-211-1/+1
|
* create a changelog for 1.4.0narimiran2020-10-161-354/+1
|
* renamed '=' to '=copy' [backport:1.2] (#15585)Andreas Rumpf2020-10-151-0/+4
| | | | | | | | | * Assign hook name changed to `=copy` * Adapt destructors.rst * [nobackport] Duplicate tests for =copy hook * Fix tests * added a changelog entry Co-authored-by: Clyybber <darkmine956@gmail.com>
* suggest: try to find the implementation of a symbol when def is used (#15555)alaviss2020-10-141-0/+4
| | | | | * suggest: try to find the implementation of a symbol when def is used * suggest: return all declarations of the symbol on `def`
* Make useVersion:1.0 disable the proc arg sym change (#15570)Clyybber2020-10-141-1/+4
| | | | | * Make useVersion:1.0 disable the proc arg sym change * Also do this for useVersion:1.2
* os: add overload copyFile*(source, dest: string, isDir = false) (#15537)Timothee Cour2020-10-111-0/+1
| | | | | * os: add overload copyFile*(source, dest: string, isDir = false) * renamed to copyFileToDir
* changelog.md: Group the new `to` procs (#15522)ee72020-10-081-12/+8
| | | | | | | | | * changelog.md: Group the new `to` procs [ci skip] This also moves the `critbits.toCritBitTree` entry from the "Language Changes" section to the "Standard library additions and changes" section. * changelog.md: Remove extra space
* changelog improvementsAraq2020-10-081-14/+12
|
* implements https://github.com/nim-lang/RFCs/issues/258 (#15503)Andreas Rumpf2020-10-061-1/+4
| | | | | | | | | * implements https://github.com/nim-lang/RFCs/issues/258 * don't be too strict with custom pragma blocks * cast pragmas: documentation * added most missing inference query procs to effecttraits.nim
* Provide a configurable progressInterval. (#15477)supakeen2020-10-041-0/+3
|
* heapqueue.nim: Add `toHeapQueue` proc (#15459)ee72020-10-021-0/+4
| | | | | | | | | Similar to: - `critbits.toCritBitTree` - `deques.toDeque` - `sets.toHashSet` - `tables.toTable` Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* intsets.nim: Add `toIntSet` proc (#15460)ee72020-10-021-0/+5
| | | | | | | Similar to: - `critbits.toCritBitTree` - `deques.toDeque` - `sets.toHashSet` - `tables.toTable`
* Added std/effecttraits.nim (#15462)Andreas Rumpf2020-10-021-1/+3
|
* Add first draft of new osproc.readLines (#15429)c-blake2020-10-011-0/+2
| | | | | | | | | | | | | | | | | | | | | * Add first draft of new osproc.readLines * Add test for new osproc.readLines * Rename test to start w/t to run; Also add newline to output * Suppress hint messages. * Output should match this time. * Shoulda picked a program with simpler syntax than ..lol * Address https://github.com/nim-lang/Nim/pull/15429#issuecomment-701890898 and https://github.com/nim-lang/Nim/pull/15429#issuecomment-701985976 by factoring `readLines` into `iterator lines` and a wrapper `proc`. * Address https://github.com/nim-lang/Nim/pull/15429#issuecomment-702127289 and also add a `ReadIOEffect` tag to the iterator (called by the wrapper.. so it should need no separate tag, if I understand correctly).
* fix #15405. deepcopy arc (#15410)cooldome2020-10-011-0/+3
| | | | | | | * fix #15405 * fix tests * deepcopy for ARC has to be enabled via --deepcopy:on Co-authored-by: Araq <rumpf_a@web.de>
* Add critbits.toCritBitTree (#15444)Juan Carlos2020-10-011-0/+3
| | | | | * Add critbits.toCritBitTree * https://github.com/nim-lang/Nim/pull/15444#discussion_r498035342
* Clean out (#15440)Juan Carlos2020-10-011-1/+1
|
* document that items no longer works with enum with holes (#15426)Timothee Cour2020-09-291-0/+1
|
* .noalias annotation; frontend support (#15419)Andreas Rumpf2020-09-281-1/+4
| | | | | * .noalias annotation; frontend support * added .noalias support to Nim; implements https://github.com/nim-lang/RFCs/issues/204
* fix #15333 (#15336)flywind2020-09-241-0/+2
|
* Add strutils.indentation and make unindent use it (#15264)Clyybber2020-09-221-0/+9
| | | | | | | | | | | | | | | | | | | | | | | * Add strutils.indentation and make unindent use it * Code style * Fix bootstrapping * Improve wording * Fix test * Introduce without breaking change * Fix * Reduce diff * Fix docs link * Add since annotation * Update changelog
* dom.Navigator add missing attributes (#15310)Juan Carlos2020-09-141-1/+2
| | | | | | | * Add missing attributes and methods to dom.Navigator * Add missing attributes and methods to dom.Navigator * Add missing attributes and methods to dom.Navigator
* Add some enhancements to `jsonutils.nim` (#15133)Ivan Bobev2020-09-091-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Add some enhancements to `jsonutils.nim` * Use `jsonutils.nim` hookable API to add a possibility to deserialize JSON arrays directly to `HashSet` and `OrderedSet` types and respectively to serialize those types to JSON arrays. * Also add a possibility to deserialize JSON `null` objects to Nim option objects and respectively to serialize Nim option object to JSON object if some or to JSON `null` object if none. * Move serialization/deserialization functionality for `Table` and `OrderedTable` types from `jsonutils.nim` to `tables.nim` via the hookable API. * Add object `jsonutils.Joptions` and parameter from its type to `jsonutils.fromJson` procedure to control whether to allow deserializing JSON objects to Nim objects when the JSON has some extra or missing keys. * Add unit tests for the added functionalities to `tjsonutils.nim`. * improve fromJsonFields * Add changelog entry for the jsonutils enhancements * Add TODO in `jsonutils.nim` * Added an entry to "Future directions" section in `jsonutils.nim` as suggestion for future support of serialization and de-serialization of nested variant objects. * Added currently disabled test case in `tjsonutils.nim` for testing serialization and de-serialization of nested variant objects. * Move JSON hooks to `jsonutils.nim` Move `fromJsonHook` and `toJsonHook` procedures for different types to `jsonutils.nim` module to avoid a dependency of collections modules to the `json.nim` module. The hooks are removed from the following modules: * `tables.nim` * `sets.nim` * `options.nim` * `strtabs.nim` * Add some tests about `StringTableRef` Add tests for `StringTableRef`'s `fromJsonHook` and `toJsonHook` to `tjsonutils.nim`. * Disable a warning in `jsonutils.nim` Mark `fun` template in `jsonutils` module with `{.used.}` pragma in order to disable `[XDeclaredButNotUsed]` hint. The template is actually used by the `initCaseObject` macro in the same module. Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>