Juan M Gómez
e3bcbf5f15
makes nimsuggest con work under v3 [Backport_1.6.18] ( #23158 )
...
Co-authored-by: Jake Leahy <jake@leahy.dev >
2024-01-08 20:30:46 +01:00
narimiran
d84e2d3f63
update macOS to 12, remove one package from testing
2024-01-08 13:35:26 +01:00
ringabout
7912685905
fixes #23148 ; restricts infix path concatenation to what starts with / ( #23150 )
...
fixes #23148
(cherry picked from commit c7d742e484 )
2024-01-03 10:56:47 +01:00
narimiran
2cc4da8fd4
bump NimVersion to 1.6.19
2024-01-03 10:56:24 +01:00
narimiran
a749a8b742
bump NimVersion to 1.6.18
v1.6.18
2023-12-14 17:52:25 +01:00
Nikolay Nikolov
9a87057f0b
Skip trailing asterisk when placing inlay type hints. Fixes #23067 (backport of #23068 ) ( #23071 )
...
(cherry picked from commit a3739751a8 )
2023-12-14 09:26:12 +08:00
Nikolay Nikolov
efd5ed7328
backport to version 1.6: Also show the raises pragma when converting proc types to string ( #23026 ) ( #23029 )
...
This affects also nimsuggest hints (e.g. on mouse hover), as well as
compiler messages.
(cherry picked from commit 618ccb6b6a )
2023-12-12 10:36:58 +01:00
Jake Leahy
2e87171e14
Register declaration of enum field has a use ( #22990 )
...
Currently when using `use` with nimsuggest on an enum field, it doesn't
return the definition of the field.
Breaks renaming in IDEs since it will replace all the usages, but not
the declaration
(cherry picked from commit c31bbb07fb )
2023-11-28 08:25:42 +01:00
tersec
9cbd8695e7
remove unnecessary side-effects from base64.encode(mime) ( #22986 )
...
Fixes https://github.com/nim-lang/Nim/issues/22985
(cherry picked from commit 26f2ea149c )
2023-11-26 07:15:57 +01:00
Nikolay Nikolov
6f0cad6843
backport to v 1.6: nimsuggest: Added optional command line option '--clientProcessId:XXX' ( #22969 ) ( #22982 )
...
When it is specified, the nimsuggest instance monitors whether this
process is still alive. In case it's found to be dead, nimsuggest shuts
itself down. Currently only implemented on POSIX and Windows platforms.
The switch is silently ignored on other platforms. Note that the Nim
language server should still try to shut down its child nimsuggest
processes. This switch just adds extra protection against crashing Nim
language server and gets rid of the remaining nimsuggest processes,
which consume memory and system resources.
(cherry picked from commit 502a4486ae )
2023-11-25 11:50:37 +01:00
Nikolay Nikolov
ef10224e61
Backport to 1.6: Introduced version 4 of the NimSuggest protocol. The InlayHints feature made V4 or later only. ( #22953 ) ( #22962 )
...
Since nimsuggest now has a protocol version support detection via
`--info:protocolVer`, the InlayHints feature can be moved to protocol
V4. This way, the Nim language server can detect the nimsuggest version
and avoid sending unsupported `InlayHints` commands to older nimsuggest
versions. Related nim language server PR:
https://github.com/nim-lang/langserver/pull/60
(cherry picked from commit 4fc0027b57 )
2023-11-20 09:13:38 +08:00
Nikolay Nikolov
f3382743dd
backport to version 1.6: nimsuggest: Instead of checking for protocol version 3 exactly, check for version 3 or later. ( #22945 ) ( #22956 )
...
Refactored the way nimsuggest checks for protocol version 3. Instead of
checking for version 3 exactly, it now checks for version 3 or later.
This way, once a version 4 is introduced, it will use version 3 as a
base line, and then extra changes to the protocol can be added on top.
No functional changes are introduced in this commit.
(cherry picked from commit 3680200df4 )
2023-11-18 09:52:15 +08:00
Nikolay Nikolov
1dab585a26
Added new command line option --info:X to nimsuggest for obtaining … ( #22942 )
...
…information. (#22940 )
`--info:protocolVer` returns the highest nimsuggest protocol version
that is supported (currently, it's version 3).
`--info:nimVer` returns the Nim compiler version that nimsuggest uses
internally.
Note that you can obtain the Nim compiler version via `nimsuggest -v`,
but that requires parsing the output, which looks like this:
```
Nim Compiler Version 2.1.1 [Linux: amd64]
Compiled at 2023-11-14
Copyright (c) 2006-2023 by Andreas Rumpf
git hash: 47ddfeca5247dce992becd734d1ae44e621207b8
active boot switches: -d:release -d:danger --gc:markAndSweep
```
`--info:nimVer` will return just:
```
2.1.1
```
(cherry picked from commit d0cc02dfc4 )
2023-11-17 17:29:14 +08:00
Nikolay Nikolov
a77ca1a4bf
Inlay hints backport to Nim v1.6.x ( #22920 )
2023-11-08 00:22:40 +01:00
narimiran
0779a5e11b
bump NimVersion to 1.6.17
2023-11-01 19:43:25 +01:00
ringabout
a17c077f78
fixes chronicles ( #22899 )
2023-11-01 17:03:19 +08:00
ringabout
47010a3919
fixes #22874 ; backport #22088 to version-1-6
2023-11-01 00:51:48 +00:00
ringabout
3c9b68dc15
fixes CI; disable SSL tests on osx for now ( #22304 )
...
* test CI
* disable osx
(cherry picked from commit 993fcf5bda )
v1.6.16
2023-10-10 08:55:48 +02:00
narimiran
ec72abc7b7
fixes stint CI
2023-10-10 08:53:45 +02:00
narimiran
a08f56f9ba
bump NimVersion to 1.6.16
2023-10-09 19:07:36 +02:00
SirOlaf
246267aa52
Exclude block from endsInNoReturn, fix regression ( #22632 )
...
Co-authored-by: SirOlaf <>
(cherry picked from commit d2f36c071b )
2023-09-15 19:49:57 +02:00
SirOlaf
ce8d9dd1cb
Fix #22604 : Make endsInNoReturn traverse the tree ( #22612 )
...
* Rewrite endsInNoReturn
* Handle `try` stmt again and add tests
* Fix unreachable code warning
* Remove unreachable code in semexprs again
* Check `it.len` before skip
* Move import of assertions
---------
Co-authored-by: SirOlaf <>
(cherry picked from commit 3b206ed988 )
2023-09-15 12:58:20 +02:00
ringabout
4fc535fbd6
fixes #17197 ; fixes #22560 ; fixes the dest of newSeqOfCap in refc ( #22594 )
...
(cherry picked from commit 5bd1afc3f9 )
2023-09-15 12:58:20 +02:00
ringabout
2d529edf3e
fixes #22541 ; peg matchLen can raise an unlisted exception: Exception ( #22545 )
...
The `mopProc` is a recursive function.
(cherry picked from commit c56a712e7d )
2023-09-15 09:10:56 +02:00
metagn
d37901fe06
fix getNullValue for cstring in VM, make other VM code aware of nil cstring ( #22527 )
...
* fix getNullValue for cstring in VM
fixes #22524
* very ugly fixes, but fix #15730
* nil cstring len works, more test lines
* fix high
(cherry picked from commit 942f846f04 )
2023-09-15 09:10:56 +02:00
ringabout
dc59e67a12
fixes bareExcept warnings; catch specific exceptions ( #21119 )
...
* fixes bareExcept warnings; catch specific exceptions
* Update lib/pure/coro.nim
(cherry picked from commit 9207d77848 )
2023-09-15 08:39:22 +02:00
ringabout
09f7be13b6
fixes #22262 ; fixes -d:useMalloc broken with --mm:none and --threads on ( #22355 )
...
* fixes #22262 ; -d:useMalloc broken with --mm:none and threads on
* fixes
(cherry picked from commit a23e53b490 )
2023-09-15 08:37:31 +02:00
Andreas Rumpf
d80397c7d7
fixes #22138 ( #22221 )
...
(cherry picked from commit 86ff37fab8 )
2023-09-14 17:02:49 +02:00
Juan M Gómez
efa3479e4e
reset macrocache after each script evaluation ( #22195 )
...
(cherry picked from commit 2f109595e9 )
2023-09-14 16:59:13 +02:00
ringabout
e8ec3efd3d
allow addressing elements of openArray[char] in VM ( #22045 )
...
allow addressing elements of openArray[char]
(cherry picked from commit a8d0dda833 )
2023-09-14 14:07:08 +02:00
metagn
8f102f9e62
retain forced open undeclared ident information ( #22019 )
...
(cherry picked from commit ce72b564bc )
2023-09-14 14:04:43 +02:00
ringabout
876f6d69a8
fixes #21974 ; fixes sameConstant fieldDefect ( #21981 )
...
* fixes #21974 ; fixes sameConstant fieldDefect
* add a test case
(cherry picked from commit 8e35b3d577 )
2023-09-14 14:04:43 +02:00
heterodoxic
50173ec7ec
prevent spamming of thread local forward declarations in C/C++ output ( #21955 )
...
(cherry picked from commit f47b27d532 )
2023-09-14 14:03:47 +02:00
metagn
ecab260330
underscore as special word ( #21766 )
...
* underscore as special word
* fix really hard to notice error
(cherry picked from commit ca82b4ea16 )
2023-09-14 13:09:43 +02:00
ringabout
43ce0558b4
handle quoted routine symbols and non symbols expressions as before ( #21740 )
...
(cherry picked from commit 560fa9a1fe )
2023-09-14 12:00:47 +02:00
narimiran
19b3f8c0ea
Revert "fixes #16790 ; fixes #19075 ; put big arrays on the constant seqs; don't inline them in the VM; big performance boost ( #21318 )"
...
This reverts commit 7ad8c44e28 .
2023-09-14 06:03:34 +02:00
SirOlaf
5ad4b72ac7
Fix #17509 : Continue instead of return with unfinished generics ( #22563 )
...
Close #17509
Current knowledge:
- delaying cache fixes the issue
- changing return of `if inst.len < key.len:` in `searchInstTypes` to
`continue` fixes the issue. With return the broken types are also cached
over and over
Related issues are completely unaffected as of now, so there must be
something deeper.
I am also still trying to find the true cause, so feel free to ignore
for now
---------
Co-authored-by: SirOlaf <>
(cherry picked from commit ee4a219012 )
2023-09-12 09:24:33 +02:00
Amjad Ben Hedhili
d7dfbf026b
Remove some unnecessary initialization in string operations ( #22579 )
...
* `prepareAdd`
* `toNimStr`
* `setLengthStrV2`
* `NimAsgnStrV2`
* `prepareMutation`
* Some cleanups
(cherry picked from commit a4df44d9fb )
2023-09-12 09:24:33 +02:00
metagn
79a1990774
use dummy dest for void branches to fix noreturn in VM ( #22617 )
...
fixes #22216
(cherry picked from commit 2542dc09c8 )
2023-09-12 09:24:33 +02:00
metagn
106cde1ff8
unify explicit generic param semchecking in calls ( #22618 )
...
fixes #9040
(cherry picked from commit 6738f44af3 )
2023-09-12 09:24:33 +02:00
metagn
965eeb68e2
handle typedesc params in VM ( #22581 )
...
* handle typedesc params in VM
fixes #15760
* add test
* fix getType(typedesc) test
(cherry picked from commit 2e4e2f8f50 )
2023-09-11 21:33:48 +02:00
metagn
0dbac38d12
clearer error for different size int/float cast in VM ( #22582 )
...
refs #16547
(cherry picked from commit b6cea7b599 )
2023-09-11 21:33:42 +02:00
metagn
f16e4dd22a
correct logic for qualified symbol in templates ( #22577 )
...
* correct logic for qualified symbol in templates
fixes #19865
* add test
(cherry picked from commit 3de8d75513 )
2023-09-11 21:33:35 +02:00
metagn
ede6bc4d67
define toList procs after add for lists [backport] ( #22573 )
...
fixes #22543
(cherry picked from commit 94454addb2 )
2023-09-11 21:33:21 +02:00
ringabout
d2f91ab1b9
newStringOfCap now won't initialize all elements anymore ( #22568 )
...
newStringOfCap nows won't initialize all elements anymore
(cherry picked from commit 2e7c8a339f )
2023-09-11 21:33:13 +02:00
Bung
69faab3cf6
fix #22548;environment misses for type reference in iterator access n… ( #22559 )
...
* fix #22548;environment misses for type reference in iterator access nested in closure
* fix #21737
* Update lambdalifting.nim
* remove containsCallKinds
* simplify
(cherry picked from commit 0b78b7f595 )
2023-09-11 21:32:58 +02:00
SirOlaf
b7a1210964
Fix #21532 : Check if template return is untyped ( #22517 )
...
* Don't ignore return in semTemplateDef
* Add test
---------
Co-authored-by: SirOlaf <>
(cherry picked from commit 3de75ffc02 )
2023-09-11 21:32:22 +02:00
ringabout
0d5999e6a8
fixes #22481 ; fixes card undefined misalignment behavior ( #22484 )
...
* fixes `card` undefined misalignment behavior
* Update lib/system/sets.nim
---------
Co-authored-by: Andreas Rumpf <rumpf_a@web.de >
(cherry picked from commit ade75a1483 )
2023-09-11 21:31:40 +02:00
Jason Beetham
60dc41a5e4
When in object handles procedure call again, fixes #22474 ( #22480 )
...
Ping @narimiran please backport to the 2.0 line.
(cherry picked from commit 6c4e7835bf )
2023-09-11 21:31:32 +02:00
Emery Hemingway
ba5d873f63
Add Linux constant SO_BINDTODEVICE ( #22468 )
...
(cherry picked from commit 1927ae72d0 )
2023-09-11 21:31:20 +02:00