No output; error in logs

Hi, after installing the rbac and deployment from the docs, I see this in the pod logs:
><EMAIL_ADDRESS>server /usr/src/app
> nodemon src/server/server.js

[nodemon] 1.18.6
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node src/server/server.js`
Listening on port 3000....
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:39) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 5)

The site works and serves a UI, but has no pods/ingresses/services.  Am I doing something wrong?

To install I literally copy/pasted the spekt8-deployment.yaml and  fabric8-rbac.yaml from the docs and then apply with kubectl create -f $file.

Hi, do you mind providing me with a little bit more information? Are you just saving the yaml files to your own code base and then applying it to your own cluster? Or are you using our code base? It looks like some promises are not being caught. If the UI is being served but has no pods/ingresses/services, it means it's not fetching from the Kubernetes api server properly and that could be because of various reasons.

Ran these commands with an activated kubeconfig.
git clone https://github.com/spekt8/spekt8.git
cd spekt8
kubectl apply -f fabric8-rbac.yaml
kubectl apply -f spekt8-deployment.yaml
kubectl port-forward deployment/spekt8 3000:3000
kubectl port-forward deployment/spekt8 3000:3000

This started the service, but only brought up a white screen.

Also after running kubectl logs -f $pod_id I got:
><EMAIL_ADDRESS>server /usr/src/app
> nodemon src/server/server.js

[nodemon] 1.18.7
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node src/server/server.js`
Listening on port 3000....
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:39) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

@ipfaffy Did you ever discover an answer to this?  I'm experiencing the same thing on an EKS installation.

update, for anyone that runs into this.  As expected it's a permissions error that can be seen if you go directly to localhost:3000/pods and view the json object
"response":{"statusCode":403,"body":{"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"pods is forbidden: User "system:serviceaccount:default:default" cannot list resource "pods" in API group "" in the namespace "default"","reason":"Forbidden","details":{"kind":"pods"},"code":403}
Now, the concerning part is I changed the auth yaml to use a different service account so I've got to track down why that's not being reflected, but hope that helps someone in the future.

@bpatton00 so what is the resolution ?

@bpatton00 so what is the resolution ?

I ended up reverting to default:default for the user.
I also modified the source code to meet our needs.   Changed hard coded localhost:3000 to pickup window.location.href so I could serve it from a dns to our team.  See my fork for the code
I also have on the roadmap to convert the k8sApi.listNamespacedService('default') value to a parameter that can be set and leveraged based on where it currently is deployed.  Ideally I'd like to see spekt8 have a selectable namespace option with a dynamically populated list.

is the issue resolved for you ? im getting those erros from the pod log
Listening on port 3000....
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:39) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 4)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 5)
(node:39) UnhandledPromiseRejectionWarning: #<Object>
(node:39) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 6)


Vite Inspect panel does not hide after visit on Safari Browser

Hi, can you upload a video here? I don't know what the problem is. Thanks ❤

Hi @alexzhang1030
The issue is that I can't switch between panels after press on vite inspect option, the vite inspect panel remains on top
https://github.com/vuejs/devtools-next/assets/12663543/3949f1ae-4890-479e-9369-fa28057b4f3b


[Request]: If in a metered network environment, pause automatic updates for Collapse

Is your request related to a problem?
No
How is the feature request related to the problem?
No response
Describe your proposed solution
When starting, first check if the current network is a metered network, and if so, stop checking for updates. At the same time, like Microsoft Edge, Collapse can also provide a switch that allows users to automatically detect and download updates under such network conditions.
Describe alternatives you've considered
None
Additional context
No response

Thank you for sending enhancement request for Collapse Launcher!
We have processed your request and will apply this enhancement proposal:
Enhancement Proposal
Skip update check if the network is metered
Use NetworkHelper's NetworkCostType and see if its either Unrestricted or Unknown, if yes then go ahead to do the usual update routine, if not skip the current update check and do another check in the usual time.
Refs:
(Note these are UWP refs, no WinUI refs found but should be similar enough)

https://learn.microsoft.com/en-us/uwp/api/windows.networking.connectivity.networkcosttype?view=winrt-22000
https://learn.microsoft.com/en-us/previous-versions/windows/apps/hh750310(v=win.10)
Location: https://github.com/CollapseLauncher/Collapse/blob/e1ac2a3288f83ce64d8e56fe08d3561f794053df/CollapseLauncher/Classes/EventsManagement/EventsHandler.cs#L31

At the same time, I believe that when checking for updates in a metered network, users should be reminded that this may incur additional fees.

So, with this proposal, the entire automated update check sequence for the launcher itself (metadata update will still occur due to the importance of it) will be skipped. The only way to update on metered connection is to manually pressing the Check for Update button in the settings page, as it will trigger forceUpdate mechanism that skips all checks.
As the forceUpdate can only be triggered manually, in my opinion there is no need to add another warning as clicking the button is most likely intentional.
What do you think?

So, with this proposal, the entire automated update check sequence for the launcher itself (metadata update will still occur due to the importance of it) will be skipped. The only way to update on metered connection is to manually pressing the Check for Update button in the settings page, as it will trigger forceUpdate mechanism that skips all checks. As the forceUpdate can only be triggered manually, in my opinion there is no need to add another warning as clicking the button is most likely intentional.
What do you think?

This situation is reasonable. But there is another situation where users may forget that the network they are using is metered. I think it's necessary to remind in this situation. What do you think?

Sure does, we can create a SimpleDialog that is only triggered when metered connection is up

Sure does, we can create a SimpleDialog that is only triggered when metered connection is up

Good idea. Thank you for your quick respond!


Implementing user profile page

The page should contain information like, username, password and e-mail.
Other settings-like functionalities should be here in the future like credential changes, and other account management stuff.

This githead autoclosed this issue. 🔫
It needs another PR to be completed, I just finished authentication, user profile page needs more work.

Merged https://github.com/szattila98/veryrezsi/pull/18


Add Option Gamma Indicator

Description
Add Option Gamma Indicator
Related Issue
closes #7668
Motivation and Context
Part of option greek indicator project
Requires Documentation Change
handled by auto-gen
How Has This Been Tested?
added unit tests and 3rd party source comparisons
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Refactor (non-breaking change which improves implementation)
[ ] Performance (non-breaking change which improves performance. Please add associated performance test and results)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Non-functional change (xml comments/documentation/etc)

Checklist:

[X] My code follows the code style of this project.
[X] I have read the CONTRIBUTING document.
[X] I have added tests to cover my changes.
[X] All new and existing tests passed.
[X] My branch follows the naming convention bug-<issue#>-<description> or feature-<issue#>-<description>

Please rebase the PRs from master 👌 ref https://github.com/QuantConnect/Lean/pull/7833


Cannot read property 'filter' of undefined

I updated the grafana-json-datasource plugin to the latest version and now i got the error "Cannot read property 'filter' of undefined" when the defined variables in grafana are loaded. I got the same error when i try to define a new variable. Any hint what's wrong?

Thank you for reporting 🙏  I'm able to reproduce the issue, and will be taking a look at it during the day.


"Index p_shape_idx out of size"

I keep getting the following error in the terminal when I try to run the game using the source version of Godot (updated tonight).
ERROR: set_shape: Index p_shape_idx out of size (shapes.size()).
   At: scene/2d/collision_object_2d.cpp:272.

The message keeps repeating over and over. May be related to #4

Mistake on my part. The update script for Godot I was using was faulty. Upgrading to the latest source code (for real this time) stopped this from occurring


Server setup

Ok so basically here is what happened for the kinds of changes here with the things:

Card query route
Card search route
Card search route text search option
Card search route image search option
Card search text library function
Card search image library function

I verify this because I did it and it works on my machine


[QUERY] Can't find azure-spring-boot-starter-active-directory beta version in maven central

Hi, I try to use your sample "azure-spring-boot-sample-active-directory-resource-server" .
There you use the dependency
<dependency>
      <groupId>com.azure.spring</groupId>
      <artifactId>azure-spring-boot-starter-active-directory</artifactId>
      <version>3.5.0-beta.1</version>
</dependency>

I could not find this dependency, neither on https://oss.sonatype.org/#nexus-search;quick~azure-spring-boot-starter-active-directory ?
Could you please add the Post-Requests to get the token with postman and to get the request of your example endpoints?
I tried it with version "3.4.0" with no success...

@stliu could you please assist @einue?

Hi @einue, the version on the master branch is the development version and hasn't be released to the maven central. Please follow the environment-checklist for more details.

I saw another issue created https://github.com/Azure/azure-sdk-for-java/issues/20980, so are we okay to close this one now?

yes @saragluna  you can close this issue, thanks


Compose v3

Do you have a timeline or are considering supporting compose v3?

Hello @luksi1
Thanks for your message.
Yes, I have plans for that.
The last months was a rush, and I'm still working on a big refactoring for the library, since I wrote that when I was learning Ruby.
After that, I'll work on the V3 support, but no deadline defined yet.
Thanks!


Build failed

Hi, cool repo. I found this repo from this post: https://www.reddit.com/r/rust/comments/7jrm98/licensing_question/
Anyway I tried running cargo install --git https://github.com/maghoff/cargo-license-hound and I got this error
   Compiling serde_ignored v0.0.3
error: failed to run custom build command for `openssl v0.9.24`

Caused by:
  process didn't exit successfully: `/var/folders/2j/g5qt9wws2dq3h38yy9xt47c00000gr/T/cargo-installvqNtsp/release/build/openssl-c0b52e41efd13c6c/build-script-build` (exit code: 101)
--- stderr
thread 'main' panicked at 'Unable to detect OpenSSL version', /Users/tweissin/.cargo/registry/src/github.com-1ecc6299db9ec823/openssl-0.9.24/build.rs:16:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

warning: build failed, waiting for other jobs to finish...
error: failed to compile `cargo-license-hound v0.1.0 (https://github.com/maghoff/cargo-license-hound#6502ccf3)`, intermediate artifacts can be found at `/var/folders/2j/g5qt9wws2dq3h38yy9xt47c00000gr/T/cargo-installvqNtsp`

Caused by:
  build failed

I then found this: https://github.com/paritytech/substrate/issues/800
which pointed me here: https://docs.rs/openssl/0.10.29/openssl/
I'm on MacOS so I ran brew install<EMAIL_ADDRESS>but it told me that it was already installed.
Warning<EMAIL_ADDRESS>1.1.1g is already installed and up-to-date
To reinstall 1.1.1g, run `brew reinstall<EMAIL_ADDRESS>
Any ideas? It's not really your issue but just seeing if you have any ideas.
Thanks
Tom

Hi, thanks for getting in touch!
Sorry, I don't have any meaningful ideas. It has been a long time since I touched this repo, so most of the dependencies are really old. It could maybe be easier to get it working with more up-to-date dependencies. That's something you could try, and I would appreciate a PR if it turns out to help. Alternatively, you could look into getting older versions of openssl from brew. Good luck!


[Warhammer 4e Character Sheet] v1.5 Auto XP

Changes / Comments

Automatic XP Spent calculation (as per core rule book) has been integrated to the sheet as a optional feature, activate this in the XP or settings tabs. This will calculate all XP on the fly after Talents or Advances are entered in the sheet. Special XP circumstances like free/starting XP or changing career/level need to be added manually to the "Other XP" section in the XP tab. XP calculation is capped at 50 skill advances/10 talent levels as described in the core rules, advances above this will not count toward the overall spent total. You can not mix Auto & Manual modes at the same time, but you can switch between them at anytime.
Made Armor Penalties on Perception and Stealth rolls visible on the Rolltempalte so it clear that they are being applied.
Fixed some advanced skill target numbers which were calculating conditions twice.

Roll20 Requests
Comments are very helpful for reviewing the code changes. Please answer the relevant questions below in your comment.

[x] Does the pull request title have the sheet name(s)? Include each sheet name.
[x] Is this a bug fix?
[x] Does this add functional enhancements (new features or extending existing features) ?
[ ] Does this add or change functional aesthetics (such as layout or color scheme) ?
[ ] If changing or removing attributes, what steps have you taken, if any, to preserve player data ?
[ ] If this is a new sheet, did you follow Building Character Sheets standards ?

If you do not know English. Please leave a comment in your native language.

Character Sheet Info Roll20 Internal Use only.


Add native transformations for holding first/last chars and padding right/left

It should be possible to access following native transformations:

text-to-first-chars(length): if the text is longer than the specified length, take the last characters.
text-to-last-chars(length): if the text is longer than the specified length, take the last characters.
text-to-pad-left(length, character): if the text is shorter than the specified length, add the specified character at the beginning of the text until the length of this text is equal to the expected length.
text-to-pad-left(length, character): if the text is shorter than the specified length, add the specified character at the end of the text until the length of this text is equal to the expected length.

Beta available at https://ci.appveyor.com/project/Seddryck/nbi/build/artifacts or with 1.21.0-beta0183


ginepro does not load 'balance'

Bug description
ginepro indirectly uses tower::Balance which makes use a best-of-two random load balancing strategy.
Unfortunately, tonic has no built in mechanism for determining load, so this is hard coded to be 0 always.
https://docs.rs/tonic/0.8.3/src/tonic/transport/service/connection.rs.html#114-120
This means we have randomise distribution. This is still a balancing technique but is known to not be very good

We don't need to use tonic's Channel abstraction since Grpc client makes use of tower services directly. That let's us implement this logic ourselves.
Now for how we communicate load. An idea I had is to have a well-known header in responses for how much load the server is currently experiencing.
This can be cached by the client. In high load situations this will be accurate. In low load situations it will be less accurate but arguably less important.
We would need to decide on a good header for this.
An alternative is to have an alternative well known load look up RPC. We can call that on a regular basis to update load values
If the load endpoint or header doesn't exist, we can stop checking for it and fallback on the original strategy of random or round robin. This can be configured dynamically

Have you seen this which seems to be what Linkerd use?

Using latency is clever, but I'm not sure exactly how the pending calculation works. I'm probably missing something


fix - #1016: Make functional conversion check argument count

Motivation:
For a Java class with multiple overloads, reducing required casting and reduced TypeError caused by Python function accepting a different argument count than a Java @FunctionalInterface.
public class MyClass {
    public static String apply(Function map) {
        return "Function apply";
    }

    public static String apply(BiFunction map) {
        return "BiFunction apply";
    }
}

Overloads:
import jpype
import jpype.imports
from jpype import JImplements, JOverride, JObject

jpype.startJVM(classpath=['...'])

from org.acme import MyClass

assert str(MyClass.apply(lambda a: a)) == "Function apply"
assert str(MyClass.apply(lambda a, b: a)) == "BiFunction apply"

Old Behaviour:
TypeError: Ambiguous overloads found for org.acme.MyClass.apply(function) between:
	public static java.lang.String org.acme.MyClass.apply(java.util.function.BiFunction)
	public static java.lang.String org.acme.MyClass.apply(java.util.function.Function)

New Behaviour:
>>>  str(MyClass.apply(lambda a: a))
'Function apply'
>>>  str(MyClass.apply(lambda a, b: a))
'BiFunction apply'

Bad Casts
assert str(MyClass.apply(JObject(lambda a: a, BiFunction))) == 'Function apply'
assert str(MyClass.apply(JObject(lambda a, b: a, Function))) == 'BiFunction apply'

Old Behaviour:
TypeError: <lambda>() takes 1 positional argument but 2 were given

New Behaviour:
TypeError: Unable to cast 'function' to java type 'java.util.function.BiFunction'

This commit modify functional conversion to check argument count:

If the Java functional interface have more parameters than
the Python function and the Python function does not accept
variable arguments, conversion type is none

If the Java functional interface have less parameters than
the number of required positional parameters of the Python
function, conversion type is none

Otherwise, conversion type is implict.

I tested on my issue-reproducer and I can confirm it fixes the issue. I added some tests, but I couldn't figure out how to run them locally.
Fixes #1016

Was able to learn how to run the test suite from the GitHub checks. Failure reproduce locally using the test script, but unable to reproduce in a venv. Quite odd.

Note: the Java Method not having vargs does not disable minimum required arguments constraint; vargs in Java are passed as an array, thus for the following code:
public class MyClass {
    public static String vargsApply(VargsFunction mapper) {
        return mapper.apply("1", "2", "3");
    }

    @FunctionalInterface
    public interface VargsFunction {
        String apply(String... args);
    }
}

import jpype
import jpype.imports
from jpype import JImplements, JOverride, JObject

jpype.startJVM(classpath=['...'])

from org.acme import MyClass

assert str(MyClass.vargsApply(lambda a, b, c: a)) == "1"

causing the following error currently in JPype:
TypeError: <lambda>() missing 2 required positional arguments: 'b' and 'c'
the PR changes the error to:
TypeError: No matching overloads found for *static* org.acme.MyClass.vargsApply(function), options are:
	public static java.lang.String org.acme.MyClass.vargsApply(org.acme.MyClass$VargsFunction)

Figured out the issue: PyObject_GetAttrString sets the error indicator, which is then checked and raised in convert. Adding PyErr_Clear(); before method return fixes the issue.
(There were several other issues in the test module, naming the interfaces not being annotated with @FunctionalInterface and wrong string content)

@Thrameos ping

I am not opposed to this in theory, but there is a serious cost to doing a large amount of work in the check routine.   The most likely issue to induce bugs the type caching issue which may force this code to be on the conversion rather than the check side of the match function.   When JPype matches and overload it hashes the types of the arguments which bypasses the overload resolution.   Adding more logic on the match such that determining the overloads based on the number of arguments could trigger the cache and thus potentially trigger the cache to skip a better overload.
I am guessing that is what you are trying to bypass in the method dispatch.
Maybe it would be better to clear the cache if the match is poor.
                // Anything better than explicit constitutes a hit on the cache
                if (bestMatch.m_Type > JPMatch::_explicit)
                        return true;
                else
                        // bad match so forget the overload.
                        bestMatch.m_Overload = 0;

I did catch a cache bug early on (IIRC, it resolved the first overload, but not the second, but it been a while), hence the modification to jp_methoddispatch.cpp (which might of make it bypass the cache?).
I am guessing from "which may force this code to be on conversion rather than the check side of the match function" that convert can return a value/set something on JPMatch that makes it a None match (even if matches return a not None match type)?
I'll try reproducing the cache issue I encountered w/o the changes to jp_methoddispatch.cpp to get the details.

Was able to reproduce on tests just by reverting the method dispatch change; The cache causes an ambiguous resolution to be found between a prior overload + the actual overload (in the test, SingleArg is tested first, followed by a NoArgs; note the third case, TwoArgs, is not listed in the ambiguous resolution list).


webui: move icons from top right to the top left

          Also IMHO move icons from top right to the top left.

Originally posted by @mr-tz in https://github.com/mandiant/capa/issues/2286#issuecomment-2286637495

#2296


ssh connect to cluster nodes failed

I follow the documentation with
ssh admin-name@ip -p 3389
but there is no reaction until time out.
My cluster's node is Linux, so the port 3389 will be bouneded into port 22 of instance 0
Where maybe wrong?
Thank you

@emcc Thanks for the feedback! Can you please add the details/link of the document you are referring to.

@Emcc if you are setting up a Linux VM the default port for SSH will be 22. So you wont be able to connect over 3389 unless you already connected to the VM and changed the port.
3389 is generally for RDP sessions on Windows machines.
Try the command using port 22 and let me know if it works. If not, please go to the network security group associated with the VM and make sure you have a rule to allow traffic on port 22

@Emcc Any update on this?

@Emcc I will close this for now. If you need more help just let us know and we can reopen and continue.

Finally, I solve this problem by adding a rule in sf-vnet-secure from Azure portal
The default rule allow port 3389 rather than port 22 in vnet-security policy
Thank you @MicahMcKittrick-MSFT !


doc: fix documentation for usage of Error::kind() with match expression

Although glib::Error cannot be converted into Option:: directly,
its documentation describe it's possible. It seems to be typo for
Error::kind::().

Thanks!


[SHIRO-797] Shiro 1.7.0 is lower than using springboot version 2.0.7 dependency error

hotfix Springboot in versions lower than 2.0.7 does not have trim classname, one more space causes an error
https://issues.apache.org/jira/projects/SHIRO/issues/SHIRO-797?filter=allopenissues

License header is missing in test classes.
@bdemers can you add them?

🤦 on it

@fpapon so when will we get a new release for this issue?

@tonypig93 I will check the 1.7.1 on Jira to see when we can cut the release.


DO NOT MERGE - testing PR for multi-module builds

this pr exists to test the pipeline changes in https://github.com/honeycombio/honeycomb-opentelemetry-web/pull/203

testing complete


SIGSEGV and SIGABRT with cargo test

In taskwarrior-sys, I variably get (signal: 11, SIGSEGV: invalid memory reference) or (signal: 6, SIGABRT: process abort signal) with cargo test, which suggests to me at least one race condition:
$ cargo test
    Finished test [unoptimized + debuginfo] target(s) in 0.02s
     Running unittests src/lib.rs (/Users/n8henrie/git/taskwarrior-rs/target/debug/deps/taskwarrior_sys-c8c79b73e4678a63)

running 2 tests
taskwarrior_sys-c8c79b73e4678a63(82158,0x16f1a7000) malloc: *** error for object 0x600000fa1a88: pointer being freed was not allocated
taskwarrior_sys-c8c79b73e4678a63(82158,0x16f1a7000) malloc: *** set a breakpoint in malloc_error_break to debug
error: test failed, to rerun pass `--lib`

Caused by:
  process didn't exit successfully: `/Users/n8henrie/git/taskwarrior-rs/target/debug/deps/taskwarrior_sys-c8c79b73e4678a63` (signal: 6, SIGABRT: process abort signal)
$ cargo test
    Finished test [unoptimized + debuginfo] target(s) in 0.02s
     Running unittests src/lib.rs (/Users/n8henrie/git/taskwarrior-rs/target/debug/deps/taskwarrior_sys-c8c79b73e4678a63)

running 2 tests
error: test failed, to rerun pass `--lib`

Caused by:
  process didn't exit successfully: `/Users/n8henrie/git/taskwarrior-rs/target/debug/deps/taskwarrior_sys-c8c79b73e4678a63` (signal: 11, SIGSEGV: invalid memory reference)

Limiting to --test-threads=1 greatly reduces the rate of the errors, many times the test passing, but still often crashes with (signal: 6, SIGABRT: process abort signal) -- running in a loop usually crashes within half a second or so:
$ cd taskwarrior-sys
$ git rev-parse HEAD
c7c9a380273e6e35a2d3486898e6e636736f5831
$ while cargo test -- --test-threads=1; do :; done
... succeeds a few times ...
running 2 tests
test tests::test_context_dispatch ... taskwarrior_sys-c8c79b73e4678a63(83813,0x16d14b000) malloc: Incorrect checksum for freed object 0x13f808c00: probably modified after being freed.
Corrupt value: 0x2020202020202020
taskwarrior_sys-c8c79b73e4678a63(83813,0x16d14b000) malloc: *** set a breakpoint in malloc_error_break to debug
error: test failed, to rerun pass `--lib`

Caused by:
  process didn't exit successfully: `/Users/n8henrie/git/taskwarrior-rs/target/debug/deps/taskwarrior_sys-c8c79b73e4678a63 --test-threads=1` (signal: 6, SIGABRT: process abort signal)

Actually, doing this a few times I eventually also got (signal: 11, SIGSEGV: invalid memory reference), so looks like the same issue.

In contrast to macOS, on Linux it seems to never succeed, and gives an error about free(): invalid size:
$ cargo test -- --test-threads=1
    Finished test [unoptimized + debuginfo] target(s) in 0.02s
     Running unittests src/main.rs (target/debug/deps/taskwarrior-0a4a2de2281d8918)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/lib.rs (target/debug/deps/taskwarrior_sys-98742700dac45a14)

running 2 tests
test tests::test_context_dispatch ... free(): invalid size
error: test failed, to rerun pass `-p taskwarrior-sys --lib`

Caused by:
  process didn't exit successfully: `/home/n8henrie/git/taskwarrior-rs/target/debug/deps/taskwarrior_sys-98742700dac45a14 --test-threads=1` (signal: 6, SIGABRT: process abort signal)

Running on linux in rust-lldb I get double free or corruption (out) at https://github.com/n8henrie/taskwarrior-rs/blob/6417da7d07ee9e5810e66a3ee24113d1e12ca4ad/taskwarrior-sys/src/lib.rs#L59

It looks like the Rust struct that's generated is zero bytes in the generated bindings.rs
pub struct Context { _unused : [u8 ; 0] , }

Tried resolving it and it lead down a complex rabbithole given how much is in the Context header.  I am thinking we may want to give this a go on a less complex header to start with.
I will continue trying to find the rabbithole exit.

Yes, I think falling back to opaque types happens a fair amount with C++ FFI, though I think using an empty enum is sometimes preferred (as it can't be constructed with memberwise initialization, must use an provided initializer which helps ensure any global state for the C side is properly set up).
A few maybe relevant threads if interested:

https://users.rust-lang.org/t/ffi-bindings-for-taskwarrior/67579
https://users.rust-lang.org/t/newbie-ffi-segfaults-and-undefined-symbols-for-architecture/78254
https://users.rust-lang.org/t/bindgen-ffi-to-c-map-invalid-memory-reference/67850

(Let me know if I'm using any of these terms incorrectly, I'm hopelessly unfamiliar with the C family of languages.)


Development

WIP, not ready for review
Want to migrate the parse part from thift to C, right now just testing thrift.

Coverage increased (+0.2%) to 80.24% when pulling 580eadc8c7b495dcbcb3319b75839c3742962a0b on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage increased (+0.2%) to 80.24% when pulling 96b5847bc9550f6fab1537aa6445f06780bf2c81 on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage decreased (-0.2%) to 79.872% when pulling 4083669b16732bc350ffd606cd5a04fc63d69cc1 on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage decreased (-0.8%) to 79.324% when pulling 77bae3190490dafe6ac99bbf5098a52b6300a8ef on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage decreased (-0.8%) to 79.324% when pulling d0107eb53626be76e44935dd041423b4881174f0 on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage decreased (-0.3%) to 79.809% when pulling 827e9fb151e1a35f88a9510b459537ab7d573999 on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage decreased (-0.4%) to 79.73% when pulling 599f6b10e12c86e64b6e146339d6a6d16fc9da81 on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Coverage increased (+0.05%) to 80.126% when pulling 5e8418cfd82883cfe7966dbc4adcee9d594cead7 on SantiNoto:development into edaa567a6eb05c42b9ceec10d0932be31ab2667b on pinterest:master.

Closing since this isn't actively being worked on.


Workflow (#10)

fix(workflows): fix branches to apply ci

fix(workflow): fix typo

fix: fix typo

fix: test if ref impacts flow

fix(workflow): testing ci

fix: check

fix: test

fix: test

fix: test

ci(workflow): move issue creation to a different branch

fix(release): add a release branch

Co-authored-by: dsmdavidIL<EMAIL_ADDRESS>

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Change mentions of "Pin" to be "Pin (Ignore updates)"

Not sure if this is a GUI issue or a choco one, so please let me know if I need to move it over there.
A big feature missing is the ability to tell chocolatey, probably via the right-click context menu, to ignore updates for an app. It should provide the options to ignore the current update or ignore all updates.

@vertigo220 are you familiar with the choco pin command?  I believe that this will do what you want.

Ah, ok. Should've known that based on #1607. Guess I just didn't connect the two, though now that you mention it, it's pretty obvious, though only based on that. In other words, I should have known that due to my participation in that issue, but otherwise, for a "normal" user, it wouldn't be at all obvious, so maybe that would be worth a GUI change, to change the context menu entry from "Pin" to "Pin (Ignore Updates)" and possibly even make something like a  or  command with a corresponding menu entry that would be something like "Pin (Ignore Current Update" or "Pin (Ignore This Update)?"

Apparently I did the code tag wrong, and I don't know what it is nor can I edit my posts. I hate that GitHub changed so it no longer works on ESR. Anyway, that should say "make something like a choco pintemp or choco pinver command"

@vertigo220 said....
Apparently I did the code tag wrong, and I don't know what it is nor can I edit my posts. I hate that GitHub changed so it no longer works on ESR. Anyway, that should say "make something like a choco pintemp or choco pinver command"

I am not sure if I completely follow this.  Can you elaborate?  Chocolatey GUI is simply a wrapper around the underlying Chocolatey commands.  If you are asking for a new Chocolatey command, which I think you might be, then the correct place to make that request would be on the Chocolatey Repository.  Once implemented there, that functionality could be exposed within Chocolatey GUI.

@vertigo220 said...
so maybe that would be worth a GUI change, to change the context menu entry from "Pin" to "Pin (Ignore Updates)"

I think that this is a good suggestion.

@vertigo220 I have updated the title of this issue to reflect what is actually being requested.  Let me know if you have any additional comments.

"I am not sure if I completely follow this. Can you elaborate? Chocolatey GUI is simply a wrapper around the underlying Chocolatey commands. If you are asking for a new Chocolatey command, which I think you might be, then the correct place to make that request would be on the Chocolatey Repository. Once implemented there, that functionality could be exposed within Chocolatey GUI."
Yes, that's what I was asking, just figured I'd make sure that it was something I should open an issue for there before doing so, and it sounds like it is, so I'll do that now. Thanks!

Issue reference didn't work properly, referenced this issue number in that repo, so here it is: https://github.com/chocolatey/choco/issues/1997


Review comments on description page shown in different order than .com

Issue Type: Bug
On .com, review comments appear to be ordered by time added to the review:

Versus on the webview, they're organized by position:

I think the time-based ordering makes more sense, when I'm reviewing I sometimes refer to comments I've made earlier
Extension version: 1.8.0
VS Code version: Code - Insiders 1.31.0-insider (7b375fcb821bee9342656c39492223c7b5fc8830, 2019-01-08T09:23:09.468Z)
OS version: Darwin x64 18.0.0

This was fixed as part of https://github.com/microsoft/vscode-pull-request-github/commit/e71dd72fbdc2881634bd9347ca2a3f0bb6bc16b2


removed -callback for R14B03|4 compatability

I left the newer code commented out. The only thing I was unsure of is line 115 in ranch_ssl.erl:
-spec connect(string(), inet:port_number(), any()) -> {ok, ssl:sslsocket()} | {error, term()}.

ssl:sslsocket() is an undefined type.
Also, please advise on what branch this PR should be merged and tagged against.

We haven't used anything earlier than R16 for years, and are soon planning on upgrading to 19 or 20. I assume there's no longer any reason we would want or need R14 support in our fork of ranch, so I'm going ahead and closing this.


Remove saved posts link because it is broken

It's trying to find an endpoint that doesn't exist

Sure I'll merge this


CurrentUser profile directories do not exist (7.3.7, WSL2, Ubuntu 22.04)

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
The CurrentUser profile directories in $PROFILE do not exist on WSL2 Ubuntu-22.04.
PS /home/lit> $PROFILE | Get-Member -Type NoteProperty

   TypeName: System.String

Name                   MemberType   Definition
----                   ----------   ----------
AllUsersAllHosts       NoteProperty string AllUsersAllHosts=/snap/powershell/247/opt/powershell/profile.ps1
AllUsersCurrentHost    NoteProperty string AllUsersCurrentHost=/snap/powershell/247/opt/powershell/Microsoft.PowerShell_profile.ps1
CurrentUserAllHosts    NoteProperty string CurrentUserAllHosts=/home/lit/.config/powershell/profile.ps1
CurrentUserCurrentHost NoteProperty string CurrentUserCurrentHost=/home/lit/.config/powershell/Microsoft.PowerShell_profile.ps1

Expected behavior
CurrentUserAllHosts and CurrentUserCurrentHost contain directory paths that exist.

Actual behavior
CurrentUserAllHosts and CurrentUserCurrentHost contain directory paths that do not exist.

In addition, trying to copy a profile script to the AllUsers directory fails How do I overcome that?

PS /home/lit> sudo cp /mnt/c/Users/lit/OneDrive/Documents/PowerShell/profile.ps1 /snap/powershell/247/opt/powershell/
[sudo] password for lit:
cp: cannot create regular file '/snap/powershell/247/opt/powershell/profile.ps1': Read-only file system

Error details
No response
Environment data
PS /home/lit> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      7.3.7
PSEdition                      Core
GitCommitId                    7.3.7
OS                             Linux <IP_ADDRESS>-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals
No response

I haven’t used snap for a very long time, since the times when it was simply necessary or rather on NixOS which does not follow the FHS recommendations. Perhaps something has changed since then but then there were two variables SNAP_DATA for system-wide configs and SNAP_USER_DATA for user configs which respectively looked to /var/snap and ~/snap, which for security reasons (thanks to Canonical) need to be created themselves. This is probably where $PROFILEs should be.

I created a ~/.config/powershell/ directory and put the CurrentUser profiles scripts there. It appears to be working.
The problem of writing into the AllUsers directories remains.
They are mounted as ro.
$ mount | grep snap/powershell/
snapfuse on /snap/powershell/244 type fuse.snapfuse (ro,nodev,relatime,user_id=0,group_id=0,allow_other)
snapfuse on /snap/powershell/247 type fuse.snapfuse (ro,nodev,relatime,user_id=0,group_id=0,allow_other)


Unable to download from NRK - region locked

The error at the end states "NRK does not have the rights to show this video outside of Norway"
However, I am in Norway. Do you have any tips?
youtube-dl.exe -v http://www.nrk.no/norge/slik-blir-nye-oslo-lufthavn-1.12680261
[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-v', u'http://www.nrk.no/norge/slik-blir-nye-oslo-lufthavn-1.12680261']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2<IP_ADDRESS>
[debug] Python version 2.7.10 - Windows-8-6.2.9200
[debug] exe versions: none
[debug] Proxy map: {}
[NRKPlaylist] slik-blir-nye-oslo-lufthavn-1.12680261: Downloading webpage
[download] Downloading playlist: Slik blir nye Oslo lufthavn
[NRKPlaylist] playlist Slik blir nye Oslo lufthavn: Collected 2 video ids (downloading 2 of them)
[download] Downloading video 1 of 2
[NRK] 240597: Downloading media JSON
ERROR: NRK har ikke rettigheter til å vise dette programmet utenfor Norge
Traceback (most recent call last):
File "youtube_dl\YoutubeDL.pyo", line 663, in extract_info
File "youtube_dl\extractor\common.pyo", line 290, in extract
File "youtube_dl\extractor\nrk.pyo", line 54, in _real_extract
ExtractorError: NRK har ikke rettigheter til \xe5 vise dette programmet utenfor Norge

Can you watch it in browser in the first place?

Yeah, it works fine in my browsers (FF, Chrome, IE)

Post the output of youtube-dl http://www.nrk.no/norge/slik-blir-nye-oslo-lufthavn-1.12680261 -v --call-home --dump-pages.
What IP is shown when you open https://yt-dl.org/ip in your browser?

It was a huge bunch of data, so I put it on pastebin http://pastebin.com/d4tjJ1wv
IP from the yt-dl.org shows as <IP_ADDRESS>

This issue has been fixed and will be available in the next version. Thanks for the report.

Great! Thanks for that


&& in tasks.json args field

OS: Windows
NVIM: v0.8.3
i try to use && to run two tasks in one toggleterm
tasks.json
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "g++ build",
            "type": "shell",
            "command": "g++",
            "args": [
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}.exe",
                "-g",
                "-Wall",
                "-static-libgcc",
                "-std=c++20",
                "&&",
                "${fileDirname}/${fileBasenameNoExtension}.exe"
            ],
            "problemMatcher": [],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

overseer surround && with "" ,thus && put into g++

use vscode run the same tasks.json, everyting is ok

can we remove "" around every item in args?
now i can only put every thing in args into command to solve this question? like below:
"command": "g++ ${file} -o ${fileDirname}/${fileBasenameNoExtension}.exe -g -Wall -static-libgcc -std=c++20 && ${fileDirname}/${fileBasenameNoExtension}.exe",

but i still hope to use args field. Thanks.

I have overhauled the mechanisms both for quoting and variable interpolation of VS Code tasks. I believe it should work for you now, but I didn't test it on windows. Can you give it a try?

everything ok on windows.
Thank you for your quick reply

command with args run ok

emmmmm, still a little bug
this is my tasks.json, i just use command field
{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "xmake",
            "type": "shell",
            "command": "g++ ${file} -o ${fileDirname}/${fileBasenameNoExtension}.exe -g -Wall -static-libgcc -std=c++20 && ${fileDirname}/${fileBasenameNoExtension}.exe",
            "problemMatcher": [],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

in vscode run correct
but in overseer it seems that the whole command surround with a ""

the output chinese means the command is not correct
i think just move "" everything will be ok

Should be fixed now


ENH: GH12034 RangeIndex.union with RangeIndex returns RangeIndex if possible

xref #12034

@kawochen very nice as usual! thanks!


Foundry specific GCS export/import and massive improvement in import speed

I've created a Foundry VTT export template for GCS and updated the import logic to accept it.   While still being backwards compatible to the older FG import.
I found out that the DB doesn't delete keys from objects unless you use a special syntax.   If you don't, it will just merge objects... which means that on a second import, you will still have all of the original data (unless it is overwritten by using the same keys).   Which means, that is you remove an item, like a piece of equipment...  and re-commit the list with one item missing... it won't go away.
So I had to preface all of my list updates like this:
await this.update({"data.-=ads": null});
await this.update({data.ads": list}};
And the import was literally taking seconds... you could see the character sheet shuddering as various lists updated.   It was bad.  @Stas mentioned batching up all of the updates, so you would be proud of me, I used some new syntax.
I collect up all of the changed data:
commit = {...commit, ...this.importAttributesFromCGSv1(c.attributes)};
commit = {...commit, ...this.importSkillsFromGCSv1(c.abilities?.skilllist, isFoundryV1)};
commit = {...commit, ...this.importTraitsfromGCSv1(c.traits)};
Using the spread operator "...", and then I filter to get the deletes and then the adds:
	let deletes = Object.fromEntries(Object.entries(commit).filter(([key, value]) => key.includes(".-=")));
	let adds = Object.fromEntries(Object.entries(commit).filter(([key, value]) => !key.includes(".-=")));

	await this.update(deletes);
	await this.update(adds);

And now imports are instantaneous again ;-)

I use the spread operator in Dart; they probably borrowed the syntax from javascript. or vice versa.


Implement ability to view logs on remote Riak nodes

We badly need the ability to view/download Riak error logs on remote nodes. Specifically, for each node, implement an API endpoint to view these logs (in the /var/log/riak directory of each node):

console.log (as well as the rotated versions, console.log.0 through console.log.4)
crash.log (as well as the rotated versions, .0 - .4)
erlang.log (plus .0 - .4)
error.log (plus .0 - .4)
solr.log  (does not appear to be rotated..)

GET /explore/nodes/$node/log/files  -->  [ 'console.log', 'error.log', 'erlang.log' ]

GET /explore/nodes/$node/log/files/console.log  -->  ...contents of the console.log file...

To be of most use, Explorer would be able to show logs on each node in the cluster (since an error frequently happens only on one node).
This may pose a slight implementation difficulty, since the Explorer app is a separate Erlang app, typically installed on only one node of the cluster (or, potentially, on a completely separate machine). We'd need to find a way to fetch the log files via a remote Erlang command (or else set up some sort of daemon processes on each node, which would be sub-optimal).

Implementation in progress at PR #105.

Tested, works beautifully.
Minor feature request, however.
Right now, the JSON output (very helpfully) returns the total number of lines in the log file:
curl -s localhost:9000/explore/clusters/localdev/nodes/dev1@<IP_ADDRESS>/log/files/console.log?rows=5 | python -m json.tool
{
    "files": {
        "lines": [
            "2015-12-14 10:56:57.177 [info] <0.4824.0>@re_riak_patch:check_existence:135 Checking ./etc/advanced.config exists... true",
            "2015-12-14 10:56:57.177 [info] <0.4824.0>@re_riak_patch:check_existence:135 Checking ./etc/vm.args exists... false",
            "2015-12-14 10:56:57.177 [info] <0.4824.0>@re_riak_patch:check_existence:135 Checking ./etc/app.config exists... false",
            "2015-12-14 10:56:57.028 [info] <0.4824.0>@re_riak_patch:check_existence:135 Checking ./etc/riak.conf exists... true"
        ],
        "total_lines": 1535
    },
    "links": {
        "self"<EMAIL_ADDRESS>    }
}

That's perfect (I forgot to ask for this in the specs, and was actually going to open a separate ticket asking for that feature). The total number of line is going to come in helpful on the UI side, when paginating through the log contents.
But this makes me think - can we actually get rid of the lines: section, in the JSON output? Because, from the UI side, the workflow is going to be - request the JSON output for the log file, to get the total number of lines. And then make another request to actually get the plain/text contents of the log file.
Two requests is totally fine, but the JSON lines in the first request aren't useful to the app.
So, can we just drop em?

Tested, works great now.
curl -s<EMAIL_ADDRESS>| python -m json.tool
{
    "console.log": {
        "total_lines": 1545
    },
    "links": {
        "self"<EMAIL_ADDRESS>    }
}

curl -s localhost:9000/explore/clusters/localdev/nodes/dev1@<IP_ADDRESS>/log/files/console.log?rows=5 \
    -H 'Accept: plain/text'
2015-05-06 10:30:15.067 [warning] <0.103.0> OS_MON (memsup) timeout, no data collected
2015-05-06 03:41:37.011 [info] <0.393.0>@riak_kv_entropy_manager:perhaps_log_throttle_change:853 Changing AAE throttle from 5000 -> 0 msec/key, based on maximum vnode mailbox size 0 from<EMAIL_ADDRESS>2015-05-06 03:41:22.010 [info] <0.393.0>@riak_kv_entropy_manager:perhaps_log_throttle_change:853 Changing AAE throttle from 0 -> 5000 msec/key, based on maximum vnode mailbox size<EMAIL_ADDRESS>from<EMAIL_ADDRESS>2015-05-06 01:52:42.016 [info] <0.393.0>@riak_kv_entropy_manager:perhaps_log_throttle_change:853 Changing AAE throttle from 5000 -> 0 msec/key, based on maximum vnode mailbox size 0 from<EMAIL_ADDRESS>2015-05-06 01:52:27.005 [info] <0.393.0>@riak_kv_entropy_manager:perhaps_log_throttle_change:853 Changing AAE throttle from 0 -> 5000 msec/key, based on maximum vnode mailbox size<EMAIL_ADDRESS>from<EMAIL_ADDRESS>
Closing.


Custom admin page and form handling

Can I add a page somewhere which within the authenticated session where I can add custom things?

@RichardLindhout  read this document http://laravelpanel.com/docs/master/customized-controller-view


feat: Linker

Pull Request Overview
This pull request adds/changes/fixes...
Testing Strategy
This pull request was tested by...
TODO or Help Wanted
This pull request still needs...
Formatting

[ ] Ran cargo fmt
[ ] Ran cargo check
[ ] Ran cargo build
[ ] Ran cargo doc
[ ] Ran nix fmt

Github Issue
This pull request closes <GITHUB_ISSUE>

Blcoked on #88


Searching (Binary Search Tree) | C++

Hello, I'm a GSSoC'21 participant. I would like to implement Searching operation in Binary Search Tree along with proper function descriptions in C++. Kindly assign this task to me.

i would like to contribute to this issue.kindly assign me this  issue.

Please assign this to me.


Added commit message handler to not run all the tests if only docs were changed

correct way would be to check if the changes are only in .rst file, but this could be sufficient

Coverage remained the same at 82.688% when pulling 8a1ad96b4c949913acc9de0e4df9aad772bd2048 on vxsx:feature/test-only-docs into e181a1b668f49d739f2ec97c2ae96e9dd1b20c31 on divio:release/3.4.x.

Coverage remained the same at 82.688% when pulling 8a1ad96b4c949913acc9de0e4df9aad772bd2048 on vxsx:feature/test-only-docs into e181a1b668f49d739f2ec97c2ae96e9dd1b20c31 on divio:release/3.4.x.

Coverage remained the same at 82.688% when pulling df705abbbe778f9679322ff24bd7e6066b6a73be on vxsx:feature/test-only-docs into e181a1b668f49d739f2ec97c2ae96e9dd1b20c31 on divio:release/3.4.x.

Coverage remained the same at 82.688% when pulling df705abbbe778f9679322ff24bd7e6066b6a73be on vxsx:feature/test-only-docs into e181a1b668f49d739f2ec97c2ae96e9dd1b20c31 on divio:release/3.4.x.

Coverage remained the same at 82.688% when pulling 2aa34ee538ef338dbfc3f2830dec4cb76d11ae5a on vxsx:feature/test-only-docs into e181a1b668f49d739f2ec97c2ae96e9dd1b20c31 on divio:release/3.4.x.

https://travis-ci.org/divio/django-cms/builds/224770195 - here's an example of how it works

Coverage remained the same at 82.688% when pulling 53b0c119fbb1c0ce44618526d09db6a034b30551 on vxsx:feature/test-only-docs into da5313a2acf635d2d84f43bb38821f8253736c7c on divio:release/3.4.x.


Update Feast SDK to make staging_location optional when starting import job or downloading dataset

This PR resolves #177
For starting import job, if no staging location is provided, the SDK will request Feast Core for a signed URL (with 5 minutes of expiry) to upload the features values file. This signed url will then be used in ImportSpec.sourceOptionsin the import spec.
For downloading dataset, if no staging location is provided, the SDK will make use of BigQuery Storage API to retrieve the feature values from the Warehouse, hence removing the need for intermediary storage.
Also, in since in version 0.1.2 the protos have been updated to remove DataStore and ability to apply Serving/Warehouse store spec, this PR also make some changes to remove this DataStore reference in the Python SDK. This is done so tests can pass.

/retest

/test all

/test unit-test-cli

/lgtm


member-ordering rule issue with "public-before-private" set

Hi,
I was wrong with understanding the issue #712, so I am closing it.
There are actual two issues with member-ordering rule.
First one, when I set the rule with public-before-private option then following code throws:
class Foo {
  private method() {
    const bar = {
      get() {}
    };
  }
}

An error:
myTest.ts[4, 7]: Declaration of public instance member function not allowed to appear after declaration of private instance member function

I think, the solution of this issue could be in walking into object literal and to not take into account remembered previous modifiers when object's method is encountered.
Second issue is IMHO caused by the fact MemberOrderingWalker can't handle nested structures, e.g. nested classes.
Following example demonstrates this behaviour:
class Foo {
  private fooo() {
    class Baz {
      public bazz () {}
    }
  }

  public pub() {}
}

There are no errors reported by TSLint, although there is one - I am able to define public method pub after private method fooo is defined. That's caused by Baz class defining public method bazz which resets previous modifiers and therefore I am able to define any public method again.
Everything works as expected when inner class Baz is removed - an error is reported by TSLint.
I think, there should be some stack structure remembering previous modifiers for each level of nesting, e.g. inner classes.
Any thoughts on this?
Thanks,
O.

I encountered the same problem as the second example as @zdychacek describe, but slightly different:

The code is:
export function DispatcherMixin(baseClass: { new (...args: Array<any>): Object }) {
    return class extends baseClass {
        eventLookup: any = {};
        messageTypes = [];
        ...

I think this is fixed by #1957.


[WIKI] Python command needs to be run as root first

I had to run the python3.5 run.py as root the first time to get it to set up the dependencies properly.
May want to add that to your wiki on Ubuntu

The guide has been updated. Information about updating Python dependencies was missing. Cheers.


TypeError: wrong number of arguments when posting bytes array

I have a bytesarray containing image data from the TTL camera sample. I want to POST this as an octet stream to a REST endpoint.
My code:
import adafruit_requests as requests

...

buffer = bytearray()

headers={
            'Content-Type': 'application/octet-stream',
            'Prediction-Key': prediction_key
        }

r = requests.request('POST', prediction_endpoint, data=buffer, headers=headers)

When I run this I get the following:
......Traceback (most recent call last):
  File "code.py", line 85, in <module>
  File "adafruit_requests.py", line 242, in request
  File "adafruit_requests.py", line 224, in request
TypeError: wrong number of arguments

Running the code locally I've tracked down the error to this line:
if data:
   sock.send(bytes(data, "utf-8"))

If I change the call to bytes() to remove the encoding parameter, it works.
if data:
   sock.send(bytes(data))

Does the CircuitPython implementation of bytes have an encoding parameter?

PR #21 raised to remove this parameter, if this is the correct fix

Odd, I am able to run this at REPL and don't get the same error.
>>> bytes("hello", "utf-8")
b'hello'

@FoamyGuy - I think it is because it is a bytesarray.
Just tested in the REPL:
>>> b = bytearray(10)
>>> bytes(b, 'utf-8')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: wrong number of arguments

Looks like possible the issue is more related to the bytearray than the encoding param I use a bytebuffer instead of a string it reports the error:
>>> buffer = bytearray()
>>> bytes(buffer, "utf-8")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: wrong number of arguments

This does not appear to be possible in CPython 3.7 either though the error is different than CircuitPython:
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:06:47) [MSC v.1914 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> buffer = bytearray()
>>> bytes(buffer, "utf-8")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: encoding without a string argument

I've changed my PR to check the type, and not pass the encoding for bytearray, but keep it for other types.


feat:  remove the default Y-axis truncate in bar chart

remove the default Y-axis truncate check box to “unchecked” and add a tooltip next to the checkbox saying “It’s not recommended to truncate y-axis in Bar chart”

For context, y-axis truncation was enabled by default only because it was default behavior in the NVD3 charts. I'm personally against truncation of y-axes by default (I think it's ok in certain cases, but should be a conscious decision), so I'd be happy to see truncation being disabled by default in all charts. But I assume there may be community resistance to this, as changing these types of things have historically proven to be a fairly sensitive topic.

Is the tooltip only showing in bar chart? if both behaviors 1)not set by default 2) showing tooltip are only showing in Bar chart, i think we are good.

Is the tooltip only showing in bar chart? if both behaviors 1)not set by default 2) showing tooltip are only showing in Bar chart, i think we are good.

So, Do we change the truncate y-axis control to uncheck in all echart viz?


DBeaver pops up bind parameter dialog on every query

Description
Hi,
If I am running a script with multiple parametrized queries, the bind parameters dialog box pops up for every single query, even though the parameters haven’t changed. Is there a way to suppress this, as it’s quite annoying and makes running a full script of such queries impractical.
DBeaver Version
Version <IP_ADDRESS>00531173
Operating System
Windows
Database and driver
Snowflake
Steps to reproduce
No response
Additional context
No response

Thank you for bug report.
Also the parameter name in @set command should not be replaced

Thanks @E1izabeth. Any idea when you guys might be able to get around to fixing this?

I added this issue to the next milestone 24.1.5

Sorry, I’m new here - could you please give me a quick sentence on how milestones correlate with releases?

The number is the same :)
So, we hope to fix it in 24.1.5 release

Understood. Thank you.

It works as expected for me - Bind parameter dialog appears for every execution, until you set the parameter not through this dialog.

Also I would suggest installing latest DBeaver version 24.1.4

It works as expected.


China server cannot enter the game

When I rename the dll to hid.dll and put it in to the Game folder,I found that I cannot enter the game,it turns black and then crush without any infomation(like zigs),and then it returns to the reconnect panel.However,when I remove the hid.dll and reinstall the client,it works well.Can you please fix it?

Chinese servers are not supported.
You can try to find the offset yourself and compile again.

win11 stable working.
Try reinstalling the client or system.

thanks.I'm using win10 and for now I'm unwilling to upgrade to win11 since win11 is not nice for me X(
Is there other way to fix this pls?Everything goes well until League of Legends upgrades to 13.18

At which step did it turn black.
Did you check the display card driver?
Maybe you can Try changing to another windows 10 system version.

win10 can run normally.

Chinese League of Legends has an anti-cheat, which R3nzSkin doesn't provide a bypass for.


fix: now taking resolved handler instead of handlerFile

BREAKING CHANGE: fix: now taking resolved handler instead of handlerFile

:tada: This PR is included in version 5.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


import type allows not existent types, despite untyped-type-import being enabled

Flow allows to import missing types and this already gave me a few bugs.
// module.js
// @flow
export type Value = 1;
// index.js
// @flow
import type { Values } from './module.js';

Flow version: 0.91.0
Expected behavior
Flow should error on missing type
Actual behavior
No errors

Weird...I get
Error ---------------------------------------------------------------------------------------------------- index.js:2:15

Cannot import `Values` because there is no `Values` export in `./module.js`. Did you mean `Value`?

   2| import type { Values } from './module.js';
                    ^^^^^^

Found 1 error

Tried both v0.91 and v0.92.
Are you sure both files had @flow? Was there anything weird in your .flowconfig?

@gabelevi Sorry, I didn't reproduced this properly. The error came from relay artefacts. Try this
module.js
// @flow

/*::
export type Value = number;
*/

const node/*: any*/ = (function(){})();
module.exports = node;

index.js
// @flow
import type { Values } from './module.js';

I chatted with @TrySound on our Discord and provided this example to explain why I believe we should not error in this situation by default. Basically, classes are both values and types, which makes this not quite as straightforward as it might be otherwise.
However, I believe that the untyped-type-import lint should catch this. I'm going to retitle this to make it a bit clearer.

Hah, this problem exists since 2015
https://github.com/facebook/flow/issues/721

In 2015, untyped-type-import didn't exist, so I believe that was (and still is) expected behavior. The bug is that untyped-type-import doesn't catch this.

Hi @nmote Is this still on your radar?

Sorry if I gave the wrong impression here. I'm not currently working on this, I was just helping with diagnosis.

Hi @gabelevi Could you take a look at this if you have a time?


EDAA and DAA screenshots

updated EDAA/DAA docs and combined several pages to make About Our Data page

Markdown doesn't support pdf images. Need to either get it working with HTML or use images with a different format.

I committed Jobin's edits and resolved a merge conflict arising from the addition of David's contemplated use example. It just remains to replace the pdfs with pngs.


PurchaseAsync returns null InAppBillingPurchase result after a successful purchase

Bug
Version Number of Plugin: <IP_ADDRESS>-beta
Device Tested On: Samsung Galaxy S5 (Android 6.0.1)
Expected Behavior
On a successful purchase, PurchaseAsync completes with a non-null InAppBillingPurchase.
Actual Behavior
All indications are that the purchase succeeded (Google Play reports success) but the task result is null. Looking at the account subscriptions in the Google Play app, I can see that the subscription purchase did complete.
I also verified that my OnActivityResult is being called with requestCode=1001, resultCode=Ok, and responseCode=0, and this is being passed along to InAppBillingImplementation.HandleActivityResult.
I'm seeing this for a subscription purchase and when purchasing a consumable product.
Note: shortly after the purchase was started, the log shows the following suspicious error:
04-29 22:58:36.537: I/MainActivity(21441): PurchaseSubscription: connected, purchasing
04-29 22:58:36.542: I/Finsky(9080): [535] com.google.android.finsky.billing.iab.y.a(32): com.performancephones.crewnerd: Account determined from library ownership - [Ohz2sWuzKyd7LW40g-gyu0tWluk]
04-29 22:58:36.552: E/Parcel(4385): Class not found when unmarshalling: com.google.android.finsky.billing.common.PurchaseParams
04-29 22:58:36.552: E/Parcel(4385): java.lang.ClassNotFoundException: com.google.android.finsky.billing.common.PurchaseParams
04-29 22:58:36.552: E/Parcel(4385): 	at java.lang.Class.classForName(Native Method)
04-29 22:58:36.552: E/Parcel(4385): 	at java.lang.Class.forName(Class.java:324)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.Parcel.readParcelableCreator(Parcel.java:2404)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.Parcel.readParcelable(Parcel.java:2358)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.Parcel.readValue(Parcel.java:2264)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.Parcel.readArrayMapInternal(Parcel.java:2614)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.BaseBundle.unparcel(BaseBundle.java:221)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.BaseBundle.getString(BaseBundle.java:920)
04-29 22:58:36.552: E/Parcel(4385): 	at android.content.Intent.getStringExtra(Intent.java:6183)
04-29 22:58:36.552: E/Parcel(4385): 	at com.android.server.am.ActivityStackSupervisor.startActivityLocked(ActivityStackSupervisor.java:2695)
04-29 22:58:36.552: E/Parcel(4385): 	at com.android.server.am.ActivityStackSupervisor.startActivityMayWait(ActivityStackSupervisor.java:2157)
04-29 22:58:36.552: E/Parcel(4385): 	at com.android.server.am.ActivityManagerService.startActivityInPackage(ActivityManagerService.java:6874)
04-29 22:58:36.552: E/Parcel(4385): 	at com.android.server.am.PendingIntentRecord.sendInner(PendingIntentRecord.java:310)
04-29 22:58:36.552: E/Parcel(4385): 	at com.android.server.am.ActivityManagerService.startActivityIntentSender(ActivityManagerService.java:6632)
04-29 22:58:36.552: E/Parcel(4385): 	at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:292)
04-29 22:58:36.552: E/Parcel(4385): 	at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3995)
04-29 22:58:36.552: E/Parcel(4385): 	at android.os.Binder.execTransact(Binder.java:453)
04-29 22:58:36.552: E/Parcel(4385): Caused by: java.lang.ClassNotFoundException: com.google.android.finsky.billing.common.PurchaseParams
04-29 22:58:36.552: E/Parcel(4385): 	at java.lang.Class.classForName(Native Method)
04-29 22:58:36.552: E/Parcel(4385): 	at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
04-29 22:58:36.552: E/Parcel(4385): 	at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
04-29 22:58:36.552: E/Parcel(4385): 	at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
04-29 22:58:36.552: E/Parcel(4385): 	... 17 more
04-29 22:58:36.552: E/Parcel(4385): Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack trace available

Steps to reproduce the Behavior
Call ConnectAsync followed by PurchaseAsync for a subscription or consumable product.
Looking at the code here, I see that there are several reasons why PurchaseAsync can return null. To eliminate one of those possibilities, I removed the "verify" parameter from my purchase calls. The behavior was the same.
It looks like there may be a race condition between PurchaseAsync and the HandleActivityResult callback. tcsPurchase is being set after the call to serviceConnection.Service.GetBuyIntent which I think allows the HandleActivityResult call happen while tcsPurchase is still null.

I've got the same behavior on non-consumables with the PurchaseAsync method called without verifyPurchase parameter.

Hmmm, i am in crazy prep for build right now, but if someone could pull in the code into their repo and take a look let me know as I haven't seen it, but who knows.

I forked your repo and will look into this more. I should be able to report back by the end of the week.

Found the problem... when I pass an empty string for the "payload", it gets deserialized as null, causing the comparison to fail when checking for success. I added code to promote null payloads to string.Empty both on incoming purchase calls, and when looking at the deserialized purchase.
I also fixed the potential race condition with tcsPurchase. I'll submit a PR with the changes.

Ah, yes this makes sense, you should always pass a payload though as per Google. I will look at the PR though for sure as we can handle this... Although is is better to now allow a blank payload?

I think more parameter validation across the board would be a good thing. I wouldn't mind being forced to pass in a payload string, but I don't know if there's really a good reason to not just let null and string.Empty work too.
Either way, I think the tcsPurchase change is a good precaution.


Default column names

From your IRIS classifier example, I guessed that the default column name for features is "Features" and for the label is "Label" and they can be changed using "LabelColumn" and "FeatureColumn" properties of the classifier class. Is it correct?
(it would be better to call the second one "FeaturesColumn" by the way)
Then I tried to change the column name for the output data structure. I used
        public class IrisPrediction {
            [ColumnName("PredictedIris")]
            public string PredictedIris;
        }

and then
            pipeline.Add(new PredictedLabelColumnOriginalValueConverter() { PredictedLabelColumn = "PredictedIris" });

but it throws an exception saying "Column not found: PredictedIris"
What am I doing wrong?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: e855e630-1a30-d138-4ac6-bfeefebf9aae
Version Independent ID: afc0a7d1-d3c2-acf2-d4ea-d2565e22b237
Content: ML.NET tutorials
Content Source: docs/machine-learning/tutorials/index.md
Service: unspecified
Product: dotnet-ml
GitHub Login: @JRAlexander
Microsoft Alias: johalex

@aditidugar can you take a look at this question? It's about the Iris tutorial.

@codemzs will be able to help you here!

@codemzs Thank you for so detailed explanation. Of course, I can totally work with the default names.
I just thought that PredictedLabelColumn property actually makes the necessary configuring.
Will look forward to the next updates which allow to configure the scorer as well.

Thanks, @aditidugar, and @codemzs for the answers. I think we can close this.


/math module for Kassy

Just an idea/enhancement for Kassy.
/math 2+2
->4
/math 13*5
->65
PS: I'm new here, still haven't studied all the modules. I'm sorry if this feature already exists. Just puttin it out there.

@kotAPI this feature already exists indeed. Not as direct but you can run JavaScript code in the /runbot module as /runbot return 2+2; and pretty perform any math that's supported by JavaScript.
For future ideas, please submit them in the Wiki under Ideas for Modules.

Ah, sorry bout that.
ᐧ
On Thu, Mar 3, 2016 at 2:07 PM, Paras D. Singh<EMAIL_ADDRESS>wrote:

@kotAPI https://github.com/kotAPI this feature already exists indeed.
Not as direct but you can run JavaScript code in the /runbot module as /runbot
return 2+2; and pretty perform any math that's supported by JavaScript.
For future ideas, please submit them in the Wiki under Ideas for Modules
https://github.com/mrkno/Kassy/wiki/Ideas-for-Modules.
—
Reply to this email directly or view it on GitHub
https://github.com/mrkno/Kassy/issues/93#issuecomment-191652447.


Always use refdomain='std' for pending_xref()

See https://groups.google.com/forum/#!topic/sphinx-dev/98bvia7i7II

This seems to be a backward-incompatible change and it will hopefully be fixed in Sphinx: https://github.com/sphinx-doc/sphinx/issues/3698.

For now, this is fixed in https://github.com/sphinx-doc/sphinx/pull/3699, but it will break again in Sphinx 2.0.
Some time before that (but not too soon), we should merge this PR.

I've added a check for the Sphinx version. Now it should work on old and new versions.


Gradual Ability Boost Variant Rule Not Transferring to Foundry

Description
In Foundry I am using two variant rules, Automatic Bonus Progression and Gradual Ability Boost.
In Pathbuilder, when I level up, I am selecting my new ability boost, however when I import my character from Pathbuilder into Foundry, I still have to set the Ability Boost.
Steps To Reproduce

From the menu choose Character Options and enable the two variant rules, Use GMG automatic bonus progression and Use Gamemaster Gradual Ability Boost

In Foundry enable the same two variant rules in the PF2e core rules section
Open the following character in Pathbuilder
a. https://pathbuilder2e.com/launch.html?build=666480
Export Character
In Foundry import character
Notice that Attribute Modifiers Edit button is still blinking
Click the Edit button and notice that levels 2-5 is still needing 1 choice

Expected Behavior
When the variant rules are enabled in both Foundry and Pathbuilder, it is expected that the selected ability boosts in Pathbuilder are correctly applied in Foundry upon import.
Screenshots

Environment
Foundry v11 build 315
Module version 1.0.12
Pathfinder system version 5.13.6
Web version 79
Browser - Chrome

Thanks for the report, fixed in 1.0.13


Max atom size

This introduces a maximum size of atoms.
If atom sizes are unbounded, there would be a lot of places that would need additional overflow checks, anywhere we perform cost computations based on atom size for instance.
For example:

https://github.com/Chia-Network/clvm_rs/blob/main/src/more_ops.rs#L369
https://github.com/Chia-Network/clvm_rs/blob/main/src/more_ops.rs#L500

One risk of such approach is that the effective maximum atom size would be implied by which operations are performed and how costs are computed for those operations. For example, using multi-precision integers would avoid overflow of intermediate values and could raise the effective max atom size.
Proving that we could not overflow anywhere would be difficult and prone to errors.
Specifying an atom size upper limit explicitly has the benefit of:

simplify all logic that computes costs based on atom sizes, to know that all values are within reason and won't overflow
simplifies the documentation by simply stating the limit, rather than having to document individual limits for different operations.

This one bothers me a little. I was still really hoping that we shoehorn all our limits into costs, even if it means charging artificially high amounts for allocation (ie. wherever there is a new_atom call, add a premium proportional to bytes) and not just for computation. Do we have examples that prove this is necessary?

I think proving that this isn't necessary is non-trivial. And I have a hard time justifying producing such evidence. There doesn't seem to be any practical upside of defining this limit implicitly via costs.
It seem like writing security critical code without having buffer overflow checks, but instead construct the code such that overflows shouldn't happen.

that said, the limit should probably be greater than 1 MiB still.


Header shows Organization name from SOW from funding agreement

The header currently shows the Organization name as per the application, subsequent change from the signed agreement needs to be reflected in the header.
AC

[ ] When the SOW from a signed funding agreement is uploaded, the The Organization name should update to reflect the SOW in the: Analyst header, Analyst dashboard rows, assessment table
[ ] When SOW from a signed funding agreement is uploaded, the application form does NOT update, continue to show the Organization name from the application.
[ ] When change requests SOWs are uploaded, the Organization name should update to reflect new Organization name in the SOW

Hey team! Please add your planning poker estimate with Zenhub @AntBush @marcellmueller @rafasdc

moved to new jira


Hyperlink Validations with Error

Required items, please complete
Change(s):

Updated hyperlinkValidator.ts file

Reason for Change(s):

When a new image is added in PR which is not in master then we should validate the image is present in the PR. If the image is from the github repo then check if the image is in the PR changes list and still if link is breaking the give error.

Version Updated:

NA

Testing Completed:

Yes

Checked that the validations are passing and have addressed any issues that are present:

See guidance below

On Success:

On Failure:

Looks good, Approved

Waiting for response from Pratik


Adopt proposed new Node.js AsyncLocalStorage apis to replace AsyncResource use cases

Additions to AsyncLocalStorage in Node.js that serve a dual purpose:

They align the API closer to the expected AsyncContext.wrap api (AsyncLocalStorage.bind == AsyncContext.wrap). It uses the existing naming from AsyncResource for consistency with the existing API.
They eliminate the need to use AsyncResource. We will keep AsyncResource for backwards compatibility as part of the larger Node.js compat story, but these cover all of the key use cases of AsyncResource for context tracking.

The TC-39 AsyncContext proposal is expected to include AsyncContext.wrap(...) (which is the same as AsyncLocalStorage.bind(...) and some version of a AsyncContext.snapshot() (naming still to be determined).
Refs: https://github.com/nodejs/node/pull/46387
// The AsyncResource use case...
class Foo extends AsyncResource {
  constructor() { super('foo'); }
  bar() { this.runInAsyncScope(() => {});
}

// is replaced by

class Foo {
  #runInAsyncScope = AsyncLocalStorage.snapshot();
  bar() { this.#runInAsyncScope(() => {});
}

// The AsyncResource use case...
const foo = AsyncResource.bind(() => {});

// is replaced by
const foo = AsyncLocalStorage.bind(() => {})

this greatly reduces my anxiety around AsyncResource not making sense to me.

Heh, well, in Node.js this is also the first step towards breaking the dependency there between AsyncLocalStorage and async_hooks, which is a nearly universally despised API that we want to deprecate and get rid of or at least hide away. So this is all good.


Improve neuroscope documentation and refactor path resolution

I am working on using this reader for a conversion and I found the logic for deciding how to load the binary file and the xml file quite confusing. To improve this I have done two things:

Add a descrition of the path resolution logic in the docstring.
Refactor the path resolution logic (without changing) to make it more readable.

Also, I don't know why but the filename was equal to an empty string by default. I don't know if anyone use this default but that would have resulted in an error on the previous implementation. Is this something that is intentional for reasons of the non-raw-io part of neo?

Hi @h-mayorquin Thanks for the cleaner rewrite. The default filename as empty string is a legacy from earlier implementations of the IO. I don't think we need to cover that case any more.


11660: add EIP datatype mappings

This PR adds the mappings for EIP to Identifier.
Test Steps:

Verify that mappings match the inventory
Verify the tests pass

Changes

Mapping for EIP -> Identifier

Checklist
Testing

[x] Tested locally?
[x] Ran ./prime test or ./gradlew testSmoke against local Docker ReportStream container?
[ ] (For Changes to /frontend-react/...) Ran npm run lint:write?
[x] Added tests?

Process

[ ] Are there licensing issues with any new dependencies introduced?
[ ] Includes a summary of what a code reviewer should test/verify?
[ ] Updated the release notes?
[ ] Database changes are submitted as a separate PR?
[ ] DevOps team has been notified if PR requires ops support?

Linked Issues

#11660

@JessicaWNava I talked with @mkalish about the mapping spreadsheet and we think it's incorrect. An EIP datatype contains 2 EI datatypes which each contain 4 strings (as shown in the NIST spec).
type.coding.code and type.coding.system are hardcoded to values according to the spreadsheet so they should not receive any mapped values from HL7.
Can you clarify what you mean by SPM.2.3? That should not exist and I double checked the mappings and they look like they're ending up in the right place.

@JessicaWNava I talked with @mkalish about the mapping spreadsheet and we think it's incorrect. An EIP datatype contains 2 EI datatypes which each contain 4 strings (as shown in the NIST spec).
type.coding.code and type.coding.system are hardcoded to values according to the spreadsheet so they should not receive any mapped values from HL7.
Can you clarify what you mean by SPM.2.3? That should not exist and I double checked the mappings and they look like they're ending up in the right place.
Sorry, for SPM.2.2, you have adb4a5cc-50ec-4f1e-95d7-0c1f77cacee1&CSV&11D1111111&CLIA which has 4 items, however, looking at https://docs.google.com/spreadsheets/d/1Ez3350XkVw7cS5ufWsFVpVXV884WOtutsWFfEAZUUvo/edit?usp=sharing there are only EIP.1 and EIP.2 for SPM.2 which I would think would mean that there would only be two items in your message.

Yup thats why we think the spreadsheet is wrong. Looking at the NIST spec we see this which makes more sense given how an EIP datatype is defined.


Alternatve Firmware Profimax 4.3 issue

Hello,
I have installed the DPS firmware versin 4.3 from Profimax (very good firmware for this device). So I testet it with this esphome software. After changing the uart speed to 115200 I was able to communicate with my power supply.
Unfortunately I am only able to read the values, but I can't write anything.
There is a ESP01 installed. When I use my own Arduino firmware everything works fine. So the wiring is correct.
Do someone have any advice?
Tanks in advance.
Bernd

Could you provide some details about the profimax firmware? You could enable the debug output of the uart component to dump the RAW traffic (requests) at the log: https://github.com/syssi/esphome-dps?tab=readme-ov-file#debugging
Please compare the RAW traffic (write commands) with the payloads of your arduino implementation. Is there something different?

Hello Sebastian, for now I can provide you a link to the firmware documentation. There is also a chapter about the modbus protocol...https://profimaxblog.ru/dps_update/Best regards Bernd Gesendet von Outlook für Android

Hello Sebastian,
here ist the log output, when I try to switch on the power:
22:44:05 | [D] | [uart_debug:114] | <<< 01:03:1A:02:D8:00:64:00:01:00:00:00:00:04:70:00:00:00:00:00:00:00:00:00:06:13:8D:00:2B:85:C2
22:44:06 | [D] | [switch:012] | 'dps-5005 output' Turning ON.
22:44:06 | [D] | [uart_debug:114] | >>> 01:10:00:09:00:01:02:00:01:67:09
22:44:09 | [D] | [uart_debug:114] | >>> 01:03:00:00:00:0D:84:0F
22:44:09 | [I] | [dps:063] | Status frame received
22:44:09 | [D] | [text_sensor:064] | 'dps-5005 device model': Sending state 'DPS5005'
22:44:09 | [D] | [sensor:093] | 'dps-5005 voltage setting': Sending state 7.28000 V with 2 decimals of accuracy
22:44:09 | [D] | [number:012] | 'dps-5005 voltage setting': Sending state 7.280000
22:44:09 | [D] | [sensor:093] | 'dps-5005 current setting': Sending state 0.10000 A with 3 decimals of accuracy
22:44:09 | [D] | [number:012] | 'dps-5005 current setting': Sending state 0.100000
22:44:09 | [D] | [sensor:093] | 'dps-5005 output voltage': Sending state 0.01000 V with 2 decimals of accuracy
22:44:09 | [D] | [sensor:093] | 'dps-5005 output current': Sending state 0.00000 A with 3 decimals of accuracy
22:44:09 | [D] | [sensor:093] | 'dps-5005 output power': Sending state 0.00000 W with 2 decimals of accuracy
22:44:10 | [D] | [sensor:093] | 'dps-5005 input voltage': Sending state 11.35000 V with 2 decimals of accuracy
22:44:10 | [D] | [text_sensor:064] | 'dps-5005 protection status': Sending state 'Normal'
22:44:10 | [D] | [sensor:093] | 'dps-5005 backlight brightness': Sending state 120.00000 % with 0 decimals of accuracy
22:44:10 | [D] | [sensor:093] | 'dps-5005 firmware version': Sending state 4.30000  with 1 decimals of accuracy
22:44:10 | [W] | [component:214] | Component modbus took a long time for an operation (0.12 s).
22:44:10 | [W] | [component:215] | Components should block for at most 20-30ms.
22:44:10 | [D] | [uart_debug:114] | <<< 01:03:1A:02:D8:00:64:00:01:00:00:00:00:04:6F:00:00:00:00:00:00:00:00:00:06:13:8D:00:2B:DA:CA
22:44:14 | [D] | [uart_debug:114] | >>> 01:03:00:00:00:0D:84:0F
22:44:14 | [I] | [dps:063] | Status frame received
My arduino code to switch on the power supply is as follows:
#include <ModbusMaster.h>
Serial.begin(115200);
node.begin(1, Serial);
node.writeSingleRegister(9, EinAus);  // Übergabe EinAus an DPS5005 (Register 9)
I hope this info is helpful.
Bernd

Hello, do you have any idea what could be the problem?

Please change this line:
substitutions:
  external_components_source: github://syssi/esphome-dps@main

to
substitutions:
  external_components_source: github://syssi/esphome-dps@test-write-single-register

and recompile + flash the ESP. Does it work now?

Hello Sebastian,
I've tested the new version. unfortunately I still can't controll my DPS.
Here is the log file:

23:05:53
[D]
[uart_debug:114]
<<< 01:03:1A:03:28:00:64:00:00:00:00:00:00:04:6E:00:00:00:00:00:00:00:00:00:06:13:8D:00:2B:F5:24

23:05:54
[D]
[switch:012]
'dps-5005 output' Turning ON.

23:05:55
[D]
[uart_debug:114]
>>> 01:06:00:09:00:01:98:08

23:05:56
[D]
[uart_debug:114]
>>> 01:03:00:00:00:0D:84:0F

23:05:56
[I]
[dps:063]
Status frame received

...

The payload of the feature branch is equal to the payload of node.writeSingleRegister(9, EinAus);. I've no idea why it's not working.
# implemented
Output on:   01:10:00:09:00:01:02:00:01:67:09
Output off:  01:10:00:09:00:01:02:00:00:a6:c9

# feature branch
Output on:   01:06:00:09:00:01:98:08
Output off:  01:06:00:09:00:00:59:C8

Profimax Modbus registers: https://profimaxblog.ru/modbus-communication-protocol-2/

Meanwhile I organized a logic analyzer to campare the incomming signals.
Here is the sending sequence to switch on the DPS comming from my arduino code:

When I do the same with your ESPHome test-write-single-register code I got the following result:

There is a lot of stuff going on. The last sequence seems to be correct, but it will be somehow ignored...

As you can see also the logic analyzer software isn't able to parse the data correctly.
Hopefully this info helps you to make your code working.
Thanks in advance for your asistance

Could you provide your YAML? I would like to replicate your setup.

Here is my YML file:
DPS5005.zip

Hi, do you have any news on this topic?

Please set the baud_rate of the logger component to 0. At the moment you are logging to UART0 too which causes a lot of noise. With UART logging disabled the UART signal of your YAML looks good:

THANK YOU VERY MUCH!!!!
That did the trick! Now it works as expected.
I am so happy. Now I can start my project.
All best to you. Bernd

@btmerz Could you verify the main branch still doesn't work for you? So the single register write is required for your device firmware?

I can confirm that the main version works as well!


Installation fails on Samsung (ARM) Chromebook

If you attempt to install the Chrome app
https://chrome.google.com/webstore/detail/colaboratory-notebook/pianggobfjcgeihlmfhfgkfalopndooo
using a Samsung ARM Chromebook, it appears the installation repeatedly fails with the error "package invalid, could not unzip extension".
As students increasingly are working on Chromebooks, it would be desirable to have this working on Chromebooks.  If that is difficult (due to ARM support or any other reason), the app maybe should be disabled for Chromebooks (or at least a warning put on the app installation page about lack of Chromebook support).
Definitely would appreciate it if someone could try to repro using a ARM Chromebook and non-ARM Chromebook to confirm the error is a general issue and determine the scope of the issue, thanks.

Runs OK on my Samsung Series 3 ARM Chromebook

This version of colaboratory is no longer supported, please switch to https://colab.research.google.com.


net: pure Go dns does not handle UDP packets > 512 octets

I have found a bug in pure Go resolver that causes Dial to fail even though correct responses are returned from the server. This problem manifested itself as a failure when trying to search for docker images in docker 1.9.1 built on go1.4.3:
DEBU[0003] Calling GET /v1.21/images/search
INFO[0003] GET /v1.21/images/search?term=phusion
DEBU[0003] hostDir: /etc/docker/certs.d/docker.io
DEBU[0003] pinging registry endpoint https://index.docker.io/v1/
DEBU[0003] attempting v1 ping for registry endpoint https://index.docker.io/v1/
DEBU[0003] Index server: https://index.docker.io/v1/
ERRO[0003] Handler for GET /v1.21/images/search returned error: Get https://index.docker.io/v1/search?q=phusion: dial tcp: lookup index.docker.io on x.x.x.x:53: no such host
ERRO[0003] HTTP Error                                    err=Get https://index.docker.io/v1/search?q=phusion: dial tcp: lookup index.docker.io on x.x.x.x:53: no such host statusCode=404

Similar issues are #12712 and #12778
I have tested go1.3.0 and it did not exhibit this problem, but at least 1.4.3, 1.5.1 and 1.5.2 are affected.
Tested using the following code:
package main

import (
    "fmt"
    "io/ioutil"
    "log"
    "net/http"
    "os"
)

func main() {
    resp, err := http.Get(os.Args[1])
    if err != nil {
        log.Fatal(err)
    }
    page, err := ioutil.ReadAll(resp.Body)
    resp.Body.Close()
    if err != nil {
        log.Fatal(err)
    }
    fmt.Printf("%s", page)
}

Note - we only run an IPv4 stack. IPv6 is disabled on the client
Test fails with pure Go resolver
# /tmp/fetch-1.5.2 https://index.docker.io/v1/search?q=phusion
2015/12/10 12:17:42 Get https://index.docker.io/v1/search?q=phusion: dial tcp: lookup index.docker.io on x.x.x.x:53: no such host
# docker search phusion
Error response from daemon: Get https://index.docker.io/v1/search?q=phusion: dial tcp: lookup index.docker.io on x.x.x.x:53: no such host

DNS packet capture: PureGO_correct_but_fails.txt
Here we see the AAAA response contains only CNAME RRs but no AAAA RRs. The resolver queries all 4 name servers and all 4 responses contain CNAME and A RRs which the resolver ignores. It then searches using the search domain (from /etc/resolv.conf) appended, finally determining that the host cannot be found.
Test succeeds when forced to use cGo resolver
(By setting LOCALDOMAIN in the environment, as described in the docs)
# LOCALDOMAIN= /tmp/fetch-1.5.2 https://index.docker.io/v1/search?q=phusion
{"num_pages": 11, "num_results": 257, "results": [{"is_automated": true, ...

DNS packet capture: CGO_correct_but_succeeds.txt
Here we see the same AAAA and A RRs are returned but this time the resolver accepts the A records and the dial call succeeds.
Summary
The name server returns correct responses for both A and AAAA queries but the pure Go resolver ignores the A response records when the AAAA response contains no RRs.
I would have also expected that since IPv6 is disabled, querying for AAAA records is redundant, but the C library does it too. That may be because many hosts will have both stacks enabled but only have IPv4 routing configured so querying AAAA may be valid and successful but will require an A query anyway. Unfortunately that means the DNS server's load gets doubled for every address resolution.
Recommendations

Review section 3. Expected Behaviour of RFC4074
Enable AAAA queries only if the IPv6 stack is enabled

Can you please try with tip? I guess that the fix for #12778 and #13090 mitigate circumstances.

I discovered that changing the nameservers in /etc/resolv.conf solves the problem - at least I tested a few other public name servers and found no problem.
After careful inspection of the response packets from Google's nameservers and ours, I can see no difference in them other than Google (and BIND at least) appear to use an internal "packet pointer" to effectively compress the response packet. When the parser sees a 0xC0 followed by a 2-byte value (0xnn), it uses 0xnn + 1 bytes of the previous label (dots not included) to complete the rest of the current label.
Our nameservers do not use this method of compression and instead include the full label for every RR. I will need to do some more research on that. I still think the problem is in Go but may not be exactly as described in the initial post.

Feel free to change the description correctly and send a patch including a test case (see https://github.com/golang/go/wiki#contributing-to-the-go-project) if you see a bug in https://github.com/golang/go/blob/master/src/net/dnsmsg.go#L452. It's likely because the builtin DNS stub resolver was designed as an auxiliary resolver and changed its role as a primary in Go 1.5.

Well we managed to work around our test case by enabling compression on our name servers which are built with https://github.com/miekg/dns - an awesome Go DNS library.
However, I'm pretty certain that the pure Go resolver does not implement RFC6891 which would allow UDP packet sizes > 512 octets to be requested and handled.

See #13356. Also IETF dnsops guys will update RFC 5966 soon; https://tools.ietf.org/html/draft-ietf-dnsop-5966bis.

This is a duplicate of #6464.


Fix autocompletion of args that consume remainder

The Go runtime would panic at the following line because of an out-of-bounds slice access if autocompletion was requested for a clause that consumed the remainder of a command:
https://github.com/alecthomas/kingpin/blob/cf44c60659e38b5559aa885c13ad76c9bd6e8d50/cmd.go#L35
By specifically checking for these kinds of clauses, the problem should be mitigated.
Example
package main

import "github.com/alecthomas/kingpin"

func main() {
  var strings []string
  kingpin.Arg("test", "").StringsVar(&strings)
  kingpin.Parse()
}

$ go run main.go --completion-bash 1 2
panic: runtime error: index out of range [1] with length 1

Thanks!