NewsArchive
03-18-2019, 04:03 PM
All,
we are pleased to announce the immediate availability of SetupBuilder
2019.2, the latest edition of our distribution and deployment tool for
Windows based applications.
Developer Edition now includes "SBRemote Deploy 1.0". This new product
makes it easy to deploy SetupBuilder "push-enabled" packages over a local
area network (LAN). The deployments are done silently, which means the
person on the receiving PC does not need to do anything on their end. The
remote software installations will not disturb the end users with windows or
dialogs and won't interrupt their workflow.
More information and videos are coming soon! But already check out the new
"SBRemoteDemo1.sbp" and "SBRemoteDemo2.sbp" source code examples in the
Examples Package.
The new built-in "Microsoft .NET Core Runtime 2.2.2 (x86, x64)" Core
PreRequisites are the first runtimes to support SBRemote Deploy!
This new SetupBuilder version is available, free of charge, to all customers
who have an active SetupBuilder Maintenance and Support Plan. The update
contains brand new features, tons of enhancements, important bug fixes and
stability improvements. The easiest way to obtain this version is to click
'Help' > 'Check for Updates' and 'Help' > 'Check for Documentation Updates'
in the SetupBuilder IDE.
If you do not have an active subscription plan, please contact your account
manager at sales@lindersoft.com.
We strongly recommend that all customers upgrade to the new build of
SetupBuilder 2019 as soon as possible to maintain the highest level of
support, performance and reliability.
Special thanks to Wolfgang Kirsch - without your help SBRemote Deploy would
not have been possible! THANK YOU!
SetupBuilder 2019.2 Build 6187 (March 18, 2019)
----------------------------------------------------------------------------
NEW : Add built-in support for "SetupBuilder Remote Deploy 1.0". This
new product lets you compile remote deploy "Push" installations
as well as "Tandem Mode" installations. The "Tandem Mode" type
can be used to install, update, or uninstall an application
traditionally or via the new "SBRemote Deploy" functionality
from the same setup.exe.
NEW : IDE: Add "Remote Deploy" section to the "General Information"
Project Properties.
NEW : IDE: Add "Run SBRemote Deploy..." script action to execute a
remote deploy image from within the installer.
NEW : IDE: Add "Init_SBRemoteDeploy.sbi" include script to enable
remote deploy on the client.
NEW : IDE: Add "Core SetupBuilder PreRequisites" built-in support for
"SBRemote Deploy Initialization".
NEW : IDE: Add "Ping LAN Host..." script action to test if a
particular LAN host is reachable.
NEW : IDE: Add HTTP_RETRY #pragma to set the number of HTTP(s)
download retries in case of a failed Web Install download
action. The default internal retry value has been increased
from 1 to 2.
NEW : Installer: In case of a failed Web Install download action, the
installer runtime re-initializes the WinSock component after
waiting for 50 milliseconds.
NEW : Installer: Mixed Non-SSL and SSL Web Install and "Download
File (HTTP)..." script actions are supported from the same
installer now.
NEW : IDE: Add "If..." item to the right-click popup menu in the
Script Editor.
NEW : [SB#9-02061] IDE: Add $EVENT:ONCANCEL$ event for wizard
dialogs. This event lets you execute functions if the user
cancels the installation at any point in the active Wizard
Loop.
NEW : IDE: Add "Enable EVENT:ONCANCEL" option to the "Loop Wizard"
properties (Advanced Tab).
NEW : IDE: Add "Installer Filename" function to the "Get System
Info..." script action to retrieve the file name, excluding
the path name, of the installation currently executing.
NEW : IDE: Add invalid BREAK LOOP and CYCLE LOOP statement detection
to the compiler.
NEW : IDE: Add a 'Unicode Type' function to the "Get File Info..."
script action to retrieve the Unicode type (if any) of a text
file.
NEW : IDE: The "Read Readme File from Absolute Path" option in the
"Readme Dialog" (Advanced Tab) supports both RTF and TEXT
files.
NEW : IDE: The "Enable Print Button" option in the "Readme Dialog"
(Advanced Tab) supports both RTF and TEXT files.
NEW : IDE: The "Read License Agreement File from Absolute Path"
option in the "License Agreement Dialog" (Advanced Tab)
supports both RTF and TEXT files.
NEW : IDE: The "Enable Print Button" option in the "License Agreement
Dialog" (Advanced Tab) supports both RTF and TEXT files.
NEW : IDE: Add built-in %_SB_THISINSTALLER% runtime variable to
retrieve the full pathname, including the file name, of the
installation currently executing.
NEW : IDE: Add built-in %_SB_REMOTEDEPLOY% runtime variable to
retrieve the remote deploy status of the installer.
NEW : IDE: Add built-in %_SB_WINTYPE% runtime variable to retrieve
the architecture of the Windows system. Returns "64" on 64-bit
(x64) machines and "86" on 32-bit (x86) machines.
NEW : IDE: Add "Wait for max. X seconds" option to the "Run Command
Line..." script action. Enter or spin the box to set the
number of seconds the installer will wait for the external
program. Enter 0 to disable this feature.
NEW : IDE: The "Description" entry field in the "Set System Restore
Point..." script management function supports CTRL+Right-Click
to open the Variable List dialog.
NEW : IDE: Add "Finish Dialog" option to the "Readme Dialog" dialog
properties (Advanced Tab). If this checkbox is marked, the
dialog can be used as a Finish dialog.
NEW : Installer: Improved temporary Windows file path handling. Under
certain circumstances, the path does not exist. The stub loader
verifies the existence of the path prior to any use for file
I/O operations. If the path does not exist, the application
creates it.
NEW : IDE: Add "Disable WordWrap" option to the "Readme Dialog"
dialog properties (Advanced Tab). If this checkbox is marked,
the WordWrap is set to off in the text control.
NEW : IDE: Add ".NET Core Runtime Status to the "Get System Info..."
script action. It lets you check whether (a specific) .NET
Core Runtime is installed.
NEW : IDE: Add Core PreRequisites built-in support for "Microsoft
.NET Core Runtime 2.2.2 (x86)" build 27318 Redistributable
Package. Side-by-side installation is supported. This Core
PreRequisites supports remote deploy.
NEW : IDE: Add Core PreRequisites built-in support for "Microsoft
.NET Core Runtime 2.2.2 (x64)" build 27318 Redistributable
Package. Side-by-side installation is supported. This Core
PreRequisites supports remote deploy.
NEW : IDE: Add "Return IDYES in Silent Mode" option to the "Display
Message Box..." script action. If an installer is running in
silent mode (and a Message Box is suppressed), the %_SB_RETURN%
variable value is set to $IDYES$ (6).
NEW : IDE: Add "Fine Next Line" function to the "Handle Text File
Operation..." script action.
NEW : IDE: Add "Enable Predefined Firewall Rule" function to the
"Add/Delete Firewall Exception..." script action.
NEW : IDE: Add "Disable Predefined Firewall Rule" function to the
"Add/Delete Firewall Exception..." script action.
NEW : [SB#9-01301] Installer: The "Post to HTTPx Server..." script
action can handle line breaks in a runtime variable (\n
macro) when using it in the "&message" item.
NEW : IDE: Add new $FIREWALL_REMOTE_SERVICE_MANAGEMENT$ Predefined
Firewall Rule ID to the "Common Definitions.sbi" include file.
NEW : IDE: Add new $WIN_X64$ and $WIN_X86$ Windows Architecture Types
IDs to the "Common Definitions.sbi" include file.
NEW : IDE: Add new "Project (Wizard)..." item to 'File' > 'New' and
corresponding locations in the IDE.
NEW : IDE: Add new "Remote Deploy Project..." item to 'File' > 'New'
and corresponding locations in the IDE.
NEW : IDE: When creating new Web Update or Remote Deploy projects,
the corresponding sections in the "General Information"
Visualizer are expanded.
NEW : [SB#9-03081] Installer: The SSL/TLS feature supports Server
Name Indication (SNI). SNI is an extension to the TLS computer
networking protocol by which the client indicates the hostname
it is attempting to connect to at the start of the handshaking
process.
NEW : IDE: Add HTTP_DISABLE_SNI #pragma to disable the Server Name
Indication (SNI) SSL/TLS feature.
NEW : The WUCHECK_SSL.EXE and WUPDATE_SSL.EXE clients support Server
Name Indication (SNI) by default.
FIX : [SB#9-01141] Installer: Possible SSL initialization issue.
FIX : IDE: The conversion process from older SetupBuilder project
files to script format #5452 (build March 13, 2017) caused
an internal General Information property inconsistency. The
conversion process to script format #6156 fixes this.
FIX : IDE: Fix possible Script "File | Structure Validation" issue.
FIX : Installer: A password protected install running in silent mode
always changes to non-silent mode to display the Password
dialog. The silent mode change did not update the internal
installer flag ($SB_SILENTMODEFLAG$) status.
FIX : [SB#9-02171] Installer: When using the "/X" command line switch
(in combination with the "/S" silent mode switch) to set the
target installation folder and there was a trailing backslash
in the path, the command line argument interpreter added an
invalid ending quote (").
FIX : [SB#8-12111] IDE: Under certain circumstances, the (command
line) compiler did not detect insufficience disk space. As a
result, it created a corrupt installer .exe.
FIX : [SB#8-12111] IDE: Under certain circumstances, the LSPack
compression library did not detect a write data stream file
error.
FIX : IDE: Under certain circumstances, an incorrect project filename
was displayed in the "Do you want to convert?" message box.
FIX : Possible buffer-overrun in the evutil.exe IDE Elevation Helper
Tool when processing new maintenance keys for the Remote
Deploy product.
FIX : [SB#9-03081] Installer: Searching specific text from a text
file using the "Find File" function under the "Handle Text File
Operations..." script action returned incorrect line numbers
when doing multiple search operations. It returned the
incremental value to the detected line from the last returned
line number.
FIX : Installer: The "Browse for File..." script action incorrectly
displayed the variable name (e.g. %VAR%) if the variable was
not previously defined.
CHANGE : Installer: The "Run Command Line..." script action returns the
error code provided by the GetLastError Windows API if the
CreateProcess function fails.
CHANGE : IDE: Sort all Pragma items in the "#pragma..." directive
alphabetically.
CHANGE : IDE: Sort all Retrieve items in the "Get File Name..." script
action alphabetically.
CHANGE : Installer: The installer does not display fatal errors when
running in silent mode (breaks unattended mode).
CHANGE : IDE: Rename "Get System Info (Installer File Name)" script
action to "Get System Info (Installer Path & File Name)".
CHANGE : IDE: Rename "Get System Info (Installer Path Name)" script
action to "Get System Info (Installer Pathname)".
CHANGE : IDE: Rename "RTF Support" option in the "Readme Dialog" dialog
properties (Advanced Tab) to "Enable RTF Support".
CHANGE : IDE: Rename "Display in Silent Mode" option in the "Display
Message Box" script action to "Show in Silent Mode".
CHANGE : IDE: Rename "Download File (HTTP)..." script action to
"Download File (HTTPx)...".
CHANGE : IDE: Rename "Check HTTP Connection..." script action to "Check
HTTPx Connection...".
CHANGE : IDE: Removed "Disable 'New Project' Wizard" option from 'Tools'
> 'Options' > 'General'.
CHANGE : Installer: Increase the width of the "Wait Dialog" progress bar
(related to the "Wait Dialog" width change in build #5368).
CHANGE : IDE: The #pragma MINVER in "Common Definitions.sbi" has been
increased to "10.0.6187".
CHANGE : IDE: SetupBuilder Clarion Edition number updated from "Clarion
10 Edition" to "Clarion 11 Edition".
CHANGE : Recompiled wupdate.exe Web Update client.
CHANGE : Recompiled wucheck.exe Web Update Check client.
CHANGE : Recompiled wupdate_ssl.exe Web Update client. Support for
Server Name Indication (SNI) is enabled by default.
CHANGE : Recompiled wucheck_ssl.exe Web Update Check client. Support for
Server Name Indication (SNI) is enabled by default.
CHANGE : Updated online help (CHM and PDF).
CHANGE : SetupBuilder Starter Edition has been discontinued.
----------------------------------------------------------------------------
----------------------------------------------------------------------------
The full history list can be obtained through the following link:
www.lindersoft.com/HISTORYSB10.TXT
Best regards,
--
Friedrich Linder
Lindersoft | SetupBuilder | www.lindersoft.com
Voice: +1.954.537.3701 | Fax: +1.954.537.3702
--SetupBuilder "point. click. ship"
--Helping You Build Better Installations
--Create Windows 10 ready installations in minutes
--Official COMODO Code Signing and SSL Certificate Partner
we are pleased to announce the immediate availability of SetupBuilder
2019.2, the latest edition of our distribution and deployment tool for
Windows based applications.
Developer Edition now includes "SBRemote Deploy 1.0". This new product
makes it easy to deploy SetupBuilder "push-enabled" packages over a local
area network (LAN). The deployments are done silently, which means the
person on the receiving PC does not need to do anything on their end. The
remote software installations will not disturb the end users with windows or
dialogs and won't interrupt their workflow.
More information and videos are coming soon! But already check out the new
"SBRemoteDemo1.sbp" and "SBRemoteDemo2.sbp" source code examples in the
Examples Package.
The new built-in "Microsoft .NET Core Runtime 2.2.2 (x86, x64)" Core
PreRequisites are the first runtimes to support SBRemote Deploy!
This new SetupBuilder version is available, free of charge, to all customers
who have an active SetupBuilder Maintenance and Support Plan. The update
contains brand new features, tons of enhancements, important bug fixes and
stability improvements. The easiest way to obtain this version is to click
'Help' > 'Check for Updates' and 'Help' > 'Check for Documentation Updates'
in the SetupBuilder IDE.
If you do not have an active subscription plan, please contact your account
manager at sales@lindersoft.com.
We strongly recommend that all customers upgrade to the new build of
SetupBuilder 2019 as soon as possible to maintain the highest level of
support, performance and reliability.
Special thanks to Wolfgang Kirsch - without your help SBRemote Deploy would
not have been possible! THANK YOU!
SetupBuilder 2019.2 Build 6187 (March 18, 2019)
----------------------------------------------------------------------------
NEW : Add built-in support for "SetupBuilder Remote Deploy 1.0". This
new product lets you compile remote deploy "Push" installations
as well as "Tandem Mode" installations. The "Tandem Mode" type
can be used to install, update, or uninstall an application
traditionally or via the new "SBRemote Deploy" functionality
from the same setup.exe.
NEW : IDE: Add "Remote Deploy" section to the "General Information"
Project Properties.
NEW : IDE: Add "Run SBRemote Deploy..." script action to execute a
remote deploy image from within the installer.
NEW : IDE: Add "Init_SBRemoteDeploy.sbi" include script to enable
remote deploy on the client.
NEW : IDE: Add "Core SetupBuilder PreRequisites" built-in support for
"SBRemote Deploy Initialization".
NEW : IDE: Add "Ping LAN Host..." script action to test if a
particular LAN host is reachable.
NEW : IDE: Add HTTP_RETRY #pragma to set the number of HTTP(s)
download retries in case of a failed Web Install download
action. The default internal retry value has been increased
from 1 to 2.
NEW : Installer: In case of a failed Web Install download action, the
installer runtime re-initializes the WinSock component after
waiting for 50 milliseconds.
NEW : Installer: Mixed Non-SSL and SSL Web Install and "Download
File (HTTP)..." script actions are supported from the same
installer now.
NEW : IDE: Add "If..." item to the right-click popup menu in the
Script Editor.
NEW : [SB#9-02061] IDE: Add $EVENT:ONCANCEL$ event for wizard
dialogs. This event lets you execute functions if the user
cancels the installation at any point in the active Wizard
Loop.
NEW : IDE: Add "Enable EVENT:ONCANCEL" option to the "Loop Wizard"
properties (Advanced Tab).
NEW : IDE: Add "Installer Filename" function to the "Get System
Info..." script action to retrieve the file name, excluding
the path name, of the installation currently executing.
NEW : IDE: Add invalid BREAK LOOP and CYCLE LOOP statement detection
to the compiler.
NEW : IDE: Add a 'Unicode Type' function to the "Get File Info..."
script action to retrieve the Unicode type (if any) of a text
file.
NEW : IDE: The "Read Readme File from Absolute Path" option in the
"Readme Dialog" (Advanced Tab) supports both RTF and TEXT
files.
NEW : IDE: The "Enable Print Button" option in the "Readme Dialog"
(Advanced Tab) supports both RTF and TEXT files.
NEW : IDE: The "Read License Agreement File from Absolute Path"
option in the "License Agreement Dialog" (Advanced Tab)
supports both RTF and TEXT files.
NEW : IDE: The "Enable Print Button" option in the "License Agreement
Dialog" (Advanced Tab) supports both RTF and TEXT files.
NEW : IDE: Add built-in %_SB_THISINSTALLER% runtime variable to
retrieve the full pathname, including the file name, of the
installation currently executing.
NEW : IDE: Add built-in %_SB_REMOTEDEPLOY% runtime variable to
retrieve the remote deploy status of the installer.
NEW : IDE: Add built-in %_SB_WINTYPE% runtime variable to retrieve
the architecture of the Windows system. Returns "64" on 64-bit
(x64) machines and "86" on 32-bit (x86) machines.
NEW : IDE: Add "Wait for max. X seconds" option to the "Run Command
Line..." script action. Enter or spin the box to set the
number of seconds the installer will wait for the external
program. Enter 0 to disable this feature.
NEW : IDE: The "Description" entry field in the "Set System Restore
Point..." script management function supports CTRL+Right-Click
to open the Variable List dialog.
NEW : IDE: Add "Finish Dialog" option to the "Readme Dialog" dialog
properties (Advanced Tab). If this checkbox is marked, the
dialog can be used as a Finish dialog.
NEW : Installer: Improved temporary Windows file path handling. Under
certain circumstances, the path does not exist. The stub loader
verifies the existence of the path prior to any use for file
I/O operations. If the path does not exist, the application
creates it.
NEW : IDE: Add "Disable WordWrap" option to the "Readme Dialog"
dialog properties (Advanced Tab). If this checkbox is marked,
the WordWrap is set to off in the text control.
NEW : IDE: Add ".NET Core Runtime Status to the "Get System Info..."
script action. It lets you check whether (a specific) .NET
Core Runtime is installed.
NEW : IDE: Add Core PreRequisites built-in support for "Microsoft
.NET Core Runtime 2.2.2 (x86)" build 27318 Redistributable
Package. Side-by-side installation is supported. This Core
PreRequisites supports remote deploy.
NEW : IDE: Add Core PreRequisites built-in support for "Microsoft
.NET Core Runtime 2.2.2 (x64)" build 27318 Redistributable
Package. Side-by-side installation is supported. This Core
PreRequisites supports remote deploy.
NEW : IDE: Add "Return IDYES in Silent Mode" option to the "Display
Message Box..." script action. If an installer is running in
silent mode (and a Message Box is suppressed), the %_SB_RETURN%
variable value is set to $IDYES$ (6).
NEW : IDE: Add "Fine Next Line" function to the "Handle Text File
Operation..." script action.
NEW : IDE: Add "Enable Predefined Firewall Rule" function to the
"Add/Delete Firewall Exception..." script action.
NEW : IDE: Add "Disable Predefined Firewall Rule" function to the
"Add/Delete Firewall Exception..." script action.
NEW : [SB#9-01301] Installer: The "Post to HTTPx Server..." script
action can handle line breaks in a runtime variable (\n
macro) when using it in the "&message" item.
NEW : IDE: Add new $FIREWALL_REMOTE_SERVICE_MANAGEMENT$ Predefined
Firewall Rule ID to the "Common Definitions.sbi" include file.
NEW : IDE: Add new $WIN_X64$ and $WIN_X86$ Windows Architecture Types
IDs to the "Common Definitions.sbi" include file.
NEW : IDE: Add new "Project (Wizard)..." item to 'File' > 'New' and
corresponding locations in the IDE.
NEW : IDE: Add new "Remote Deploy Project..." item to 'File' > 'New'
and corresponding locations in the IDE.
NEW : IDE: When creating new Web Update or Remote Deploy projects,
the corresponding sections in the "General Information"
Visualizer are expanded.
NEW : [SB#9-03081] Installer: The SSL/TLS feature supports Server
Name Indication (SNI). SNI is an extension to the TLS computer
networking protocol by which the client indicates the hostname
it is attempting to connect to at the start of the handshaking
process.
NEW : IDE: Add HTTP_DISABLE_SNI #pragma to disable the Server Name
Indication (SNI) SSL/TLS feature.
NEW : The WUCHECK_SSL.EXE and WUPDATE_SSL.EXE clients support Server
Name Indication (SNI) by default.
FIX : [SB#9-01141] Installer: Possible SSL initialization issue.
FIX : IDE: The conversion process from older SetupBuilder project
files to script format #5452 (build March 13, 2017) caused
an internal General Information property inconsistency. The
conversion process to script format #6156 fixes this.
FIX : IDE: Fix possible Script "File | Structure Validation" issue.
FIX : Installer: A password protected install running in silent mode
always changes to non-silent mode to display the Password
dialog. The silent mode change did not update the internal
installer flag ($SB_SILENTMODEFLAG$) status.
FIX : [SB#9-02171] Installer: When using the "/X" command line switch
(in combination with the "/S" silent mode switch) to set the
target installation folder and there was a trailing backslash
in the path, the command line argument interpreter added an
invalid ending quote (").
FIX : [SB#8-12111] IDE: Under certain circumstances, the (command
line) compiler did not detect insufficience disk space. As a
result, it created a corrupt installer .exe.
FIX : [SB#8-12111] IDE: Under certain circumstances, the LSPack
compression library did not detect a write data stream file
error.
FIX : IDE: Under certain circumstances, an incorrect project filename
was displayed in the "Do you want to convert?" message box.
FIX : Possible buffer-overrun in the evutil.exe IDE Elevation Helper
Tool when processing new maintenance keys for the Remote
Deploy product.
FIX : [SB#9-03081] Installer: Searching specific text from a text
file using the "Find File" function under the "Handle Text File
Operations..." script action returned incorrect line numbers
when doing multiple search operations. It returned the
incremental value to the detected line from the last returned
line number.
FIX : Installer: The "Browse for File..." script action incorrectly
displayed the variable name (e.g. %VAR%) if the variable was
not previously defined.
CHANGE : Installer: The "Run Command Line..." script action returns the
error code provided by the GetLastError Windows API if the
CreateProcess function fails.
CHANGE : IDE: Sort all Pragma items in the "#pragma..." directive
alphabetically.
CHANGE : IDE: Sort all Retrieve items in the "Get File Name..." script
action alphabetically.
CHANGE : Installer: The installer does not display fatal errors when
running in silent mode (breaks unattended mode).
CHANGE : IDE: Rename "Get System Info (Installer File Name)" script
action to "Get System Info (Installer Path & File Name)".
CHANGE : IDE: Rename "Get System Info (Installer Path Name)" script
action to "Get System Info (Installer Pathname)".
CHANGE : IDE: Rename "RTF Support" option in the "Readme Dialog" dialog
properties (Advanced Tab) to "Enable RTF Support".
CHANGE : IDE: Rename "Display in Silent Mode" option in the "Display
Message Box" script action to "Show in Silent Mode".
CHANGE : IDE: Rename "Download File (HTTP)..." script action to
"Download File (HTTPx)...".
CHANGE : IDE: Rename "Check HTTP Connection..." script action to "Check
HTTPx Connection...".
CHANGE : IDE: Removed "Disable 'New Project' Wizard" option from 'Tools'
> 'Options' > 'General'.
CHANGE : Installer: Increase the width of the "Wait Dialog" progress bar
(related to the "Wait Dialog" width change in build #5368).
CHANGE : IDE: The #pragma MINVER in "Common Definitions.sbi" has been
increased to "10.0.6187".
CHANGE : IDE: SetupBuilder Clarion Edition number updated from "Clarion
10 Edition" to "Clarion 11 Edition".
CHANGE : Recompiled wupdate.exe Web Update client.
CHANGE : Recompiled wucheck.exe Web Update Check client.
CHANGE : Recompiled wupdate_ssl.exe Web Update client. Support for
Server Name Indication (SNI) is enabled by default.
CHANGE : Recompiled wucheck_ssl.exe Web Update Check client. Support for
Server Name Indication (SNI) is enabled by default.
CHANGE : Updated online help (CHM and PDF).
CHANGE : SetupBuilder Starter Edition has been discontinued.
----------------------------------------------------------------------------
----------------------------------------------------------------------------
The full history list can be obtained through the following link:
www.lindersoft.com/HISTORYSB10.TXT
Best regards,
--
Friedrich Linder
Lindersoft | SetupBuilder | www.lindersoft.com
Voice: +1.954.537.3701 | Fax: +1.954.537.3702
--SetupBuilder "point. click. ship"
--Helping You Build Better Installations
--Create Windows 10 ready installations in minutes
--Official COMODO Code Signing and SSL Certificate Partner