# Insights Cloud Edition 2.0.4

2021-08-18

## REST Client

[FIX] Library now exits when an incorrect license type is detected.

[FIX] A bug existed in .kurl.gcp.getServiceAccounts where it always trimmed the last character off the name of the service account. This is fine most of the time because there is usually a slash at the end of the service account name. However, when running in google cloud shell the slash is not present, so the name gets truncated by one character. This fix changes the behaviour so that only trailing slashes and newlines are removed, not any trailing character.

[FIX] Take SHA-256 of file length, for Azure, and SHA-256 of entire file for AWS.

## REST Server

[FIX] brkOnErr is now being honored.

## Object Store

[FIX] Enumeration key fix

q)key $":s3://kxi-sm-test/db/2021.05.14/trace/.d" 1  compared to kdb 4.0 with objstor 1.0.9 and kurl 1.0.6, key applied to a file object returned the full URI q)key$":s3://kxi-sm-test/db/2021.05.14/trace/.d"
:s3://kxi-sm-test/db/2021.05.14/trace/.d

As the enumeration logic changed in v4.1t recently. This fix for 4.1t is backwards compatible with 4.0.

Additionally, the refreshing of meta data via key:/bucket/_ had broken due to kdb+ no longer checking whether path is a file or folder prior to requesting the folder contents. This fix for 4.1t is also compatible with v4.0 Cloud Edition.

## qpacker

[NEW] qpacker now available on Apple M1

[FIX] Always run validate_json inside qlocker container

[FIX] Performance Improvements

[FIX] qshell no longer prevents q from exiting when kxreaper running

[FIX] qce installer now correctly working on GCP cloud shell

[FIX] qpacker excludes libssl/libcrypto