Updates
[1.2.1]
- Fixed an issue where a group could not be assigned to a deployment circle for a package with a forward slash (/) in the package ID.
[1.2.0]
This release introduces several new features and enhancements to Update Service. Focusing on client management and update control and several user experience improvements:
Schedule Windows
This new feature allows users to define which days and what part of a day clients can update, providing more control over the update.
Client Groups
Now, users can organize clients into groups for more efficient management. This feature also includes the ability to assign these groups to deployment circles, streamlining the deployment process. Additionally, users can apply a schedule window to an entire client group, further enhancing update management efficiency.
Other notable changes
- We have added a filtering feature to all lists on the server interface. This feature makes it easier for users to find and manage specific data.
- We have made changes to the installer details page. These changes include the addition of chips and a different dialog, enhancing the user experience.
- Now users can open installers directly from the server web interface, instead of downloading and running them manually.
- For improved security, sensitive information on the server settings page is now obfuscated.
- We have upgraded the server interface from Vue 2 to Vue 3. This technical upgrade enhances the application's performance and ensures compatibility with the latest web technologies.
[1.1.1]
- Fix "Bad request" error when Windows's clock in format is HH.ss instead of HH:ss.
- Fixed "No file list provided." error, when updating packages installed from local cache.
[1.1.0]
We are excited to announce our latest release, packed with new features and improvements aimed at enhancing your user experience and quality of life. This update introduces the ability to create a support package on both the client and server, a new servers page on the client for efficient management, and significant enhancements to the installed components page. We've also added a feature for system restart prompts in case of certain installation failures. Alongside these, we've made numerous fixes and minor improvements to further enhance your user experience. We hope you find these updates beneficial.
Create a Support Package on Client and Server
You can now generate a support package on both the client and server. This package includes all necessary data and information for troubleshooting and support purposes.
On client:
On server:
New Servers Page on Client
We've added a new servers page on the client for more efficient server management. The new features include:
- The ability to add, edit, and remove servers.
- A functionality to test the connection to the server.
- An option to log out of server.
- The capability to change the priority of servers.
Improved Installed Components Page on Client
The installed components page on the client now includes:
- A filter for easy navigation.
- An icon showing users if an update is available for a component or instance.
Restart Computer on Failure on Client
Now, if an installation failure occurs, involving a package sensitive to Windows updates, the user will be alerted and instructed to complete all pending Windows updates, followed by a system restart before attempting to try again. Post-restart, the installation wizard will automatically launch, allowing the user to proceed with the installation process.
Component History Page on client
On the client, a new Component History page is now available. This page allows you to view the history of each component, including details on when it was installed, updated, or removed.
Windows Event Logs included with Install Telemetry
The install telemetry now includes Windows event logs for better tracking and troubleshooting. The telemetry can be viewed on the server portal under Installs and by opening a failed installation report.
Automatic Storage Cleanup on Client
Files in storage older than 60 days are now automatically removed. You can manually clean all files either via the settings page on the client app or by using the Clear-UscFileStorage
command.
Other notable changes
- Added a loading spinner after login on the client.
- Added a button to clear all notifications on the server.
Fixes and minor improvements
- Fixed arguments being reset when changing the instance name in the installer wizard.
- Fixed when browser cache was serving older version of page (server).
- Fixed personal access token page hanging on server for certain time zones.
- Fixed error when piping PSCustomObject to New-UssPackage.
- Fixed IIS's Bad gateway (502.3) error, due to timeout.
- Made dropdown parameter case insensitive.
- If downloaded compressed hash does not match server's, then check the file hash. In case the server has incorrect compressed hash.
- The client service (background service) is now set to Automatic delayed to ensure all services are started during Windows startup.
[1.0.0]
This major update includes a complete rewrite of our server, making it ready for SaaS deployment. While we've made significant changes under the hood, we've maintained backward compatibility for our clients. To upgrade, users will need to migrate their existing Go Current server to Update Service, which we've made as easy as possible.
Most notable changes:
- New server: The server has been completely rewritten to utilize a modern .NET architecture, ASP.NET Core, making it more future-proof and SaaS-ready.
- REST API: The new REST API allows for the invocation of any server operation, providing greater flexibility and control.
- Azure Storage: Update Service now utilizes Azure Storage to securely store and serve files, ensuring the safety and privacy of your data.
- Authentication and authorization using Azure Active Directory: Users can restrict server and/or client access, create Personal Access Tokens for use in scripts and automation, and view audit logs to see who made changes to the server's settings and data.
- SaaS ready: The server is now fully compatible with Azure services, allowing it to be easily hosted in the cloud for greater accessibility and convenience.
Other notable changes:
- Users can now track ongoing installations on the server interface.
- A new feature lets users import packages directly from the server interface.
- Users can view package dependencies and parameters in the package version details.
- The server interface now has a dark and light mode option.
- A notification system has been added to the server interface for ongoing processes.
[0.22.0]
Added
- Packages can now create messages that are displayed to the user after a successful or failed installation, for example, to provide the user with instructions on how to open the installed application or to create a more user-friendly error message.
- SQL database selection improved:
- Detects and auto selects existing SQL server if no default server exists.
- Default SQL server is updated when the user selects a different local server.
- Manually entered SQL servers are added to history for later selection through drop-down.
- Throws validation error if a connection to SQL server cannot be established.
- Error is thrown if there is not enough space on the machine.
- User can now cancel an installation by pressing cancel in the installation wizard.
- User can now change the instance name in the installation wizard.
- User can now change the update strategy in the installation wizard.
- Arguments and settings were added to the summary in the installation overview.
- New drop-down widget was added to allow the user to select arguments from a dropdown.
- New property added to package manifest, MinClientVersion, to specify a minimum client version that can execute the package. If the package is relying on a feature not present in an older client.
Changed
- Passwords in SQL connection string are now masked in logs.
Fixed
- Fixed an error when creating deployment circle for a package, client fails to install package where no version is selected.
- Added protection when writing configuration files to disk when space runs out.
- Fixed when the database name field is changed, it clears out.
- Fixed when the client is updated to a new version, Windows start menu still points to the old version, due to caching.
[0.19.1]
Fixed
- UpdateInstanceMode not honored when optional package included in updates from Workspace (VS Code extension).
- Installer hangs in some cases.
[0.19.0]
Added
- Support for removing individual packages in an instance.
- Now, packages in an instance are uninstalled when removed from a bundle update.
- New parameter added to
Install-GocPackage
,-UpdateInstanceMode Replace|Merge
which determines the behaviour when-UpdateInstance
is used.- Replace: To replace to change the selected packages in an instance.
- Merge: To merge incoming packages supplied to
Install-GocPackage
with the current list of packages in an instance. ### Changes
- Communication layer to the isolated agent improved and fallback mode was added. ### Fixed
- Too large logs from package execution resulted in a failed install.
[0.18.0]
Added
- Server and client executables are now code-signed (Server + Client).
- Installers can be signed, with a code signing certificate (Server).
- Parameters with password widget are now masked in logs (Client).
- Directly open client logs after a failed installation in the wizard (Client).
- Text warping and scrollbars added for errors in-app (Client). ### Changed
- Improved package removal logic to be less reliant on the server. ### Fixed
- "An item with the same key has already been added" when removing instance and Servers.json contains the same server multiple times.
- Running the client as the "NT Authority/System" user does not throw "Must run as administrator" in any case.
[0.17.0]
Added
- Client cmdlets are now autoloaded into the PowerShell session, allowing the user to omit "Import-Module GoCurrent".
- New client setting InstancesInstallDir added, where user can specify where instances are installed. The default install location also changed from %ProgramData%\LS Retail\Go Current\Client\Instances to %ProgramFiles%\LS Retail\Update Service\Instances
- New cmdlet Set-GocSettings [-InstancesInstallDir] to update the client settings from PowerShell.
- New view in the Go Current app, Settings with a field to specify InstancesInstallDir.
[0.16.3]
Changed
- Include version query constraints from installed packages when a version cannot be determined.
Fixed
- Install error "Could not connect to isolated process." when the username contains space.
[0.16.2]
Fixed
- Correct install sequence not honored in edge cases.
[0.16.1]
Fixed
- Client service user created without admin privileges on a localized Windows.
[0.16.0]
Added
- Now, the server priority can be specified on the client cmdlets and ignore the server specified in Servers.json.
[0.15.0]
Added
- The go-current-server package has the following improvements (Server package, GOC-278):
- Parameters added to the package to configure on install. (Server)
- After installation, the new server is automatically added to the client's servers list with top priority. (Server)
- Port is automatically added to Windows Firewall.
- New package parameter widgets added: (Client, GOC-268)
- NewDatabase to specify a new database, which will fail validation if the database already exists.
- OpenDatabase to specify an existing database, which will fail validation if the database doesn't exist.
- Package parameters can now have hint text for additional explanation. (GOC-269)
- New property added to package manifests, WindowsUpdateSensitive. If set to true, the user is warned if Windows updates are pending, before installation and asked to install the updates and restart the machine. (GOC-106)
- Users can now run multiple installations at the same time if there are no conflicts between them. When a conflict occurs the user receives an error. (GOC-284)
Changed
- Installers in Go Current app are now sorted alphabetically. (Client)
- The server cmdlets, New-GocsDatabase and Set-GocsDatabase, now returns the server's GUID. (Server, GOC-278)
Fixed
- Install overview text was "Click Install" when button was "Update". (Client, GOC-270)
- Install overview button was "Update" when user expected "Install". (Client, GOC-270)
- Already installed packages were on the arguments page in the wizard. (Client)
- Unnecessary downloads skipped for packages being updated with no update command. (Client, GOC-283)
- Temporary directory used during installation moved from %TEMP%. When space is getting tight on a machine, Windows automatically tries to delete the content in %TEMP% which resulted in failed installation.
[0.14.0]
Added
- Now packages can substitute other packages, by specifying SubstituteFor in package manifest.
- Consider the package the-substitute, which specifies SubstituteFor as to-substitute in it's manifest.
- Consider the package the-dependent which has a dependency to the package to-substitute.
- Selecting and installing only the-dependent will also install to-substitute.
- Now, selecting and installing the-dependent and the-substitute will not install to-substitute, as the-substitute will satisfy the dependency.
[0.13.9]
Fixed
- Pipeing multiple packages to Test-GocIsInstance returned result for first package, instead of any of the bunch.
[0.13.8] - 2020-02-18
Added
Fixed
- Install sequence not honored for some 2nd level shared dependencies.
- In rare cases, when client updates package list from server, packages where missing from the list, resulting in client not updating to the new version.
- Dependency calculation improved for edge cases.
[0.12.4]
Changed
- Version parameter for Install-* and Update-GocPackage changed to VersionQuery, to simplify piping.
Fixed
- Recalculating dependency graph resulted in error, now fixed.
[0.12.3]
Added
- New environment variable "$Context.Environment.IsContainer" passed to package, indicating if package is executing inside a Docker container.
Changed
- Default user "GoCurrentUser" creation improved for performance.
Fixed
- Fixed parameters not being resolved correctly for packages with "/" in package id.
[0.12]
Added
- Version range now supports filtering by pre-release tags, for example: "*-rc" will return 1.0.0-rc.1, 1.0.0-rc.2 and 2.0.0-rc.1 but not 1.0.0-nightly.1, 1.0.0 and 2.0.0. (Client, Server, GOC-241)
Fixed
- Package version was not re-selected when version query constraint was removed, resulting in incorrect selection. (Client, Server, GOC-243)
[0.11.6] - 2019-10-25
Added
- Added
ConvertTo-GocSemanticVersion
to client cmdlets. Similar toConvertTo-GocsSemanticVersion
(server cmdlets).
Changed
- Version query with no version range but control characters,
[*][^|_]
now resolves to[*][^|_]!
for consistency (Server, Client).
Fixed
- Fixed error "Bad Request (400)" in web interface by allowing the "content-type" header in REST requests for browsers that do not support allow all headers.
[0.11.5]
Changed
- Version query "1.0-alpha" now resolves to ">=1.0-alpha <1.0-alphb" instead of ">=1.0-alpha <1.0" for consistency.
[0.11.4]
Added
- Report progress during package execution to UI (Client, GOC-237)
- New cmdlet Get-GocFile added to the client cmdlets (this is the same as Get-GocsFile in the server cmdlets) (Client, GOC-235)
[0.11.3]
Added
- Validation to ensure files listed in manifest file are included in the package being imported. (Server)
- Added Test-GocIsInstance cmdlet. (Client cmdlets)
Fixed
- Fixed error which occurred when file paths were to long for Windows when importing package. (Server, GOC-216)
[0.11.2] - 2019-09-06
Added
- Empty directory cleanup after package installation. (GOC-231, client)
- Instance name validation. (Client)
Changed
- Server selection priority: preferred (last installed or from installer), order in Servers.json, available, has package, any. (GOC-227, client)
- Instances will be allocated instance directory at CLIENTDIR\Instances\INSTANCENAME[+N] instead of CLIENTDIR\Instances\INSTANCENAME\RANDOM. (Client)
Fixed
- Fixed GoC server installer not creating database with PS execution policy restricted. (GOC-229)
- Fixed invalid data time format from in rest api (client install telemetry). (GOC-228, server)
- Fixed missing description when Copy-GocsInstallerFromServer to copy non-existing installer. (Server)
[0.11.1] - 2019-08-21
Fixed
- Removing package resulted in an error.
- Error occurred when using checkbox widget with no default value.