What's new in Portable Nullsoft Scriptable Install System 3.09
Jul 2, 2023
- Major Changes:
- Use isolated uninstaller directory for every instance (bug #1296)
- Minor Changes:
- Added !assert
- Fixed !uninstfinalize bug on large uninstallers (bug #1279)
- Fixed creation of missing special folders on old Windows versions where SHGetFolderPath is not available.
- Fixed plug-in call overwriting SetDetailsPrint lastused (bug #1271)
- Fixed !appendfile not writing to non-empty files with a BOM
- Fixed LogicLib ${Switch} Unicode bug
- Fixed MakeNSISW editor zoom level bug (bug #1282)
- Translations:
- Updated Brazilian Portuguese (bug #1269)
- Updated Ukrainian (patch #308)
- Build System:
- Fixed halibut compiler warnings (patch #304)
- Fixed various issues with very old and new GCC versions (bug #1275, patch #307, patch #310)
- Disable stub relocations in newer GCC (bug #1283)
New in Portable Nullsoft Scriptable Install System 3.08 (Sep 27, 2021)
- Major Changes:
- Added !uninstfinalize (patch #280, bug #1241)
- Minor Changes:
- Added $USER.. and $COMMON.. alias constants
- Added GetDLLVersion /ProductVersion switch
- Added GetWinVer instruction
- Disallow start maximized mode
- Added /LAUNCH compiler switch
- PEAddResource now supports the res:// protocol
- System::Store can push/pop the flags state
New in Portable Nullsoft Scriptable Install System 3.07 (Aug 23, 2021)
- Major Changes:
- Unicode now defaults to true
- Minor Changes:
- Added nsExec /MBCS switch
- Memento now supports overridable storage macros
- Fixed Unicode compiler crash (bug #1254, patch #300)
- Fixed !addplugindir relative path bug (bug #1264)
- Fixed StrClb Unicode bug (patch #302)
- Fixed ${GetTime} hour padding (bug #980)
New in Portable Nullsoft Scriptable Install System 3.06.1 (Aug 1, 2020)
- Major Changes:
- Fixed SetBrandingImage crash
New in Portable Nullsoft Scriptable Install System 3.06 (Aug 1, 2020)
- Major Changes:
- DeleteRegKey /ifempty now also checks for values, not just subkeys. Use /ifnosubkeys for the old behavior.
- Added GetKnownFolderPath
- Added UnpinShortcut macro (Integration.nsh)
- Minor Changes:
- Added IfShellVarContextAll and IfRtlLanguage
- Added !define /intfmt
- Added Date/Time nsDialogs controls and macros
- MultiUser: Fixed INSTALLMODE_FUNCTION and added INSTALLMODEPAGE_SHOWUSERNAME
- Translations:
- Updated German (SebStange PR) and Simplified Chinese (patch #297)
- Build System:
- Primitive SOURCE_DATE_EPOCH support (patch #294)
- Python 3 fixes (patch #296)
- GCC 10 memmove workaround (bug #1248)
New in Portable Nullsoft Scriptable Install System 3.05 (Dec 16, 2019)
- ANSI targets are deprecated, consider moving to Unicode.
New in Portable Nullsoft Scriptable Install System 3.04 (Dec 17, 2018)
- Major Changes:
- Added IsNativeMachineArchitecture helper macros to x64.nsh
- Added experimental WinVer "Windows as a Service" detection macros
- Added MakeNSISW window info "spy" tool
- Minor Changes:
- Added MUI_TEXTCOLOR setting
- nsDialogs::OnNotify can now return values back to Windows
- Added LIBRARY_INSTALL_EQUAL_VERSION InstallLib option
- Added NTMARTA to preload list to fix rare Windows 7 security issue (bug #1204)
- AddBrandingImage now supports dialog units
- Fixed !macroundef of last defined macro bug
- Fixed MultiUser caption string bug (bug #1012)
- !undef issues warnings instead of errors
- MakeNSIS prints -CMDHELP to stdout (bug #1203)
- Removed LibraryLocal utility
- Translations:
- Added Hindī (patch #289)
- Updated Belarusian, German (bug #1023), Mongolian and Spanish (bug #1205)
New in Portable Nullsoft Scriptable Install System 3.03 (Jan 30, 2018)
- Major Changes:
- Added more NSD controls and macros (RFE #543)
- Added !gettlbversion
- Library TLB and VxD version support on POSIX (patch #284)
- Minor Changes:
- Added System plug-in v2 syntax option
- Added System plug-in B and H types
- Added IntPtrCmp, IntPtrCmpU, and IntPtrOp
- Added Int64Cmp, Int64CmpU and Int64Fmt (64-bit only)
- Added IntOp and System::Int64Op >>> operator
- Added more !define /math operators
- Added WinVer.nsh IsDomainController (patch #286)
- Plug-ins now set the ASLR, DEP, LAA, NOSEH and TS PE flags (bug #1188)
- MakeNSIS exits with code 0 for various information commands (bug #1193)
- Removed unused NSD_LB_Clear macro parameter
New in Portable Nullsoft Scriptable Install System 3.02.1 (Aug 1, 2017)
- Translations:
- Fixed Chinese (Traditional) and Romanian translation bugs (bug #1189 and bug #1191)
- Fixed Scots Gaelic MUI finish page translation
New in Portable Nullsoft Scriptable Install System 3.02 (Jul 26, 2017)
- Major Changes:
- Fixed NSIS3 RegTool Win9x bug
- Added the HKCR32, HKCR64, HKCU32, HKCU64, HKLM32 and HKLM64 root keys
- Unsupported SetRegView mode now fails all registry operations
- Added ExecShellWait
- Added WriteRegMultiStr (RFE #382, patch #219) and WriteRegNone
- Added !pragma warning (patch #267)
- $LocalAppData now resolves to the ProgramData folder in the SetShellVarContext all context
- Minor Changes:
- Variables used in Caption can now be set in .onGUIInit (RFE #539)
- MultiUser now supports $ProgramFiles64 (bug #843)
- Added support for MUI_UNCONFIRMPAGE_VARIABLE (RFE #511) and MUI_PAGE_CUSTOMFUNCTION_DESTROYED
- Unicode nsExec now supports the /OEM switch (bug #1171)
- Translations:
- Chinese (Traditional) updates by Walter Cheuk
- Minor French improvements (patch #221)
New in Portable Nullsoft Scriptable Install System 3.01 (Dec 12, 2016)
- Major Changes:
- Error messages are now written to stderr by default
- New icons by Jan T. Sott
- Minor Changes:
- SetCtlColors now supports Windows color constant values
- StrCpy "" maxlen handling (bug #1122)
- Fixed buffer size bug in winchar.cpp (patch #271)
- Translations:
- Added Corsican (patch #268)
- PortugueseBR fixes (patch #276)
- Updated Danish translation (bug #1164)
- Arabic, Norwegian, Portuguese, Ukrainian and Swedish MultiUser fixes (patch #278, patch #279, patch #274, patch #275 & patch #277)
New in Portable Nullsoft Scriptable Install System 3.0 (Jul 28, 2016)
- Long-awaited version 3 of NSIS is finally ready. It comes with optional Unicode support, still works on all the same versions of Windows, supports Windows 10, and adds a lot of other small features and fixes.
- Minor Changes: finalize command now supports the same compare operators as !system (bug #1148)
- Translations: PortugueseBR fixes (bug #1149)
New in Portable Nullsoft Scriptable Install System 3.0 RC 2 (Jul 11, 2016)
- Major Changes:
- Fixed LogicLib nested ${Select} bug
- makensis command must force Unicode output to be UTF-8 (bug #1147)
- Minor Changes:
- Zip2Exe aborts if the zip file is encrypted (bug #1141)
- Added LogicLib & operator
- NSIS Menu POSIX fixes (bug #1144)
- Translations:
- PortugueseBR fixes (deguix)
- Minor tweaks to Danish.nlf (scootergrisen) (bug #1140)
New in Portable Nullsoft Scriptable Install System 3.0 RC 1 (Apr 4, 2016)
- Major Changes:
- Fixed !appendfile on POSIX and LogicLib ${Switch}
- More security hardening to prevent dll hijacking
- Minor Changes:
- Documentation improvements
- The name of the uninstaller created in %TEMP%\~nsu.tmp has changed from %UNIQUE%u_.exe to Un_%UNIQUE%.exe
- Various warning and error improvments
- Translations:
- Added missing MULTIUSER_* entries to Japanese.nsh (patch #266)
New in Portable Nullsoft Scriptable Install System 2.51 (Apr 3, 2016)
- Minor Changes:
- More security hardening to prevent dll hijacking
- Backported support for system 'p' type and logiclib P and Z tests
- Translations:
- Added missing MULTIUSER_* entries to Japanese.nsh (patch #266)
New in Portable Nullsoft Scriptable Install System 3.0 Beta 3 (Jan 12, 2016)
- Major Changes:
- RequestExecutionLevel now defaults to admin
- LoadLibrary security hardening to prevent dll hijacking (bug #1125)
- FileReadUTF16LE now skips the optional BOM at the start of a file
- Minor Changes:
- Fixed System plugin GUID type output bug on Win98
- FileWriteUTF16LE can add a BOM with the /BOM switch
- CreateShortcut icon index can now be larger than 255 (bug #1123)
- system and !execute now provide an empty StdIn pipe to work around bugs in some Windows utilities
- Added support for 0o octal radix prefix on number literals in the preprocessor
- The single parameter version of !if now also supports floats
- Preprocessor now warns when invalid floating point numbers are used in math operations
- MakeNSISW now uses WinInet when checking for updates
- Translations:
- Brazilian Portuguese updated (patch #263)
- Polish updated
New in Portable Nullsoft Scriptable Install System 3.0 Beta 2 (Jan 12, 2016)
- Major Changes:
- Preliminary Windows 10 support
- Minor Changes:
- Added !appendfile /RawNL switch
- Added PESubsysVer attribute
- Exec[Wait] sets the CREATE_DEFAULT_ERROR_MODE flag when creating a process
- Fixed 4+ TiB freespace calculation bug (bug #1115)
- Fixed CreateShortcut /NoWorkingDir parsing bug (bug #1110)
- Fixed minor issues in the Pascal NSIS plug-in SDK and removed the extrap global variable
- nsDialogs and InstallOptions now use the system link color
- Build System:
- Win64 fixes (including patch #258, bug #1105)
- Visual C 2012 fixes
New in Portable Nullsoft Scriptable Install System 3.0 Beta 1 (Jan 12, 2016)
- Major Changes:
- insertmacro allows macro recursion (RFE #497)
- Added !makensis command
- Added new MUI2 bitmap stretch modes, *_NOSTRETCH is now deprecated (RFE #521)
- InitiateShutdown is used to reboot the machine if available (patch #247)
- Added PPO and SafePPO preprocess-only compiler switches
- MakeNSIS WM_COPYDATA messages now use the QH_OUTPUTCHARSET encoding with CP_ACP as the default for compatibility with old IDEs.
- Minor Changes:
- Added IsWow64 to x64.nsh
- Added PEDllCharacteristics attribute
- Added System::Call direct register memory access type. (patch #249)
- Added WX compiler switch
- Allow skipping ExDLL build with SKIPPLUGINS ((patch #254))
- Changed default DllCharacteristics to TS_AWARE+NO_SEH+NX_COMPAT+DYNAMIC_BASE
- Fixed Mac OS X builds (patch #253 and bug #1085)
- Fixed POSIX !searchparse bug (patch #251)
- Fixed !macroundef
- Fixed test-code build target on POSIX and enabled it in nightly builds (bug #1098)
- Fixed Visual Studio 2012 builds
- Translations:
- Added Armenian
New in Portable Nullsoft Scriptable Install System 2.50 (Jan 12, 2016)
- Major Changes:
- RequestExecutionLevel now defaults to admin
- Minor Changes:
- Preload certain system libraries to prevent dll hijacking (bug #1125)
New in Portable Nullsoft Scriptable Install System 2.48 (Jan 12, 2016)
New in Portable Nullsoft Scriptable Install System 2.47 (Jan 12, 2016)
- Major Changes:
- LoadLibrary security hardening to prevent dll hijacking (patch #1125
- InitiateShutdown() is used to reboot the machine if available (patch #247)
- Minor Changes:
- Fixed 4+ TiB freespace calculation bug (bug #1115)
- Windows 8 & 2012 support in WinVer.nsh
New in Portable Nullsoft Scriptable Install System 2.46 (Jan 12, 2016)
- Minor Changes:
- Fixed !searchparse (bug #2803622)
- Fixed Vista error message when canceling uninstaller (bug #2803097)
- Resolve warning for LogicLib's endless Do..Loop (bug #2849872)
- StartMenu: fixed random number prefixes when clicking on an empty spot (bug #2810188)
- Updates to NSIS.pas for plug-in development (patch #2802794)
- Translations:
- PortugueseBR typo (patch #2826598)
- Removed double spaces in Italian (bug #2873598)
- Build System:
- Fixed mingw builds of Math plug-in (patch #2835731)