Extension from Microsoft Marketplace not working

Hi!
I have been trying to get this extension to work with no success.
I installed it via CLI and it appears as installed, and following the instructions on the extension page, I added this code
// single: Comments are single-line comments that start with three slashes (///) (Default)
	// delimited: Delimited comments that start with a slash and two stars (/**)
	"docomment.syntax": "single",
	// Press the Enter key to activate a command (Default: false)
	"docomment.activateOnEnter": false,
	// User-controllable options
	"docomment.advanced": {
		"cs": {
			"namespace" : {
				"attributes" : ["summary"]
			},
			"class" : {
				"attributes" : ["summary", "typeparam"]
			},
			"interface" : {
				"attributes" : ["summary", "typeparam"]
			},
			"struct" : {
				"attributes" : ["summary"]
			},
			"enum" : {
				"attributes" : ["summary"]
			},
			"delegate" : {
				"attributes" : ["summary", "param", "typeparam", "returns"]
			},
			"field" : {
				"attributes" : ["summary"]
			},
			"property" : {
				"attributes" : ["summary", "value"]
			},
			"method" : {
				"attributes" : ["summary", "param", "typeparam", "returns"]
			},
			"event" : {
				"attributes" : ["summary"]
			}
		}
	},
	// Insert spaces when pressing Tab.
	"editor.insertSpaces": true,
	// The number of spaces a tab is equal to.
	"editor.tabSize": 4

to the settings file. I know this is supposed to be done in VSCode but I figured it wouldn't hurt to try.
Expected behaviour:
When typing "///" before a C# function, a comment should appear to fill out.
Current behaviour:
Nothing happens when "///" is typed.

Hi @MrVizious ,
Thanks for logging the issue! I took a look at this and I see a few issues:

This was actually blocked by the activeEditor bug that was just fixed in https://github.com/onivim/oni2/pull/2387
Past that, it seems to be crashing here: https://github.com/kasecato/vscode-docomment/blob/2025db6f26bcc7d330a766e0724f01b1e9cc0541/src/Api/VSCodeApi.ts#L28

METHOD: $onExtensionRuntimeError ARGS: [{"value":"k--kato.docomment","_lower":"k--kato.docomment"},{"$isError":true,"name":"TypeError","message":"Cannot read property 'active' of undefined","stack":"TypeError: Cannot read property 'active' of undefined\n\tat VSCodeApi.GetActivePosition (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Api/VSCodeApi.js:20:45)\n\tat VSCodeApi.GetActiveLine (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Api/VSCodeApi.js:23:21)\n\tat VSCodeApi.ReadLineAtCurrent (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Api/VSCodeApi.js:64:35)\n\tat VSCodeApi.ReadCharAtCurrent (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Api/VSCodeApi.js:67:21)\n\tat DocommentDomainCSharp.IsTriggerDocomment (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Domain/Lang/DocommentDomainCSharp.js:35:44)\n\tat DocommentDomainCSharp.Execute (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Domain/DocommentDomain.js:23:19)\n\tat DocommentControllerCSharp._onEvent (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Controller/DocommentController.js:57:16)\n\tat DocommentControllerCSharp.<anonymous> (/Users/bryphe/.config/oni2/extensions/docomment-0.1.18.vsix/out/src/Controller/DocommentController.js:20:22)\n\tat Emitter.fire (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/common/event.js:460:45)\n\tat ExtHostDocuments.$acceptModelChanged (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/api/common/extHostDocuments.js:118:39)\n\tat RPCProtocol._doInvokeHandler (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/services/extensions/common/rpcProtocol.js:336:31)\n\tat RPCProtocol._invokeHandler (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/services/extensions/common/rpcProtocol.js:321:49)\n\tat RPCProtocol._receiveRequest (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/services/extensions/common/rpcProtocol.js:248:36)\n\tat RPCProtocol._receiveOneMessage (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/services/extensions/common/rpcProtocol.js:176:30)\n\tat /Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/services/extensions/common/rpcProtocol.js:66:56\n\tat Emitter.fire (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/common/event.js:457:42)\n\tat BufferedEmitter.fire (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/common/ipc.net.js:362:35)\n\tat /Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/workbench/services/extensions/node/extensionHostProcessSetup.js:145:41\n\tat Emitter.fire (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/common/event.js:457:42)\n\tat BufferedEmitter.fire (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/common/ipc.net.js:362:35)\n\tat PersistentProtocol._receiveMessage (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/common/ipc.net.js:581:37)\n\tat /Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/common/ipc.net.js:455:83\n\tat Emitter.fire (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/common/event.js:457:42)\n\tat ProtocolReader.acceptChunk (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/common/ipc.net.js:188:37)\n\tat /Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/common/ipc.net.js:157:61\n\tat Socket.listener (/Users/bryphe/oni2/node/node_modules/@onivim/vscode-exthost/out/vs/base/parts/ipc/node/ipc.net.js:17:40)\n\tat Socket.emit (events.js:315:20)\n\tat addChunk (_stream_readable.js:295:12)\n\tat readableAddChunk (_stream_readable.js:271:9)\n\tat Socket.Readable.push (_stream_readable.js:212:10)\n\tat Pipe.onStreamRead (internal/stream_base_commons.js:186:23)"}]

I think we're not implementing this selections API correctly (and sending properties-changed events to the extension host): https://github.com/onivim/vscode-exthost/blob/c7df89c1cf0087ca5decaf8f6d4c0fd0257a8b7a/src/vs/workbench/api/common/extHost.protocol.ts#L943

Also opened a PR to see if we can add this to open-vsx: https://github.com/open-vsx/publish-extensions/pull/143


linux kernel version fix for conda 4.10+

🚀 Pull Request
Description
This PR addresses the issue raise in https://github.com/conda/conda/issues/10596

Consult Iris pull request check list

@bjlittle are these test failures due to matplotlib changes?  They do not appear to be related to the conda 4.10 issue.
Also, are you happy with the small doc change going in in this PR too?

@jamesp Just spinning back up on this... sorry.
Yup, the extra failures are due to mpl moving from 3.3.4 to 3.4.1... and I'm looking at those now.
Also, yeah, I think that it's fine to include the doc changes here... actually, it's necessary otherwise the CI will fail :cry:

@jamesp Oppsie... this PR wasn't completely finished and ready to merge.
I'll push my other changes


Image element src property does not allow URL assignment

Bug Report
🔎 Search Terms
image src dom
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about 4.3.0

⏯ Playground Link
Playground link with relevant code
💻 Code

let image = document.createElement('img');
image.src = new URL("http://google.com");
console.log(image.src)

🙁 Actual behavior
Type 'URL' is not assignable to type 'string'.(2322)

🙂 Expected behavior
Compiles cleanly (confirmed supported per https://github.com/whatwg/html/issues/6440)

Previous occurrences of this kind of issue:

https://github.com/microsoft/TypeScript/issues/15246#issuecomment-294948887
https://github.com/microsoft/TypeScript-DOM-lib-generator/pull/965 IDL: https://github.com/microsoft/TypeScript-DOM-lib-generator/blob/78a230840d46b3cd30a19e8ce5a2dcada6162ce3/inputfiles/idl/Service Workers.widl#L58
https://github.com/microsoft/TypeScript-DOM-lib-generator/pull/600 IDL: https://github.com/microsoft/TypeScript-DOM-lib-generator/blob/78a230840d46b3cd30a19e8ce5a2dcada6162ce3/inputfiles/idl/HTML - Web workers.widl#L44

At this point, should we assume that USVString implies string | URL? This is currently implemented in https://github.com/microsoft/TypeScript-DOM-lib-generator/blob/07ea4e8bf58f9907d22024cca6433e002fffd251/src/helpers.ts#L6 I am not sure how many other IDL definitions use USVString, but don't accept a URL (which would be implicitly .toString'd per the linked HTML issue)
CC @domenic do you mind confirming if we can assume type USVString = string | URL in TypeScript or am I still misunderstanding the terminology here 😄

It's more subtle than that. Every DOMString or USVString will convert any input to a string. Technically, everything in JavaScript is convertible to a string, at the very least through Object.prototype.toString(). So hard-coding URL doesn't make sense to me.

Ah right. Yes I understand that now. Thanks again for the explanation!

You want separate types for reading and writing properties, which @RyanCavanaugh is iterating on over at #42425.
I guess we did discuss a few things in a previous design meeting about how much of lib.d.ts needed to change and punted on it, but this seems like a reasonable one (write of URL | string, read of string).

So hard-coding URL doesn't make sense to me.

We'd want to be more permissive to a degree; letting anything in with a toString() seems undesirable, whereas unblocking a scenario like assigning URL instances to a property called url seems reasonable.


Modify/remove Vim icon under IDE

Vim under the IDE section shows ![Vim script_icon] instead of an additional icon. Searched for the icon inside /icons/, but it's not listed there. Please modify or remove.

Created a PR https://github.com/serhii-londar/open-source-mac-os-apps/pull/791


formula: don't expand unused optional dependencies

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[x] Have you written new tests for your changes? Here's an example.
[x] Have you successfully run brew tests with your changes locally?

—--
This properly addresses the issue reported in Homebrew/homebrew-core#7826, so Formula#runtime_dependencies no longer attempts to expand optional dependencies that aren't being used in the current build.
As such, it reverts #1665, and so unreverts #1592.

@alyssais when you consider this good to 🚢, can you provide a wee test plan I can run locally to reproduce the issue this is fixing? Thanks!

@MikeMcQuaid I reproduced the issue by running Formula['ffmpeg'].runtime_dependencies in brew irb, and seeing if it produced an exception or not. I imagine you'll want a more realistic test scenario, so I'll see if I can come up with one…

Going to force push because the history has ended up a bit unclear here…

Okay, there are two things to check here (I assume building from source):

Does brew install influxdb record go as a runtime dependency in influxdb's install receipt? The correct behaviour is not to.
Does brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/636e5b8ee684c4885f0a296cf8bf27f6faa9eba5/Formula/ffmpeg.rb && bin/brew upgrade ffmpeg succeed, or does the upgrade fail with a "No available formula with the name "homebrew/science/opencv"" error? The correct behaviour is for it to succeed.

Currently, only 2 should succeed. As of 3f72482, only 1 should succeed. With this PR as a whole, both 1 and 2 should succeed.

Thanks again @alyssais!


Dev suyang rebuild

登录时报错：
AssertionError: The field 'user' was declared on serializer LogSerializer, but has not been included in the 'fields' option.

用昨天的版本跑的后端（最新的应该没改那个），报错
AssertionError at /api/core/users/login/
The field 'user' was declared on serializer LogSerializer, but has not been included in the 'fields' option.

（以及我现在git pull又不行了qwq）

pull下来了，但还以一样的报错
（以及login操作为什么会牵扯到Log相关的序列化器，困惑）


Fix lost input events with popups and multiple windows on linuxbsd

fix linuxbsd variant of #66016
In the following setting

Root Window (don't embed windows)

Popup
Secondary Window

Mouse-Button-Down events in the Secondary Window were lost, because they were used for trying to close the Popup.
This PR makes DisplayServerX11::mouse_process_popups aware of multiple windows and tries to close them only if no other window was targeted.
Please review with care, because I am touching areas, I am not familiar with.

I have tested a port of this algorithm to Windows and it introduced some bugs (e.g. closing color-picker window). So it is likely that also this PR introduces bugs on linuxbsd, which I didn't notice previously.
Closing this in favor of the more robust #72104.


Cannot find module hubot

Hey!
I tried using your test helper on an ES6 codebase. I tried to write an integration test with it but just requiring the module fails:
const Helper = require('hubot-test-helper')

I get cannot find module 'hubot'. I don't know what's happening here. I even have hubot in my own package.json. Do you have any clue how to resolve this?

Could you show me whole example?

I think I found the issue. Hubot is published as coffee script, not as javascript. Means I would need to transpile the node module before requiring it.

Hi @hpurmann I have same issue. Could you please tell me how to fix it?

I'm sorry, didn't investigate further. There is an issue which discusses the transition to es6.

I was hitting the same issue.  For me the solution was to create a mocha.opts file in my test folder with this content:
--require coffee-script/register
--compilers coffee:coffee-script

Thanks @kurtismgit for this workaround.
As this problem is not due to hubot-test-helper but due to the fact that hubot is not publishing transpiled JS to NPM, I'm closing this issue.


Update modalEnterPassword.ts

This is grammatically correct and now more easily understood. :- )

Okay, thank you! I'll merge it but it will take more time than regular merge due to Obsidian Developer policies.

Any updates on this?

Yes, your message made me reopen this project again. Wait for the new updates!)

Nice. If you need any help. Maybe make a to-do list and i would love to help. Such as file encryption

if you have telegram try to contact me through it. My telegram link is in bio


New tab steals focus from address bar

Firefox on Mac.
When opening a new tab using CMD + T, the cursor is stolen from the address bar and I have to then click the address bar or hit CMD + K.
Focus when new tab is created should remain in the address bar.

Okay so im able to reproduce it now. But have not found a solution yet, but looking in to it.


RuntimeWarning:invalid value encountered in greater

On running the unit tests in devel on Ubuntu 64bit using Anaconda Python and Python 2.7:
GPy/GPy/core/parameterization/transformations.py:77:  RuntimeWarning:invalid value encountered in greater
GPy/GPy/core/parameterization/transformations.py:82: RuntimeWarning:invalid value encountered in greater
Can others confirm please?

I don't get them on Fedora 21, GCC 4.9.2 and Python 2.7.8 (virtualenv).
I do get a failure:
======================================================================
FAIL: test_safe_exp_upper (GPy.testing.misc_tests.MiscTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/david/.virtualenvs/py27/lib/python2.7/site-packages/GPy-0.6.1-py2.7-linux-x86_64.eg/GPy/testing/misc_tests.py", line 23, in test_safe_exp_upper
    assert len(w)==1 # should have one overflow warning
AssertionError:

In case it matters, my CFLAGS are tuned to my CPU: -march=core-avx2 -O2 -pipe -mtune=native

Thats interesting Dapid, I've not managed to duplicate that error on any machine other than Travis either! For some reason on some machines something which is obviously a overflow warning doesn't get reported as one. Anyone any idea why this might be?
I believe the line that should show a warning:
np.finfo(np.float64).max
np.isinf(np.exp(_lim_val_exp + 1))

Has anyone managed to make this happen on their machine? Do you think there might be a reason why Travis wouldn't allow us to capture these warnings?

Dont get them anymore, the test suite is now catching runtime errors. Also the len(w)==1 is now len(w)<=1, so that if no runtimewarning was thrown, it still passes.


Modifiers Built into Weapons

Could we get the ability to define modifiers to be added to rolls automatically if I define something in the item's settings? Like explosives and modded weapons that gain varying %s. Could help improve the flow of game of being able to define that the explosive has a bonus and then clicking it for the roll rather than recalling to right-click it to add it.

Better late than never? This should be added in v1.3.0


Universal DPP deployment failing to parse YAML

What happened?
While trying to deploy the DPPs my copy-paste of the code snippet was failiing.
 kuma-dp run   --cp-address=https://localhost:5678/   --dns-enabled=false   --dataplane="type: Dataplane             mesh: default             name: redis             networking:               address: <IP_ADDRESS>               inbound:                 - port: 16379                 servicePort: 26379                 serviceAddress: <IP_ADDRESS>                 tags:                     kuma.io/service: redis                     kuma.io/protocol: tcp"   --dataplane-token-file=kuma-token-redis 2022-03-05T10:28:06.725+0500    INFO    Skipping reading config from file 2022-03-05T10:28:06.726+0500    INFO    kuma-dp.run     effective configuration {"config": "{\"controlPlane\":{\"caCert\":\"\",\"caCertFile\":\"\",\"retry\":{\"backoff\":\"3s\",\"maxDuration\":\"5m0s\"},\"url\":\"https://localhost:5678/\"},\"dataplane\":{\"drainTime\":\"30s\",\"proxyType\":\"dataplane\"},\"dataplaneRuntime\":{\"binaryPath\":\"envoy\",\"dataplaneTokenPath\":\"kuma-token-redis\",\"resource\":\"type: Dataplane\\n            mesh: default\\n            name: redis\\n            networking: \\n              address: <IP_ADDRESS>\\n              inbound: \\n                - port: 16379\\n                servicePort: 26379\\n                serviceAddress: <IP_ADDRESS>\\n                tags: \\n                    kuma.io/service: redis\\n                    kuma.io/protocol: tcp\"},\"dns\":{\"coreDnsBinaryPath\":\"coredns\",\"coreDnsEmptyPort\":15055,\"coreDnsPort\":15053,\"envoyDnsPort\":15054,\"prometheusPort\":19153}}"} 2022-03-05T10:28:06.726+0500    INFO    kuma-dp.run     rendered resource       {"resource": "type: Dataplane\n            mesh: default\n            name: redis\n            networking: \n              address: <IP_ADDRESS>\n              inbound: \n                - port: 16379\n                servicePort: 26379\n                serviceAddress: <IP_ADDRESS>\n                tags: \n                    kuma.io/service: redis\n                    kuma.io/protocol: tcp"} 2022-03-05T10:28:06.726+0500    ERROR   kuma-dp.run     failed to read policy   {"proxyType": "dataplane", "error": "invalid meta type: error converting YAML to JSON: yaml: line 2: mapping values are not allowed in this context", "errorVerbose": "error converting YAML to JSON: yaml: line 2: mapping values are not allowed in this context
Looking at error it felt an indentation issues so I copied the quoted YAML into redis.yaml, and line 2 was of whack, which I then fixed.
Now when I passed the redis.yaml file it gave me the following error.
kuma-dp run   --cp-address=https://localhost:5678/   --dns-enabled=false   -d redis.yaml   --dataplane-token-file=kuma-token-redis 2022-03-05T10:31:24.162+0500    INFO    Skipping reading config from file 2022-03-05T10:31:24.163+0500    INFO    kuma-dp.run     effective configuration {"config": "{\"controlPlane\":{\"caCert\":\"\",\"caCertFile\":\"\",\"retry\":{\"backoff\":\"3s\",\"maxDuration\":\"5m0s\"},\"url\":\"https://localhost:5678/\"},\"dataplane\":{\"drainTime\":\"30s\",\"proxyType\":\"dataplane\"},\"dataplaneRuntime\":{\"binaryPath\":\"envoy\",\"dataplaneTokenPath\":\"kuma-token-redis\",\"resourcePath\":\"redis.yaml\"},\"dns\":{\"coreDnsBinaryPath\":\"coredns\",\"coreDnsEmptyPort\":15055,\"coreDnsPort\":15053,\"envoyDnsPort\":15054,\"prometheusPort\":19153}}"} 2022-03-05T10:31:24.163+0500    INFO    kuma-dp.run     rendered resource       {"resource": "            type: Dataplane\n            mesh: default\n            name: redis\n            networking: \n              address: <IP_ADDRESS>\n              inbound: \n                - port: 16379\n                servicePort: 26379\n                serviceAddress: <IP_ADDRESS>\n                tags: \n                    kuma.io/service: redis\n                    kuma.io/protocol: tcp\n"} 2022-03-05T10:31:24.163+0500    ERROR   kuma-dp.run     failed to read policy   {"proxyType": "dataplane", "error": "invalid meta type: error converting YAML to JSON: yaml: line 7: did not find expected '-' indicator", "errorVerbose": "error converting YAML to JSON: yaml: line 7: did not find expected '-' indicator\ninvalid meta type\ngithub.com/kumahq/kuma/pkg/core/resources/model/rest.Unmarshall\n\t/home/circleci/project/pkg/core/resources/model/rest/unmarshaller.go:23\ngithub.com/kumahq/kuma/pkg/core/resources/model/rest.UnmarshallToCore\n\t/home/circleci/project/pkg/core/resources/model/rest/unmarshaller.go:13\ngithub.com/kumahq/kuma/app/kuma-dp/cmd.readResource\n\t/home/circleci/project/app/kuma-dp/cmd/dataplane.go:44\ngithub.com/kumahq/kuma/app/kuma-dp/cmd.newRunCmd.func2\n\t/home/circleci/project/app/kuma-dp/cmd/run.go:75\ngithub.com/spf13/cobra.(*Command).execute\n\t/home/circleci/.go_workspace/pkg/mod/github.com/spf13/cobra@v1.3.0/command.go:845\ngithub.com/spf13/cobra.(*Command).ExecuteC\n\t/home/circleci/.go_workspace/pkg/mod/github.com/spf13/cobra@v1.3.0/command.go:974\ngithub.com/spf13/cobra.(*Command).Execute\n\t/home/circleci/.go_workspace/pkg/mod/github.com/spf13/cobra@v1.3.0/command.go:902\ngithub.com/kumahq/kuma/app/kuma-dp/cmd.Execute\n\t/home/circleci/project/app/kuma-dp/cmd/root.go:83\nmain.main\n\t/home/circleci/project/app/kuma-dp/main.go:6\nruntime.main\n\t/home/circleci/go/src/runtime/proc.go:255\nruntime.goexit\n\t/home/circleci/go/src/runtime/asm_amd64.s:1581"} Error: invalid meta type: error converting YAML to JSON: yaml: line 7: did not find expected '-' indicator
Just to be clear, I am doing a Universal deployment, on an ubuntu 20.04 image over wsl2.

@affansyed indeed the README was wrong please see the PR which corrects this


python: Clean up getattr, setattr, delattr calls with literal names

These were useful as a transitional workaround to ignore type errors that only show up with django-stubs, while avoiding errors about unused type: ignore comments without django-stubs.  Now that the django-stubs transition is complete, switch to type: ignore comments so that mypy will tell us if they become unnecessary.  Many already have.
Cc @PIG208

Merged, thanks @andersk!


userguide: Improving Pre-Loading Containers.

Signed-off-by: Raul Muñoz<EMAIL_ADDRESS>

@munoz0raul  besides my comments, the checks have failed, could you please take a look?

Docs for ce61473e122db326b81a09882ab6e7058fd35afb are browesable at: https://ci.foundries.io/projects/fio-docs/builds/1102/docs/artifacts/html/index.html

Docs for 509ec6bf4ed03396a3e464a37db2180270eb185f are browesable at: https://ci.foundries.io/projects/fio-docs/builds/1103/docs/artifacts/html/index.html

Docs for adeb89f9719990f1f481b27174505235b2c3b5b9 are browesable at: https://ci.foundries.io/projects/fio-docs/builds/1108/docs/artifacts/html/index.html

@doanac could you take another look? I'm thinking about merging it and next week as @mike-sul updates the variables we create a new PR to update it.

Docs for b52d9448bf749aac58af6f7fc54f40331906882b are browesable at: https://ci.foundries.io/projects/fio-docs/builds/1119/docs/artifacts/html/index.html

I think it makes sense to elaborate on the app preloading, specifically provide info on the param per ref/branch overriding.
containers:
 ref_options:
   refs/heads/devel:
      params:
       ASSEMBLE_SYSTEM_IMAGE: <"1" | "0">
       APP_SHORTLIST: "shellhttpd"

lmp:
ref_options:
refs/heads/devel:
params:
ASSEMBLE_SYSTEM_IMAGE: <"1" | "0">
APP_SHORTLIST: "shellhttpd"

This PR is starting to take on a history that's hard for me to track. I'd just say we focus on a few important scenarios.
I want to preload everything everywhere
containers:
  preloaded_images:
    enabled: true

I want to preload an app or two everywhere
containers:
  preloaded_images:
    enabled: true
    shortlist: "app1,app2"

Wow, that's a lot. Let's stop doing that on "devel" builds:
containers:
  preloaded_images:
    enabled: true
    shortlist: "app1,app2"

  refs/heads/devel:
    params:
      ASSEMBLE_SYSTEM_IMAGE: "0"

This PR is starting to take on a history that's hard for me to track. I'd just say we focus on a few important scenarios.
I want to preload everything everywhere
containers:
  preloaded_images:
    enabled: true

I want to preload an app or two everywhere
containers:
  preloaded_images:
    enabled: true
    shortlist: "app1,app2"

Wow, that's a lot. Let's stop doing that on "devel" builds:
containers:
  preloaded_images:
    enabled: true
    shortlist: "app1,app2"

  refs/heads/devel:
    params:
      ASSEMBLE_SYSTEM_IMAGE: "0"

I added some of @mike-sul  comments but I'm trying to keep it simple. For advanced branch config or anything different than the userguide users might read the Reference Manual.

Docs for cd1595b4c88674a06a8074d75a5e88ef1a5504bb are browesable at: https://ci.foundries.io/projects/fio-docs/builds/1120/docs/artifacts/html/index.html

I think there is missing ref_options: in the Andy's example.

This part LGTM, unless we want to add info on the ref overriding params into the given specific doc.

I think this doc section should be updated too https://ci.foundries.io/projects/fio-docs/builds/1120/docs/artifacts/html/reference-manual/linux/preloaded-images.html?highlight=container preloading?

I think this doc section should be updated too https://ci.foundries.io/projects/fio-docs/builds/1120/docs/artifacts/html/reference-manual/linux/preloaded-images.html?highlight=container preloading?

It is on my list to update it.

Docs for 40b34364db983d042fe8cb4c5b180189f39ef073 are browesable at: https://ci.foundries.io/projects/fio-docs/builds/1121/docs/artifacts/html/index.html


Minor correction for civo cloud

Minor correction for Civo cloud

@saiyam1814 is that checked?, are you sure that you don't need a CC?

Yes for kube100 you do not need CC can confirm that !

@saiyam1814 awesome! thanks!


jpeg/png that comes as base64string are not being rendered

Hi
I'm trying to convert the HTML string to pdf file. My HTML contains the CSS and the image base 64 string imported like
url('data:image/png;base64,BASE_64_STRING_HERE')
After the conversion, the image doesn't appear.
I've tried for jpeg and png base64 string both of them do not work.
Maybe I'm missing something?

@yumahayomaso  Can you share an example so I can test?

Here is the html example
`

        Here should be an image

`
And c# code
`public async Task ConvertHtmlToPdf(string htmlString)
{
var browser = await Puppeteer.LaunchAsync(new LaunchOptions
{
Headless = true,
});
        using (var page = await browser.NewPageAsync())
        {
            await page.SetContentAsync(htmlString);
            await page.PdfAsync("Result.pdf",
                new PdfOptions
                {
                    MarginOptions = new MarginOptions
                    {
                        Bottom = "50",
                        Left = "50",
                        Right = "50",
                        Top = "80"
                    },
                });
        }
    }`

Here is the html example
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <style type="text/css">
        .signiture-image {
            width: 130px;
            height: 57px;
            display: inline-block;
            background: no-repeat center center;
            background-size: cover;
            background-image: url('data:image/png;base64,PUT_HERE_ANY_PNG_CONVERTED_TO_BASE64_STRING');
        }
     </style>
</head>
<body>
        Here should be an image
        <div class="signiture-image"> </div>
</body>
</html>

And c# code
public async Task ConvertHtmlToPdf(string htmlString)
        {
            var browser = await Puppeteer.LaunchAsync(new LaunchOptions
            {
                Headless = true,
            });

            using (var page = await browser.NewPageAsync())
            {
                await page.SetContentAsync(htmlString);
                await page.PdfAsync("Result.pdf",
                    new PdfOptions
                    {
                        MarginOptions = new MarginOptions
                        {
                            Bottom = "50",
                            Left = "50",
                            Right = "50",
                            Top = "80"
                        },
                    });
            }
        }

The same happens on a headfull Chrome when you try to print this HTML to PDF. You should report this to Chromium.


Update gulp-clean-css

This will update gulp-clean-css to the most recent version.

We should act faster with these simple pull requests. In the meantime, gulp-clean-css is updated to version 3.4.2. This’ll fix two issues concerning @import
My advice: update pull request & merge

@waarissyb that sounds like a good plan. Though it would mean that we have to re-review it after the update

Updated gulp-clean-css to 3.4.2. There are multiple commits but it seem it can be squashed during merge.


Replace startsWith with startswith method

The startswith method is not capitalized:
https://docs.python.org/3/library/stdtypes.html#str.startswith
Closes #
Describe your proposed changes here.

[ ] Signed the InfluxData CLA
(if necessary)
[ ] Rebased/mergeable

Thanks for this! You're right, but it passes the test, so obviously the callback functions aren't being called--not sure how I broke that.


new PrismaClient() can not find schema.prisma file when use with pnpm workspace

Bug description
Here is a simple reproduction with pnpm.
- packages
  - server
    - index.mjs #  get PrismaClient from prisma-client
    - package.json

  - prisma-client
    - dist # prisma generator output
    - prisma
      - schema.prisma
    - package.json

  - pnpm-workspace.yaml
  - package.json

When call new PrismaClient in packages/server/index.mjs, got an error:
Error: ENOENT: no such file or directory, open '~/prisma-path-issue/packages/server/node_modules/schema.prisma'
    at Object.openSync (node:fs:585:3)
    at Object.readFileSync (node:fs:453:35)
    at new LibraryEngine (~/prisma-path-issue/packages/prisma-client/dist/runtime/index.js:36041:40)
    at PrismaClient.getEngine (~/prisma-path-issue/packages/prisma-client/dist/runtime/index.js:39247:16)
    at new PrismaClient (~/prisma-path-issue/packages/prisma-client/dist/runtime/index.js:39218:29)
    at getPrisma (file://~/prisma-path-issue/packages/server/index.mjs:4:18)
    at file://~/prisma-path-issue/packages/server/index.mjs:9:1
    at ModuleJob.run (node:internal/modules/esm/module_job:185:25)
    at async Promise.all (index 0)
    at async ESMLoader.import (node:internal/modules/esm/loader:281:24) {
  errno: -2,
  syscall: 'open',
  code: 'ENOENT',
  path: '~/prisma-path-issue/packages/server/node_modules/schema.prisma',
  clientVersion: '3.5.0'
}

How to reproduce
(Require global pnpm installed)

Clone git https://github.com/mervinjin/prisma-issue
Run pnpm install
Run pnpm start
See error

Expected behavior
No Error
Prisma information
Schema file:
datasource db {
  provider = "sqlite"
  url      = "file:./dev.db"
}
generator client {
  provider = "prisma-client-js"
  output = "../dist"
}

model User {
  id Int @id @default(autoincrement())
}

Usage:
import { PrismaClient } from 'prisma-client'

async function getPrisma(){
  const prisma = new PrismaClient()
  await prisma.$connect()
  return prisma
}

getPrisma().then(console.log)

Environment & setup

OS: Mac OS
Database: SQLite
Node.js version: 17.0.1

Prisma Version
prisma                  : 3.5.0
@prisma/client          : 3.5.0
Current platform        : darwin
Query Engine (Node-API) : libquery-engine 78a5df6def6943431f4c022e1428dbc3e833cf8e (at ../../node_modules/.pnpm/@prisma+engines<EMAIL_ADDRESS>Migration Engine        : migration-engine-cli 78a5df6def6943431f4c022e1428dbc3e833cf8e (at ../../node_modules/.pnpm/@prisma+engines@3.5.0-38.78a5df6def6943431f4c022e1428dbc3e833cf8e/node_modules/@prisma/engines/migration-engine-darwin)
Introspection Engine    : introspection-core 78a5df6def6943431f4c022e1428dbc3e833cf8e (at ../../node_modules/.pnpm/@prisma+engines@3.5.0-38.78a5df6def6943431f4c022e1428dbc3e833cf8e/node_modules/@prisma/engines/introspection-engine-darwin)
Format Binary           : prisma-fmt 78a5df6def6943431f4c022e1428dbc3e833cf8e (at ../../node_modules/.pnpm/@prisma+engines@3.5.0-38.78a5df6def6943431f4c022e1428dbc3e833cf8e/node_modules/@prisma/engines/prisma-fmt-darwin)
Default Engines Hash    : 78a5df6def6943431f4c022e1428dbc3e833cf8e
Studio                  : 0.439.0

workaround: generate into toplevel /node_modules/ rather than package ../dist (https://github.com/prisma/prisma/issues/9435#issuecomment-974576800)
working demo: https://github.com/andyjy/prisma-multiple-schemas-monorepo-demo

But the bug still exists with this workaround I assume? Then we should probably keep this issue open and try to get it fixed properly.

@janpio yes, it would be nice to not need the workaround - i.e. be able to specify anywhere for the generator output= filesystem location without having the generated client fail unless the combination of generated client location and calling code happens to work with the internals of syncFind() || __dirname

Shouldn't the goal be that this just works as intended, without any further need to specify anything?

Hey @plimeor @andyjy I can confirm that this issue has been fixed. I just ran the repro with @prisma/client@dev which works now :). If you want, you can also try it, and please let us know if you find anything unexpected. Thanks!

Hey @plimeor @andyjy I can confirm that this issue has been fixed. I just ran the repro with @prisma/client@dev which works now :). If you want, you can also try it, and please let us know if you find anything unexpected. Thanks!

Hey @plimeor @andyjy I can confirm that this issue has been fixed. I just ran the repro with @prisma/client@dev which works now :). If you want, you can also try it, and please let us know if you find anything unexpected. Thanks!

This works now, I was facing the same pnpm issue with schema.prisma location!
For now I'll use "@prisma/client@dev" version on package.json and will update later.

Hey @plimeor @andyjy I can confirm that this issue has been fixed. I just ran the repro with @prisma/client@dev which works now :). If you want, you can also try it, and please let us know if you find anything unexpected. Thanks!

Hey @plimeor @andyjy I can confirm that this issue has been fixed. I just ran the repro with @prisma/client@dev which works now :). If you want, you can also try it, and please let us know if you find anything unexpected. Thanks!

This works now, I was facing the same pnpm issue with schema.prisma location!
For now I'll use "@prisma/client@dev" version on package.json and will update later.

Release is planned tomorrow, so shouldn't have to stay there long 👍 Thanks for confirming!


Implement VCF filter fields

Edit the datamodel to parse out the messages for filters using the pysam record (to the greatest fidelity available).
Add the fields to the toProtocolElement message.
https://github.com/ga4gh/schemas/pull/777#issuecomment-274587666
https://github.com/ga4gh/server/blob/master/ga4gh/server/datamodel/variants.py

Dupe https://github.com/ga4gh/server/issues/1491


sqlite: fix transaction isolation level

Fixes issue with transtaction insolation level by applying a driver
hack for SQLite engine.

Signed-off-by: Jiri Kuncar<EMAIL_ADDRESS>

tested by me


always use avatar url from developer.json response

@cedric set up the developer.json response to return a user's gravatar for email/password accounts.
The default avatar or gravatar is being rendered at 24px and the github one is at 18px which is a little bit funny. Probably we want gravatar to be rendered the same as github, but not sure the best way to go about it. @cedric / @hanbyul thoughts?

@sleepylemur I can set the Gravatar size to anything, so I'll change it to 18px.

I will merge this, open the separate ticket about make the avatar size coherent.


Add stealth parameter to avoid antibot systems

The aim is to prevent Brozzler detection and blocking by antibot
systems. To do that, we need to run some JS before any other code runs
on page load and mock specific browser attributes which indicate that
Brozzler is a bot.
We add the option stealth in Browser, brozzler.cli and
BrozzlerWorker. It is disabled by default.
If enabled, we run stealth.js which is executed before anything else
on the page via Page.addScriptToEvaluateOnNewDocument.
For now, we mock only the graphics driver attributes.
If this is OK, we can add more antibot evasions in the same script.
There are many antibot tests, we are using this: https://bot.sannysoft.com/
Inspired mainly by:
https://www.npmjs.com/package/puppeteer-extra-plugin-stealth

Check out the "WebGL Vendor" and "WebGL Renderer" fields with and without stealth mode.
The mock values are from my desktop Ubuntu 22.04 using an NVIDIA Quadro graphics card.
Brozzler is running on a VM using XVNC.


feat: implements a transitioning panel

https://github.com/artsy/force/assets/112297/394dba7d-0514-4d95-835b-7e5b570ff303
The transition animation isn't the hard part here, rather it's maintaining a natural 'order' to the panels. If you're navigating to a new panel from the home, it should be oriented on the right, if you're navigating back then it should be oriented on the left. I support N panels here in the event we need more and they will appear on the left or right depending on their ordering within the provider. You also need to be able to trigger navigation from inside panels so that's where the context provider comes in.
We don't animate changes in modal size. Theoretically we could but this adds a lot more complexity. We may not be adjusting size at all, it turns out. I suspect this will appear a lot less strange when it contains real content.

Ah @dzucconi - what good timing 😄 We're actually going to need this on the very next project we're gonna work on in Volt. Can this be moved to Palette?

Ah interesting — @damassi. I'm going to wait until @tam-kis gives it a whirl with a real use-case, unless it's pressing?

Nope, not pressing! We're still figuring out designs on our end.


use builtin sorting for composed dependencies

Fixes #38
loader.finalSource gives all of the composed sources, but sorted in order of dependency: https://github.com/css-modules/css-modules-loader-core/blob/master/src/file-system-loader.js#L63
This ensures that when you compose classes you can still override rules as expected.

Great! Thank you!

@joshwnj @madpilot Published


Android build error: JS sourcemap file doesn't exist, aborting upload

Hi! 👋
Firstly, thanks for your work on this project! 🙂
Today I used patch-package to patch<EMAIL_ADDRESS>for the project I'm working on.
Describe what happened

When trying to upload sourcemaps, it failed with the following error:
Script<EMAIL_ADDRESS>line: 87

JS sourcemap file doesn't exist, aborting upload

Steps to reproduce the issue:
cd ./android && ./gradlew bundleDevRelease --no-daemon
Describe what you expected:
I expected it to upload the sourcemaps at /Users/bennett/src/west-app/android/app/build/generated/sourcemaps/react/dev/release/index.android.bundle.map
Additional context

Version of the SDK<EMAIL_ADDRESS>Version of React Native<EMAIL_ADDRESS>package.json and yarn.lock
Podfile and Podfile.lock
android/build.gradle and android/app/build.gradle

Here is the diff that solved my problem:
diff --git<EMAIL_ADDRESS><EMAIL_ADDRESS>index 6c53800..70ebef1 100644
---<EMAIL_ADDRESS>+++<EMAIL_ADDRESS>@@ -28,7 +28,7 @@ afterEvaluate {

         // locations and names are defined in "../../node_modules/react-native/react.gradle"
         def targetName = variant.name.capitalize() // e.g. Release
-        def targetPath = variant.dirName // e.g. release
+        def targetPath = variant.name // e.g. devRelease

         def reactConfig = getReactConfig(buildDir, targetName, targetPath)
         def reactRoot = file(reactConfig.root)

Hi @bennettp123, thanks for reaching out!
Thanks for providing all this input, I've been able to reproduce the issue on my end and I am working on a fix.
I'll let you know once it is released.


errors after run "npm install"

Dear Author,
Today, I start a new project by the following steps:

koatty new projectName
cd ./projectName
npm install

then the above errors shows, pls help.
Thank you in advance!

The think_validtion package that the framework depends on fails to download properly. You can try to switch the npm image: nrm use taobao

The think_validtion package that the framework depends on fails to download properly. You can try to switch the npm mirror:
npm i -g nrm

nrm use taobao

or used
yarn install

Hi @thinkkoa, thanks for your reply!!
I tried your suggested cmd:

npm i -g nrm
nrm use taobao
npm install

As well I updated my nodejs version to v12.16.1, it is the latest stable version.
when I run 'npm start' I got something new:

Sorry for troubling.

Confirm the koatty version in your project package.json is the latest version
"koatty": "^ 1.19.3"

If you pull the koatty_demo project, please git pull again, the problem has just been fixed

Finally, don't forget that the cli tool must also be upgraded to 1.19.x
npm i -g koatty_cli

@richenlin
I run 'npm i -g koatty_cli@latest' and 'npm i -g koatty_cli', both way, my koatty version is<EMAIL_ADDRESS>I dont't know how to upgrade this. pls help me.
By the way, if I wanna to use 'https://github.com/Lierrmm/Node-CallOfDuty' in my project.
Is it possible?
I install this module via 'npm install call-of-duty-api --save', however it says can not find this module.
import { CodAPI } from "call-of-duty-api"

1、Recommend using yarn to manage dependencies
curl -o- -L https://yarnpkg.com/install.sh | bash

upgrade or install module:
yarn add<EMAIL_ADDRESS>
2、This project is not packaged as an npm module. You can download the index.js file locally and rename it "CallOfDuty.js"
Introduced in the program:
` const CallOfDuty = require ("./ CallOfDuty.js"); `

@richenlin  did a great favor to me,  thank you so much for your fast reply!


Iptables line for Crowdsec-firewall-bouncer not inserted for Docker-user at reboot

Hello, I use Crowdsec with a docker install. I have activated the firewall bouncer. It seems to be working well. But I meet the following issue : when restarting the host, I check Iptables and see that the Docker-user line is not inserted, although the crowdsec-firewall-bouncer.yaml includes it. I then have to restart the bouncer (sudo systemctl restart crowdsec-firewall-bouncer)  and then the line gets inserted. System is RaspberryPiOS 64-bit on a Raspberry Pi 4B, 8 Go.
Docker-compose file
---
version: "2.1"
services:
  swag:
    image: lscr.io/linuxserver/swag:latest
    container_name: swag
    cap_add:
      - NET_ADMIN
    environment:
      - PUID=1001
      - PGID=1001
      - TZ=Europe/Paris
      - URL=xxx.fr
      - VALIDATION=http
      - SUBDOMAINS=heim,vault,hauk,webdav,searx,file
#      - CERTPROVIDER= #optional
#      - DNSPLUGIN=cloudflare #optional
#      - PROPAGATION= #optional
#      - DUCKDNSTOKEN= #optional
      -<EMAIL_ADDRESS>#optional
      - ONLY_SUBDOMAINS=true #optional
#      - EXTRA_DOMAINS= #optional
      - STAGING=false #optional
    volumes:
      - ./config:/config
      - logs:/config/log
    ports:
      - 443:443
      - 80:80 #optional
    restart: unless-stopped
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    networks:
      secure_net:
        ipv4_address: <IP_ADDRESS>
  crowdsec:
    image: crowdsecurity/crowdsec:latest
    restart: unless-stopped
    container_name: crowdsec
    environment:
      #this is the list of collections we want to install
      #https://hub.crowdsec.net/author/crowdsecurity/collections/nginx
      COLLECTIONS: "crowdsecurity/nginx"
      GID: "${GID-1001}"
      CROWDSEC_BOUNCER_API_KEY: "xxx"
      TZ: Europe/Paris
    depends_on:
      - 'swag'
    volumes:
      - ./crowdsec/acquis.yaml:/etc/crowdsec/acquis.yaml
      - logs:/var/log
      - /var/log/auth.log:/var/log/auth.log
#      - /var/log/mail.log:/var/log/mail.log
      - crowdsec-db:/var/lib/crowdsec/data/
      - crowdsec-config:/etc/crowdsec/
    ports:
      - 8081:8080
    networks:
      secure_net:
        ipv4_address: <IP_ADDRESS>
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
#  dashboard:
#    #we're using a custom Dockerfile so that metabase pops with pre-configured dashboards
#    image: eirikr70/metabaseforcrowdsec:arm64
#    restart: always
#    container_name: metabase
#    ports:
#      - 3000:3000
#    environment:
#      MB_DB_FILE: /data/crowdsec.db
#      MGID: "${GID-1001}"
#    depends_on:
#      - 'crowdsec'
#    volumes:
#      - crowdsec-db:/metabase-data/
#    networks:
#      secure_net:
#        ipv4_address: <IP_ADDRESS>

volumes:
  logs:
    external: true
  crowdsec-db:
  crowdsec-config:

networks:
  secure_net:
    ipam:
      driver: default
      config:
        - subnet: <IP_ADDRESS>/24

/etc/crowdsec/bouncers/crowdsec-firewall-bouncer.yaml
mode: iptables
pid_dir: /var/run/
update_frequency: 10s
daemonize: true
log_mode: file
log_dir: /var/log/
log_level: info
api_url: http://localhost:8081/
api_key: xxx
disable_ipv6: true
deny_action: DROP
deny_log: false
supported_decisions_types:
  - ban
#to change log prefix
#deny_log_prefix: "crowdsec: "
#to change the blacklists name
#blacklists_ipv4: crowdsec-blacklists
#blacklists_ipv6: crowdsec6-blacklists
#if present, insert rule in those chains
iptables_chains:
  - INPUT
#  - FORWARD
  - DOCKER-USER

CAPI and LAPI
eric@vault:~/swag $ sudo docker exec crowdsec cscli capi status
time="10-02-2022 11:32:50 PM" level=info msg="Loaded credentials from /etc/crowdsec/online_api_credentials.yaml"
time="10-02-2022 11:32:50 PM" level=info msg="Trying to authenticate with username xxx on https://api.crowdsec.net/"
time="10-02-2022 11:32:50 PM" level=info msg="You can successfully interact with Central API (CAPI)"
eric@vault:~/swag $ sudo docker exec crowdsec cscli lapi status
time="10-02-2022 11:32:58 PM" level=info msg="Loaded credentials from /etc/crowdsec/local_api_credentials.yaml"
time="10-02-2022 11:32:58 PM" level=info msg="Trying to authenticate with username localhost on http://<IP_ADDRESS>:8080/"
time="10-02-2022 11:32:58 PM" level=info msg="You can successfully interact with Local API (LAPI)"

It seems that the bouncer service, although enabled, doesn't start at reboot.

it has been fixed for debian (and is being shipped with upcoming release)


Upgrade to ldaptive 1.0.6

This update fixes a problem with LPPE and LDAP AuthN where LDAP warnings are reported and caught by the CAS server erroneously, resulting the flow to show warnings when here is none appropriate for CAS to show.

https://github.com/Jasig/cas/commit/f537fdcb4cf2940a970fb8909c5bad4ff2954119


Source map config

added source map logic

Current coverage is 29.10%

Merging #1 into master will decrease coverage by -9.63% as of a00a6c6

@@            master     #1   diff @@
=====================================
  Files            6      8     +2
  Stmts          111    213   +102
  Branches        12     24    +12
  Methods          0      0
=====================================
+ Hit             43     62    +19
  Partial          0      0
- Missed          68    151    +83

Review entire Coverage Diff as of a00a6c6

Powered by Codecov. Updated on successful CI builds.


Cannot catch and reraise exception with context on .compute()

What happened:
I cannot catch and reraise an exception with context while operating on a dask dataframe. The desired context in this case is the column name that could not be parsed.
In my own use case I am applying a number of parsing functions across the columns in my dataframe. Occasionally a parser will fail and I would like to know which column failed to identify the associated column/function needing attention. Wrapping my parsers with a try-catch to reraise an exception with the desired context does not work.
What you expected to happen:
I expect the dask_parser() to behave like pd_parser() where the IntCastingNaNError is caught and re-raised with the additional context indicating the column name.
Minimal Complete Verifiable Example:
import dask.dataframe as dd
import numpy as np
import pandas as pd

df = pd.DataFrame({'int_col': [None, 1, 2, 3]})
ddf = dd.from_pandas(df, npartitions=1)

def pd_parser(srs):
    try:
        return pd.to_numeric(srs).astype(np.int64)
    except Exception as e:
        raise ValueError(f'Could not parse {srs.name}') from e

def dask_parser(srs):
    try:
        return dd.to_numeric(srs).astype(np.int64)
    except Exception as e:
        raise ValueError(f'Could not parse {srs.name}') from e

for col in df.columns:
    try:
        df[col] = pd_parser(df[col])
    except ValueError as e:
        print('Caught pandas parse failure:', e)

Caught pandas parse failure: Could not parse int_col

for col in ddf.columns:
    try:
        ddf[col] = dask_parser(ddf[col])
        ddf.compute()
    except ValueError as e:
        print('Caught dask parse failure:', e)

Caught dask parse failure: Cannot convert non-finite values (NA or inf) to integer

Anything else we need to know?:
It makes sense that the column assignment ddf[col] = dask_parser(ddf[col]) registers a delayed computation that is processed when .compute() is called, but the fact that dask_parser()'s try-catch wrapper gets skipped seems like an issue.
Environment:

Dask version: 2021.11.2
Python version: 3.9.4
Operating System: Windows 10/WSL
Install method (conda, pip, source): pip

Thanks for raising this issue and including a reproducible example. The issue is that dd.to_numeric(srs).astype(np.int64) does not raise an error for dask. Not until you call compute. So the try catch that you are putting in the dask_parser will never be hit.
To get the behavior that you are after, you'd have to write a custom function and then map that to each partition of the dataframe. This would look like:

def dask_parser(df):
    for col in df.columns:
        try:
            df[col] = pd.to_numeric(df[col]).astype(np.int64)
        except Exception as e:
            print(f'Could not parse {col}', e)
    return df

ddf.map_partitions(dask_parser).compute()


Remove CLA requirements from the documentation

CLA is being replaced by DCO. Please remove all mentions of CLA from /docs folder.

Done


NTR response to high population density

Term: response to high population density
Definition: Any process that results in a change in state or activity of a cell or an organism (in terms of movement, secretion, enzyme production, gene expression, etc.) as a result of a an excessive number of individuals living per unit of an area (e.g. mass·m−3). source dictionary.com GOC:mr
Synonym: exact crowding
exact over-population
is_a GO:0006950 response to stress
PMID:26439857

http://www.ncbi.nlm.nih.gov/pubmed/?term=26439857
"The stress conditions elicited by HSD [high stocking density] altered the response of the glucosensor systems based on mitochondrial activity, sweet taste receptor, and SGLT-1 in the liver, and LXR and SGLT-1 in the BB [Brockmann bodies]."

"...as a result of a an excessive number of individuals living per unit of an area."  How do we define 'excessive'?
@cmungall

Tanya,
how about:
the level at which an organism (including on the cellular level)? experiences sustained encroachment by other organisms interfering with it's ability to function normally, with ease and sufficient freedom of movement.
based on dictionary.com definition of excessive and comfort?
?
Mike

Michael E. Rice AgBase biocurator
School of Animal and Comparative Biomedical Sciences
Thomas W. Keating Bioresearch Building
1657 E. Helen St.
Tucson, AZ 85721
The College of Agriculture and Life Sciences
The University of Arizona
520 955-2745
mrice<EMAIL_ADDRESS>
From: Tanya Berardini<EMAIL_ADDRESS>Sent: Friday, October 16, 2015 1:46 PM
To: geneontology/go-ontology
Cc: Rice, Michael E - (mrice)
Subject: Re: [go-ontology] NTR response to high population density (#12100)
"...as a result of a an excessive number of individuals living per unit of an area." How do we define 'excessive'?
@cmungallhttps://github.com/cmungall

Reply to this email directly or view it on GitHubhttps://github.com/geneontology/go-ontology/issues/12100#issuecomment-148830320.

That could get a bit problematic.
I'm comfortable without a threshold. The exposure/treatment class would be a neutral rise/increase. Responses could kick in for different individuals at different levels, but we don't need to state this.
Not so different from other response classes

How about:
Any process that results in a change in state or activity of a cell or an organism (in terms of movement, secretion, enzyme production, gene expression, etc.) as a result of a higher than normal number of multicellular organisms living per unit area.
What's normal?  Or is it ok for that to be open to interpretation? Should we restrict to multi-cellular organisms so that we don't encompass cellular (think yeast, bacteria) population densities?  Or do we want to leave the term open for usage by unicellular organisms?

What do you think of my latest proposed definition?

I think we'll go with this for now. Can be refined when we have the
exposure ontology in place
On 21 Oct 2015, at 13:35, Tanya Berardini wrote:

What do you think of my latest proposed definition?

Reply to this email directly or view it on GitHub:
https://github.com/geneontology/go-ontology/issues/12100#issuecomment-150016862

Added:
[Term]
id: GO:0090664
name: response to high population density
namespace: biological_process
def: "Any process that results in a change in state or activity of a cell or a multicellular organism (in terms of movement, secretion, enzyme production, gene expression, etc.) as a result of a higher than normal number of multicellular organisms living per unit area." [GOC:mr, PMID:26439857]
synonym: "response to crowding" EXACT [GOC:mr]
is_a: GO:0006950 ! response to stress
is_a: GO:0044707 ! single-multicellular organism process
is_a: GO:0051707 ! response to other organism


Refine repr to avoid duplication of geometry type label

Originally noted on #1391
The current __repr__ produces something like <shapely.Point POINT (0 0)>, which has duplication between the class name and the WKT type (except for Z types).
One way to solve this would be to omit the first part of the WKT type from __repr__:

Point(0,0) => <shapely.Point (0 0)>
Point(0,0,0) => <shapely.Point Z (0 0 0)>
Point() => <shapely.Point EMPTY>
GeometryCollection(Point(0,0,0)) => <shapely.GeometryCollection Z (POINT Z (0 0 0))>

The only case where this gets a little awkard is for goemetry collections, which use the WKT all-caps type names for members, but likely not that big a deal.

Personally, I like the <shapely.classname ...> convention, because it clearly signals this thing is an instance of classname, which also means that I can look up classname in the API / shapely docs to find out more about it, and also use shapely.classname() to construct instances like it.  While the all-caps WKT types have roughly the same level of searchability in the docs, I can't make a new intance via shapely.WKTTYPE() (though as you note the coordinates couldn't be used verbatim to create a new instance either).
The shapely.classname construct is also potentially useful in something like a GeoPandas GeoSeries or numpy array of geometries, whereas a list / array / GeoSeries of [<POINT(1 2)>, <POINT(3 4)>, ...] is perhaps less clear about what those are (though that may just be a holdover from the days of needing to distinguish between shapely objects and their associated pygeos objects in a GeoSeries).  However, for comparison, neither numpy nor pandas / GeoPandas adds the package name prefix to their __repr__; they only show the classname.

Yeah, I mentioned this duplication issue also tangentially in the original issue about updating the repr (https://github.com/shapely/shapely/issues/1248). It's indeed not ideal. A few quick thoughts (but without clear answers):

I also like including the actual class name (so shapely.classname, now they are top-level, for the reasons Brendan mentions
However, I also like having the full WKT, and not only part of it. Because that makes it easier to copy paste the WKT part of the repr and use it to construct the data (eg to reproduce an issue, while debugging, ..., although this of course only works for small non-truncated geometries anyway), and it also makes it clearer that it is WKT.
Those two items above are of course in conflict if we don't want to have the duplication ..

When having something like <shapely.Point Z (0 0 0)>, I find this hybrid between the python class and the WKT representation also not ideal, because "Point Z" is not an actual Python class, but neither the fully correct WKT (although the shapely WKT parser doesn't care about the lower case, so it actually works to parse that).

For debugging via WKT, the .wkt attribute on a geometry is pretty convenient; the untruncated WKT can get really long for a __repr__, so while we can truncate less, I'm not sure we should stop truncating it.

Agree that truncated WKT is best for __repr__, since some geometries can be absolutely massive (e.g. PostGIS has a 1GB geometry size limit; shapely/GEOS probably has a much higher limit). There are .wkt, .wkb_hex, etc. output accessors. An alternative to truncation is to summarize the geometry by the number of parts, coordinates, interiors, etc. see ST_Summary(geometry).
As for the classname Point vs POINT, sure let's go with the titlecase form. Even if it is a slightly inconsistent hybrid with (e.g.) "Point Z" or "GeometryCollection (POINT ...)" as noted previously. I don't see why it needs to perfectly represent the classname.
As for the package name prefix, I'm not sure what is best. <Point Z (1 2 3)> looks fine to me, and spares 8 characters. Would a shapely. package name prefix help resolve any confusion from anyone debugging code where many other packages are used? (e.g. matplotlib.patches.Polygon). I can go either way on this one.

From discussion of @jorisvandenbossche @caspervdw @sgillies @brendan-ward today, all were agreed with suggestion from @mwtoews here to use truncated WKT in angle brackets: <POINT (0, 0)> (with all-caps output from GEOS)

@brendan-ward I'm actually swayed by titlecase class name in the WKT now, e.g. <Point (0 0)>, but am indifferent on the package name prefix .shapely. But don't let me stop progress, as the proposed PR is a good improvement.

I think the issue we had was that we could pass through <...WKT...> with no change to the WKT emitted by GEOS other than truncating and wrapping in angle brackets, whereas properly doing titlecase (for main and subgeometries) means doing a find / replace on the truncated WKT string (only doing it on the main geometry but not subgeometries that appear in the truncated version doesn't seem great).  So titlecase seems like extra overhead that wasn't strictly necessary...


Differences from the official wrapper

Hi
The official has this wrapper, can you tell me the difference?
https://github.com/sqlite/sqlite-wasm

Hi there. The package you linked is what SQLocal wraps. sqlite-wasm provides the WebAssembly build of SQLite3 and low-level bindings. SQLocal builds on that with higher-level abstractions for interacting with sqlite-wasm.


Instagram Clone Added

🛠 Fixes Issue
Closes #222

👨💻 Changes proposed

✔ Check List (Check all the applicable boxes)

[x] My code follows the code style of this project.
[x] This PR does not contain plagiarized content.
[x] The title of my pull request is a short description of the requested changes.

📷 Screenshots

Can you please attach a deployed link @Rakesh9100

Can you please attach a deployed link @Rakesh9100

https://rakesh9100.github.io/InstagramClone/

LGTM💜


Rewrite tests in TypeScript

Rewriting the tests in TypeScript should help us further identify places where TypeScript support can be improved.
Steps

Rename a single .test.js to .test.ts
Run npm test to identify errors
Start fixing the errors, making minimal changes to get the tests passing
Repeat step 2-3 until there are no more errors, or until you get stuck and want some extra eyes from someone else in the community
Open a pull request with your changes.

See https://github.com/probot/probot/pull/541 as an example
TODO

[x] test/context.test.js (https://github.com/probot/probot/pull/541)
[x] test/application.test.js
[x] test/github.test.js
[x] test/github/graphql.test.js
[ ] test/index.test.js
[x] test/logger.test.js
[ ] test/middleware/logging.test.js
[ ] test/apps/default.test.js
[ ] test/apps/sentry.test.js
[ ] test/apps/stats.test.js
[ ] test/private-key.test.js
[x] test/resolver.test.js
[ ] test/serializers.test.js
[x] test/server.test.js
[ ] test/webhook-proxy.test.js

Hey, I am new at contributing to open source and development and I want to solve this issue. Can someone guide me what should I do and how to approach this problem?

If I'm not mistaken, all tests have been migrated to TypeScript or have a PR open to migrate them to TypeScript. 💯

Hey, is this issue solved? Or I can contribute to it?

Not stale.

Hello!
I'm new to this project, and I thought this would be a good way for me to start contributing.
I see that most of the tests have been converted to TypeScript, except index.test.js and webhook-proxy.test.js
Perhaps I could finish up with the two tests?


Add learning recourse in chinese angular

Add Angular learning resoure in index.md of chinese angular-resources

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Closed and Reopened this PR to attempt to resolve a specific Travis build failure.

@superTO
Thank you for your contribution to the page! 👍 We're happy to accept these changes and look forward to future contributions.


Elasticsearch Helm chart: Set -Dlog4j2.formatMsgNoLookups = true in jvm.options

I was trying to update Elasticsearch cluster in AKS using helm chart. I wanted to set it up with option -Dlog4j2.formatMsgNoLookups = true in jvm.options file in the pods but using values.yaml file, I can only add it in /usr/share/elasticsearch/config/log4j2.properties. I see only option to add it as below:
esConfig:
#  elasticsearch.yml: |
#    key:
#      nestedkey: value
  log4j2.properties: |
    -Dlog4j2.formatMsgNoLookups = true

Please let me know if the above setting should be enough for log4j vulnerability primary fix and how to add the parameter in the jvm.options file directly? Are we getting a new updated chart soon?

-Dlog4j2.formatMsgNoLookups is a java option.
Use esJavaOpts instead:
esJavaOpts: -Dlog4j2.formatMsgNoLookups

is it possible to somehow create a jvm.options.d/ file using this chart as it's better than overriding default jvm.options file? we use a custom vertical scaler for elastic that overrides esJavaOpts dynamically so we need another solution. I was thinking if maybe extraInitContainers could do the trick?

Hi, I think the best solution for now is to use esJavaOpts as mentioned by @ebuildy.
Meanwhile, we are working toward publishing a new 7.16.1 release soon.

"The ES_JAVA_OPTS variable overrides all other JVM options. We do not recommend using ES_JAVA_OPTS in production."
from the es docs
Anyway, I'm using it for now, so thanks!

FYI, 7.16.1 and 6.8.21 releases just got released.
These are the versions to use for the log4j fix.

@afirth you are absolutely right! I will post the Helm chart we are using in production tomorrow and propose a PR to set /usr/share/elasticsearch/config/jvm.options.d/ files.

hello @afirth , here the PR https://github.com/elastic/helm-charts/pull/1496/files


⚠ BCR Bot has degraded performance

In 6bb18aa, BCR Bot (https://bcr.alternativasinteligentes.com/BCRApi/web/chatbot) experienced degraded performance:

HTTP code: 200
Response time: 888 ms

Resolved: BCR Bot performance has improved in 829deca.


Add 'sub_type' as a valid config item back to EnsEMBL::Draw::GlyphSet…

…::flat_file
Since this change (https://github.com/Ensembl/ensembl-webcode/commit/f2f2654b8520b67fb5bea028406316708f676094),
the 'sub_type' config item has been replaced with 'type'. But there are still places
where 'sub_type' is used instead.
Fixes ENSEMBL-4628.

If this change is fine, could you please also apply it to the release/86 and master branches?

I'll apply this as it looks fine: if that parameter doesn't exist, it should have no effect. But I don't really understand this area of code at all. Could I ask if @Zhicheng-Liu and @ens-ap5 could talk together when Anne is back to check that it really is ok, or at least so that Anne knows? Thanks!


⚠ Processors has degraded performance

In 6e1be3a, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 46 ms

Resolved: Processors performance has improved in 3c4420e.


[Epic] Debugging (docs only)

Overview
Synthesize the notes in https://github.com/pulumi/pulumi/issues/1372 on ways to enable debugging for Pulumi programs into high quality doc pages on how to configure debugging today for each Pulumi language and each of vscode and IntelliJ. This isn't product work, only doc work. If there's further product work we could follow up with new issues on the improvements that would simplify the experience.
A top-level "Debugging" section should live next to the existing Testing section.
Work Items ⚙

[ ] Node.js
[ ] Python
[ ] .NET
[ ] Go
[ ] Java

See also https://github.com/pulumi/pulumi-hugo/issues/1165.


Update to Spring Boot 2.1.5.RELEASE

ETA for this? I was disappointed it wasn't available, as previous releases have come out the same day as the Boot release.

@OrangeDog sorry for the delay, my bathroom ended up flooding the night before, and we've been doing clean-up.
I've moved the release to Monday, just to give me some space - if I can get to it earlier, then I certainly will.

Note, @OrangeDog, that you can also track the release date on the Milestone itself.

Fixed via c341f87b091cf18519682c5cc1496ffe3090477d


Explorer: Verify and display package source code

Enable:

Smart contracts, or package, owners to be able to submit their source code for verification
e.g. https://etherscan.io/verifyContract

Not required, but on slack there was a  discussion on source versioning

Display source code on package page with verified icon

Closing, as it's a overlap with https://github.com/MystenLabs/sui/issues/1212


Add support for baseline alignment to TextField (RenderEditable)

RenderEditable lacks a computeDistanceToActualBaseline override.
Fixes https://github.com/flutter/flutter/issues/13004


[DRAFT] fix: Make it possible to debug tests in VSCode via Mocha Test Explorer (820)

Ticket
#820
Description
(WIP)!
Initial proof of concept for using Mocha Test Explorer to run tests.
To use this:

Open the vscode workspace
Install the Mocha Test Explorer extension in VSCode
Open the Testing panel, hit the "debug" icon to debug tests. Under the hood, this will run the debug target that is listed in launch.json, which runs the relevant task in tasks.json. In turn, this runs the scripts in mocha_setup

Screenshots / Demo Video
N/A for now
Testing
N/A
Checklist

[x] Provided ticket and description
[x] Your PR title contains the ISSUE ticket number e.g "86: ..."
[x] Provided screenshots/demo
[x] Provided testing information
[x] Provided adequate test coverage for all new code
[x] Run automated tests (docker compose exec app yarn test)
[] Added PR reviewers
[ ] Ensure at least 1 review before merging

Next steps
Limitations of this patch:

We have bigger issues here about how we're resetting the db - there are two files that are doing this, and they're competing -- reset-db.sh and resetdb.js.
We should make it possible to not have to run these .sh prep scripts at all - I think resetdb.js is the way forward here for reseting tests appropriately, we should make that fix.

Thanks, @NatHillardUSDR !
I tried to use this, but get the error shown below. I don't know if this is because I'm on Windows, or that there is something going on with Docker (assuming that you're still not using Docker), or something else. My Docker images/services are all running fine. This is not a high priority for me if you want to work on other issues. Note that I've started a wiki page about this, and will update it as necessary.
Error: Cannot find module 'async-batch'
Require stack:
- /home/chris/github/usdr-gost/packages/server/src/arpa_reporter/services/records.js
- /home/chris/github/usdr-gost/packages/server/src/arpa_reporter/services/generate-arpa-report.js
- /home/chris/github/usdr-gost/packages/server/__tests__/arpa_reporter/server/services/generate-arpa-report.spec.js
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:933:15)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (/home/chris/github/usdr-gost/packages/server/src/arpa_reporter/services/records.js:11:20)
    at Module._compile (node:internal/modules/cjs/loader:1103:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1155:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    '/home/chris/github/usdr-gost/packages/server/src/arpa_reporter/services/records.js',
    '/home/chris/github/usdr-gost/packages/server/src/arpa_reporter/services/generate-arpa-report.js',
    '/home/chris/github/usdr-gost/packages/server/__tests__/arpa_reporter/server/services/generate-arpa-report.spec.js'
  ]
}

Thanks for trying it out, @chrisxkeith !
My original branch had branched off of _staging a little while ago, but the latest version rebases on today's _staging.
When I ran this locally just now to repro, I found a similar issue. I had to do two things to get this working again:

Run yarn to pickup / install the latest libraries (async-batch had been added as part of a recent patch), and
Set my .env file up to point to localhost (I had been pointing to postgres, the name of the server in docker)

Based on your above error I'm thinking this might be #1, but you may also be hit by #2!

Ah, right! This setup as it stands won't actually work with Docker - that may have to wait for the fix for https://github.com/usdigitalresponse/usdr-gost/issues/819 . I can see about a smaller fix just to enable debugging tests in docker

Closing as stale


the model not converge?

Hello, when I run fsrcnn and EDSR, the model does not converge. What's the matter?

Hello, when I run fsrcnn and EDSR, the model does not converge. What's the matter?

May be the initial learning_rate is to big, I think you can try  lr=0.0001


Provisioning Site Down

Using the link for Microsoft 365 learning pathways solution page from page Custom Provision directs you to a 'site can't be reached' error. I've tried this on several computers and browsers, plus on different networks.

@sltyler1 , thank you for reporting this.
Unfortunately, Lookbook is down. Please follow the instructions in the provided link to provision Microsoft 365 learning pathways.
https://github.com/pnp/custom-learning-office-365/blob/main/installation/README.md

The Lookbook isn't down: it's no more. I did a blog post about this today when I saw this thread. https://sympmarc.com/2024/07/29/sharepoint-lookbook-whats-happened-to-it/

So, manual steps seems to be here : Install PathWay

Closing as answered


please, add a shortcut file folder to the Home screen on android programmatically [duplicate] TANKS good 1hkr

please, add a shortcut file folder to the Home screen on android programmatically [duplicate] TANKS good 1hkr

I don't understand. Can you explain?

Will reopen once there is more info.

I believe @wansm is asking for the ability to create shortcuts on the Home screen to files and folders, which is a pretty useful feature of other FMs. I have attached an example of this functionality to this post.


Development: Persist logs for 90 instead of 7 days.

Checklist
General

[x] I chose a title conforming to the naming conventions for pull requests.

Motivation and Context
Currently the log files are persisted for 7 days: e.g. today on August 29, the logfile for the day is present as well as 7 archives with gzipped-logs (one for each of the last 7 days).
We want to keep the logs longer to enable further analysis of issues/performance.
Description
Change the max history to 90 (see the documentation).
Steps for Testing
Due to the nature of this change, it can only be tested locally.
The testing is performed by creating files that should be removed and files that should be persisted and checking whether the correct files are removed.

Set the following temporary values in your config:
1.1 logging.logback.rollingpolicy.clean-history-on-start: true: Usually the cleanup is only done when rolling over the logfile (= on midnight), but for testing purposes, it is easier, if the cleanup is performed on the startup of the application
1.2 logging.file.name: /some/path/on/your/local/filesystem/artemis.log: This specifies the path for the file of the current day. Choose a location that you can access on your local filesystem
Create some files that should be persisted (=files that have a date of the last 90 days):  touch /some/path/on/your/local/filesystem/artemis.log.2022-08-27.0.gz  /some/path/on/your/local/filesystem/artemis.log.2022-07-27.0.gz
Create some files that should be removed (=older than 90 days): touch /some/path/on/your/local/filesystem/artemis.log.2022-05-27.0.gz  /some/path/on/your/local/filesystem/artemis.log.2021-05-22.0.gz
Start the server and ensure that the correct files are removed

Prerequisites:
Review Progress

Code Review

[x] Review 1
[x] Review 2

Manual Tests

[x] Test 1
[ ] Test 2

This one took me a while :D I guess the very old files weren't deleted in my setup, because there is a certain threshold of days after which logs don't get cleaned/deleted by logback.
Got the following config:
logging:
    logback:
      rollingpolicy:
          max-history: 90
          clean-history-on-start: true
    file:
        name: /opt/artemis/data/artemis.log

This is before and after restarting the artemis container:

Later I retried with old but not too old time values and with indexes. Afaik everything max one month before the max-history value should be fine. Everything is working that way.
Besides that should we maybe set totalSizeCap or at least recommend setting it somewhere so that it's deleting stuff before it is running full with logs?

Thanks for your in-depth analysis! It worked on my machine for some reason but I adjusted the timestamp in the description now.
I will take a look at the totalSizeCap parameter.


Stop pushing coverage information to Coveralls from Travis CI

as we don't test the io modules there.
Now Coveralls gets coverage information only from CircleCI
cf #506

OK.


Adds sample script listing orphaned redirects. Closes #1717

Adds sample script listing orphaned redirects. Closes #1717

Coverage remained the same at 100.0% when pulling 070d7f47b3f9726ac1971cd8b7f2eb053f71b795 on appieschot:feature/samplescript-1717 into a31ff5576fd426bb1a9880a86de740af24d5083c on pnp:master.

Hey @appieschot 👋🏻 I'm trying to test the script and running up against some issues, are you able to provide some guidance on how to test the script?
I have performed the following steps to prepare my development tenant.

Created new Communications site, https://tenant.sharepoint.com/sites/SourceSiteSwap
Executed Invoke-SPOSiteSwap cmdlet,
Invoke-SPOSiteSwap -SourceUrl "https://tenant.sharepoint.com/sites/SourceSiteSwap" -TargetUrl "https://tenant.sharepoint.com" -ArchiveUrl "https://tenant.sharepoint.com/sites/ArchiveSiteSwap"
When navigating to https://tenant.sharepoint.com/sites/SourceSiteSwap I am redirected to https://tenant.sharepoint.com as expected

When I run the Bash and PowerShell versions of the script, I get the below errors ...
Checking old URL for redirect https://tenant.sharepoint.com/sites/SourceSiteSwap
Redirects to
curl: no URL specified!
curl: try 'curl --help' or 'curl --manual' for more information
URL exists:

PS /Users/garrytrinder/Code/cli-scripts> ./list-orphaned-redirects.ps1
Invoke-WebRequest: /Users/garrytrinder/Code/cli-scripts/list-orphaned-redirects.ps1:4:19
Line |
   4 |    $redirectSite = Invoke-WebRequest -Uri $_.Url -MaximumRedirection 0
     |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     | Response status code does not indicate success: 308 ().

Checking old URL for redirect https://tenant.sharepoint.com/sites/SourceSiteSwap

Weird! Will check after my holidays 😎

Made a screw-up and closed this branch; not quite sure where it went side ways but still should be fixed :)

Merged manually 🎉


Add integration tests for StorageCredentials: Create, Delete, Get, List, Update, Validate

Please add integration tests for the following APIs:

https://docs.databricks.com/api/workspace/storagecredentials/create
https://docs.databricks.com/api/workspace/storagecredentials/delete
https://docs.databricks.com/api/workspace/storagecredentials/get
https://docs.databricks.com/api/workspace/storagecredentials/list
https://docs.databricks.com/api/workspace/storagecredentials/update
https://docs.databricks.com/api/workspace/storagecredentials/validate

done


Repository mode

Implement a mode, which separates static operations from models. So that User.find will not be possible in this mode. A repository need to be created instead like
const sequelize = new Sequelize({repositoryMode: true, ...})
const userRepository = sequelize.getRepository(User);
userRepository.find(...);

This should separate the initialization of a model to the repository model as well.

@snewell92 @bilby91 any thoughts on this? :)

@RobinBuschmann I really like the idea of decoupling the model from the data access. In the project I'm working on in node at the moment I'm using this pattern.
This is my base repository:
// Import need to use * https://github.com/types/sequelize/issues/20
import { InstanceUpdateOptions, WhereOptions } from "sequelize"
import * as Sequelize from "sequelize-typescript"

interface ICreateOrUpdateOptions<K> extends Sequelize.ICreateOptions {
  createOrUpdateWith?: Partial<K>
}

export class BaseRepository<T extends Sequelize.Model<T> & K, K> {
  protected relation: typeof Sequelize.Model

  constructor(relation: typeof Sequelize.Model) {
    this.relation = relation
  }

  public async all(): Promise<K[]> {
    return this.relation.all<T>()
  }

  public async where(attributes: WhereOptions<T>, options: Sequelize.IFindOptions<T> = {}): Promise<K[]> {
    return this.relation
      .findAll<T>({
        ...options,
        where: attributes,
      })
  }

  public async first(options: Sequelize.IFindOptions<T> = {}): Promise<Nullable<K>> {
    return this.relation.findOne<T>({ ...options, order: ["id"] })
  }

  public async find(id: number): Promise<K> | null {
    return this.relation.findById<T>(id)
  }

  public async count(conditions?: WhereOptions<T>): Promise<number> {
    return this.relation.count({
      where: conditions ? conditions : {},
    })
  }

  public async create(attributes: any, options: Sequelize.ICreateOptions = {}): Promise<K> {
    return this.relation
      .create<T>(attributes, options)
  }

  public async update(id: number, attributes: Partial<K>, options: InstanceUpdateOptions = {}): Promise<K> {
    const obj = await this.relation.findById<T>(id)

    return obj.update(attributes, { ...options, returning: true })
  }

  public async updateBy(
    searchAttributes: WhereOptions<T>,
    attributes: Partial<K>,
    options: InstanceUpdateOptions = {},
  ): Promise<K> {
    const object = await this.findBy(searchAttributes)

    return this.update((object as any).id, attributes)
  }

  public async destroy(id: number, options = {}): Promise<void> {
    await this.relation
      .destroy({
        ...options,
        where: {
          id,
        },
      })
  }

  public async destroyAll(): Promise<void> {
    await this.relation
      .destroy({
        where: {},
      })
  }

  public async findBy(attributes: WhereOptions<T>, options: Sequelize.IFindOptions<T> = {}): Promise<Nullable<K>> {
    return this.relation.findOne<T>({
      ...options,
      where: attributes,
    })
  }

  public async findOrCreateBy(attributes: WhereOptions<T>, options: ICreateOrUpdateOptions<K> = {}): Promise<K> {
    return this.findBy(attributes)
      .then((object) => {
        if (object) {
          if (options.createOrUpdateWith) {
            return this.update((object as any).id, options.createOrUpdateWith)
          } else {
            return object
          }
        }

        if (options.createOrUpdateWith) {
          Object.assign(attributes, options.createOrUpdateWith)
        }

        return this.create(attributes, options)
      })
  }

  public async exists(attributes: WhereOptions<T>): Promise<boolean> {
    return this.relation
      .count({
        where: attributes,
      }).then((count) => count !== 0)
  }

  public async updateAll(where: WhereOptions<T>, attributes: Partial<K>, options: any = {}): Promise<number> {
    const [count] = await this.relation.update(attributes, { ...options, returning: true, where })

    return count
  }

  public async updateCreatedAt(id: number, newCreatedAt: Date): Promise<K> {
    const object = await this.relation.findById<T>(id)

    object.set({ createdAt: newCreatedAt })
    object.changed("createdAt")

    await object.save({ fields: ["createdAt"] })

    return object
  }
}

I thought about using a derived class of the actual model. This derived class will automatically be created when the model is passed to the sequelize instance (via new Sequelize({modelPaths: [...]}) or sequelize.addModels). So that sequelize will put all its information on the derived class reference and not on the actual one. sequelize.getRepository(User); would return the derived class reference then. The type inference can be achieved like this:
type NonAbstract<T> = {[P in keyof T]: T[P]};
type StaticMembers = NonAbstract<typeof Model>;
type Constructor<T> = (new () => T);
type ModelType<T> = Constructor<T> & StaticMembers;
type Repository<T> = ModelType<T>;

class Sequelize {
  ...
  getRepository<T extends Model<T>>(model: ModelType<T>): Repository<T> {}
}

Of course, the passed model do have the same type as the returned one. But the return value is the derived class reference.
But, what I already suggested with {repositoryMode: true}, this is an optional feature.
@bilby91 At least there is no need for creating another implementation like your BaseRepository anymore :) Can you see any issues with this?

So you mean
const user = await userRepository.findOne();
user instanceOf User // => false

?

@RobinBuschmann Exactly. Basically, user will be plain object with "form" T

@bilby91 Hmm, I think configuring the ORM via classes and annotations wouldn't be the right way then. So defining a class User which never gets instantiated is not what a user will expect from an ORM like that. I definitely got you're point, but sequelize doesn't seem to be the proper base for that - Sounds like a totally different ORM to me.
Defining models with object literals instead would be a better approach and would not create false expectations.
Since typescript's mapping types this would still give type safety and would save one's from defining duplicate interfaces. Sounds interesting, but shouldn't be part of sequelize-typescript. Do you agree with that?

@RobinBuschmann I sadly (in a good manner 😄) have to agree!

Decoupling data-access from model definition sounds really nice. Would make sequelize-typescript more flexible. I think it would be worth the additional complexity, and by introducing it via the repositoryMode option, it wouldn't even necessarily be a breaking change.

Hi, any advance on this? Just asking 😝🤭
Sent with GitHawk

Currently not, but this will be the next big thing after dropping sequelize v3 support what I will do. (Dropping sequelize v3 support is currently in progress :))

Hey @alejandrogkl, good job 👍
Can you create a pull request, so that we can discuss your code? 🙂

done

The PR in question is #345, if someone is looking for a link.

Repository mode is available since<EMAIL_ADDRESS>

I'm trying the same approach and I created a very simple repository
export class BaseRepository<T extends Sequelize.Model<T> & K, K> {
  protected relation: typeof Sequelize.Model

  constructor(relation: typeof Sequelize.Model) {
    this.relation = relation
  }
  public async find(id: number): Promise<K> | null {
    return this.relation.findById<T>(id)
  }
}

and I'm getting this error: The 'this' context of type 'typeof Model' is not assignable to method's 'this' of type 'new () => T'.   Cannot assign an abstract constructor type to a non-abstract constructor type.ts(2684)
on the this.relation.findById<T>(id)
Is there anything I can do to overcome this issue?

sequelize: 5.0.0-beta.15
sequelize-typescript: 0.6.7
typescript: 3.3.3333

Hi @SamiSammour
I found the solution, change
protected relation: typeof Sequelize.Model
to
protected relation: {new(): T} & typeof Sequelize.Model

@saefullohmaslul Genius! I was struggling to figure out how to store a typeof T and also be able to call its static methods on SO and this solved it!

Maybe I came too late, but can anyone explain more details to me the difference between repository mode and the other? I use sequelize-typescript with nestJs, and define Model like this:
@Table({ tableName: 'programs' })
export class Program extends Model<ProgramData, ProgramCreationAttributes> {
  @Column
  @ForeignKey(() => Subscription)
  subscriptionId: number

  @Column({ defaultValue: 0 })
  points: number

  @BelongsTo(() => Subscription)
  subscription?: NonAttribute<Subscription>
}

In service, I injected it like this:
export class ProgramService {
  constructor(
    @InjectModel(Program)
    private programRepo: typeof Program,
  ) {}

  async getOne(dto: FindProgramDto): Promise<Program | null> {
    return this.programRepo.findByPk(dto.programId)
  }
}

So, does it right? If I don't set repositoryMode to true, what do I need to update?


Update README details, site-wide settings and User Guide

Adapted README to EdRecord project.
Updated site-wide settings to EdRecord project and repository.
Updated Adding a student, Editing a student, Delete a student features in User Guide.

Codecov Report

Merging #55 (7729f41) into master (f6ae67b) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #55   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

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 f6ae67b...7729f41. Read the comment docs.


Add integration tests for java 15 through 17.

Resolves #144 .

Looks good to me.

With @michalbiesek's review here and verbal indication that he's good with this, I'm merging.


reverse proxy not working properly

I am trying to run streama under custom link:
Example.com/customname
And I cannot make it work. I kinda make work the first page but it redirects me to example.com/login/full
....
How to make the URL not eat away part of the path?

Can you post your Config?

Please reopen this issue when you have your config ready to share


Document write option in a better way

Right now it's not 100% obvious what needs to be passed to -w as an argument. The help text says  (default: yes if CI is set, otherwise no). but it took me some time to figure that out after looking at it after some time.
My proposal would be to explicitly say what needs to be passed for the W param here:
  -w W, --write=yes/no        Write changes to files (default: yes if CI is set, otherwise no).

We need to check what docopt actually allows here as valid values.
This should also be mentioned in the README as well.

I see the following options:
--y
Yes (without argument). Authorize potentially destructive actions for which the program would normally require confirmation. Examples: fsck(1), rz(1). this idea is taken from http://catb.org/~esr/writings/taoup/html/ch10s05.html and follows over time, frequently-used options in well-known Unix programs.

-w --write (without argument)


Passing undefined to catspeak_method and then calling the result, causes a mess with scopes!

What version of Catspeak are you using?
3.1.0
What happened?
Passing undefined to catspeak_method with a Catspeak function, causes the self to be undefined and other to be the previous self upon calling. It should at the very least not change self/other in this matter. Though as it's unlikely someone will use undefined as the scope, I'd find this to be a low priority.

I've looked into this and it might be a more involved change than I'm thinking. It might have to wait until I can make more destructive changes in a potential v4 of Catspeak.


Use Trunk to build and deploy demo web app

@coderedart did an excellent job converting eframe_template to using Trunk in https://github.com/emilk/eframe_template/pull/69 and it would be great to use Trunk for the egui demo app (egui.rs) too. That way we can deploy a new web app on each commit to master. We can also get rid of a lot of annoying scripts.

I'm on Fedora Silverblue 36 and was having misery to build egui so I launched a podman container for fedora rawhide.
Here are the steps I did to get it to build and run egui_demo_app successfully within a podman container:
There reference for building egui demo app for wasm:
https://github.com/emilk/egui/tree/master/crates/egui_demo_app
start fedora rawhide container:
podman run --net host -i -t fedora:rawhide /bin/bash

inside fedora rawhide container:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"
dnf install clang clang-devel clang-tools-extra speech-dispatcher-devel libxkbcommon-devel pkg-config openssl-devel libxcb-devel git-core cmake atk-devel cairo-devel gdk-pixbuf2-devel pango-devel gtk3 gtk3-devel binaryen jq emacs-nox
git clone https://github.com/emilk/egui.git
cd egui/
cargo build --release
cargo install --locked trunk
trunk build --release
./sh/start_server.sh &
./sh/build_demo_web.sh --open
###NOTE	it won't be able to open, but it did build the wasm module and placed it in the	docs directory.
 I'm not sure trunk supports that use case