mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-21 06:45:27 +00:00
Add 0.16.0 release notes.
This commit is contained in:
BIN
web/assets/news/images/0.16.0/nimble.png
Normal file
BIN
web/assets/news/images/0.16.0/nimble.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 309 KiB |
@@ -3,7 +3,7 @@ Version 0.16.0 released
|
||||
|
||||
.. container:: metadata
|
||||
|
||||
Posted by xyz on dd/mm/yyyy
|
||||
Posted by The Nim Team on dd/mm/yyyy
|
||||
|
||||
We're happy to announce that the latest release of Nim, version 0.16.0, is now
|
||||
available!
|
||||
@@ -11,12 +11,39 @@ available!
|
||||
As always, you can grab the latest version from the
|
||||
`downloads page <http://nim-lang.org/download.html>`_.
|
||||
|
||||
This release includes almost xyz bug fixes and improvements. To see a full list
|
||||
This release includes over 80 bug fixes and improvements. To see a full list
|
||||
of changes, take a look at the detailed changelog
|
||||
`below <#changelog>`_.
|
||||
|
||||
Some of the most significant changes in this release include: xyz
|
||||
Some of the most significant changes in this release include: a major new
|
||||
Nimble release, an improved import syntax, and the stabilisation of
|
||||
name mangling rules enabling faster compile times.
|
||||
|
||||
The new Nimble release that is included with Nim 0.16.0 includes a variety of
|
||||
new features and bug fixes. The most prominent of which is the improved output
|
||||
system, as shown in the figure below.
|
||||
|
||||
.. raw::html
|
||||
|
||||
<a href="../assets/news/images/0.16.0/nimble.png">
|
||||
<img src="../assets/news/images/0.16.0/nimble.png" alt="Nimble 0.8.0" style="width:100%"/>
|
||||
</a>
|
||||
|
||||
For a full list of changes in Nimble, see its
|
||||
`changelog <https://github.com/nim-lang/nimble/blob/master/changelog.markdown#080---05012017>`_.
|
||||
|
||||
The new import syntax makes it easier to import multiple modules from the same
|
||||
package or directory. For example:
|
||||
|
||||
.. code-block:: nim
|
||||
import compiler/ast, compiler/parser, compiler/lexer
|
||||
import compiler / [ast, parser, lexer]
|
||||
|
||||
The two are equivalent, but the new latter syntax is less redundant.
|
||||
|
||||
Finally, the code responsible for name mangling in the generated C and C++ code
|
||||
has been improved to reduce compile times. In particular, compile-time for
|
||||
the common edit-compile-run cycles have been reduced.
|
||||
|
||||
Changelog
|
||||
~~~~~~~~~
|
||||
@@ -103,4 +130,93 @@ Bugfixes
|
||||
The list below has been generated based on the commits in Nim's git
|
||||
repository. As such it lists only the issues which have been closed
|
||||
via a commit, for a full list see
|
||||
`this link on Github <https://github.com/nim-lang/Nim/issues?utf8=%E2%9C%93&q=is%3Aissue+closed%3A%222016-06-22+..+2016-09-30%22+>`_.
|
||||
`this link on Github <https://github.com/nim-lang/Nim/issues?utf8=%E2%9C%93&q=is%3Aissue+closed%3A%222016-10-23+..+2017-01-07%22+>`_.
|
||||
|
||||
- Fixed "staticRead and staticExec have different working directories"
|
||||
(`#4871 <https://github.com/nim-lang/Nim/issues/4871>`_)
|
||||
- Fixed "CountTable doesn't support the '==' operator"
|
||||
(`#4901 <https://github.com/nim-lang/Nim/issues/4901>`_)
|
||||
- Fixed "documentation for module sequtls apply proc"
|
||||
(`#4386 <https://github.com/nim-lang/Nim/issues/4386>`_)
|
||||
- Fixed "Operator `==` for CountTable does not work."
|
||||
(`#4946 <https://github.com/nim-lang/Nim/issues/4946>`_)
|
||||
- Fixed "sysFatal (IndexError) with parseUri and the / operator"
|
||||
(`#4959 <https://github.com/nim-lang/Nim/issues/4959>`_)
|
||||
- Fixed "initialSize parameter does not work in OrderedTableRef"
|
||||
(`#4940 <https://github.com/nim-lang/Nim/issues/4940>`_)
|
||||
- Fixed "error proc from macro library could have a node parameter"
|
||||
(`#4915 <https://github.com/nim-lang/Nim/issues/4915>`_)
|
||||
- Fixed "Segfault when comparing OrderedTableRef with nil"
|
||||
(`#4974 <https://github.com/nim-lang/Nim/issues/4974>`_)
|
||||
- Fixed "Bad codegen when comparing isNil results"
|
||||
(`#4975 <https://github.com/nim-lang/Nim/issues/4975>`_)
|
||||
- Fixed "OrderedTable cannot delete entry with empty string or 0 key"
|
||||
(`#5035 <https://github.com/nim-lang/Nim/issues/5035>`_)
|
||||
- Fixed "Deleting specific keys from ordered table leaves it in invalid state."
|
||||
(`#5057 <https://github.com/nim-lang/Nim/issues/5057>`_)
|
||||
- Fixed "Paths are converted to lowercase on Windows"
|
||||
(`#5076 <https://github.com/nim-lang/Nim/issues/5076>`_)
|
||||
- Fixed "toTime(getGMTime(...)) doesn't work correctly when local timezone is not UTC"
|
||||
(`#5065 <https://github.com/nim-lang/Nim/issues/5065>`_)
|
||||
- Fixed "out of memory error from `test=` type proc call when parameter is a call to a table's `[]` proc"
|
||||
(`#5079 <https://github.com/nim-lang/Nim/issues/5079>`_)
|
||||
- Fixed "Incorrect field order in object construction"
|
||||
(`#5055 <https://github.com/nim-lang/Nim/issues/5055>`_)
|
||||
- Fixed "Incorrect codegen when importing nre with C++ backend (commit 8494338)"
|
||||
(`#5081 <https://github.com/nim-lang/Nim/issues/5081>`_)
|
||||
- Fixed "Templates, {.emit.}, and backtick interpolation do not work together"
|
||||
(`#4730 <https://github.com/nim-lang/Nim/issues/4730>`_)
|
||||
- Fixed "Regression: getType fails in certain cases"
|
||||
(`#5129 <https://github.com/nim-lang/Nim/issues/5129>`_)
|
||||
- Fixed "CreateThread doesn't accept functions with generics"
|
||||
(`#43 <https://github.com/nim-lang/Nim/issues/43>`_)
|
||||
- Fixed "No instantiation information when template has error"
|
||||
(`#4308 <https://github.com/nim-lang/Nim/issues/4308>`_)
|
||||
- Fixed "realloc leaks"
|
||||
(`#4818 <https://github.com/nim-lang/Nim/issues/4818>`_)
|
||||
- Fixed "Regression: getType"
|
||||
(`#5131 <https://github.com/nim-lang/Nim/issues/5131>`_)
|
||||
- Fixed "Code generation for generics broken by sighashes"
|
||||
(`#5135 <https://github.com/nim-lang/Nim/issues/5135>`_)
|
||||
- Fixed "Regression: importc functions are not declared in generated C code"
|
||||
(`#5136 <https://github.com/nim-lang/Nim/issues/5136>`_)
|
||||
- Fixed "Calling split("") on string hangs program"
|
||||
(`#5119 <https://github.com/nim-lang/Nim/issues/5119>`_)
|
||||
- Fixed "Building dynamic library: undefined references (Linux)"
|
||||
(`#4775 <https://github.com/nim-lang/Nim/issues/4775>`_)
|
||||
- Fixed "Bad codegen for distinct + importc - sighashes regression"
|
||||
(`#5137 <https://github.com/nim-lang/Nim/issues/5137>`_)
|
||||
- Fixed "C++ codegen regression: memset called on a result variable of `importcpp` type"
|
||||
(`#5140 <https://github.com/nim-lang/Nim/issues/5140>`_)
|
||||
- Fixed "C++ codegen regression: using channels leads to broken C++ code"
|
||||
(`#5142 <https://github.com/nim-lang/Nim/issues/5142>`_)
|
||||
- Fixed "Ambiguous call when overloading var and non-var with generic type"
|
||||
(`#4519 <https://github.com/nim-lang/Nim/issues/4519>`_)
|
||||
- Fixed "[Debian]: build.sh error: unknown processor: aarch64"
|
||||
(`#2147 <https://github.com/nim-lang/Nim/issues/2147>`_)
|
||||
- Fixed "RFC: asyncdispatch.poll behaviour"
|
||||
(`#5155 <https://github.com/nim-lang/Nim/issues/5155>`_)
|
||||
- Fixed "Can't access enum members through alias (possible sighashes regression)"
|
||||
(`#5148 <https://github.com/nim-lang/Nim/issues/5148>`_)
|
||||
- Fixed "Type, declared in generic proc body, leads to incorrect codegen (sighashes regression)"
|
||||
(`#5147 <https://github.com/nim-lang/Nim/issues/5147>`_)
|
||||
- Fixed "Compiler SIGSEGV when mixing method and proc"
|
||||
(`#5161 <https://github.com/nim-lang/Nim/issues/5161>`_)
|
||||
- Fixed "Compile-time SIGSEGV when declaring .importcpp method with return value "
|
||||
(`#3848 <https://github.com/nim-lang/Nim/issues/3848>`_)
|
||||
- Fixed "Variable declaration incorrectly parsed"
|
||||
(`#2050 <https://github.com/nim-lang/Nim/issues/2050>`_)
|
||||
- Fixed "Invalid C code when naming a object member "linux""
|
||||
(`#5171 <https://github.com/nim-lang/Nim/issues/5171>`_)
|
||||
- Fixed "[Windows] MinGW within Nim install is missing libraries"
|
||||
(`#2723 <https://github.com/nim-lang/Nim/issues/2723>`_)
|
||||
- Fixed "async: annoying warning for future.finished"
|
||||
(`#4948 <https://github.com/nim-lang/Nim/issues/4948>`_)
|
||||
- Fixed "new import syntax doesn't work?"
|
||||
(`#5185 <https://github.com/nim-lang/Nim/issues/5185>`_)
|
||||
- Fixed "Fixes #1994"
|
||||
(`#4874 <https://github.com/nim-lang/Nim/issues/4874>`_)
|
||||
- Fixed "Can't tell return value of programs with staticExec"
|
||||
(`#1994 <https://github.com/nim-lang/Nim/issues/1994>`_)
|
||||
- Fixed "startProcess() on Windows with poInteractive: Second call fails ("Alle Pipeinstanzen sind ausgelastet")"
|
||||
(`#5179 <https://github.com/nim-lang/Nim/issues/5179>`_)
|
||||
|
||||
Reference in New Issue
Block a user