summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* document nimTestsNimdocFixup for rsttester (#19894)flywind2022-06-161-1/+6
|
* Better range error messages (#19867)Tanguy2022-06-152-3/+6
| | | | | | | * Better range error messages * Revert to old behavior for arrays * Small corrections
* Keep the doc sidebar on the screen while scrolling (#19851)JJ2022-06-159-1671/+1462
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [docgen] Group sidebar sections into <details> (open by default) * [docgen] Consistent indentation in generated HTML (this is a boon for working on docgen's html/css output) * [docgen] Move Source/Edit buttons inside main div This makes styling the documentation significantly easier. * [docgen] Somewhat consistent CSS formatting * [docgen] Keep the sidebar onscreen while scrolling * [docgen] Tweak CSS for the sticky sidebar * [docgen] search type=text ==> type=search * [docgen] Update expected doc output * [docgen] Fix Group by Type sidebar placement bug * [docgen] Curse you, whitespace (fix tests) * [docgen] Fix rst2html tests Co-authored-by: sandytypical <43030857+xflywind@users.noreply.github.com>
* Fixes #19883 so genscript works with vcc (#19893)Don-Duong Quach2022-06-151-2/+8
|
* Windows: enable nimRawSetjmp by default [backport] (#19891)Tanguy2022-06-142-0/+12
| | | | | | | | | * Windows: enable nimRawSetjmp by default See #19197. The default setjmp can randomly segfault on windows * Attempt to disable the flag for bootstraping * Disable styleCheck for c_setjmp
* Initial implementation of nimsuggest v3 (#19826)Ivan Yonchovski2022-06-137-36/+348
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Initial implementation of nimsuggest v3 Rework `nimsuggest` to use caching to make usage of ide commands more efficient. Previously, all commands no matter what the state of the process is were causing clean build. In the context of Language Server Protocol(LSP) and lsp clients this was causing perf issues and overall instability. Overall, the goal of v3 is to fit to LSP Server needs - added two new commands: - `recompile` to do clean compilation - `changed` which can be used by the IDEs to notify that a particular file has been changed. The later can be utilized when using LSP file watches. - `globalSymbols` - searching global references - added `segfaults` dependency to allow fallback to clean build when incremental fails. I wish the error to be propagated to the client so we can work on fixing the incremental build failures (typically hitting pointer) - more efficient rebuild flow. ATM incremental rebuild is triggered when the command needs that(i. e. it is global) while the commands that work on the current source rebuild only it Things missing in this PR: - Documentation - Extensive unit testing. Although functional I still see this more as a POC that this approach can work. Next steps: - Implement `sug` request. - Rework/extend the protocol to allow better client/server communication. Ideally we will need push events, diagnostics should be restructored to allow per file notifications, etc. - implement v3 test suite. - better logging * Add tests for v3 and implement ideSug * Remove typeInstCache/procInstCache cleanup * Add ideChkFile command * Avoid contains call when adding symbol info * Remove log * Remove segfaults
* Correctly import libcrypto functions using dynlib (#19881)Ardek Romak2022-06-131-35/+37
|
* [semfold] fix #19199; properly fold uint to float conversion (#19890) [backport]flywind2022-06-132-1/+7
| | | fix #19199; properly fold float conversion
* [cleanup] remove unnecessary procs in vm (#19888)flywind2022-06-132-6/+2
| | | remove unused procs
* Pass headers and body correctly to FetchOptions (#19884) [backport]Jake Leahy2022-06-131-2/+3
| | | | | | | | | * Pass headers to FetchOptions Don't pass body if method is HttpGet or HttpHead * Syntax fixes * Restart CI
* Friendlier error message with solution (#19880)Carlo Capocasa2022-06-112-1/+7
| | | | | | | | | | | | | * Add helpful suggestion, should always apply * mention var param limitation in async docs * Update compiler/lambdalifting.nim whoops thanks Co-authored-by: flywind <43030857+xflywind@users.noreply.github.com> Co-authored-by: flywind <43030857+xflywind@users.noreply.github.com>
* test for #19046 (#19839)Bung2022-06-101-0/+19
| | | | | * test for #19046 * add threads flag
* Extend and document compiler debugging utilities (#19841)quantimnot2022-06-105-38/+280
| | | | | | | | | * Add two debugutils procs that native debuggers can break on use to execute commands when code of interest is being compiled. * Add GDB and LLDB programs to disable and enable breakpoints and watchpoints when code of interest is being compiled. * Extend the `intern.rst` docs regarding debugging the compiler. Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* [js] add testcase for array indexDefect and remove todo (#19838)flywind2022-06-102-4/+9
| | | | | | | | | * remove unused opcSubstr * [js] add testcase for array indexDefect * Revert "remove unused opcSubstr" This reverts commit cb461f2545234d62c1e0b83318f3e5495c97de52.
* remove noop option `gc:v2` (#19810)flywind2022-06-106-18/+7
| | | | | * remove noop option gc:v2 * changelog
* not generate initStackBottomWith in arc/orc [backport] (#19875)flywind2022-06-101-1/+1
| | | not generate initStackBottomWith in arc/orc
* fix #19862; make widestrs consistent between refc and orc (#19874) [backport]flywind2022-06-092-0/+16
| | | fix #19862; make widestrs consistent in refc and orc
* give a better error message for some template expansions (#19871)Andreas Rumpf2022-06-091-2/+4
|
* Deprecate std/sums (#18439)Antonis Geralis2022-06-092-0/+4
| | | | | | | | | | | | | | | | | * Deprecate sums * Update changelog.md * Update lib/std/sums.nim * log * format * remove * Update changelog.md Co-authored-by: sandytypical <43030857+xflywind@users.noreply.github.com>
* clarify how to restart CI (#19845)flywind2022-06-081-0/+1
|
* `changelog.md`: Add `strutils.find` changes (#19868)Zoom2022-06-081-11/+15
| | | | | Added `strutils.find` changes Standard library section restructured to group by `changed/added/deprecated/removed` with paragraphs marked by markdown comments.
* Add Microtasks docs (#19870)Juan Carlos2022-06-081-1/+1
| | | | | | | * Add Microtasks * Add Microtasks * Workaround to build js docs in older NodeJS versions
* Fix `find` routines' api to default to `last=-1` (#19761)Zoom2022-06-072-58/+71
| | | | | | | | | | | | This changes the default for the `last` parameter of various `find` routines from `0` to `-1`. Previous default prevents limiting the search to the first character. This is a logic error, as full text search was performed for 2 *valid* values of `last`: `0` and `last.high()`. Adds an overload for `initSkipTable` which returns a newly initialized table. This encapsulates every single usage of a `var`-acting original func in this module. Co-authored-by: flywind <xzsflywind@gmail.com>
* Add Microtasks (#19860)Juan Carlos2022-06-042-1/+6
| | | | | * Add Microtasks * Add Microtasks
* RST: improve simple tables (#19859)Andrey Makarov2022-06-0416-119/+486
| | | | | | | * RST: improve simple tables * nim 1.0 gotchas * Still allow legacy boundaries like `----`
* Stop type aliases from inheriting sfUsed (#19861)quantimnot2022-06-042-14/+41
| | | | | Fixes #18201 Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* change the type of mangleJsName; fixes CStringConv warnings (#19852)flywind2022-06-011-6/+6
| | | | | change the type of mangleJsName since mangleJsName is used in macros, there is no need to use cstring. Using cstring may increase conversions and cause warnings.
* [Minor] remove unused and unnecessary local variable (#19853)flywind2022-06-011-1/+0
|
* Refactor and doc package handling, module name mangling (#19821)quantimnot2022-05-3023-244/+175
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Refactor and doc package handling, module name mangling * Consolidate, de-duplicate and extend package handling * Alter how duplicate module names of a package are handled * Alter how module names are mangled * Fix crash when another package is named 'stdlib' (test case added) * Doc what defines a package in the manual Modules with duplicate names within a package used to be given 'fake' packages to resolve conflicts. That prevented the ability to discern if a module belonged to the current project package or a foreign package. They now have the proper package owner and the names are mangled in a consistent manner to prevent codegen clashes. All module names are now mangled the same. Stdlib was treated special before, but now it is same as any other package. This fixes a crash when a foreign package is named 'stdlib'. Module mangling is altered for both file paths and symbols used by the backends. Removed an unused module name to package mapping that may have been intended for IC. The mapping was removed because it wasn't being used and was complicating the issue of package modules with duplicate names not having the proper package owner assigned. * Fix some tests * Refactor `packagehandling` * Remove `packagehandling.withPackageName` and its uses * Move module path mangling from `packagehandling` to `modulepaths` * Move `options.toRodFile` to `ic` to break import cycle * Changed import style to match preferred style Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* Zectbumo fixes 19824 (#19825)Alfred Morgan2022-05-303-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * borrowed `$` to make Time string friendly * added sep character parameter * Revert "added sep character parameter" This reverts commit 45f4b019a4883b6ba577ade1f94677266beb5960. * added sep character parameter * Revert "borrowed `$` to make Time string friendly" This reverts commit 10e2e44c9a04970f38cf66556635bdbb50b69136. * added uri tests and made changelong entry * Update lib/pure/uri.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * Update lib/pure/uri.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * Update tests/stdlib/turi.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * Update tests/stdlib/turi.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* Doc preferred import style in compiler (#19832)quantimnot2022-05-301-0/+1
| | | | | Doc prefered import style in compiler Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* [vm] remove unused opcSubstr opcode (#19834)flywind2022-05-302-10/+2
| | | remove unused opcSubstr
* Fix typo and incorrect pragma name (#19847)Michael New2022-05-301-1/+1
|
* Add link to std/tempfiles in the docs; fix #19155 (#19807)flywind2022-05-241-0/+4
|
* Add `document.hidden` and `document.visibilityState` properties (#19817)tandy10002022-05-241-0/+2
|
* Add Array.shift (#19811)Juan Carlos2022-05-242-1/+10
| | | | | * Add Array.shift for JavaScript targets * Add Array.shift for JavaScript targets
* Fix global destructor injection for JS backend (#19797)quantimnot2022-05-232-6/+27
| | | | | | | | | | | | | | * Fix global destructor injection for JS backend * Moved global destructors injection before the final call to transform and generate JS code. It had previously been after and thus not no JS was generated for them. * Added some internal documentation of `jsgen`. * Enable a current destructor test to cover the JS backend as well. * Fixes the JS aspect of #17237. * Fixed global destructor injection order for JS backend Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* Fix default testament target in docs and cli help (#19796)quantimnot2022-05-232-3/+3
| | | Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* testament: include extra options in test name (#19801)Jacek Sieka2022-05-192-47/+44
| | | there's currently no (simple) way to disambiguate which option failed
* Always use httpclient in nimgrab (#19767)Yardanico2022-05-172-459/+9
|
* [manual] TLock => Lock (#19785)flywind2022-05-171-3/+7
| | | | | * [manual] TLock => Lock * minor
* Fix typo in sequtils documentation (#19789)Anthony Dario2022-05-131-1/+1
| | | Found another small typo.
* disable polypbren (#19787)flywind2022-05-131-2/+2
| | | | | * disable polypbren * Update important_packages.nim
* string is missing formatting when calling fmt (#19780)Alfred Morgan2022-05-101-2/+2
| | | it appears the documentation intends to compare & with .fmt but there is no formatting in the string. even though the assert is true it doesn't quite prove that .fmt is an equivalent formatter.
* varargs example erroneously transformed "abc" to "def" (#19781)Alfred Morgan2022-05-101-1/+1
|
* Remove deprecated posix proc (#19774)Juan Carlos2022-05-082-11/+1
| | | | | * Remove deprecated posix proc that takes wrong argument types * Remove deprecated posix proc that takes wrong argument types
* Update nimscript `withDir` doc example (#19776)huantian2022-05-081-4/+4
|
* Add new self-signed 4096 bit certificate to testdata (#19758)kraptor2022-05-081-28/+77
| | | | | | | The test tasyncssl may fail on modern linux versions as they require at least 2048 bit certificates. A new certificate and private key with default values has been added to meet this new requirement.
* "ip" protocol as id 0 is long gone (#19760)kraptor2022-05-071-4/+0
| | | | | | | | | | | | | | | IANA is using id 0 for "HOPOPT" instead of "ip" for some time now and those systems that still support the old mapping will stop doing so at some point in the future. Some BSDs and openSUSE are already following this change as per IANA list here: https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml As new unixes (and maybe Windows, who knows) start to adopt the updated IANA list, this will keep failing from time to time, so it's better to remove the "ip" check altogether.
* Fix questionable suggestion in `strutils` docs (#19765)Zoom2022-05-061-9/+16
| | | | | | | | | | | * Fix questionable suggestion in `stutils` docs - Removes the recommendation to pass a string slice for getting a relative index for `find` and `rfind` functions, as this currently makes a string copy, while a simple subtraction is enough. - Docstring for `SkipTable` type. * Doc layout fixup