Releases: niv/neverwinter.nim
Releases · niv/neverwinter.nim
2.1.2
2.1.1
[2.1.1] - 2025-05-29
Fixed
- Linux binaries now link against gnu ABI, not musl. This should fix the start errors on some distros.
2.1.0
[2.1.0] - 2025-05-06
This release is built with a entirely revamped compiler/release toolchain.
It should fix the issues seen with previous MingW-built releases on Windows ("fseek issue").
This release now also ships the script compiler as a dynamic library on all platforms.
Added
- scriptcomp: dynamic library (libnwscriptcomp.*).
2.0.3
[2.0.3] - 2025-03-14
Changed
- scriptcomp: disabled a for loop optimization where the compiler would sometimes generate code that caused an infinite loop.
N.B.: We still get reports of the amd64 windows binaries having issues with stream seeking. I have removed them from distribution until that can be fixed.
2.0.2
[2.0.2] - 2025-01-25
Added
- scriptcomp: Added support for binary (0b101010) and octal (0o52) integers.
Fixed
- The MacOS binary build via GHA is now amd64, not arm64. A proper universal build can come later.
- asm: Can now correctly disasm struct equality checks.
2.0.1
[2.0.1] - 2024-10-12
This release now requires nim 2.0 or newer.
Added
- Add support for nim 2.0.x and 2.2.x.
- lib: Now correctly reads retail.key for game version 37+.
- scriptcomp: Added support for
__FUNCTION__,__FILE__,__LINE__,__DATE__and__TIME__keywords. - scriptcomp: Added dead branch code optimisations for constant ifs.
- scriptcomp: Added support for unary plus (e.g. constants like
+7now compile). - scriptcomp: Added support for double bang (e.g.
!!xnot compiles). - scriptcomp: Added support for hashed string literals (e.g.
h"foo"-> int). - scriptcomp: Can now output graphviz parse trees to help compiler engineers.
- scriptcomp: Added better error reporting on parser errors.
Fixed
- lib: Fixed --manifests not working.
- lib: Compressedbuf can now correctly handle zero-byte payloads.
- nwn_resman_*: Fixed --all not working.
- nwn_nwsync_prune: Incorrect size reporting on reference pruning.
- scriptcomp: Fixed potential stack overflow issue when compiling particularly complex switch statements.
- scriptcomp: Fixed Unidentified Identifier errors not displaying the identifier label.
1.8.0
[1.8.0] - 2024-03-26
Added
- The nwsync utilities from beamdog/nwsync have been moved into this repository.
- nwsync: prune utility will not trim recently-written files (default: 2 weeks).
Fixed
- nwsync: Will now correctly error out if any lookup path element cannot be found.
- nwsync: Do not create directories in dryrun mode.
1.7.3
1.7.2
[1.7.2] - 2024-02-04
Changed
- All binaries now build with stacktraces enabled, to make user reports more useful.
Fixed
- Fixed installation on nim 1.6 due to changed checksums package upstream.
Performance Improvements
- scriptcomp: Optimized the common for loop construct
for (i = 0; i < N; ++i).
1.7.1
[1.7.1] - 2023-12-17
Changed
- ResDir instances now cache their contents on creation time. This is a change from previous behaviour, where additions to a local directory were reflected immediately.
Fixed
- ResDir is now case-insensitive, same as base game and other ResContainer types.
- scriptcomp: Messages about encoding are no longer printed multiple times when using threads.