summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* fixes #18558 (#18563)Andreas Rumpf2021-07-231-16/+28
| | | | | * fixes #18558 * better fix
* std/random: fix overflow bugs; fixes #16360; fixes #16296; fixes #17670 (#18456)Timothee Cour2021-07-232-10/+85
|
* Replace calls to `putenv` with `setenv` (#18530)Caden Haustein2021-07-232-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | * Replace calls to C `putenv` with C `setenv` to remove possible memory leaks * Add test of correct behaviour on invalid input * Fix style in tests/stdlib/tos.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update tests/stdlib/tos.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update tests/stdlib/tos.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Add comment with bug number to tests/stdlib/tos.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Fix possible msvc arch issues Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* Fixed template const tuple unpacking (#18562)Jason Beetham2021-07-232-22/+28
|
* mitigates #12815 (#18557)Andreas Rumpf2021-07-224-4/+25
| | | | | | | | | * mitigates #12815 * Update doc/nimc.rst Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* fixes #12815 (#18554)Andreas Rumpf2021-07-226-3/+30
|
* fix setCommand so it behaves like regular nim invocation (#18555)Timothee Cour2021-07-223-18/+12
|
* fixes #18550 (#18553)Andreas Rumpf2021-07-219-11/+57
| | | | | * fixes #18550 * update the manual to reflect reality
* add [1..2] for JArray (#18525)itsumura-h2021-07-211-0/+18
| | | | | | | | | | | | * add [1..2] for JArray * fix BackwardsIndex to int * fix for BackwardsIndex * fix for assert node kind check * fix variable name * Update lib/pure/json.nim * fix for when x.a is BackwardsIndex Co-authored-by: itsumura-h <dumblepy@mail.com> Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>
* complement notes of two doc strings of tables module (#18527)IterableTrucks2021-07-211-0/+4
| | | | | | | | | | | | | | | * complement notes of two doc strings warning the deprecated procedure's side effect * Update lib/pure/collections/tables.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * Update lib/pure/collections/tables.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: BillyZee <billyzee@localhost.localdomain> Co-authored-by: Andreas Rumpf <rumpf_a@web.de> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* clean unused imports on runnableExamples (#18551)flywind2021-07-211-2/+0
|
* breaking changes policies (#18541)Andreas Rumpf2021-07-211-0/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * document some std library evolution policies In wanting to improve the standard library, it's helpful to have a set of principles and guidelines to lean back on, that show how to introduce such improvements while at the same time considering existing users of the language. A key idea behind documentation of this sort is that it should highlight a path forwards in making changes rather than trying to prevent them, and although the current snippet does include some language for what one shouldn't do, it also shows a few options for what one can do. This is a riff on https://github.com/nim-lang/Nim/pull/18468 mainly based on what helps enable to the use of Nim productively in environments and teams where the priority and focus is not always on the tool (Nim in this case) but rather on the codebase itself, and its use by end users. We use similar guidance documentation to help coordinate the code of the teams using Nim in https://status-im.github.io/nim-style-guide/ where it is applied not as law, but rather as recommendations for the default approach that should be considered first. * document the new policies * typo * Update doc/contributing.rst Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update doc/contributing.rst * Update doc/contributing.rst Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * Update doc/contributing.rst Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * Update doc/contributing.rst * Update doc/contributing.rst Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * clarify some things * Update doc/contributing.rst Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com> Co-authored-by: Jacek Sieka <arnetheduck@gmail.com> Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: Dominik Picheta <dominikpicheta@googlemail.com>
* add testcase for #6499 #12229 #7172 (#18547)flywind2021-07-212-0/+40
|
* unary slices get a deprecation period (#18549)Andreas Rumpf2021-07-212-11/+9
|
* atlas: minor changesAraq2021-07-211-2/+2
|
* undo RFC #294, it breaks code for no good reason, the compiler can wa… ↵Andreas Rumpf2021-07-215-15/+10
| | | | | | | | | | | | | (#18546) * undo RFC #294, it breaks code for no good reason, the compiler can warn about the construct instead * Update changelog.md Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> * enable test case Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* fixes #18469 (#18544)Andreas Rumpf2021-07-204-15/+74
| | | | | * fixes #18469 * Update compiler/injectdestructors.nim
* make -d:nimFpRoundtrips work consistently in vm vs rt, fix #18400, etc (#18531)Timothee Cour2021-07-2021-200/+287
| | | | | | * compiler/vmhooks: add getVar to allow vmops with var params * addFloat vmops with var param * cgen now renders float32 literals in c backend using roundtrip float to string
* follow up #18517 (#18537)flywind2021-07-201-2/+3
| | | | | | | | | | | * follow up #18517 * Update lib/pure/os.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/pure/os.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* use more `.}` (#18542)flywind2021-07-205-9/+9
|
* termux ssl (#18520)Paul Roberts2021-07-202-1/+2
|
* updated the changelog (#18539)Andreas Rumpf2021-07-201-3/+0
|
* use .} instead of } for code highlightersAraq2021-07-201-2/+2
|
* rst: add missing line/column info for some warnings (#18383)Andrey Makarov2021-07-208-195/+344
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * rst: add missing line/column info for some warnings * add workaround * use TLineInfo/FileIndex for storing file names * fix blank lines in include file (rm harmful strip) * don't use ref TLineInfo * return `hasToc` as output parameter for uniformity * Update compiler/docgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update compiler/docgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rst.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * address review - stylistic things * Update compiler/docgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * unify RST warnings/errors names * doAssert + minor name change * fix a bug caught by doAssert * apply strbasics.strip to final HTML/Latex * rm redundant filename * fix test after rebase * delete `order` from rnFootnoteRef, also display errors/warnings properly when footnote references are from different files * Update compiler/lineinfos.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rstast.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rstast.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * Update lib/packages/docutils/rstast.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * revert because of error: Error: cannot prove that it's safe to initialize 'info' with the runtime value for the discriminator 'kind' * Update lib/packages/docutils/rstgen.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * apply suggestion * Update lib/packages/docutils/rst.nim Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> * add Table for string->file name mapping * do not import compiler/lineinfos * fix ambiguous calls Co-authored-by: Timothee Cour <timothee.cour2@gmail.com> Co-authored-by: narimiran <narimiran@disroot.org>
* [std/os]document `checkDir` and use `runnableExamples` (#18517)flywind2021-07-191-22/+16
| | | Co-authored-by: Timothee Cour <timothee.cour2@gmail.com>
* minor clenup in vmops (#18529)Timothee Cour2021-07-191-4/+5
|
* Revert #17321 (#18521)konsumlamm2021-07-191-135/+135
| | | Use better names in example
* Docs(manual): add clarification for default params (#18522)ynfle2021-07-191-1/+2
| | | | | | | | | | | * Docs(manual): add clarification for default params * Docs(manual): fix wording to refer to call time * Docs(manual): Clarify default parameter wording Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* close #18489 (#18524)flywind2021-07-191-0/+15
|
* nim doc now correctly renders deprecated pragmas for routines and types (#18515)Timothee Cour2021-07-197-17/+59
|
* attempt to support short commit hashes (#18514)Antonis Geralis2021-07-181-5/+16
| | | | | | | | | * attempt to support short commit hashes Not sure if that's the correct way and what happens when the short hash matches "head" * need to remove # * Output needs to be stripped of newlines
* fixed system.delete (#18507)Andreas Rumpf2021-07-183-12/+26
|
* deprecate strutils.delete and add an overload with saner semantics ↵Timothee Cour2021-07-183-9/+59
| | | | consistent with sequtils.delete; follows #18487 (#18510)
* add NIM_STATIC_ASSERT(CHAR_BIT == 8, "") to fail-fast where assumption is ↵Timothee Cour2021-07-181-0/+3
| | | | violated (#18512)
* Revert #17398 and #17402 (#18480)Miran2021-07-184-32/+19
| | | | | | | | | | | * Revert "followup #17398: `getTempDir`, `getConfigDir` now do not have trailing DirSep (#17402)" This reverts commit 2356d0603f70cad90f76fa57999054bf5c0a9157. * Revert "fix #17393 getHomeDir and expandTilde should not include trailing `/` (#17398)" This reverts commit bebf2ce24a43bef4cde5c90c4010631a1e4a7927. * fix test
* Make error message for empty new-styled concept more descriptive (#18506)konsumlamm2021-07-183-11/+11
| | | | | | | * Allow empty new-styled concept Slightly improve error messages * Make empty new-styled concepts an error
* fix nativeToUnixPath (#18501)Timothee Cour2021-07-172-3/+28
|
* make dragonbox opt-in via -d:nimFpRoundtrips (#18504)Andreas Rumpf2021-07-168-27/+35
| | | | | | | * make dragonbox opt-in via -d:nimFpRoundtrips * make tests green again * make tests green again
* deprecate cuchar, don't redefine it (#18505)Andreas Rumpf2021-07-1611-54/+55
|
* added Atlas helper tool (#18497)Andreas Rumpf2021-07-166-1/+751
| | | | | * added Atlas helper tool * further improvements
* Add changes required by Nimble lock file support (#12104)Ivan Bobev2021-07-155-55/+140
| | | | | | | | | | | | | | | | Implemented support for Nimble local cache with package directories with a checksum of the package at the end of their names. Now the compiler supports package paths in the form: * /path_to_nimble_cache_dir/pkgs/package_name-1.2.3- FEBADEAEA2345E777F0F6F8433F7F0A52EDD5D1B * /path_to_nimble_cache_dir/pkgs/package_name-#head- 042D4BE2B90ED0672E717D71850ABDB0A2D19CD2 * /path_to_nimble_cache_dir/pkgs/package_name-#branch-name- DBC1F902CB79946E990E38AF51F0BAD36ACFABD9 Related to nim-lang/nimble#127
* deprecate `sequtils.delete` and add an overload with saner semantics ↵Timothee Cour2021-07-153-47/+143
| | | | | | | | consistent with `system.delete` (#18487) * deprecate sequtils.delete and add an overload with saner semantics * AssertionDefect => IndexDefect * improve tsequtils * add tests; use splice in js for optimization
* Extended side effect error messages (#18418)quantimnot2021-07-153-17/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Extended side effect error messages * Applied feedback: - refactored `markSideEffect` - refactored string interpolations - single message - skip diagnostics in `system.compiles` context Other: - started a test of diagnostic messages [ci skip] Tests aren't updated yet because messaging isn't nailed down. * - Added hints of where for side effect call locations. - Tried to clarify the reasons. * fix tests * Applied PR review feedback: - moved collection of side effects from TSym to TContext - used pragma shorthand form `.sideEffect` and `.noSideEffect` in messages - added leading '>' to structured messages for readability - changed `sempass2.markSideEffect` to a proc - replaced `system.echo` in the test to make the test compatible with Windows * Applied NEP1 formatting suggestion Co-authored-by: quantimnot <quantimnot@users.noreply.github.com>
* added `nimAllocPagesViaMalloc` switch (#18490)Andreas Rumpf2021-07-155-7/+46
| | | | | * added switch * alloc.nim needs page aligned memory blocks
* Improve description of how =trace is used (#18491)GordonBGood2021-07-151-5/+22
| | | | | | | | | | | | | | | | | | | * [skip ci] thamming_orc test created/destroyed counts match The thamming_orc.nim code now counts all created objects being tested, not just the ones following the "first 20" test, and the position of the `destroyed += 1` counter has been adjusted so it counts all the calls that are as a result of `=trace` tracing and not just the original destruction calls. * Improve description of how `=trace` is used The following nuances weren't previously fully explained: 1. That `=trace` is only used by `--gc:orc`. 2. That `=trace` is almost certainly used along with `=destroy` when manual resource allocation has been used, but it is only required if there is a possibility of cyclic references in the wrapped types (ie. generic types). 3. That, currently, a forward definition is required for the second of the pair to avoid an auto compiler generation conflict. The pattern of the use of `=trace` has also been made more extensive, showing how both a custom `=destroy` and `=trace` are used for manual allocation of resources when there is any possibility of a cyclic reference in the resource-wrapped values. * Update doc/destructors.rst Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
* fix https://github.com/dom96/choosenim/issues/256 WSL CRLF (#18452)Timothee Cour2021-07-141-0/+3
| | | | | * fix https://github.com/dom96/choosenim/issues/256 WSL CRLF * fixup
* fixes #17893 (#18485)Andreas Rumpf2021-07-132-6/+68
| | | * fixes #17893
* closes #18433 (#18484)Andreas Rumpf2021-07-133-6/+42
| | | | | * beneficial refactoring; use system.Endianness * closes #18433
* workaround #18481 (#18482)flywind2021-07-131-18/+20
|
* close #17986 add testcase (#18477)flywind2021-07-121-0/+12
|