431 Request header too large error when accessing protected resource

Title
431 Request header too large error when accessing protected resource
Summary
We have a few websites in a kubernetes cluster configured behind Keycloak Gatekeeper. The sites work for most people where the number of keycloak roles they have is small. As an admin or where people have a larger number of roles, the sites are not accessible due to a 431 error (Request Header Fields Too Large).
Environment
We are using 8.0.1 (git+sha: 4788367, built: 02-12-2019)
Keycloak version is 8.0.2
Expected Results
Regardless of how many roles a user has, they should be able to access the site
Actual Results
Number of roles affects the request header limit and those with a larger number are blocked
Steps to reproduce
Login to site using an admin user and a less priviledged user
The admin will fail with a 431 error, and the less priviledged user successfully loads the site
Additional Information
I believe I have successfully tested accessing the app directly and also through nginx without keycloak gatekeeper using the same headers that do not work when I try incorporate the gatekeeper image. All the logs and tests suggest that the problem lies with the keycloak-gatekeeper.
This is the log output I get when accessing the site with an admin user
{"level":"debug","ts":1593185076.7279189,"caller":"keycloak-gatekeeper/middleware.go:367","msg":"access permitted to resource","access":"permitted","email":"xxx","expires":3599.272081688,"resource":"/*"}
{"level":"info","ts":1593185076.7313688,"caller":"keycloak-gatekeeper/middleware.go:90","msg":"client request","latency":0.003818838,"status":431,"bytes":0,"client_ip":"<IP_ADDRESS>:34960","method":"GET","path":"/"}
This is the log output I get when accessing the site with a lot fewer roles
{"level":"debug","ts":1593185539.1362739,"caller":"keycloak-gatekeeper/middleware.go:367","msg":"access permitted to resource","access":"permitted","email":"xxx","expires":3597.863726564,"resource":"/"}
{"level":"debug","ts":1593185539.1366208,"caller":"keycloak-gatekeeper/session.go:51","msg":"found the user identity","id":"xxx","name":"xxx","email":"xxx","roles":"xxx","groups":""}
{"level":"debug","ts":1593185539.1367803,"caller":"keycloak-gatekeeper/middleware.go:367","msg":"access permitted to resource","access":"permitted","email":"xxx","expires":3597.863220356,"resource":"/"}
{"level":"info","ts":1593185539.140711,"caller":"keycloak-gatekeeper/middleware.go:90","msg":"client request","latency":0.004726859,"status":200,"bytes":6318,"client_ip":"<IP_ADDRESS>:44010","method":"GET","path":"/images/favicon.ico"}
These are some articles I found
https://issues.redhat.com/browse/KEYCLOAK-3067?page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel
https://github.com/kubernetes/ingress-nginx/issues/4593
https://stackoverflow.com/questions/56796481/nginx-431-request-header-fields-too-large

That is not a real issue of the Louketo-proxy. It is a problem of:
1.) IDP admin - why token needs to contain many user roles, when only a few roles are used for authorization usually. Keycloak offers LDAP filtering, so IDP admin can limit number of roles in the token on the client level easily.
OR
2.) Infrastructure admin - why infrastructure (in your case is probably nginx ingress) is not prepared for that request header sizes, when you want to use them.

Thank you for your help - turning off the full scope in keycloak has resolved my issue.


Error Uri is too long

When Post data is too long to be encoded as FromUrl it uses a Json serialization to support big amont of data

This requires an update of the specificiations and a new version of the protocol, as POST requests are defined to be application/x-www-form-urlencoded.

To clarify, I believe the specs should mention support for both methods in my opinion. Encoding POST data in JSON is "relatively new" and cannot be done with a basic HTML form (which uses application/x-www-form-urlencoded).

To clarify, I believe the specs should mention support for both methods in my opinion. Encoding POST data in JSON is "relatively new" and cannot be done with a basic HTML form (which uses application/x-www-form-urlencoded).

Thanks for your comments. It’s very appreciated. I think it is better to not change the spec of the protocol for this very rare error case  (not encountered since years of use)


bug: Resuming a chat fails with error

Version
v1.8.3
Describe the bug
Resume a previous chat and type a new message then the chat will display an error "cannot read properties of undefined (reading 'line')"
Expected behavior
chat continues
Additional context

I caught a callstack here:
[Extension Host] exception: {"exception.type":"TypeError","exception.message":"Cannot read properties of undefined (reading 'line')","exception.stacktrace":"TypeError: Cannot read properties of undefined (reading 'line')\n\tat contextItemId (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136031:55)\n\tat PromptBuilder.tryAddContext (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:135994:18)\n\tat /Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136124:48\n\tat /Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:118664:24\n\tat AsyncLocalStorage.run (node:async_hooks:338:14)\n\tat AsyncLocalStorageContextManager.with (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:108948:40)\n\tat _ContextAPI.with (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17855:46)\n\tat Tracer.startActiveSpan (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:110116:32)\n\tat ProxyTracer.startActiveSpan (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18101:24)\n\tat wrapInActiveSpan2 (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:118653:18)\n\tat DefaultPrompter.makePrompt (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136090:12)\n\tat SimpleChatPanelProvider.buildPrompt (/Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136741:64)\n\tat /Users/dpc/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136494:38"}

I can't reliably reproduce this.

The key to reproducing appears to be to use resume a chat that had remote context added to it.
My setup is:
v1.8.3
Connected to s2
Restarting a chat who's previous message had remote context with it.
Here's a video
https://github.com/sourcegraph/cody/assets/6098507/72d9d5f1-4c8d-4d14-9a90-dd2c26438c79
Grabbed this from Extension host logs:
 Cannot add a user message after a user message
	at SimpleChatModel.addHumanMessage (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:124157:13)
	at /Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136441:24
	at NoopContextManager.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17794:19)
	at _ContextAPI.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17855:46)
	at NoopTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18071:31)
	at ProxyTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18101:24)
	at /Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136430:14
	at NoopContextManager.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17794:19)
	at _ContextAPI.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17855:46)
	at NoopTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18071:31)
	at ProxyTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18101:24)
	at SimpleChatPanelProvider.handleUserMessageSubmission (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136404:19)
	at SimpleChatPanelProvider.onDidReceiveMessage (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136271:20)
	at w.value (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:137029:27)
	at n.y (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:1902)
	at n.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:2119)
	at E.$onMessage (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:142:14051)
	at s.S (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:5519)
	at s.Q (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:5285)
	at s.M (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:4375)
	at s.L (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:3593)
	at w.value (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:2241)
	at n.y (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:1902)
	at n.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:2119)
	at r.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:105:14091)
	at w.value (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:173:8050)
	at n.y (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:1902)
	at n.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:2119)
	at r.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:105:14091)
	at MessagePortMain.<anonymous> (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:173:6330)
	at MessagePortMain.emit (node:events:514:28)
	at MessagePortMain.emit (node:domain:489:12)
	at Object.emit (node:electron/js2c/utility_init:2:2285)
2024-03-20 07:42:30.298 [error] Error: Cannot add a user message after a user message
	at SimpleChatModel.addHumanMessage (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:124157:13)
	at /Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136441:24
	at NoopContextManager.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17794:19)
	at _ContextAPI.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17855:46)
	at NoopTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18071:31)
	at ProxyTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18101:24)
	at /Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136430:14
	at NoopContextManager.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17794:19)
	at _ContextAPI.with (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:17855:46)
	at NoopTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18071:31)
	at ProxyTracer.startActiveSpan (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:18101:24)
	at SimpleChatPanelProvider.handleUserMessageSubmission (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136404:19)
	at SimpleChatPanelProvider.onDidReceiveMessage (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:136271:20)
	at w.value (/Users/chriswarwick/.vscode/extensions/sourcegraph.cody-ai-1.8.3/dist/extension.node.js:137029:27)
	at n.y (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:1902)
	at n.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:2119)
	at E.$onMessage (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:142:14051)
	at s.S (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:5519)
	at s.Q (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:5285)
	at s.M (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:4375)
	at s.L (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:3593)
	at w.value (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:147:2241)
	at n.y (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:1902)
	at n.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:2119)
	at r.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:105:14091)
	at w.value (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:173:8050)
	at n.y (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:1902)
	at n.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:80:2119)
	at r.fire (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:105:14091)
	at MessagePortMain.<anonymous> (/Applications/Visual Studio Code.app/Contents/Resources/app/out/vs/workbench/api/node/extensionHostProcess.js:173:6330)
	at MessagePortMain.emit (node:events:514:28)
	at MessagePortMain.emit (node:domain:489:12)
	at Object.emit (node:electron/js2c/utility_init:2:2285)

possibly related https://github.com/sourcegraph/cody/pull/3394


TypeError: BundleDeclarationsWebpackPlugin is not a constructor

I am getting this error when merging typescript files using the Webpack BundleDeclarationsWebpackPlugin.
TypeError: BundleDeclarationsWebpackPlugin is not a constructor

What's wrong with my configuration below?
My Webpack config is:
const path = require('path');
const nodeExternals = require('webpack-node-externals');
const BundleDeclarationsWebpackPlugin = require("bundle-declarations-webpack-plugin");

module.exports = {
  entry: './src/index.ts',
  mode: 'production',
  output: {
   ...
  },
  devtool: 'source-map',
  module: {
      ...
  },
  plugins: [
    new BundleDeclarationsWebpackPlugin({
      entry: './dist/types/index.d.ts',    //specify the entry point for your declaration file (defaults to 'index.d.ts')
      outFile: './dist/index.d.ts',        //specify the output file name (defaults to 'index.d.ts')
    }),
  ],
  resolve: {
    extensions: ['.tsx', '.ts', '.js']
  }
};

package.json:
"devDependencies": {
    "@babel/cli": "^7.25.9",
    "@babel/core": "^7.26.0",
    "@babel/preset-env": "^7.26.0",
    "@babel/preset-react": "^7.25.9",
    "@babel/preset-typescript": "^7.26.0",
    "@rollup/plugin-commonjs": "28.0.1",
    "@rollup/plugin-node-resolve": "15.3.0",
    "@types/node": "^22.9.0",
    "@types/react": "^18.3.12",
    "@types/react-dom": "^18.3.1",
    "@types/webpack": "^5.28.5",
    "@types/webpack-dev-server": "^4.7.2",
    "@types/webpack-node-externals": "^3.0.4",
    "babel-loader": "^9.2.1",
    "bundle-declarations-webpack-plugin":"5.1.1",
    "css-loader": "^7.1.2",
    "html-webpack-plugin": "5.6.3",
    "sass-loader": "16.0.3",
    "style-loader": "^4.0.0",
    "ts-loader": "^9.5.1",
    "ts-node": "^10.9.2",
    "typescript": "^5.6.3",
    "webpack": "^5.96.1",
    "webpack-cli": "^5.1.4",
    "webpack-dev-server": "5.1.0",
    "webpack-node-externals": "3.0.0"
  },

tsconfig.json
{
  "compilerOptions": {
    "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
    "jsx": "react-jsx", /* Specify what JSX code is generated. */
    "module": "ESNext", /* Specify what module code is generated. */
    "moduleResolution": "bundler", /* Specify how TypeScript looks up a file from a given module specifier. */
    "resolveJsonModule": true, /* Enable importing .json files. */
    "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
    "sourceMap": true, /* Create source map files for emitted JavaScript files. */
    "outDir": "dist/types", /* Specify an output folder for all emitted files. */
    "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables
     allowSyntheticDefaultImports' for type compatibility. */
    "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
    "strict": true, /* Enable all strict type-checking options. */
    "skipLibCheck": true /* Skip type checking all .d.ts files. */
  },
  "include": [
    "src/**/*"
  ],
  "exclude": [
    "node_modules",
    "dist"
  ] // Exclude `node_modules` and the output directory
}

Its becouse BundleDeclarationsWebpackPlugin is not class. You should create new object with defaults by:
new BundleDeclarationsWebpackPlugin.default;

or with your settings:
new BundleDeclarationsWebpackPlugin.default({
	//...
})

I had this problem too and solved it by using const { BundleDeclarationsWebpackPlugin } = require("bundle-declarations-webpack-plugin");

Sounds like there could be an issue with the cjs output.  Will try to look into this next week. Believe one of the last few changes was to ship as ESM so this could be what you are all seeing, sorry about that.


Jade exercise cannot be completed

I'm using the exact same code as per the solution @ https://github.com/azat-co/expressworks/blob/master/problems/jade/solution.js
However, expressworks still deems this a fail:

The 'jade' package is also installed locally, and globally.

#58

I've been struggling with this for days now. I'm even running the official solution and I get the same error.
module.js:338
    throw err;
          ^
Error: Cannot find module 'jade'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:278:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/home/ubuntu/workspace/ewExercises/jade.js:1:74)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:501:10)
✗ Error connecting to http://localhost:59052/home: connect ECONNREFUSED

The official solution doesn't even 'require('jade') at the top. I've added that and installed jade via NPM, Nothing has worked.

@Beltayn jade is part of package.json
https://github.com/azat-co/expressworks/blob/master/package.json#L29
you don't need to do require('jade') because express will do it for you... unless you want to call jade manually which I don't think you do in this exercise.

@azat-co Thanks for clarifying that. The course wasn't working without some kind of update though. I had to update NPM and install jade locally to get it to work. I can duplicate the error if you're interested.

@Beltayn that can be helpful to others


Sprites menu can't be shown in translation mode

Describe the bug
There is a bug that breaks sprites menu in translation mode. See screenshot for more details.
To Reproduce
Steps to reproduce the behavior:

Switch the editor to translation mode
Open Sprites menu

Expected behavior
Sprites menu should be shown normally with all blocks displayed.
Screenshots

Desktop:

OS: Windows 10
Browser: Chrome 88 or any Chromium
Version:

Arcade: 1.4.6
Microsoft MakeCode: 6.9.7

I can reproduce this.

We should probably fix it soon to help translators.


[2.1.5] Android user permission seems not to be working..

2.1.5 - custom build from last commit
OS/device including version:

Windows 10
Issue description:

Enabling permissions doesn't make Android ask me to enable that permission when installing the application. I tried putting it by myself in the Android Manifest file like this:
uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /
uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /
uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/
uses-permission android:name="android.permission.INTERNET"/
uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/
and recompiled.
still nothing.
Steps to reproduce:
Minimal reproduction project:

well, the permissions are in, so I'll close this for now.


remove managed auth volume mount when unmanaged auth specified

There's an additional volume mount when unManaged auth is specified in IBMCloud KMS that results in errors reconciling. The additional volume mount should only be included when the auth strategy is managed authorization. This properly adjusts the reconciliation to do that

What this PR does / why we need it:
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #
Checklist

[x] Subject and description added to both, commit and PR.
[x] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/hold
for final testing

/retest

/retest-required

/retest-required

/retest-required

/retest-required

/retest

Logs showing unmanaged KMS working
kubectl --kubeconfig /tmp/cbed647109eqdmra2mog-admin-kubeconfig logs -n master-cbf1v8k105f9i9sikmg0 kube-apiserver-97d7bb8c4-qvztb -c ibmcloud-kms
os.Args[0] /go/bin/armada-kms
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Starting IBM Key Management Service Provider..."}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Start provider requested"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Dumping active configuration"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"===================== Active Config ===================="}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Logger.LogLevel.string":"info"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Logger.LogAllValues.bool":false}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.Region.string":"staging"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.TokenURLOverride.string":""}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.NumLenBytes.int":4}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.CacheTimeoutInHours.int":1}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.RestartDelayInSeconds.int":0}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.UnixSocketPath.string":"/tmp/keyprotectprovider.sock"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.APIKey.string":"***Value redacted***"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.KPTimeout.int":10}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.KPDataJSON.string":"***Value redacted***"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.KPData.KeyProtectDataEntries":"<model.KeyProtectDataEntries Value>"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.HealthzPath.string":"/healthz"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"Config:","config.Server.HealthzPort.string":":8081"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"========================================================"}
{"level":"info","time":"2022-07-28T02:56:13.502","msg":"SIGTERM signal handler started.  Watching for SIGTERM signals."}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"Optional file not found or could not be read: /tmp/kp/iam_service_api_key"}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"Optional file not found or could not be read: /tmp/kp/iam_login_endpoint"}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"Optional file not found or could not be read: /tmp/kp/cluster_crn"}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"Service to service authentication will not be used, required values not found."}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"The current Key State is not monitored for this cluster, encrypt and decrypt requests will not verify the key is enabled."}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"Init client requested","clientVersion":1}
{"level":"info","time":"2022-07-28T02:56:13.503","msg":"Init client KMS V1.0 path, DEK and WDEK will be generated."}
{"level":"info","time":"2022-07-28T02:56:13.504","msg":"Starting ticker for periodic checks of go stats and KMS endpoint...","periodicCheckInterval":300}
{"level":"info","time":"2022-07-28T02:56:13.504","msg":"Registering and liveness listener at http://localhost:8081/healthz"}
{"level":"info","time":"2022-07-28T02:56:14.311","msg":"Init client, successfully retrieved DEK and WDEK."}
{"level":"info","time":"2022-07-28T02:56:14.311","msg":"Init client successful","clientVersion":1}
{"level":"info","time":"2022-07-28T02:56:14.311","msg":"Start provider successful"}
{"level":"info","time":"2022-07-28T02:56:16.202","msg":"Returning Version info.","Version":"v1beta1","RuntimeName":"IBM KeyProtect KMS Provider","RuntimeVersion":"0.0.1"}
{"level":"info","time":"2022-07-28T02:56:16.211","msg":"Encrypt requested","reqID":"7247c616-59bc-44e7-a72b-7847b6bfcc0f","deadline":"2022-07-28T02:56:49Z"}
{"level":"info","time":"2022-07-28T02:56:16.211","msg":"Encrypt successful","reqID":"7247c616-59bc-44e7-a72b-7847b6bfcc0f"}
{"level":"info","time":"2022-07-28T02:56:16.212","msg":"Decrypt requested","reqID":"1cefd234-0c73-4943-8229-7612a97e198f","deadline":"2022-07-28T02:56:51Z"}
{"level":"info","time":"2022-07-28T02:56:16.212","msg":"Decrypt successful","reqID":"1cefd234-0c73-4943-8229-7612a97e198f","KPVersion":1}
{"level":"info","time":"2022-07-28T02:56:36.863","msg":"Encrypt requested","reqID":"02359b16-d921-452a-90a2-721e494447f9","deadline":"2022-07-28T02:57:11Z"}
{"level":"info","time":"2022-07-28T02:56:36.863","msg":"Encrypt successful","reqID":"02359b16-d921-452a-90a2-721e494447f9"}
{"level":"info","time":"2022-07-28T02:56:36.864","msg":"Decrypt requested","reqID":"fde2e7c3-69c8-4ee2-ab6a-7b0fe90fa268","deadline":"2022-07-28T02:57:11Z"}
{"level":"info","time":"2022-07-28T02:56:36.864","msg":"Decrypt successful","reqID":"fde2e7c3-69c8-4ee2-ab6a-7b0fe90fa268","KPVersion":1}
{"level":"info","time":"2022-07-28T02:57:06.864","msg":"Encrypt requested","reqID":"3dbac359-a322-4f4b-b0a9-8a77d3e21b32","deadline":"2022-07-28T02:57:41Z"}
{"level":"info","time":"2022-07-28T02:57:06.864","msg":"Encrypt successful","reqID":"3dbac359-a322-4f4b-b0a9-8a77d3e21b32"}
{"level":"info","time":"2022-07-28T02:57:06.864","msg":"Decrypt requested","reqID":"e1a0b749-8459-4eb1-8764-8dc019f014ee","deadline":"2022-07-28T02:57:41Z"}
{"level":"info","time":"2022-07-28T02:57:06.864","msg":"Decrypt successful","reqID":"e1a0b749-8459-4eb1-8764-8dc019f014ee","KPVersion":1}
{"level":"info","time":"2022-07-28T02:57:36.863","msg":"Encrypt requested","reqID":"310457f2-435f-45cd-8a04-557b51b7c9d4","deadline":"2022-07-28T02:58:11Z"}
{"level":"info","time":"2022-07-28T02:57:36.863","msg":"Encrypt successful","reqID":"310457f2-435f-45cd-8a04-557b51b7c9d4"}
{"level":"info","time":"2022-07-28T02:57:36.863","msg":"Decrypt requested","reqID":"1760c100-d95f-4e2b-b9c3-7b38c665a8bb","deadline":"2022-07-28T02:58:11Z"}
{"level":"info","time":"2022-07-28T02:57:36.864","msg":"Decrypt successful","reqID":"1760c100-d95f-4e2b-b9c3-7b38c665a8bb","KPVersion":1}
{"level":"info","time":"2022-07-28T02:57:51.519","msg":"Returning Version info.","Version":"v1beta1","RuntimeName":"IBM KeyProtect KMS Provider","RuntimeVersion":"0.0.1"}
{"level":"info","time":"2022-07-28T02:57:51.520","msg":"Encrypt requested","reqID":"048473c7-79cd-4508-9e60-66db22cfd01b","deadline":"2022-07-28T02:58:26Z"}
{"level":"info","time":"2022-07-28T02:57:51.520","msg":"Encrypt successful","reqID":"048473c7-79cd-4508-9e60-66db22cfd01b"}
{"level":"info","time":"2022-07-28T02:57:51.536","msg":"Encrypt requested","reqID":"2d50fa9c-8a48-432a-aae5-97cc0c37db91","deadline":"2022-07-28T02:58:26Z"}
{"level":"info","time":"2022-07-28T02:57:51.537","msg":"Encrypt successful","reqID":"2d50fa9c-8a48-432a-aae5-97cc0c37db91"}
{"level":"info","time":"2022-07-28T02:57:51.552","msg":"Encrypt requested","reqID":"c955cc19-d860-4041-b9d7-bcada733471d","deadline":"2022-07-28T02:58:26Z"}
{"level":"info","time":"2022-07-28T02:57:51.553","msg":"Encrypt successful","reqID":"c955cc19-d860-4041-b9d7-bcada733471d"}
{"level":"info","time":"2022-07-28T02:57:51.576","msg":"Encrypt requested","reqID":"231d4b7d-8658-4b62-a4d3-27918e23531f","deadline":"2022-07-28T02:58:26Z"}
{"level":"info","time":"2022-07-28T02:57:51.576","msg":"Encrypt successful","reqID":"231d4b7d-8658-4b62-a4d3-27918e23531f"}
{"level":"info","time":"2022-07-28T02:57:51.605","msg":"Encrypt requested","reqID":"1a395788-2bc3-4eda-8c60-b5271bbbd04e","deadline":"2022-07-28T02:58:26Z"}
{"level":"info","time":"2022-07-28T02:57:51.605","msg":"Encrypt successful","reqID":"1a395788-2bc3-4eda-8c60-b5271bbbd04e"}
{"level":"info","time":"2022-07-28T02:57:58.299","msg":"Encrypt requested","reqID":"61ee8976-cdb9-4216-ae12-372e0a11cf71","deadline":"2022-07-28T02:58:33Z"}
{"level":"info","time":"2022-07-28T02:57:58.300","msg":"Encrypt successful","reqID":"61ee8976-cdb9-4216-ae12-372e0a11cf71"}
{"level":"info","time":"2022-07-28T02:57:58.300","msg":"Decrypt requested","reqID":"02a4cf79-bde8-468a-afdb-64f952d899d2","deadline":"2022-07-28T02:58:33Z"}
{"level":"info","time":"2022-07-28T02:57:58.300","msg":"Decrypt successful","reqID":"02a4cf79-bde8-468a-afdb-64f952d899d2","KPVersion":1}
{"level":"info","time":"2022-07-28T02:58:36.863","msg":"Encrypt requested","reqID":"d82e5327-9ddc-4aab-bb7a-380d78499f4a","deadline":"2022-07-28T02:59:11Z"}
{"level":"info","time":"2022-07-28T02:58:36.863","msg":"Encrypt successful","reqID":"d82e5327-9ddc-4aab-bb7a-380d78499f4a"}
{"level":"info","time":"2022-07-28T02:58:36.863","msg":"Decrypt requested","reqID":"bf152d1e-e547-4456-8bd8-f75f053b6c68","deadline":"2022-07-28T02:59:11Z"}
{"level":"info","time":"2022-07-28T02:58:36.864","msg":"Decrypt successful","reqID":"bf152d1e-e547-4456-8bd8-f75f053b6c68","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:06.863","msg":"Encrypt requested","reqID":"134f499f-abdf-461e-a1fa-4dd699fb8c48","deadline":"2022-07-28T02:59:41Z"}
{"level":"info","time":"2022-07-28T02:59:06.863","msg":"Encrypt successful","reqID":"134f499f-abdf-461e-a1fa-4dd699fb8c48"}
{"level":"info","time":"2022-07-28T02:59:06.863","msg":"Decrypt requested","reqID":"fe64967e-fc28-47fc-9937-7cd40c824861","deadline":"2022-07-28T02:59:41Z"}
{"level":"info","time":"2022-07-28T02:59:06.863","msg":"Decrypt successful","reqID":"fe64967e-fc28-47fc-9937-7cd40c824861","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:36.864","msg":"Encrypt requested","reqID":"8e0b577f-a80b-494b-b674-7511d383dfac","deadline":"2022-07-28T03:00:11Z"}
{"level":"info","time":"2022-07-28T02:59:36.864","msg":"Encrypt successful","reqID":"8e0b577f-a80b-494b-b674-7511d383dfac"}
{"level":"info","time":"2022-07-28T02:59:36.864","msg":"Decrypt requested","reqID":"a688c2b6-ab1c-43ff-9e5d-284e4571c8d2","deadline":"2022-07-28T03:00:11Z"}
{"level":"info","time":"2022-07-28T02:59:36.865","msg":"Decrypt successful","reqID":"a688c2b6-ab1c-43ff-9e5d-284e4571c8d2","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:55.051","msg":"Decrypt requested","reqID":"a4a2eb31-0ce6-42bc-a1a2-3ce3433b580c","deadline":"2022-07-28T03:00:30Z"}
{"level":"info","time":"2022-07-28T02:59:55.380","msg":"Unwrap WDEK successful","reqID":"a4a2eb31-0ce6-42bc-a1a2-3ce3433b580c","KPVersion":1,"version":1,"S2SAuth":false,"partialWDEK":"eyJjaXBoZXJ0ZXh0IjoidGJ6OWcyWkM2bG9oWTIvT01ZT2FSSVpxVGdkb0doZUNRYTlQdUNEa09rQ1BXbjd3WW1McC96aWQreEk9IiwiaXYiOiJo..."}
{"level":"info","time":"2022-07-28T02:59:55.380","msg":"Decrypt successful","reqID":"a4a2eb31-0ce6-42bc-a1a2-3ce3433b580c","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:55.381","msg":"Decrypt requested","reqID":"d6a36a58-f3df-4cb2-8725-a009a57b293d","deadline":"2022-07-28T03:00:30Z"}
{"level":"info","time":"2022-07-28T02:59:55.381","msg":"Decrypt successful","reqID":"d6a36a58-f3df-4cb2-8725-a009a57b293d","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:55.626","msg":"Decrypt requested","reqID":"fd2c5c83-21fa-40eb-9144-6658f21bb270","deadline":"2022-07-28T03:00:30Z"}
{"level":"info","time":"2022-07-28T02:59:55.626","msg":"Decrypt successful","reqID":"fd2c5c83-21fa-40eb-9144-6658f21bb270","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:55.628","msg":"Decrypt requested","reqID":"4a92f0d9-ed78-45f8-aaa9-2eb4452ac65a","deadline":"2022-07-28T03:00:30Z"}
{"level":"info","time":"2022-07-28T02:59:55.628","msg":"Decrypt successful","reqID":"4a92f0d9-ed78-45f8-aaa9-2eb4452ac65a","KPVersion":1}
{"level":"info","time":"2022-07-28T02:59:55.706","msg":"Decrypt requested","reqID":"65629a0a-2b6b-4f85-b5c4-96e1c9f0222d","deadline":"2022-07-28T03:00:30Z"}
{"level":"info","time":"2022-07-28T02:59:55.706","msg":"Decrypt successful","reqID":"65629a0a-2b6b-4f85-b5c4-96e1c9f0222d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:06.867","msg":"Encrypt requested","reqID":"f20b698b-f6b2-40d2-aabc-ca30f2c4611f","deadline":"2022-07-28T03:00:41Z"}
{"level":"info","time":"2022-07-28T03:00:06.867","msg":"Encrypt successful","reqID":"f20b698b-f6b2-40d2-aabc-ca30f2c4611f"}
{"level":"info","time":"2022-07-28T03:00:06.868","msg":"Decrypt requested","reqID":"1d3f9d54-90d4-4f6d-b813-90e54e8c419d","deadline":"2022-07-28T03:00:41Z"}
{"level":"info","time":"2022-07-28T03:00:06.868","msg":"Decrypt successful","reqID":"1d3f9d54-90d4-4f6d-b813-90e54e8c419d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:06.972","msg":"Decrypt requested","reqID":"ca3c2d76-b6b8-48d2-98d4-4fb8abe19cc5","deadline":"2022-07-28T03:00:41Z"}
{"level":"info","time":"2022-07-28T03:00:06.972","msg":"Decrypt successful","reqID":"ca3c2d76-b6b8-48d2-98d4-4fb8abe19cc5","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:06.988","msg":"Decrypt requested","reqID":"6120fc63-4d5e-4001-b993-f442171f0711","deadline":"2022-07-28T03:00:41Z"}
{"level":"info","time":"2022-07-28T03:00:06.988","msg":"Decrypt successful","reqID":"6120fc63-4d5e-4001-b993-f442171f0711","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:07.329","msg":"Decrypt requested","reqID":"2a687a67-7772-4df4-9d60-10c6d30cce75","deadline":"2022-07-28T03:00:42Z"}
{"level":"info","time":"2022-07-28T03:00:07.329","msg":"Decrypt successful","reqID":"2a687a67-7772-4df4-9d60-10c6d30cce75","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:07.545","msg":"Decrypt requested","reqID":"1fc79658-1f52-43c4-99f9-2924cc983e16","deadline":"2022-07-28T03:00:42Z"}
{"level":"info","time":"2022-07-28T03:00:07.545","msg":"Decrypt successful","reqID":"1fc79658-1f52-43c4-99f9-2924cc983e16","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:08.954","msg":"Decrypt requested","reqID":"142ba26c-6f29-4b6e-a744-9b822af3a965","deadline":"2022-07-28T03:00:43Z"}
{"level":"info","time":"2022-07-28T03:00:08.955","msg":"Decrypt successful","reqID":"142ba26c-6f29-4b6e-a744-9b822af3a965","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:09.017","msg":"Decrypt requested","reqID":"8e176c30-0988-4522-a4cd-7ff8ea4f97e8","deadline":"2022-07-28T03:00:44Z"}
{"level":"info","time":"2022-07-28T03:00:09.017","msg":"Decrypt successful","reqID":"8e176c30-0988-4522-a4cd-7ff8ea4f97e8","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:11.636","msg":"Decrypt requested","reqID":"8403d806-a095-4deb-8304-2909badcca44","deadline":"2022-07-28T03:00:46Z"}
{"level":"info","time":"2022-07-28T03:00:11.637","msg":"Decrypt successful","reqID":"8403d806-a095-4deb-8304-2909badcca44","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:11.845","msg":"Decrypt requested","reqID":"fcc546b2-c469-45cc-a783-bdacdf36d9c9","deadline":"2022-07-28T03:00:46Z"}
{"level":"info","time":"2022-07-28T03:00:11.846","msg":"Decrypt successful","reqID":"fcc546b2-c469-45cc-a783-bdacdf36d9c9","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:25.616","msg":"Decrypt requested","reqID":"38d470bb-bba7-440a-97e8-b07bc98df09d","deadline":"2022-07-28T03:01:00Z"}
{"level":"info","time":"2022-07-28T03:00:25.616","msg":"Decrypt successful","reqID":"38d470bb-bba7-440a-97e8-b07bc98df09d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:00:36.864","msg":"Encrypt requested","reqID":"c90ba0f0-a861-4894-896e-03005e13329f","deadline":"2022-07-28T03:01:11Z"}
{"level":"info","time":"2022-07-28T03:00:36.865","msg":"Encrypt successful","reqID":"c90ba0f0-a861-4894-896e-03005e13329f"}
{"level":"info","time":"2022-07-28T03:00:36.865","msg":"Decrypt requested","reqID":"49ac6e89-4fb8-450a-9576-c01e0716cb62","deadline":"2022-07-28T03:01:11Z"}
{"level":"info","time":"2022-07-28T03:00:36.865","msg":"Decrypt successful","reqID":"49ac6e89-4fb8-450a-9576-c01e0716cb62","KPVersion":1}
{"level":"debug","time":"2022-07-28T03:01:06.860","msg":"Processing liveness check..."}
{"level":"info","time":"2022-07-28T03:01:06.861","msg":"Returning Version info.","Version":"v1beta1","RuntimeName":"IBM KeyProtect KMS Provider","RuntimeVersion":"0.0.1"}
{"level":"info","time":"2022-07-28T03:01:06.861","msg":"Liveness check successful"}
{"level":"debug","time":"2022-07-28T03:01:06.861","msg":"Passed check","type":"liveness"}
{"level":"info","time":"2022-07-28T03:01:06.864","msg":"Encrypt requested","reqID":"899f36db-640d-4722-bfa9-5d6ca51dd533","deadline":"2022-07-28T03:01:41Z"}
{"level":"info","time":"2022-07-28T03:01:06.864","msg":"Encrypt successful","reqID":"899f36db-640d-4722-bfa9-5d6ca51dd533"}
{"level":"info","time":"2022-07-28T03:01:06.864","msg":"Decrypt requested","reqID":"91dada13-1a91-4477-9806-30827714576a","deadline":"2022-07-28T03:01:41Z"}
{"level":"info","time":"2022-07-28T03:01:06.865","msg":"Decrypt successful","reqID":"91dada13-1a91-4477-9806-30827714576a","KPVersion":1}
{"level":"info","time":"2022-07-28T03:01:13.508","msg":"Go Stats","Routines":12,"Alloc":1936384,"TotalAlloc":8731800,"HeapAlloc":1936384,"HeapSys":7831552,"Last GC":"2022-07-28T03:00:36Z"}
{"level":"info","time":"2022-07-28T03:01:13.678","msg":"KMS provider endpoint check was successful","url":"https://qa.us-south.kms.test.cloud.ibm.com"}
{"level":"info","time":"2022-07-28T03:01:36.864","msg":"Encrypt requested","reqID":"011b5af3-e9a8-4dc2-884b-d008e2f82ebf","deadline":"2022-07-28T03:02:11Z"}
{"level":"info","time":"2022-07-28T03:01:36.864","msg":"Encrypt successful","reqID":"011b5af3-e9a8-4dc2-884b-d008e2f82ebf"}
{"level":"info","time":"2022-07-28T03:01:36.865","msg":"Decrypt requested","reqID":"671fc325-e388-47ae-832d-8438d09483ce","deadline":"2022-07-28T03:02:11Z"}
{"level":"info","time":"2022-07-28T03:01:36.865","msg":"Decrypt successful","reqID":"671fc325-e388-47ae-832d-8438d09483ce","KPVersion":1}
{"level":"info","time":"2022-07-28T03:02:06.864","msg":"Encrypt requested","reqID":"cd7eade2-3413-4996-9aac-f8c092da7d68","deadline":"2022-07-28T03:02:41Z"}
{"level":"info","time":"2022-07-28T03:02:06.864","msg":"Encrypt successful","reqID":"cd7eade2-3413-4996-9aac-f8c092da7d68"}
{"level":"info","time":"2022-07-28T03:02:06.864","msg":"Decrypt requested","reqID":"7573d4b5-0b4c-47ac-a727-296d1de7fc57","deadline":"2022-07-28T03:02:41Z"}
{"level":"info","time":"2022-07-28T03:02:06.864","msg":"Decrypt successful","reqID":"7573d4b5-0b4c-47ac-a727-296d1de7fc57","KPVersion":1}
{"level":"info","time":"2022-07-28T03:02:25.045","msg":"Decrypt requested","reqID":"34815f22-9a8d-4bc7-844f-460c8b124c4e","deadline":"2022-07-28T03:03:00Z"}
{"level":"info","time":"2022-07-28T03:02:25.045","msg":"Decrypt successful","reqID":"34815f22-9a8d-4bc7-844f-460c8b124c4e","KPVersion":1}
{"level":"info","time":"2022-07-28T03:02:36.864","msg":"Encrypt requested","reqID":"f36c9833-aa1f-48f0-97f6-403bd491ecc3","deadline":"2022-07-28T03:03:11Z"}
{"level":"info","time":"2022-07-28T03:02:36.864","msg":"Encrypt successful","reqID":"f36c9833-aa1f-48f0-97f6-403bd491ecc3"}
{"level":"info","time":"2022-07-28T03:02:36.864","msg":"Decrypt requested","reqID":"6bbb85f9-40d1-4e89-aa72-0f0cbe32e3ab","deadline":"2022-07-28T03:03:11Z"}
{"level":"info","time":"2022-07-28T03:02:36.864","msg":"Decrypt successful","reqID":"6bbb85f9-40d1-4e89-aa72-0f0cbe32e3ab","KPVersion":1}
{"level":"info","time":"2022-07-28T03:03:06.864","msg":"Encrypt requested","reqID":"7466c938-5f94-4584-b739-773d01a8afb0","deadline":"2022-07-28T03:03:41Z"}
{"level":"info","time":"2022-07-28T03:03:06.864","msg":"Encrypt successful","reqID":"7466c938-5f94-4584-b739-773d01a8afb0"}
{"level":"info","time":"2022-07-28T03:03:06.865","msg":"Decrypt requested","reqID":"daf42f70-b766-4d49-875b-16542c10106d","deadline":"2022-07-28T03:03:41Z"}
{"level":"info","time":"2022-07-28T03:03:06.865","msg":"Decrypt successful","reqID":"daf42f70-b766-4d49-875b-16542c10106d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:03:36.864","msg":"Encrypt requested","reqID":"62c5def5-d13d-4b0d-ba22-d9b0b470f9c7","deadline":"2022-07-28T03:04:11Z"}
{"level":"info","time":"2022-07-28T03:03:36.864","msg":"Encrypt successful","reqID":"62c5def5-d13d-4b0d-ba22-d9b0b470f9c7"}
{"level":"info","time":"2022-07-28T03:03:36.865","msg":"Decrypt requested","reqID":"8f142bcd-9177-4c38-b705-f2b1917ec379","deadline":"2022-07-28T03:04:11Z"}
{"level":"info","time":"2022-07-28T03:03:36.865","msg":"Decrypt successful","reqID":"8f142bcd-9177-4c38-b705-f2b1917ec379","KPVersion":1}
{"level":"info","time":"2022-07-28T03:04:06.863","msg":"Encrypt requested","reqID":"ac59b7d7-31c5-43ba-8555-0751582907db","deadline":"2022-07-28T03:04:41Z"}
{"level":"info","time":"2022-07-28T03:04:06.863","msg":"Encrypt successful","reqID":"ac59b7d7-31c5-43ba-8555-0751582907db"}
{"level":"info","time":"2022-07-28T03:04:06.863","msg":"Decrypt requested","reqID":"1d08d4f0-dd9c-4a8e-bd3d-6b5790ebb7c9","deadline":"2022-07-28T03:04:41Z"}
{"level":"info","time":"2022-07-28T03:04:06.863","msg":"Decrypt successful","reqID":"1d08d4f0-dd9c-4a8e-bd3d-6b5790ebb7c9","KPVersion":1}
{"level":"info","time":"2022-07-28T03:04:36.864","msg":"Encrypt requested","reqID":"2585bf88-5f44-4890-be1b-5ef6c2aa375c","deadline":"2022-07-28T03:05:11Z"}
{"level":"info","time":"2022-07-28T03:04:36.864","msg":"Encrypt successful","reqID":"2585bf88-5f44-4890-be1b-5ef6c2aa375c"}
{"level":"info","time":"2022-07-28T03:04:36.864","msg":"Decrypt requested","reqID":"7cf8c857-ac69-497c-ac5f-63220016aad0","deadline":"2022-07-28T03:05:11Z"}
{"level":"info","time":"2022-07-28T03:04:36.864","msg":"Decrypt successful","reqID":"7cf8c857-ac69-497c-ac5f-63220016aad0","KPVersion":1}
{"level":"info","time":"2022-07-28T03:05:06.867","msg":"Encrypt requested","reqID":"47f1ea49-80f8-46f3-b02a-316e24bbc02e","deadline":"2022-07-28T03:05:41Z"}
{"level":"info","time":"2022-07-28T03:05:06.867","msg":"Encrypt successful","reqID":"47f1ea49-80f8-46f3-b02a-316e24bbc02e"}
{"level":"info","time":"2022-07-28T03:05:06.868","msg":"Decrypt requested","reqID":"688d4d6d-80e5-4c0e-98f6-12aee3a243a5","deadline":"2022-07-28T03:05:41Z"}
{"level":"info","time":"2022-07-28T03:05:06.869","msg":"Decrypt successful","reqID":"688d4d6d-80e5-4c0e-98f6-12aee3a243a5","KPVersion":1}
{"level":"info","time":"2022-07-28T03:05:36.864","msg":"Encrypt requested","reqID":"557d0bb7-397e-4c8b-99ea-c79f61be37f0","deadline":"2022-07-28T03:06:11Z"}
{"level":"info","time":"2022-07-28T03:05:36.864","msg":"Encrypt successful","reqID":"557d0bb7-397e-4c8b-99ea-c79f61be37f0"}
{"level":"info","time":"2022-07-28T03:05:36.865","msg":"Decrypt requested","reqID":"ed1c7eb7-aba1-43cb-a5a9-7c924ece2e6a","deadline":"2022-07-28T03:06:11Z"}
{"level":"info","time":"2022-07-28T03:05:36.865","msg":"Decrypt successful","reqID":"ed1c7eb7-aba1-43cb-a5a9-7c924ece2e6a","KPVersion":1}
{"level":"debug","time":"2022-07-28T03:06:06.859","msg":"Processing liveness check..."}
{"level":"info","time":"2022-07-28T03:06:06.860","msg":"Returning Version info.","Version":"v1beta1","RuntimeName":"IBM KeyProtect KMS Provider","RuntimeVersion":"0.0.1"}
{"level":"info","time":"2022-07-28T03:06:06.860","msg":"Liveness check successful"}
{"level":"debug","time":"2022-07-28T03:06:06.860","msg":"Passed check","type":"liveness"}
{"level":"info","time":"2022-07-28T03:06:06.863","msg":"Encrypt requested","reqID":"dd0df154-1360-4361-b5d0-42e76ed8af7a","deadline":"2022-07-28T03:06:41Z"}
{"level":"info","time":"2022-07-28T03:06:06.863","msg":"Encrypt successful","reqID":"dd0df154-1360-4361-b5d0-42e76ed8af7a"}
{"level":"info","time":"2022-07-28T03:06:06.864","msg":"Decrypt requested","reqID":"d0880978-7f5c-458b-900b-a6903a266558","deadline":"2022-07-28T03:06:41Z"}
{"level":"info","time":"2022-07-28T03:06:06.864","msg":"Decrypt successful","reqID":"d0880978-7f5c-458b-900b-a6903a266558","KPVersion":1}
{"level":"info","time":"2022-07-28T03:06:13.508","msg":"Go Stats","Routines":12,"Alloc":1995784,"TotalAlloc":9451264,"HeapAlloc":1995784,"HeapSys":7766016,"Last GC":"2022-07-28T03:05:06Z"}
{"level":"info","time":"2022-07-28T03:06:13.715","msg":"KMS provider endpoint check was successful","url":"https://qa.us-south.kms.test.cloud.ibm.com"}
{"level":"info","time":"2022-07-28T03:06:36.868","msg":"Encrypt requested","reqID":"e7940037-0e91-42e8-9527-d99b5f8210d3","deadline":"2022-07-28T03:07:11Z"}
{"level":"info","time":"2022-07-28T03:06:36.869","msg":"Encrypt successful","reqID":"e7940037-0e91-42e8-9527-d99b5f8210d3"}
{"level":"info","time":"2022-07-28T03:06:36.870","msg":"Decrypt requested","reqID":"d7684ca6-6dbb-4177-ae2b-c2d5d8e370dd","deadline":"2022-07-28T03:07:11Z"}
{"level":"info","time":"2022-07-28T03:06:36.870","msg":"Decrypt successful","reqID":"d7684ca6-6dbb-4177-ae2b-c2d5d8e370dd","KPVersion":1}
{"level":"info","time":"2022-07-28T03:07:06.864","msg":"Encrypt requested","reqID":"6686add4-4369-408e-86d6-06d335b6634b","deadline":"2022-07-28T03:07:41Z"}
{"level":"info","time":"2022-07-28T03:07:06.864","msg":"Encrypt successful","reqID":"6686add4-4369-408e-86d6-06d335b6634b"}
{"level":"info","time":"2022-07-28T03:07:06.864","msg":"Decrypt requested","reqID":"08791d04-d7ee-4388-91b1-1d9befe9a980","deadline":"2022-07-28T03:07:41Z"}
{"level":"info","time":"2022-07-28T03:07:06.864","msg":"Decrypt successful","reqID":"08791d04-d7ee-4388-91b1-1d9befe9a980","KPVersion":1}
{"level":"info","time":"2022-07-28T03:07:36.866","msg":"Encrypt requested","reqID":"07fdc4b5-a959-4ccd-998c-87894efa8763","deadline":"2022-07-28T03:08:11Z"}
{"level":"info","time":"2022-07-28T03:07:36.866","msg":"Encrypt successful","reqID":"07fdc4b5-a959-4ccd-998c-87894efa8763"}
{"level":"info","time":"2022-07-28T03:07:36.867","msg":"Decrypt requested","reqID":"c1d6fbee-2148-45fc-b091-7115e7530426","deadline":"2022-07-28T03:08:11Z"}
{"level":"info","time":"2022-07-28T03:07:36.867","msg":"Decrypt successful","reqID":"c1d6fbee-2148-45fc-b091-7115e7530426","KPVersion":1}
{"level":"info","time":"2022-07-28T03:07:42.945","msg":"Encrypt requested","reqID":"aaf74e4a-7454-4c11-a042-a76776b3b985","deadline":"2022-07-28T03:08:17Z"}
{"level":"info","time":"2022-07-28T03:07:42.946","msg":"Encrypt successful","reqID":"aaf74e4a-7454-4c11-a042-a76776b3b985"}
{"level":"info","time":"2022-07-28T03:08:01.451","msg":"Encrypt requested","reqID":"51882f54-971c-4996-83ad-a971da2a0d34","deadline":"2022-07-28T03:08:36Z"}
{"level":"info","time":"2022-07-28T03:08:01.451","msg":"Encrypt successful","reqID":"51882f54-971c-4996-83ad-a971da2a0d34"}
{"level":"info","time":"2022-07-28T03:08:03.833","msg":"Encrypt requested","reqID":"b31c1810-faec-4e9f-9796-950726d1ee91","deadline":"2022-07-28T03:08:38Z"}
{"level":"info","time":"2022-07-28T03:08:03.833","msg":"Encrypt successful","reqID":"b31c1810-faec-4e9f-9796-950726d1ee91"}
{"level":"info","time":"2022-07-28T03:08:03.834","msg":"Decrypt requested","reqID":"7640f771-13d6-42d3-9104-9af35953fb8d","deadline":"2022-07-28T03:08:38Z"}
{"level":"info","time":"2022-07-28T03:08:03.834","msg":"Decrypt successful","reqID":"7640f771-13d6-42d3-9104-9af35953fb8d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:08:23.862","msg":"Encrypt requested","reqID":"925894af-1509-4a6d-b00b-88bcea45a71a","deadline":"2022-07-28T03:08:58Z"}
{"level":"info","time":"2022-07-28T03:08:23.862","msg":"Encrypt successful","reqID":"925894af-1509-4a6d-b00b-88bcea45a71a"}
{"level":"info","time":"2022-07-28T03:08:23.862","msg":"Decrypt requested","reqID":"3d0c4179-f387-49c2-8077-3427790e7a8f","deadline":"2022-07-28T03:08:58Z"}
{"level":"info","time":"2022-07-28T03:08:23.863","msg":"Decrypt successful","reqID":"3d0c4179-f387-49c2-8077-3427790e7a8f","KPVersion":1}
{"level":"info","time":"2022-07-28T03:08:43.883","msg":"Encrypt requested","reqID":"35e9f35f-ee88-4411-addd-8a8d01a2f898","deadline":"2022-07-28T03:09:18Z"}
{"level":"info","time":"2022-07-28T03:08:43.883","msg":"Encrypt successful","reqID":"35e9f35f-ee88-4411-addd-8a8d01a2f898"}
{"level":"info","time":"2022-07-28T03:08:43.883","msg":"Decrypt requested","reqID":"5346c1b0-1dac-48a7-adbe-5c25e66ef16d","deadline":"2022-07-28T03:09:18Z"}
{"level":"info","time":"2022-07-28T03:08:43.884","msg":"Decrypt successful","reqID":"5346c1b0-1dac-48a7-adbe-5c25e66ef16d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:09:03.905","msg":"Encrypt requested","reqID":"8a0a7b35-c545-4660-b7f4-a458b661bbe3","deadline":"2022-07-28T03:09:38Z"}
{"level":"info","time":"2022-07-28T03:09:03.905","msg":"Encrypt successful","reqID":"8a0a7b35-c545-4660-b7f4-a458b661bbe3"}
{"level":"info","time":"2022-07-28T03:09:03.906","msg":"Decrypt requested","reqID":"ed08c0d3-ed87-4b3d-8620-305c47b88c09","deadline":"2022-07-28T03:09:38Z"}
{"level":"info","time":"2022-07-28T03:09:03.906","msg":"Decrypt successful","reqID":"ed08c0d3-ed87-4b3d-8620-305c47b88c09","KPVersion":1}
{"level":"info","time":"2022-07-28T03:09:23.926","msg":"Encrypt requested","reqID":"7e53fdf3-754f-4df2-a105-98e06289565a","deadline":"2022-07-28T03:09:58Z"}
{"level":"info","time":"2022-07-28T03:09:23.926","msg":"Encrypt successful","reqID":"7e53fdf3-754f-4df2-a105-98e06289565a"}
{"level":"info","time":"2022-07-28T03:09:23.926","msg":"Decrypt requested","reqID":"cd96336a-b05e-46b4-b0f1-5f990d7ff215","deadline":"2022-07-28T03:09:58Z"}
{"level":"info","time":"2022-07-28T03:09:23.926","msg":"Decrypt successful","reqID":"cd96336a-b05e-46b4-b0f1-5f990d7ff215","KPVersion":1}
{"level":"info","time":"2022-07-28T03:09:43.946","msg":"Encrypt requested","reqID":"45abe6b2-6d34-4940-b6e4-3b7c37174004","deadline":"2022-07-28T03:10:18Z"}
{"level":"info","time":"2022-07-28T03:09:43.946","msg":"Encrypt successful","reqID":"45abe6b2-6d34-4940-b6e4-3b7c37174004"}
{"level":"info","time":"2022-07-28T03:09:43.947","msg":"Decrypt requested","reqID":"6d99afb9-747a-4a2e-9186-b716e54180db","deadline":"2022-07-28T03:10:18Z"}
{"level":"info","time":"2022-07-28T03:09:43.947","msg":"Decrypt successful","reqID":"6d99afb9-747a-4a2e-9186-b716e54180db","KPVersion":1}
{"level":"info","time":"2022-07-28T03:10:03.965","msg":"Encrypt requested","reqID":"b0682caf-0e01-4fb8-9872-2e8409420eba","deadline":"2022-07-28T03:10:38Z"}
{"level":"info","time":"2022-07-28T03:10:03.965","msg":"Encrypt successful","reqID":"b0682caf-0e01-4fb8-9872-2e8409420eba"}
{"level":"info","time":"2022-07-28T03:10:03.966","msg":"Decrypt requested","reqID":"5c3b064e-23bb-4ce2-8d08-d7289bbe8935","deadline":"2022-07-28T03:10:38Z"}
{"level":"info","time":"2022-07-28T03:10:03.966","msg":"Decrypt successful","reqID":"5c3b064e-23bb-4ce2-8d08-d7289bbe8935","KPVersion":1}
{"level":"info","time":"2022-07-28T03:10:23.982","msg":"Encrypt requested","reqID":"be59459e-93e5-406a-a8c2-1dbc13c74734","deadline":"2022-07-28T03:10:58Z"}
{"level":"info","time":"2022-07-28T03:10:23.982","msg":"Encrypt successful","reqID":"be59459e-93e5-406a-a8c2-1dbc13c74734"}
{"level":"info","time":"2022-07-28T03:10:23.982","msg":"Decrypt requested","reqID":"7b1631df-a64b-4b2d-83a2-d8a30ca972b9","deadline":"2022-07-28T03:10:58Z"}
{"level":"info","time":"2022-07-28T03:10:23.982","msg":"Decrypt successful","reqID":"7b1631df-a64b-4b2d-83a2-d8a30ca972b9","KPVersion":1}
{"level":"info","time":"2022-07-28T03:10:44.000","msg":"Encrypt requested","reqID":"8809a2e5-3178-496f-aea0-cde6852820b9","deadline":"2022-07-28T03:11:19Z"}
{"level":"info","time":"2022-07-28T03:10:44.000","msg":"Encrypt successful","reqID":"8809a2e5-3178-496f-aea0-cde6852820b9"}
{"level":"info","time":"2022-07-28T03:10:44.001","msg":"Decrypt requested","reqID":"ac33a488-8252-4a1c-add4-fd7aea733aeb","deadline":"2022-07-28T03:11:19Z"}
{"level":"info","time":"2022-07-28T03:10:44.001","msg":"Decrypt successful","reqID":"ac33a488-8252-4a1c-add4-fd7aea733aeb","KPVersion":1}
{"level":"info","time":"2022-07-28T03:11:04.021","msg":"Encrypt requested","reqID":"e2b8a521-0eed-4ae6-bce4-416b1b3192c0","deadline":"2022-07-28T03:11:39Z"}
{"level":"info","time":"2022-07-28T03:11:04.021","msg":"Encrypt successful","reqID":"e2b8a521-0eed-4ae6-bce4-416b1b3192c0"}
{"level":"info","time":"2022-07-28T03:11:04.021","msg":"Decrypt requested","reqID":"fc93d329-6c0f-40bb-a3a3-0c3317927103","deadline":"2022-07-28T03:11:39Z"}
{"level":"info","time":"2022-07-28T03:11:04.021","msg":"Decrypt successful","reqID":"fc93d329-6c0f-40bb-a3a3-0c3317927103","KPVersion":1}
{"level":"debug","time":"2022-07-28T03:11:06.860","msg":"Processing liveness check..."}
{"level":"info","time":"2022-07-28T03:11:06.863","msg":"Returning Version info.","Version":"v1beta1","RuntimeName":"IBM KeyProtect KMS Provider","RuntimeVersion":"0.0.1"}
{"level":"info","time":"2022-07-28T03:11:06.863","msg":"Liveness check successful"}
{"level":"debug","time":"2022-07-28T03:11:06.863","msg":"Passed check","type":"liveness"}
{"level":"info","time":"2022-07-28T03:11:13.507","msg":"Go Stats","Routines":12,"Alloc":2065320,"TotalAlloc":10269256,"HeapAlloc":2065320,"HeapSys":7766016,"Last GC":"2022-07-28T03:09:43Z"}
{"level":"info","time":"2022-07-28T03:11:13.680","msg":"KMS provider endpoint check was successful","url":"https://qa.us-south.kms.test.cloud.ibm.com"}
{"level":"info","time":"2022-07-28T03:11:24.050","msg":"Encrypt requested","reqID":"d7455416-160f-492d-bf21-d48d574a2a90","deadline":"2022-07-28T03:11:59Z"}
{"level":"info","time":"2022-07-28T03:11:24.050","msg":"Encrypt successful","reqID":"d7455416-160f-492d-bf21-d48d574a2a90"}
{"level":"info","time":"2022-07-28T03:11:24.050","msg":"Decrypt requested","reqID":"1b6b104d-487c-4d34-b7c7-45d2a0d8a79d","deadline":"2022-07-28T03:11:59Z"}
{"level":"info","time":"2022-07-28T03:11:24.050","msg":"Decrypt successful","reqID":"1b6b104d-487c-4d34-b7c7-45d2a0d8a79d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:11:44.069","msg":"Encrypt requested","reqID":"97c2b6a6-ec70-45cc-985f-c26cbf7469f9","deadline":"2022-07-28T03:12:19Z"}
{"level":"info","time":"2022-07-28T03:11:44.069","msg":"Encrypt successful","reqID":"97c2b6a6-ec70-45cc-985f-c26cbf7469f9"}
{"level":"info","time":"2022-07-28T03:11:44.069","msg":"Decrypt requested","reqID":"cf222063-5806-4fe8-a36e-5dd05430c9d8","deadline":"2022-07-28T03:12:19Z"}
{"level":"info","time":"2022-07-28T03:11:44.069","msg":"Decrypt successful","reqID":"cf222063-5806-4fe8-a36e-5dd05430c9d8","KPVersion":1}
{"level":"info","time":"2022-07-28T03:12:04.092","msg":"Encrypt requested","reqID":"d01d839f-d7a6-474e-b794-a0d6b2f9bffb","deadline":"2022-07-28T03:12:39Z"}
{"level":"info","time":"2022-07-28T03:12:04.092","msg":"Encrypt successful","reqID":"d01d839f-d7a6-474e-b794-a0d6b2f9bffb"}
{"level":"info","time":"2022-07-28T03:12:04.093","msg":"Decrypt requested","reqID":"6ce86c7b-5141-48f5-aaf2-9d8f8f3666a7","deadline":"2022-07-28T03:12:39Z"}
{"level":"info","time":"2022-07-28T03:12:04.093","msg":"Decrypt successful","reqID":"6ce86c7b-5141-48f5-aaf2-9d8f8f3666a7","KPVersion":1}
{"level":"info","time":"2022-07-28T03:12:24.114","msg":"Encrypt requested","reqID":"cf46beb9-7015-48fb-987f-aaee70808253","deadline":"2022-07-28T03:12:59Z"}
{"level":"info","time":"2022-07-28T03:12:24.114","msg":"Encrypt successful","reqID":"cf46beb9-7015-48fb-987f-aaee70808253"}
{"level":"info","time":"2022-07-28T03:12:24.114","msg":"Decrypt requested","reqID":"cc75fd5b-1112-4c31-99fb-7ae57f47d1d6","deadline":"2022-07-28T03:12:59Z"}
{"level":"info","time":"2022-07-28T03:12:24.115","msg":"Decrypt successful","reqID":"cc75fd5b-1112-4c31-99fb-7ae57f47d1d6","KPVersion":1}
{"level":"info","time":"2022-07-28T03:12:25.018","msg":"Encrypt requested","reqID":"722b26cd-4368-4ffb-b25b-428c3d27bd54","deadline":"2022-07-28T03:13:00Z"}
{"level":"info","time":"2022-07-28T03:12:25.018","msg":"Encrypt successful","reqID":"722b26cd-4368-4ffb-b25b-428c3d27bd54"}
{"level":"info","time":"2022-07-28T03:12:43.575","msg":"Encrypt requested","reqID":"74d3400e-7015-41a6-b1cd-7e4dce462362","deadline":"2022-07-28T03:13:18Z"}
{"level":"info","time":"2022-07-28T03:12:43.575","msg":"Encrypt successful","reqID":"74d3400e-7015-41a6-b1cd-7e4dce462362"}
{"level":"info","time":"2022-07-28T03:12:44.136","msg":"Encrypt requested","reqID":"57d9e783-d6de-4785-9454-c892ee7218a1","deadline":"2022-07-28T03:13:19Z"}
{"level":"info","time":"2022-07-28T03:12:44.136","msg":"Encrypt successful","reqID":"57d9e783-d6de-4785-9454-c892ee7218a1"}
{"level":"info","time":"2022-07-28T03:12:44.136","msg":"Decrypt requested","reqID":"f260699c-8fd6-4f6f-b4ae-a8d1ce540834","deadline":"2022-07-28T03:13:19Z"}
{"level":"info","time":"2022-07-28T03:12:44.136","msg":"Decrypt successful","reqID":"f260699c-8fd6-4f6f-b4ae-a8d1ce540834","KPVersion":1}
{"level":"info","time":"2022-07-28T03:13:04.159","msg":"Encrypt requested","reqID":"2c604d42-5feb-4b1f-9f26-7cf0ac49ab4c","deadline":"2022-07-28T03:13:39Z"}
{"level":"info","time":"2022-07-28T03:13:04.159","msg":"Encrypt successful","reqID":"2c604d42-5feb-4b1f-9f26-7cf0ac49ab4c"}
{"level":"info","time":"2022-07-28T03:13:04.159","msg":"Decrypt requested","reqID":"e851dbf4-4243-4017-81af-b3aead4bab9d","deadline":"2022-07-28T03:13:39Z"}
{"level":"info","time":"2022-07-28T03:13:04.159","msg":"Decrypt successful","reqID":"e851dbf4-4243-4017-81af-b3aead4bab9d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:13:24.182","msg":"Encrypt requested","reqID":"2db20df1-1c3c-42cf-a16f-a68c0e503601","deadline":"2022-07-28T03:13:59Z"}
{"level":"info","time":"2022-07-28T03:13:24.182","msg":"Encrypt successful","reqID":"2db20df1-1c3c-42cf-a16f-a68c0e503601"}
{"level":"info","time":"2022-07-28T03:13:24.182","msg":"Decrypt requested","reqID":"45c45548-5d7e-4e13-b3d8-23b98cb7851d","deadline":"2022-07-28T03:13:59Z"}
{"level":"info","time":"2022-07-28T03:13:24.183","msg":"Decrypt successful","reqID":"45c45548-5d7e-4e13-b3d8-23b98cb7851d","KPVersion":1}
{"level":"info","time":"2022-07-28T03:14:06.865","msg":"Encrypt requested","reqID":"0bdbc567-0558-4f4a-9af4-955338d5f11e","deadline":"2022-07-28T03:14:41Z"}
{"level":"info","time":"2022-07-28T03:14:06.865","msg":"Encrypt successful","reqID":"0bdbc567-0558-4f4a-9af4-955338d5f11e"}
{"level":"info","time":"2022-07-28T03:14:06.865","msg":"Decrypt requested","reqID":"8af8ff12-f8b1-4ec1-b911-edf565c1cfa1","deadline":"2022-07-28T03:14:41Z"}
{"level":"info","time":"2022-07-28T03:14:06.866","msg":"Decrypt successful","reqID":"8af8ff12-f8b1-4ec1-b911-edf565c1cfa1","KPVersion":1}
{"level":"info","time":"2022-07-28T03:14:36.863","msg":"Encrypt requested","reqID":"2fd3b43a-d7b2-47e6-99de-7cfb4eb06235","deadline":"2022-07-28T03:15:11Z"}
{"level":"info","time":"2022-07-28T03:14:36.863","msg":"Encrypt successful","reqID":"2fd3b43a-d7b2-47e6-99de-7cfb4eb06235"}
{"level":"info","time":"2022-07-28T03:14:36.864","msg":"Decrypt requested","reqID":"1606b7d6-c05b-4e40-a99c-eeca20da3daf","deadline":"2022-07-28T03:15:11Z"}
{"level":"info","time":"2022-07-28T03:14:36.864","msg":"Decrypt successful","reqID":"1606b7d6-c05b-4e40-a99c-eeca20da3daf","KPVersion":1}
{"level":"info","time":"2022-07-28T03:15:06.864","msg":"Encrypt requested","reqID":"1457f63f-c955-4610-bfa6-9fffc0abc13e","deadline":"2022-07-28T03:15:41Z"}
{"level":"info","time":"2022-07-28T03:15:06.864","msg":"Encrypt successful","reqID":"1457f63f-c955-4610-bfa6-9fffc0abc13e"}
{"level":"info","time":"2022-07-28T03:15:06.865","msg":"Decrypt requested","reqID":"5253fbd4-e194-44ef-b170-02cf8767a865","deadline":"2022-07-28T03:15:41Z"}
{"level":"info","time":"2022-07-28T03:15:06.865","msg":"Decrypt successful","reqID":"5253fbd4-e194-44ef-b170-02cf8767a865","KPVersion":1}

apiVersion: hypershift.openshift.io/v1alpha1
kind: HostedCluster
metadata:

....
  finalizers:
  - hypershift.openshift.io/finalizer
  generation: 5
  labels:
    clusterid: cbf1v8k105f9i9sikmg0
  name: cbf1v8k105f9i9sikmg0
  namespace: master
  resourceVersion: "3281474"
  uid: 6b76ede1-d0af-42f3-85af-7c0cc553e330
spec:
  autoscaling: {}
  clusterID: e7983457-b15a-458a-9f56-45235e727c09
   ...
  release:
    image: us.icr.io/armada-master/ocp-release:4.11.0-rc.4-x86_64
  secretEncryption:
    kms:
      ibmcloud:
        auth:
          type: Unmanaged
          unmanaged:
            credentials:
              name: tyler-apikey
        keyList:
        - correlationID: 47238fe3-60e8-4ec8-82db-4d7f3d548139
          crkID: 1837cb33-d3f2-4038-ae50-7ff8db5eb9c5
          instanceID: a06634f1-6e2a-497a-b9f6-b7ec8ed1c328
          keyVersion: 1
          url: https://qa.us-south.kms.test.cloud.ibm.com
        region: staging
      provider: IBMCloud
    type: kms

/unhold

/lgtm


Can not find the example code for Unity

Hello,
I have just downloaded the zip file of LeapDeveloperKit_4.0.0_52238.
But I can not find Example code as it is said on http://blog.leapmotion.com/multiple-devices/.
Could you tell me where is the code?
sincerely,

I'm facing the same issue.
Please, could you add the example code?
Sincerely

Hello,
you can find the example here:
https://github.com/leapmotion/UnityModules/tree/feat-multi-device
Look for the Multi-Device (Desktop) scene found in Assets/LeapMotion/Core/Examples
If you have errors in Unity (maybe due to a different version), as it happened to me, just delete the following folders:

Assets/LeapMotion/Experimental
Assets/LeapMotion/Modules/GraphicRenderer
I hope it was helpful


Sharing People Albums

Dear,
How can I share a People Album?
My Albums
Menu > Albums > My albums > Open an album > Click the ⋮ (three vertical dots) > Album Actions >Sharing > Choose the user(s) you want to share the album with.
People Albums
However when I do almost the same with people albums the share option isn't available.
Menu > Albums > People > Open an album > Click the ⋮ (three vertical dots) > Album Actions >Sharing NOT AVAILABLE
If there is no way, please consider this a feature request.
Thanks!

Is this hard to do? Are 'People Albums' real albums like normal ones, or are they just presented like albums in the UI (I don't know if this question makes sense)
If it's not too hard I might try implementing this myself

They are based on the person model. Add a shared_to filed like on album_user
You have to change the following views to respect shared_to
When you fetch the list of people, you use this /api/persons/.
Otherwise, you use the album date API like you usually would /api/albums/date/list/ and /api/albums/date/
You probably also have to add a new endpoint to add/remove users from sharing.
You also have to think of how to handle this here probably when working on it #632

I would also love that feature!


update time should be updated

update time should be updated accordingly
for Mooncake new services, better to go to what's new page.

@josefree : Thanks for your contribution! The author, @v-wimarc, has been notified to review your proposed change.

#sign-off


Added Status LED and Switch, Tuned PIDs

Added the status LED it:

Stays solid on during the initialisation of everything. (so if it
never turns off you have a problem here)
Starts rapidly blinking when it's in a ready state - flick the switch
and it will run CV.
It stays off when running the CV.
Flick the switch again and it will blink slower it has now paused the
CV.

Nice, the PID values hasn't changed much tho.

Something has glitched and only bits and pieces of the changed code are showing.  Will open another pull request.


ClientLoginError UberSDK

I have followed the exact implementation of Uber iOS SDK in my iOS, and made sure that Callback URI schemes are registered in the uber developer dashboard which i have used in the app. But its throwing UBSDKRidesClientError. Here is my code for the button:
UBSDKRideRequestButton *button = [[UBSDKRideRequestButton alloc] init];
UBSDKRidesClient *ridesClient = [[UBSDKRidesClient alloc] init];

__block UBSDKRideParametersBuilder *builder = [[UBSDKRideParametersBuilder alloc] init];
builder = [builder setPickupLocation: pickupLocation];
builder = [builder setDropoffLocation: dropoffLocation];
[ridesClient fetchCheapestProductWithPickupLocation: pickupLocation completion:^(UBSDKUberProduct* _Nullable product, UBSDKResponse* _Nullable response) {

    if (product) {
        builder = [builder setProductID: product.productID];
        button.rideParameters = [builder build];
        [button loadRideInformation];
    }
}];

Will appreciate any help

Hi @adeelasim, sorry to hear you're having trouble. Can you let me know what the code of your UBSDKRidesClientError is?
My initial guess is an authorization error, are you signed in while attempting this? Or do you have the UberServerToken entry in your Info.plist?

Hi, Thanks for getting back with me.
I just checked its giving me unauthorized error. I have already signed in on Uber app.
I didn't set the UberServerToken in Info.plist because its not mentioned in documentation of Uber SDK. So I have just set the UberServerToken and its working now but one thing is happening, I am already passing pickup and drop of locations as you can see in my above posted code but Uber App not pre filling the destination. Any idea why?

Sorry for the confusion about the Server Token (see #51), glad to hear it's working now. As for the destination not being populated, this is because you need to provide a nickname or formatted address for the destination (see #1). This is missing from the example, however, and needs to be updated.
I've opened #58

Thanks for the super fast help John.
It all works now!

Happy to help

Hey, just a quick question. Can i change only text color of the Uber Button to Grey?

Hey @adeelasim, happy to help but could you open a new issue? Thanks!

Hi John,
I am running into the same problem with SDK 5.0.1 , server response:
response : ({
code = unauthorized;
message = "No authentication provided.";
})
I made sure to add the UberServerToken , I did test that my token is working properly using POSTMAN using this request : https://api.uber.com/v1/estimates/time?server_token=MY_SERVER_TOKEN&start_latitude=45.49214145&start_longitude=-73.58121160
but when I use it
// Swift
let button = RideRequestButton()
let ridesClient = RidesClient()
let pickupLocation = CLLocation(latitude: 37.787654, longitude: -122.402760)
let dropoffLocation = CLLocation(latitude: 37.775200, longitude: -122.417587)
let builder = RideParametersBuilder().setPickupLocation(pickupLocation).setDropoffLocation(dropoffLocation)
ridesClient.fetchCheapestProduct(pickupLocation: pickupLocation, completion: {
product, response in
if let productID = product?.productID {
builder = builder.setProductID(productID)
button.rideParameters = builder.build()
button.loadRideInformation()
}
})
The funny thing is that it used to work fine and the RideRequestButton display estimated time & fares then starting a week or so it stopped working giving the error mention above.
As I said after reading this post I updated my plist to include UberServerToken, but no luck in making it work so far.
Thank you so much for your prompt answer, I am about to upload my Prod app to app store and it is the only thing missing.
Hakim

Hi Hakim,
Sorry to hear you're having trouble, looks like it might be some sort of
access token issue since it was working before. Have you tried signing out
and signing back in?
On Sat, Jul 30, 2016 at 4:21 PM hakimny<EMAIL_ADDRESS>wrote:

Hi John,
I am running into the same problem with SDK 5.0.1 , server response:
response : ({
code = unauthorized;
message = "No authentication provided.";
})
I made sure to add the UberServerToken , I did test that my token is
working properly using POSTMAN using this request :
https://api.uber.com/v1/estimates/time?server_token=MY_SERVER_TOKEN&start_latitude=45.49214145&start_longitude=-73.58121160
but when I use it
// Swift
let button = RideRequestButton()
let ridesClient = RidesClient()
let pickupLocation = CLLocation(latitude: 37.787654, longitude:
-122.402760)
let dropoffLocation = CLLocation(latitude: 37.775200, longitude:
-122.417587)
let builder =
RideParametersBuilder().setPickupLocation(pickupLocation).setDropoffLocation(dropoffLocation)
ridesClient.fetchCheapestProduct(pickupLocation: pickupLocation,
completion: {
product, response in
if let productID = product?.productID {
builder = builder.setProductID(productID)
button.rideParameters = builder.build()
button.loadRideInformation()
}
})
The funny thing is that it used to work fine and the RideRequestButton
display estimated time & fares then starting a week or so it stopped
working giving the error mention above.
As I said after reading this post I updated my plist to include
UberServerToken, but no luck in making it work so far.
Thank you so much for your prompt answer, I am about to upload my Prod app
to app store and it is the only thing missing.
Hakim
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/uber/rides-ios-sdk/issues/57#issuecomment-236395512,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFPJ4AsIt8qN7cG8tUwHut8BobX67Lblks5qa9xjgaJpZM4JPOjI
.

Hi John,
Yes I did and no dice still not working, I am clueless , the RideRequestWidget because the authentication failed come out blank.
Anything else you can think of?
Thx I appreciate your prompt help
Hakim

This is what I get if I tap uber rides button, I deleted my app many time just to clear anything saved on cache or NSDefaults() , but no dice. I have to point out that documentation needs to be updated, as it is getting a bit confusing.
thx for all your help

When you open the ride request widget does it prompt you for authentication? or does it just always stay blank like that?
Can you also open a separate issue for the confusion you are seeing in the documentation? Thanks

Hi John,
It stays blank like that and does not prompt for authentication.
PS: Will open a separate issue for the documentation
thx

That is strange, if it's not prompting for authentication, a bad access token must be cached somewhere. I know you said you tried deleting your app to clear everything, but could you also try explicitly calling TokenManager.deleteToken()?
Unfortunately, I'm not able to reproduce what you are seeing on my end

Hi John,
calling TokenManager.deleteToken()  did the trick , thank you so much for your help, a couple of things I learned from all this:
UberServerToken needs to be added to plist
RideRequestViewRequestingBehavior should be called with LoginManger
if only the Ride Request Widget is needed then LoginManager should be called with login Type : .Implicit as such :
let loginManager = LoginManager(loginType: .Implicit)
let requestBehavior = RideRequestViewRequestingBehavior(presentingViewController: self, loginManager: loginManager)
rideRequestButton.requestBehavior = requestBehavior

finally working the way it supposed to,
thx john for all your help
Hakim

Glad to hear things are working. The latest release should prevent the widget from getting into that weird state by automatically refreshing invalid tokens (if you have a refresh token)
Fixed in 0.5.2


Redesign table of contents to a left-anchored menu

It is now hidden on mobile, with expandable headlines instead.
The font size on mobile is reduced slightly, so headlines and text in
general will more often fit on one line.
The typography of the article title is also changed, to differentiate it
from the other headlines now that they are placed more closesly
together.
Fixes #38

Possible issue:
Scrolling in the sidebar stops unpredictably in safari sometimes. Very hard to diagnose...

Some part of this prq review has been conducted IRL because we are sitting next to each other and should be reading for our exams. Points that are being iterated on now include:

Spacing in toc
Color of toc
Size of toc
Placement of content in regard to toc


Merge release 7.6 RC3 into master

@bot-gradle test and merge

No milestone for this PR. Please set a milestone and retry.

@bot-gradle test and merge

OK, I've already triggered a build for you.


Added a suiteName parameter when instantiating a PiwikTracker to have different stores for different trackers.

I added a new parameter suiteName which can be used to distinguish between two separate trackers. This suiteName will then be passed through to the UserDefaults in which we are storing the Session and Visitor properties.
What do you think about this idea?

[ ] Add Documentation in the README
[ ] Add Documentation for the optional suiteName property
[ ] Add a CHANGELOG entry
[ ] Add Tests

Your properties could then return non-optional Date and ClientId by setting a default value when user defaults return nil.

At the same time it does make sense that there is no previousVisit stored if it is the first visit. I am not sure if a store should return values that weren't stored before. That is something I wouldn't expect. Especially if the "default" value is so loosely defined and hard to have expectation to.

Ok, I think i figured it out. Every tracker will now store settings in the UserDefault under a suite name. I added a function to migrate over all data from the UserDefaults without a suite name. This migration will be performed, if the shared tracker is configured. This way the tracker can be used as before and no data is lost.
There is currently an edge case, where if one is using the Tracker only without the singleton and then changes to using the singleton, all stored data will be overridden by nil values. That is a case I will prevent.
Beside of it, I am not sure if this is the best version.
Pros:

Clean code

Cons:

Custom migration code
If a developer is using multiple tracked instances with the same siteId and baseUrl they will override their data (since the store is derived from siteId and baseUrl)

This pull request has been mentioned on Piwik forums. There might be relevant details there:
https://forum.piwik.org/t/ios-multiple-trackers-multiple-sites/26433/2

I updated this code, removed the shared instance, and added a manual migration step instead. The downside of this solution is that one might lose their users session data if the migration step is forgotten. But still, I think this is a step in the right direction.


Implement DirectoryService

In #92 I added the following interface:
https://github.com/hhu-propra2/abschlussprojekt-mopse/blob/b8eda92d0763cbab67b3de46835e357323ee7552/src/main/java/mops/businesslogic/DirectoryService.java#L8-L54

The signature of uploadFile also needs to somehow take the actual file data. @realemx  knows how.

The signature of uploadFile also needs to somehow take the actual file data. @realemx knows how.

I think this is a java.nio.file.Files, isn't it?


Add Http2TranslatedHttpContent for correct handling of StreamID

Motivation:
HttpToHttp2ConnectionHandler translates HTTP/1.1 objects to HTTP/2 frames but when multiple HttpContent are sent for multiple streams, HttpToHttp2ConnectionHandler apply wrong currentStreamId to HTTP/2 stream.
Modification:
I added Http2TranslatedHttpContent which holds ByteBuf and StreamID.
Result:
Fixes #10742

These classes are not used anywhere. And why is the inheritance hierarchy made so deep?

These class are used by HttpToHttp2ConnectionHandler. I wanted to build this on top of DefaultHttpContent so went deep. Do you have suggestions on this?

Will open fresh PR.


Add Holidays for Liechtenstien (country)

It would be great if you could add Liechtenstien.
  # Holidays Every Year same date 2022
  - '2022-01-01' #Neujahrstag
  - '2022-01-02' #Berchtoldstag
  - '2022-01-06' #Heilige Drei Konige
  - '2022-02-02' #Lichtmess
  - '2022-03-19' #Joseftag
  - '2022-05-01' #Tag der Arbeit
  - '2022-08-15' #Furstenfest (Staatsfeiertag)
  - '2022-09-08' #Maria Geburt
  - '2022-11-01' #Allerheiligen
  - '2022-12-08' #Maria Empfagnis
  - '2022-12-24' #Heiligabned
  - '2022-12-25' #1. Weihnachtstag
  - '2022-12-26' #2. Weihnachtstag
  - '2022-12-31' #Silvester
  # Holidays 2022
  - '2022-03-01' #Fasnachtsdienstag - https://en.wikipedia.org/wiki/Shrove_Tuesday
  - '2022-04-15' #Karfreitag
  - '2022-04-17' #Ostersonntag
  - '2022-04-18' #Ostermontag
  - '2022-05-26' #Christi Himmelfahrt
  - '2022-06-05' #Pfingstsonntag
  - '2022-06-06' #Pfingstmontag
  - '2022-06-16' #Fronleichnam

@gerdschadler and @dr-prodigy, I would like to contribute here.
The clarification needed is, the holidays listed are not matching to the list provided in the below link.
https://tourismus.li/en/our-country/about-liechtenstein/bank-holidays-in-liechtenstein/
May I know the trusted website to refer for the holidays and then to add in our holidays library.

@PriyabrataSamantaray - Correct... here
You're right. Here's an explanation.
In addition to the statutory public holidays, there are two other public holidays that can be considered paid public holidays on the basis of collective labor agreements between individual professional groups.
Candlemas February 2nd
Josefi March 19
In addition, the following public holidays are considered bank holidays* across the country
Berchtold's Day January 2nd
Shrove Tuesday 47 days before Easter
Good Friday Friday before Easter
Christmas Eve December 24th
New Year's Eve December 31st

https://www.llb.li/en/contact/bank-holidays

Thanks @gerdschadler for the clarification, I'll work on this issue and update here once it is ready for beta version.

Completed by @kasya , merged in beta. Closing, thx everyone


INT-2211 added inner gateway support to ServiceActivator

A couple points:

if we really want to support any element that can create a "bean" as an inner element, then perhaps we should be more flexible in the XSD, meaning not only listing  but allowing any sub-element type. Parsing would also need to change to support that.

The current error message in AbstractDelegatingConsumerEndpointParser mentions "or '' is required", but that same class is used for other types besides service-activator. So, that message is misleading if someone is, say, configuring a . We need to either make the message less specific or decide that we do in fact want to allow  inside any of those other components and not just the service-activator.

My thoughts on 'any' were just thoughts, but for now I prefer to be a bit more conservative and that is why I added only 'gateway' explicitly.
So if we do want to support 'any' than I agree with your points, but not sure if we really want to do it now.
Let me know

My hesitation for adding this support was that it could be a "slippery slope" feature, but when we were debating it, the point you made to justify it was that we should allow anything that can be a bean to be added there, and the fact that it's a 'gateway' is just a detail. However, if you are hesitating to support truly anything that produces a "bean", then maybe you share the slippery slope concern after all? ;)
Can you also respond to my 2nd point above? I think that's also relevant for the slippery-ness discussion.

Yes I do share the slippery slope in some way and as far as second point although the message is misleading in he context of the router, it will never happen for the router since it is not allowed in schema. That is why I've added  explicitly for service-activator only.
The bottom line this whole issue is about this hybrid sa-gateway pattern and when doing my demos for S1 i noticed that it would be much more convenient and easier to explain if I could make gateway as inner bean of SA.
Having said all that, giving the fact that we all seem to favor adding input/output channel to the gateway I prefer that idea much more than this PR. In other words I would prefer making gateway 'invocable' not only via the interface method, but also via sending message to it and if we all agree that this is a better option, than we can scrap this PR.
wdyt?

Closing this PR in favor of a more general solution described here: https://jira.springsource.org/browse/INT-2234


Dropping Window doesn't close it (X11)

Original: https://github.com/tomaka/glutin/issues/805

The window also doesn't close when pressing the X button either, even though the Closed event does get emitted.
This is particularly evident in the multiwindow.rs example as you can press the X button on the same window 3 times to exit the loop.
I guess most folks haven't run across this in practise as

most applications have one window and
most applications probably manually break from the main loop when Closed is received, in turn exiting the program annd leaving the window for the OS to clean up.

This is my experience on the latest Gnome at least.


[Bug Report] Combination of dialog and Popover

Element UI version
1.3.6
OS/Browsers version
chrome 58.0.3029.110 (64-bit)
Vue version
2.3.4
Reproduction Link
https://jsfiddle.net/Lh5b4q43/
Steps to reproduce
After opening dialog, click the Edit button to eject popover, then the text box on the popover cannot be entered.
What is Expected?
The text box on the popover can be entered.
What is actually happening?
The text box on the popover cannot be entered.

Duplicate of #5322. Fixed in #5336


Crate does not support all IANA-registered COSE header parameters

While experimenting with this crate, I got the following error when decoding a COSE message with a x5chain header value: InvalidLabel(33).
After reviewing headers.rs, I verified that this crate only supports a subset of the IANA-registered COSE header parameters (https://www.iana.org/assignments/cose/cose.xhtml). For example, none of the x5* header parameters (x5bag, x5chain, x5u, x5t) are supported.
Are there any plans to implement support for these headers?

Yes, but only after the final development of the features specified in the COSE RFC (https://tools.ietf.org/html/rfc8152). Unfortunately, for now, I can't give an estimate of when the rest will be implemented.

Thanks for the update. Are you open to having others contribute to this project? I am interested in having a complete implementation of CoseSign1.


Not actually an issue.

Just want to report this: I tried to install OHIFViewer following Step by Step installation in Ubuntu 16.04. When git clone Viewers under /opt/Viewers as instructed was performed, a new Viewers subdirectory was created under /opt/Viewers. So I had /opt/Viewers/Viewers/OHIFViewer/. No meteor build can be made.

Thanks! I've updated the Wiki page.


snake_case naming convention support

Is your feature request related to a problem, if so please describe it.
As there is no database creation logic and the ORM is primarily Postgres it would make sense to support native naming convention, this would making building on top of existing databases easier as well.
Describe the solution you'd like
I've got a working solution here:
https://github.com/T0shik/Venflow/commit/ddb91f766509e007075f8a70f9a247fec5175965
If you want this change I can create a pull request, if you'd like this to be implemented a particular way feel free to tell me I'll change it.
Additional context (if any)
Nada

First of all, thanks for your issue and a possible implementation! I have already thought about this in the past and I totally agree with you. However, it would make sense IMO to use the existing INpgsqlNameTranslator that Npgsql already provides. There are already existing implementations even for snake_case, see here. The idea behind the INpgsqlNameTranslator is to be only used for properties/columns. Anyhow I don't see any issue, if we would use it for tables as well.

Also you were already quite right about the direction of your implementation, but instead of just injecting the name translator, lets just inject the whole Database, as this would be more future proof. This would even allow us to register PostgreSQL enums only on  a database level, but I can do this afterwards.

Additionally I'd register the INpgsqlNameTranslator through the DatabaseConfigurationOptionsBuilder rather than the DatabaseOptionsBuilder. The DatabaseOptionsBuilder get called every time on instantiation in order to allow for dynamic configuration of those supplied values. DatabaseConfigurationOptionsBuilder on the other hand will only ever be called once, which is enough for the INpgsqlNameTranslator.

If you feel like making those changes and creating a PR, I'd more than appreciate it. If you need any help, let me know.

Sounds good, I'll take a look at getting a PR ready, will get in touch if I have any questions )

opened https://github.com/TwentyFourMinutes/Venflow/pull/24

Thanks a lot for your contribution, I'll release a new version in a few days including this feature :)

happy to contribute )


No indention after the curly brace/parethesis after hitting enter

Before, when I would type functions, if statements, etc, it would indent like this:

However, now, after hitting enter, it doesnt indent inside the function anymore. Looks like this:

What happened to the indented space? Any help is appreciated. Thank you!

Update: I was able to fix this by uninstalling and removing a few extensions that were clashing with my settings.


System.AccessViolationException doing a Resize

Hi guys,
I'm getting an 'System.AccessViolationException' doing a resize of a JPG about 400k in size.
Crash is at ImageBase:153.
return *((Color*)(this.pixelsBase + ((y * this.Width) + x) * 4));

Original image size: 1306x979. New Image size: 200x200 with Pad.
Resize code is:
   image.BackgroundColor(Color.RebeccaPurple); // << it works if I comment this line out!
    var result = image.Resize(new ResizeOptions()
    {
        Size = new Size(200, 200),
        Mode = ResizeMode.Pad,
        Compand = true
    });

Hi there, what version number are you running from myget? Would it be possible to share the image?

I tried with 1.0.0-alpha-860 from nuget and with latest source code straight from GH.
Any larger image will do. The issue I think is the dispose in ImageExtensions:169.
Code is disposing the incoming source object that is now owned by your method but it's the one I own so you should not be disposing it.
That happens at the end of the image.BackgroundColor() call. Then the second call to image.Resize is basically working on a disposed image.
The general rule of Disposing is that you never dispose what you don't specifically created yourself and you don't need. Never dispose incoming objects. It's the callers responsibility to dispose both the source and the result of the BackgroundColor.
I think the confusion is that the BackgroundColor method returns a new Image. I expected it to modify the existing one.

Bugger... This is tricky... Every method returns a new image.
I'm making a copy so that if something goes wrong the original pixels can be returned. This is done throughout. If I don't dispose of the source then I get a memory leak as I create more and more copies.
I'll have to rethink this. Good thing it's alpha :smile:

@corneliutusnea That should be it fixed now. I need to do some research into how long the unmanaged pixels are held onto within the original source image before the GC collector kicks in though so if you have any advice on that please let me know.

@JimBobSquarePants How long they stay in memory depends mostly on GC pressure and the type of GC. If you want to do a quick test use nbench to whip a memory pressure test https://github.com/petabridge/NBench
I've been thinking a lot about this if you should always return a new image or you should always edit the current image and there are some pros&cons.
Let's see if I get them right, and maybe that should drive the decision of how to fix the api:
Never return a new image

Pro: Potentially less memory pressure as lots of operations could be done "in place" on the current image
Pro: You can have a nice fluid API without worry of memory leaks .ApplyBackgroundColor().Resize().Crop()....
Some algorithms might have to apply a pattern of copy/edit/replace but that's all hidden from external users
Cons: Might confuse some users as why you change their existing image. Can be easily fixed through documentation.
Cons: You'd need to clone/duplicate the image if you want to use it in separate operations. E.g. Resize one image to 4 different other sizes. You'd need to duplicate 4 times. Is this a worry?

Always return a new image:

Pro: Every image is readonly. Can be good in some scenarios.
Cons: Increased memory usage. Every operation is a new image.
Cons: You can't have a fluid API without serious memory pressure and risk of forgetting to cleanup.

I'm not sure what else to add to this list but I think the best would be to never return new image unless specifically asked by a Clone method or through copy constructors.
Always return "this" and always process on the current image.
If you need to allocate a new underlying image internally, that's fine, but by the time the call is finished clean-up and still return this.

Thanks for that, all good stuff.
The approach I'm trying to take is to return what becomes to the user, the same image but altered, internally switching out the image for a new one. There's a few places I could return the same image without switching but I will have to do some work to redefine filters and samplers within the framework. (I'm defining filters as anything that can operate on an image without requiring a new one to be created.)
I'll have a look at NBench asap.


Add mandatory category in helm charts

would be nice to know what is the category of the chart for we are able to search in the repo. For example, I'd like to check all lib charts and/or I'd like to search for all database kinds and etc..

@camilamacedo86 unfortunately, we can't add mandatory categories for a couple reasons:

It would be a breaking change that's not backwards compatible. The breaking change is a big deal and the non-backwards compatible change raises the barrier.
Charts can be used in places where a category isn't really needed. For example, in internal company workflows.

There are two things that do come to mind:

https://artifacthub.io/ has better search capabilities and faceted search. This may be more useful for discovery.
It would be great to have an audit tool someone can run to give them recommendations for public listing. This would be additive.

I'd like to check all lib charts

This part could already be done using the type field in the Chart.yaml I think? But it's not very useful with only two options.
More generally, yes, it makes sense that a more generic category field can't be mandatory, but would an optional category field in the chart.yaml which can accept multiple values from a set of defined categories, be worth considering, or do you think there is no place for a chart category? I know search can be better at finding what people really need, but it seems people still want to filter by category.
As it would be optional, we could prompt people when linting a chart, and verify allowed categories when linting (but not enforce, etc.). This could be useful both for helm hub and things like Kubeapps (which is why I'm asking :) ). (Seems this discussion should be against helm/helm though? Let me know if I should start a feature request there, or whether it's already been considered - I can't see an existing issue.)

As the Helm Hub has been turned down, I'm closing this issue.


Automated cherry pick of #2011: region capability: fix regional public network not found

Cherry pick of #2011 on release/2.11.
#2011: region capability: fix regional public network not found

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/2.11@ff09039). Click here to learn what that means.
The diff coverage is 0%.

@@              Coverage Diff               @@
##             release/2.11   #2012   +/-   ##
==============================================
  Coverage                ?   7.19%
==============================================
  Files                   ?     445
  Lines                   ?   69273
  Branches                ?       0
==============================================
  Hits                    ?    4984
  Misses                  ?   63877
  Partials                ?     412

Flag
Coverage Δ

#aFlag
7.19% <0%> (?)

Impacted Files
Coverage Δ

pkg/compute/models/capabilities.go
0% <0%> (ø)

pkg/compute/models/networks.go
0.83% <0%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update ff09039...81c3aa4. Read the comment docs.

/lgtm

/approve


Increase font size for ipad

The default font size of text of read more and read less is 14 but i want 16 for iphone and 25 for ipad

ya i get it
let readMoreTextAttributes = [NSForegroundColorAttributeName: UIColor.blue, NSFontAttributeName: UIFont.boldSystemFont(ofSize: 30)]
for swift 3