convert str result from yt api to int

Fixes stats module.

I think I'm gonna commit mod abuse and merge this without another review


Fix links to Data Set Library

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Unable to connect HMS-800W-2T

Describe the bug
Unable to establish a connection with the DTU of an HMS-800W-2T device. The integration fails to connect to the DTU. The issue has been tested with DTU firmware versions V00.01.11 and V00.01.13.
The Home Assistant instance is located in a different VLAN from the DTU, but routing between both VLANs is enabled and tested. As a point of comparison, a Shelly Pro 3EM device on the same VLAN as the DTU connects successfully, indicating the routing setup is functional. Additionally, the DTU is reachable via the S-Miles Cloud.
Log
RealData is None. Cannot connect to DTU or invalid response received!
Expected behavior
Integrate the HMS-800W-2T and DTU successfully into Home Assistant without connection issues.
DTU

Hardware Ver.: H00.01.00
Software Ver.: V00.01.13
Device Ver.: Gen3

HMS-800W-2T

Hardware Ver.: H00.04.00
Software Ver.: V01.02.01
Device Ver.: Gen3
Grid Profile Ver.: 2.0.0 (DE_VDE4105_2018)

Home Assistant

OS: Home Assistant OS VM on Proxmox
Version: 2024.11.2

ha-hoymiles-wifi

Version: v0.3.2

Screenshot

Thanks for reporting.
Although routing is confirmed by you, this error typically occurs when there is some kind of issue between communication of inverter and device.
Can you try connecting directly with your inverter (integrated hotspot) to see if connection works?
Also, can confirm you wether the get-real-data-new command from https://github.com/suaveolent/hoymiles-wifi works directly from your device?
Routing between VLANs should not be an issue on the integration side since I am also runnning such a setup.

With a notebook directly connected to the DTU hotspot, the response to the command hoymiles-wifi --host <IP_ADDRESS> get-real-data-now looks like this:

However, when the notebook is connected to the same network but on a different VLAN, the response is: No response or unable to retrieve response for get-real-data-now.
The same issue occurs when the notebook is connected to the same network and VLAN, and even when connected to the same WiFi and VLAN.

That response is exactly what I would expect. So at least communication works.
I wonder if there are some changes in newer revisions of the inverter which prevents communication via WiFi networks.
Can you setup a WiFi network without VLAN to check if communication still does not work?
(Note: if the sun has set, your DTU won't be reachable and you have to wait until the next day)

I set up a WiFi network without internet access, connecting only the DTU and the notebook to it. When running hoymiles-wifi --host <IP-ADDRESS> get-real-data-now, I received a positive response, similar to the result when connected directly to the DTU hotspot.
It looks like I’ll need to investigate my network setup further, since the connection works outside of it. Do you have any suggestions on where to start troubleshooting? I'm using TP-Link Omada hardware with VLANs and an AdGuard Home instance.

Thanks that's good news.
You could look at the permissions and ports. Communication is done via TCP streams over port 10081.
Maybe that port is blocked for your VLAN setup?

The issue is resolved! The integration is now working perfectly, and all data is displayed as expected.
Turns out the problem was caused by a WiFi setting: the "Guest Network" option was checked, which, combined with an ACL rule, completely isolated the DTU from the rest of the network. So yes, this one was definitely on my end...
Thanks so much for the help and for sharing this project!


Issue: Getting a page error when entering number into the calculate box on https://stakes.social/liquidity

I have reproduced the problem.
I get an error if I enter a number when the wallet is not connected.
I will try to inspect it.


Stub out CertificateLoader support

Requires Android/tun2socks/tun2socks.aar be updated with https://github.com/Jigsaw-Code/outline-go-tun2socks/pull/68 to support the API changes.

I rolled these changes into #410, so we should be ready to add client cert support on the Java side.

I rolled these changes into #410, so we should be ready to add client cert support on the Java side.


EventHub-2018-01-01 Preview : update the API name

Latest improvements:
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[X] I have reviewed the documentation for the workflow.
[X] Validation tools were run on swagger spec(s) and have all been fixed in this PR.
[X] The OpenAPI Hub was used for checking validation status and next steps.

ARM API Review Checklist

[X] Service team MUST add the "WaitForARMFeedback" label if the management plane API changes fall into one of the below categories.
adding/removing APIs.
adding/removing properties.
adding/removing API-version.
adding a new service in Azure.

Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs.

[X] If you are blocked on ARM review and want to get the PR merged urgently, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.
Please follow the link to find more details on API review process.

Can one of the admins verify this patch?

Automation for azure-sdk-for-python

Automation for azure-sdk-for-js

Automation for azure-sdk-for-java

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-go

@sarangan12 ,  spall check failed for Mediaservices
/home/vsts/work/1/s/specification/mediaservices/resource-manager/Microsoft.Media/stable/2018-07-01/Encoding.json:1200:95 - Unknown word (speicified)
can you please take a look?


Add a miscellaneous script for testing docker trust functions with notary

Used this to test https://github.com/docker/docker/pull/18887.
Signed-off-by: Ying Li<EMAIL_ADDRESS>

This is awesome -- I also made a gist for manually running these tests when I did earlier today, but this is so much better.
LGTM

@riyazdf Thanks!  :D  (sorry, rebased because it looks like one of the checks was not updating)

LGTM, feel free to merge.


BUG: install_Applio not checking python version on Unix-like systems

Environment

OS: Every Unix-Like system (BSD, LINUX, MACOS, CHROMEOS)
Python Version: Every since is a .sh error and not a python one
Hardware: Doesn't matter for this issue

Issue Description:
install_Applio.sh
In the line 41 to 47 this code is executed
if command -v python3 > /dev/null 2>&1; then
            py=$(which python3)
            echo "Using python3"
        else
            py=$(which python)
            echo "Using python"
        fi

This SHOULD check if python 3.11 or similar version of python is installed but in "py=$(which python)" this may cause an issue since  $(which python) may return python 2 insted of 3. this will try to make a .venv with python 2 and fail in the installer
Attempted solutions

A workarround can be do something like this. Is a poc of how it should be

if [[ -n "$py --version ]] then
  echo "Version compatibe"
else
echo "Python 3 no fue encontrado"
exit
fi

Adding a tip about this. move these lines somewhere betwen 31 because the python detection is duplicated by some reason.

i don't like to use if else and may there be a better way to do it but idk


in teamgen, make rating ranges bounds of alts and team players consistent

currently, our strategy for putting players into teams versus making them play as alt is as follows:

create a list of players, and a list of alts (i.e. players who want to be alts).
make boards from players, get rating bounds.
calculate the number of teams you want.
for each board, sort players and remove (number of players - number of teams we want) of bottom ones from the list, add them to the alts list.
make boards from alts, get rating bounds.

(source)
since we make the boards for team players and alts separately, this will very often lead to board splits that are inconsistent between the two.
an alternative strategy could be as follows:

create a list of players; and an empty list of alts.
make boards from players, get rating bounds, use them for both alts and players.
calculate number of teams you want.
check if there is a board that has fewer players with preference not alt than the number of teams you want.
if necessary, decrease the number of teams accordingly.
step 4 from the last strategy.

this has the disadvantage of ending up with fewer teams. additionally, the inconsistencies are usually not very large, and some inconsistencies will exist due to players signing up after teamgen anyway. thus, the mods are currently not certain they want this, and want to ponder it for a season or two. i have added this issue more as a reminder of how all of it works, and the alternative strategy we cooked up. i will label it deferred. also, i will assign it to myself, so nobody works on it.

another problem with the current algorithm is that it can lead to counterintuitive situations, where a player initially gets pushed into the alt pool from board n in step 4, but then moves to board n +/- 1 during step 5. but on board n +/-1 there are team players who are less deserving of the team spot, so you should actually probably switch them.
still not sure whether that is a large enough problem to justify a different algorithm.


chore: remove BooleanFieldValue

Based on top of #1289
This removes the custom decorator as it prevents tree-shaking of components that use it. Replaced with a coerceBooleanProperty function.

Yeah, I planned on waiting for your PR

@hansl rebased

@kara rebased and ready for review


[sdk] Consumer: Add option to pause and resume consuming

I could be used when another service dependency like redis is not health.

My suggestion is to use the solution made for the certificate-acl service.


Update js-controller 3.3.1 Warn Meldungen

Hallo,
nach einen Update des js-controllers auf V 3.3.1 kommen folgende Warnmeldungen:
`

upnp.0
2021-04-30 06:35:00.364
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.348
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.333
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.316
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.300
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesSent" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.284
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesReceived" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.268
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.AutoDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.253
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.IdleDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:35:00.173
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.UpnpControlEnabled" has wrong type "string" but has to be "boolean"

upnp.0
2021-04-30 06:35:00.157
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.RoutedBridgedModeBoth" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.356
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.339
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.322
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.308
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.292
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesSent" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.277
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesReceived" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.259
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.AutoDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.244
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.IdleDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:34:00.164
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.UpnpControlEnabled" has wrong type "string" but has to be "boolean"

upnp.0
2021-04-30 06:34:00.148
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.RoutedBridgedModeBoth" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.351
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.336
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.319
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.304
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.289
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesSent" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.277
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesReceived" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.273
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.AutoDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.256
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.IdleDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:33:00.177
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.UpnpControlEnabled" has wrong type "string" but has to be "boolean"

upnp.0
2021-04-30 06:33:00.159
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.RoutedBridgedModeBoth" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.342
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.326
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.312
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.296
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.276
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesSent" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.261
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesReceived" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.245
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.AutoDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.230
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.IdleDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:32:00.151
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.UpnpControlEnabled" has wrong type "string" but has to be "boolean"

upnp.0
2021-04-30 06:32:00.134
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.RoutedBridgedModeBoth" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.373
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.359
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.ByteReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.343
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketSendRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.326
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.PacketReceiveRate" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.311
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesSent" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.296
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.TotalBytesReceived" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.280
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.AutoDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.264
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.IdleDisconnectTime" has wrong type "string" but has to be "number"

upnp.0
2021-04-30 06:31:00.185
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.UpnpControlEnabled" has wrong type "string" but has to be "boolean"

upnp.0
2021-04-30 06:31:00.169
warn
(10372) State value to set for "upnp.0.WANDevice_-_FRITZ!Box_6590_Cable.WANDevice.WANCommonInterfaceConfig.RoutedBridgedModeBoth" has wrong type "string" but has to be "number"

`

Weitere Fehler:

Vorläufiger fix: umstellen auf "warnung"

@BassT23 lösch mal alle Objekte und starte denn Adapter neu. Sieht aus als wenn du noch ein Problem aus einer deutlich älteren Version mit schleppst.

Leider kommen immer noch Warnmeldungen im Log trotz löschen der Datenpunkte. Die Meldungen kommen immer wenn der "request" Button betätigt wird.


Create crs-coeakamkpa.txt

@nickmerah First stage of verification passed, official domain is crs-coeakamkpa.edu.ng as far as I verified. This is just an informational note. Pull request is still in the review. I appreciate your patience while waiting for the final decision.

@nickmerah Thank you for your patience while waiting for a review and processing your request. Pull request merged.


IP not changing on each request, any solution for the same?

Please note your issue will be closed without comment if do not fill out the issue checklist and provide ALL the requested information.
yarn why http-proxy-middleware OR npm ls http-proxy-middleware output (mask private folder names with *****)
# paste output here

Please verify that you've followed these steps
[ ] - I've updated to latest http-proxy-middleware.
IP couldn't able to change on multiple requests to target
A clear and concise description of what the bug is.
On every request IP is same while hitting the target
If possible, please provide minimal example on CodeSandbox that demonstrates the issue. You can use the following template: https://codesandbox.io/s/http-proxy-middleware-44oc1
Step-by-step reproduction instructions
1. ...
2. ...

Expected behaviour is to hit the target with different ip's
A clear and concise description of what you expected to happen.
http-proxy-middleware configuration
// paste code and configuration here

Server (please complete the following information):

OS: [e.g. MacOS, Windows]
NodeJS version: [e.g. 12.4]

Additional context
Add any other context about the problem here.

Please ask questions related to your setup in https://github.com/chimurai/http-proxy-middleware/discussions or stackoverflow


gremlin: Properly escape query arguments

When constructing the Gremlin query string, double quotes were not
escaped, and therefore using a double quote char inside a query argument
would break the query.  This fix uses json.Marshal to quote a string, so
special chars like quote, newline, and tab will be backslash-quoted
inside the resulting Gremlin query string.
Moreover, quoting was done by passing the input as the format string to
fmt.Sprintf, which causes "format string injection" issues (these cannot
cause segfaults like in C, but still not very nice). It seems that this
functionality is not used at all, but also broke query arguments that
have the % char in them.
Note that this changes the public function signatures of gremlin.Quote and gremlin.Regex - it seems they are not used outside this package but please take extra look.


Feature Request: Support for Numpy, Google, and rst Docstrings

Would it be possible to add support for docstring styles? e.g. Numpy, Google, and rst?

Yes! I'd very much like to support this but since I don't use these myself I'm not sure what is actually breaking right now.
If you could provide me with some sample docstrings and what you like to see I can certainly work on this!

@DanielNoord Thank you for your support! Thank you so much for this wonderful package!
Don't get me wrong: nothing is breaking. Users must choose which format they wish to support.

Numpy style docstring example
Google style docstring example
Sphinx style docstring example

The VSCode autoDocstring extension is written in TypeScript, which I don't know very well so I'm not able to parse its syntax. The closest alternative I've seen of porting this to python is python-autodocstring, but it is still very much in its infancy.
I believe these could be implemented using jinja2 templating, but there may be other ways. Not sure if you have to parse the AST or use a library like libCST. I've not experimented with those before, but I know the python-qt-tools repos have used libCST to automate adding type hinting for PyQt/PySide modules.
Currently, there are three limitations of autoDocstring that I would LOVE to have in pydocstringformatter:

Cannot reanalyze docstrings on save. I submitted a feature request here over a year ago with still no response.

The extension cannot parse existing docstrings and determine what should be added or removed (it can only read the function/class signatures and add boilerplate strings). For example, pydocstyle will error if there is a signature mismatch between your function parameters and what's listed in your docstring. If pydocstringformatter could auto-detect the mismatch and then add this missing argument with a boilerplate string param (type): _enter description here_ and remove non-existing parameters, this would be HUGE!

To my knowledge, a VSCode extension cannot (easily?) be used with pre-commit, and I would LOVE to use pydocstringformatter with pre-commit

The closest alternative I've seen of porting this to python is python-autodocstring, but it is still very much in its infancy.

I don't really get what you mean with "porting". This package is already written in Python?

I believe these could be implemented using jinja2 templating, but there may be other ways.

We currently use the tokens to analyse the docstrings.

Currently, there are three limitations of autoDocstring that I would LOVE to have in pydocstringformatter:
[...]

To my knowledge, a VSCode extension cannot (easily?) be used with pre-commit, and I would LOVE to use pydocstringformatter with pre-commit

Based on this last comment I wonder how you are using this package. pydocstringformatter is specifically intended to be used with pre-commit and there is documentation about doing so in the readme:
https://github.com/DanielNoord/pydocstringformatter#pre-commit

@DanielNoord In short, it would be great if pydocstringformatter could support the following formats:

Numpy style docstrings
Google style docstrings
Sphinx style docstrings

and with those styles, parse signatures and determine what should be added or removed, but keep existing documentation intact (unless it is referencing a parameter that does not exist).

and with those styles, parse signatures and determine what should be added or removed,

For this you have the docparam checker in pylint

Hmm, yeah I don't think we should be the tool to enforce docstrings on every signature. That comes with a lot of additional complexity and decision-making which I'd like to defer to tools such as pylint and pydocstyle.
I see this tool mostly as a "black for docstrings": styling your docstrings according to the style recommended by the relevant PEPs with little discussion about semantics and small differences.
That said if there is anything that makes the current tool incompatible with these styles we can certainly look into that!

and with those styles, parse signatures and determine what should be added or removed,

For this you have the docparam checker in pylint

That will check the parameters, but not format them. My request is have an auto formatter.

Hmm, yeah I don't think we should be the tool to enforce docstrings on every signature. That comes with a lot of additional complexity and decision-making which I'd like to defer to tools such as pylint and pydocstyle. I see this tool mostly as a "black for docstrings": styling your docstrings according to the style recommended by the relevant PEPs with little discussion about semantics and small differences.
That said if there is anything that makes the current tool incompatible with these styles we can certainly look into that!

Those tools don't auto format thought. They can only check. My request is to have pydocstringformatter format to those styles.

Those tools don't auto format thought. They can only check. My request is to have pydocstringformatter format to those styles.

We could certainly format based on a --style flag. However, I don't really want to have to start parsing the ast to get the parameter names etc.
I'd rather the user provide a malformed Google style do string and we make sure that the format is correct.

Those tools don't auto format thought. They can only check. My request is to have pydocstringformatter format to those styles.

We could certainly format based on a --style flag. However, I don't really want to have to start parsing the ast to get the parameter names etc. I'd rather the user provide a malformed Google style do string and we make sure that the format is correct.

That would be great! I think that would be plenty.

With #132 merged and 0.7.0 released we know have experimental support for numpydoc. Please let us know if you find any bugs or can think of any improvements. With the experience gained from that PR adding support for other styles shouldn't be too difficult 😄

With #132 merged and 0.7.0 released we know have experimental support for numpydoc. Please let us know if you find any bugs or can think of any improvements. With the experience gained from that PR adding support for other styles shouldn't be too difficult 😄

@DanielNoord Thank you so much for this!
Couple questions:

How do you specify to use both numpydoc and pep257? Is it:

--style numpydoc pep257

or
--style=numpydoc
--style=pep257

or something else (comma-separated list)?
(NOTE: Both the above run without error, but I'm not sure if the later syntax overwrites style to only use pep257)

pydocstringformatter seems to modify files even when -w isn't specified. I would like to test first by printing to stdout before letting pydocstringformatter modify my files. Perhaps I have incorrect settings?

Here is my .pre-commit-config.yaml section:
  - repo: https://github.com/DanielNoord/pydocstringformatter
    rev: v0.7.0
    hooks:
      - id: pydocstringformatter
        name: (pydocstringformatter) Format docstring to given style (numpy)
        language: python
        files: .*\.py$
        args: [
          "--exclude=.venv/**,stubs/**,build/**,dist/**,ci/**",
          "--style numpydoc pep257",
        ]

I then run
pre-commit run pydocstringformatter

from the command line.

Can you add a --config option to specify a configuration file to use? I know pydocstringformatter only reads pyproject.toml files, but pre-commit runs hooks in a separate environment (except those specified with repo: local, which are run on the local machine or in the local environment). Hence, I have to specify my configurations twice: once in my pyproject.toml and again in my .pre-commit-config.yaml. It becomes easy to forget to align arguments between the two files: users (myself included) change their pyproject.toml (expecting it to affect pre-commit) and get surprised when pre-commit behaves differently from their development environment setup.

Have you tested whether you need to add require_serial: true to your pre-commit-hooks.yaml?

By default, pre-commit runs all hooks sequentially in the order they are listed in the .pre-commit-config.yaml. However, since version v1.13.0, pre-commit runs each individual hook operation on all the files passed to it in parallel. The is beneficial for the majority of cases since it means each hook will execute faster, but there are some scenarios where this may present a problem:

if a hook reads from other files not passed to it (e.g. a configuration file), or
if a hook writes to other files not passed to it (e.g. a log file)

In the above cases, this may lead to a fork bomb, specifically if pydocstringformatter uses multiprocessing. This often results in some form of an insufficient memory error, causing pre-commit to crash. See pre-commit feature request that inspired this.

--style=numpydoc --style=pep257

This one. We should probably add that to the documentation somewhere.

pydocstringformatter seems to modify files even when -w isn't specified. I would like to test first by printing to stdout before letting pydocstringformatter modify my files. Perhaps I have incorrect settings?

pydocstringformatter is configured to add -w when invoked through pre-commit. See:
https://github.com/DanielNoord/pydocstringformatter/blob/1366acb29f8907957ee8ccf3130a135660e94f3e/.pre-commit-hooks.yaml#L3

Can you add a --config option to specify a configuration file to use? I know pydocstringformatter only reads pyproject.toml files, but pre-commit runs hooks in a separate environment (except those specified with repo: local, which are run on the local machine/venv/CI). Hence, I have to specify my configurations twice: once in my pyproject.toml and again in my .pre-commit-config.yaml. It becomes easy to forget to align arguments between the two files: users (myself included) change their pyproject.toml (expecting it to affect pre-commit) and get surprised when pre-commit behaves differently from their development environment setup.

Hm, doesn't pydocstringformatter pick up the pyproject config during a pre-commit run? I think it should and other tools do so as well. Please confirm this and if this is indeed a bug could you open a separate issue?

Have you tested whether you need to add require_serial: true to your pre-commit-hooks.yaml?

In my own projects I haven't seen a need to do this. The tool is really quite fast, comparable or quicker than black. So for now there has been no need to start using multiprocessing.


Twitch VODs fail with parsing of the thumbnail data

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2020.05.29
I also have applied the diff from by previous bug #25528, otherwise I would getthe 410 error.
[ ] I've checked that all provided URLs are alive and playable in a browser
I have my browser configured to not play videos, but the videos are alive and the attached patch fixes playback of the videos.
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://www.twitch.tv/videos/640872506']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2020.05.29
[debug] Python version 3.8.3 (CPython) - Linux-5.6.9-pinguin20200502-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg 4.2.2-1, ffprobe 4.2.2-1, rtmpdump 2.4
[debug] Proxy map: {}
[twitch:vod] 640872506: Downloading vod info JSON
[twitch:vod] 640872506: Downloading vod access token
[twitch:vod] 640872506: Downloading m3u8 information
Traceback (most recent call last):
File "/usr/bin/youtube-dl", line 11, in
load_entry_point('youtube-dl==2020.5.29', 'console_scripts', 'youtube-dl')()
File "/usr/lib/python3/dist-packages/youtube_dl/init.py", line 478, in main
_real_main(argv)
File "/usr/lib/python3/dist-packages/youtube_dl/init.py", line 468, in _real_main
retcode = ydl.download(all_urls)
File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 2018, in download
res = self.extract_info(
File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 808, in extract_info
return self.process_ie_result(ie_result, download, extra_info)
File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 863, in process_ie_result
return self.process_video_result(ie_result, download=download)
File "/usr/lib/python3/dist-packages/youtube_dl/YoutubeDL.py", line 1460, in process_video_result
t['url'] = sanitize_url(t['url'])
File "/usr/lib/python3/dist-packages/youtube_dl/utils.py", line 2135, in sanitize_url
if url.startswith('//'):
AttributeError: 'dict' object has no attribute 'startswith'
Description

It seems Twitch is returning a dictionary of several thumbnails now with info.get('preview') (extractor/twitch.py line 194). On the above URL i get the following json data:
{"small": "https://static-cdn.jtvnw.net/cf_vods/d2nvs31859zcd8/dfa4f0f421b0286b0cb0_rahmschnitzel_1840886609_115117682//thumb/thumb0-80x45.jpg",
 "medium": "https://static-cdn.jtvnw.net/cf_vods/d2nvs31859zcd8/dfa4f0f421b0286b0cb0_rahmschnitzel_1840886609_115117682//thumb/thumb0-320x180.jpg",
 "large": "https://static-cdn.jtvnw.net/cf_vods/d2nvs31859zcd8/dfa4f0f421b0286b0cb0_rahmschnitzel_1840886609_115117682//thumb/thumb0-640x360.jpg",
 "template": "https://static-cdn.jtvnw.net/cf_vods/d2nvs31859zcd8/dfa4f0f421b0286b0cb0_rahmschnitzel_1840886609_115117682//thumb/thumb0-{width}x{height}.jpg"}

Parsing of the thumbnail(s) only supports a string or an array of dictionaries. Arbitrarily selecting one seems to work (see attached patch), otherwise the preview data must be reparsed into the expected format for "thumbnails".
thumbnail.diff.txt

Can confirm the same issue, fixed with the applied patch.

Thanks for this quick patch, hope to see it in the next release :)


documentation for running an instance

Document the suggested implementation:

Explain that this repo is designed to be cloned and deployed as a private service
Describe how to configure a provider MDS endpoint to be scraped

Docs have been updated and extended setup tutorial has been written for distribution.


Drop Ordering bound on the values in cogenMap

It's safe to sort only by the keys, because they are distinct.
Fixes #356

Looks good to me. 👍


Backports fix for #1449

Do not use spdy on Node 10
spdy is effectively unmaintained, and as a consequence of an
implementation that extensively relies on Node’s non-public APIs, broken
on Node 10 and above. In those cases, only https will be used for now.
Once express supports Node's built-in HTTP/2 support, migrating over to
that should be the best way to go.
Fixes: #1449
Fixes: nodejs/node#21665
https://github.com/webpack/webpack-dev-server/commit/e97d345ac370095a6e339b7997b939c88ef3e81b.patch

👍


feat(payment): INT-4953 Change title text on Digital River title component

What?
INT-4953: Change displayed title text on Digital River checkout component.
Why?
Card brand logos should be replaced with the Please select your Payment Method text.
Testing / Proof

Depends on
https://github.com/bigcommerce/bigcommerce/pull/43119
@bigcommerce/checkout @bigcommerce/apex-integrations

💚 Tested!
QE Details:
PR has been validated, implementation in remove credit card logs from BC-hosted component on Payment section of checkout and print text saying "Please select your payment method" in BC-hosted tile on Payment section for Digital River.
Note: So far displayed text saying "Please select your payment method" is showing in English language. Development team has been adding the corresponding tag on PR and code notes requesting BC translation team make/implemente the translation for supported DR languages.
Following languages have been used for validation.

German – Dutch
US - Spanish
Italy - Italian
France – French
Czech Republic – Czech

Review attached word file with screenshots:
INT-4953  - (nice-to-have) name and card logos on checkout.docx


⚠ Turnos 24x7 has degraded performance

In 0a25997, Turnos 24x7 (https://reservas-dev.alternativasinteligentes.com/) experienced degraded performance:

HTTP code: 200
Response time: 956 ms

Resolved: Turnos 24x7 performance has improved in 59771c7.


Make force-resolving set a null TTL so that you can actually get rid of checks with ttls somehow

The check ttl feature is the bomb.
But it needs some way to actually get rid of checks after you no longer want them.
The problem is: how do you let sensu know that you no longer want it to keep reminding you that it is failing? One way to do that is to set ttl:null in the manual resolve. (sensu-cli/uchiwa/etc)

Hmm, is this even needed?

Ah yes, https://github.com/sensu/sensu/blob/master/lib/sensu/server/process.rb#L398

Maybe we should add !check[:force_resolve] to https://github.com/sensu/sensu/blob/master/lib/sensu/server/process.rb#L669 instead?

That way the client check history will still have the correct check TTL value.

I can do that

@solarkennedy missing the &&

Er, whoops, and the tests reflect that. Updated.

:+1:


[SMALLFIX] Wip master client

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/Tachyon-Pull-Request-Builder/4734/
Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/Tachyon-Pull-Request-Builder/4740/
Test PASSed.


toCSV() is not a member of

Hi I came across your library and thought it's clean and great!
How come I get this error?

I've added the import statement.
import purecsv.safe._

There is no Converter for Try, consequently there is no .toCSV() that can be added to your records. If you want to support it then you have to add an implicit converter, something like this. A blueprint:
 implicit def trySC[A](implicit val sc: StringConverter[A]): StringConverter[Try[A]] = /* your code here... */

Hi melrief, thank you for your response and the code snippet provided!


Layout changes

Rename release to releaseDate
Change layout for products to product and use it to filter
for product pages in sitemap and _headers
Change headers across all tables:

Rename Version to Release
Rename Release to Latest

Set default layout for products/ via _config.yml

This closes #943

Just noticed, this breaks the API, so need to update docs as well.

Whenever we merge this could you also rename command -> versionCommand


Logic: spotfixes

don't require player to traverse richard's cave without enough powder to do so
fix featherless fisher

okay, actually, turning this into a logic-general PR. fisher featherless (hard) requires sword, or bombs (glitched). i got a seed that tried to do fisher without sword or bombs again: spent like 10 minutes trying with up held, and even tried tas tools (slowdown and turbo) to try and align it, and simply could not get it to work without sword. updating logic to match that momentarily.

TODAY I LEARNED: changing a branch name is a mv action, not a rename action. damnit, git.

OH! pulled fisher off with boomerang!! going to try a couple more like-items to see if i can get something else to work too.

boomerang seems to be either y-pixel or y-subpixel perfect, and frame-perfect with the boat at its lowest, and is extremely tedious to get to work. the rang has to exit the water (which is inconsistent as hell already), and i think im going to throw that one into hell logic. however: bow works extremely consistently! that one is going in hard logic along with sword.

i have a feeling that rod will work as well as sword, but i need to get it and test it first. mushroom/ocarina, hookshot, powder, and itemless are either as consistent as boomerang, or impossible. the others are items i have not tested.

another logic hole spotted: seashell mansion bush does not allow boomerang, as you cannot get any angle where boomerang can come back over the bush to destroy it. might be possible, but id rather not force a "might", even on hell players.

still need to test all items with fisher: i dont have a completed save file handy, i'll get around to it later today.

another logic hole spotted: seashell mansion bush does not allow boomerang, as you cannot get any angle where boomerang can come back over the bush to destroy it. might be possible, but id rather not force a "might", even on hell players.

found a working angle: spam under the bush at the top right. throwing this under hard logic.

My experience with boomeranging bushes like that has been that just spamming boomerang directly at them breaks them pretty quickly. It bounces off a few times but works relatively quickly. Does that not work here?

My experience with boomeranging bushes like that has been that just spamming boomerang directly at them breaks them pretty quickly. It bounces off a few times but works relatively quickly. Does that not work here?

it did, actually; i just pushed code for that in hard logic. still found it annoying, and would rather keep the possibility of requiring boomerang to those who play on hard & up

Maybe I misunderstood, I interpreted that as kind of a setup to get the return stroke to break the bush. This is what I had in mind, just to be clear - it does not seem to be sensitive to position:

I haven't done rigorous testing, but in my experience all recalcitrant bushes act like this. It might take a couple tries, but they all break without any special setup or input.

sigh, bushes in this game are beyond weird. going to revert that to r.bush, i guess.

Yep, they're definitely weird. I had to try a few times to get a copy of that GIF that I liked. The first several times I hit record and loaded the state, the bush broke on the first try. I'm not sure what exactly happens behind the scenes, but it seems like there's a random chance of any given hit breaking the bush.

@daid, i think i am FINALLY done with this.
fisher: cas is the expected strat, normal is cas + sword or bow, hard is now explained, glitched has a better comment, removed from hell
richard's bushfield is also changed to require max powder instead of just powder, to prevent asking the player to cross the whole thing with only 10 powder.

(you should probably merge as one commit, using the PR initial comment as the commit description)

ONE SECOND:
found another thing: path to d6 is traversable in glitched logic with feather (one pit buffer jump, and one jesus jump).

oh.. pause again, i found some more tech.
the waterfalls from taltal can be jumped off of without flippers (by using s+q menu after ledge to regain pauses, and then 4 screens of jesus jumps) to get to the mountain area section. that definitely belongs in hell logic, though, no way am i going to require more than 1-2 screens of jesus jumps in glitched, lmao.


setting db on the fly

Wanted to ask if there is something in the library to let me change the database connection to point to a different db on the fly? The thing I'm trying to do is from a POST request I use the credentials to connect to the database.

No, and I don't think this will ever be added - it would not be able to affect any other processes for example.

There isn't a way to reset the connection?

No. If you have multiple processes there would be no way of changing it in the other processes.
Also, why do you want to do this?

I want to be able to have a user tell me what his/her credentials are before I serve that data in flask.

What do the user's credentials have to do with the database connection data?

user credentials = db connection details. It's data specific to each user's account


pgsync process not reducing the transaction logs created by the postgresql setting logical_replication=1

I have been using pg_sync for couple of months and have enabled logical_replication to 1 as mentioned in pg_sync documentation. my diskspace is getting filled by AWS RDS postgresql server . Upon investigation I came to know the RDS will retain the transaction logs for external consumers of the logs for replication purpose and if there is no external consumer for these logs, they just remain there forever. We are using pgsync 1.1.32.
Note: Our application data is in MBs.
I tried the following query on my db
select slot_name, pg_size_pretty(pg_wal_lsn_diff(pg_current_wal_lsn(),restart_lsn)) as replicationSlotLag,
active from pg_replication_slots ;
slot_name         replicationslotlog.             active
database1_index1       30 GB                       false
database1_index2       30 GB                       false
we are running pgsync process as --daemon ( as --daemon was crashing with nohup ). Is there a way to solve this issue?
From AWS documentation, I read the following:
Replication slots can be created as part of logical decoding feature of AWS Database Migration Service (AWS DMS). For logical replication, the slot parameter rds.logical_replication is set to 1. Replication slots retain the WAL files until the files are externally consumed by a consumer.
I tried to set below env variables with the following values but diskspace is keep on getting full overnight. It looks like cleanup interval setting is not working.
REPLICATION_SLOT_CLEANUP_INTERVAL: 30
POLL_TIMEOUT: 30
Could you please help me with the above issue as I dont know whatelse can I do?

Can you please provide more deatils.
e.g postgres version, pgsync version,
Also, can you run in an interactive mode and set the REPLICATION_SLOT_CLEANUP_INTERVAL to a low value like 5 sec.
Do you see the logs for the replication slots getting cleaned up.
Most important: are you able to upgrade to the latest version of PGSync?  i.e 2.5.0


SqVehicle.Fix doesn't exist.

Input:
SqVehicle.Fix();
Output:
[ERR] the index 'Fix' does not exist

The function is there and registered https://github.com/iSLC/VCMP-SqMod/blob/master/source/Entity/Vehicle.cpp#L1747
It works on my end:
function onPlayerSpawn(player)
{
    local vehicle = SqVehicle.CreateEx(145, player.World, player.PosX - 5.0, player.PosY + 5.0, player.PosZ, 0, 0, 0);

    printf(vehicle); // 1

    vehicle.Fix();

    printf("vehicle fixed");
}

SqCore.Bind(SqEvent.PlayerSpawn, this, onPlayerSpawn);

Output:
[SCS] The Squirrel plugin was loaded successfully
Player 'XYZ' ID 0 connected.
[USR] 1
[USR] vehicle fixed

Try to recompile the module. Also, make sure that the server isn't running otherwise it'll fail to copy the executable in the plugins folder and replace the old one.


Auto completion for partial arguments

I'm trying to get bash auto completion working for my string arguments based on hints that I'm correctly defining in my app.
"myapp --completion-bash" is correctly returning a list of custom hints I've specified for the argument.
But "myapp a --completion-bash" does not return a subset of the previous list based on which ones match the prefix 'a'. This means that bash won't use tab to auto complete the argument.
Is there a way to achieve the desired behaviour?

Sorry this took so long. Do you have a test case that can replicate this?

Certaintly, here's an example:
`package main
import "github.com/alecthomas/kingpin"
var (
arg   = kingpin.Arg("file", "existing file").HintOptions("alpha", "bravo", "charlie")
input = arg.String()
)
func main() {
kingpin.Parse()

}`
If you run "go run main.go --completion-bash" it helpfully returns the list of hint options, but if you've already half typed one of the options, like "go run main.go alp --completion-bash" it can't auto-complete the remainder of your argument.
I don't think this is a bug. Your documentation only states that auto-completion works for commands/subcommands and flags, but never makes any promises about arguments. I don't know if this is by design -- I can imagine a few reasons that this would be difficult to implement -- but it would definitely be very nice.
This argument autocompletion does work in the bash for existing file or directory arguments, but I think that's behaviour programmed into bash and not kingpin.
Thanks!

This is occurring due to several factors:

The partial text is a valid match for that argument. This means that argument has been accepted and the next element's hints are being used.
Kingpin does not have a cursor location, so we can't differentiate between alp<tab> and alp <tab>. This would disambiguate this case.

If the latter were possible, I think this could be solved, but without that information I don't think it can be fixed. Any thoughts?

This ambiguity does not exist for commands or flags, because they either "correct" or "not correct".

I can see what you mean. I presume that the arguments to your script are default bash behaviour, meaning that we can't adjust it to include that distinction between alp and alp ?
I think there surely must be a solution, because it felt like a missing feature when I encountered it, so I imagine that I've seen it working somewhere before. Unfortunately I cannot think what the answer is.
Is there a way to define values that should not be accepted? Kind of like the opposite of a ".HintOptions" function. Instead of telling Kingpin what values to suggest, provide a function or filter kingpin should call to check the argument and see if it works?
Perhaps the functionality could be integrated seamlessly by calling the PreAction for each element during the autocompletion. PreAction could validate arguments and return an error if it fails, and if it fails then the autocompletion logic would know that the argument has not been accepted and can therefore continue trying to match using the current value as a prefix?

Turns out that this should actually be possible (from a shell perspective). $COMP_CWORD is the current word being completed. Unfortunately, that context is lost to Kingpin due to the way arguments are passed into it from the completion function. Changing this would be a fair bit of work.

Ah. Well, that's all I can contribute I'm afraid. I hope the feature finds its way in someday. I do think it would be a fantastic quality-of-life improvement.


Type's generic type constraint on member level

This is a suggestion for spec change.

Problem
Sometimes type's members could only be applicable with some restrictions of enclosing type parameter (generic type constraints).
For instance, this is use case of RxJS:
var xs: Observable<Observable<string>>;
xs.mergeAll();  // mergeAll is applicable here

var ys: Observable<string>;
ys.mergeAll();  // mergeAll is NOT applicable here

Original Rx.NET Merge method implemented as C# extension method on type IObservable<IObservable<T>>. In RxJS it's implemented as an instance method.
Current RxJS typescript definition just use unsafe trick:
export interface Observable<T> {
  ...
  mergeAll(): T;
  ...
}

But it can be still unsafely called for as instance of any Observable<T>.
Possible solutions
Extension methods
Something like C# extension methods. But don't think it's useful in such cases.
declare extensions {
  mergeAll<T>(this Observable<Observable<T>> source): Observable<T>;
}

BTW, extensions method could be other cool feature, which change call method (from instance-like to static-like).
Multiple interface definitions with different constraints
interface A<T> { x(): void; }
interface A<T extends B> { y(): void; }
var a: A<number>;
var b: A<B>;

a.x(); b.x(); // ok
b.y(); // ok
a.y(); // error

Member-level constraints with reference to enclosing type arguments
interface A<T> {
  x(): void;
  y<T extends B>(): void; // only applicable if T extends B
  z<T extends B>: number; // for any property
  // alternative syntax options:
  <T extends B>z: number;  // 1

  z: number where T extends B;  // 2
  y(): void where T extends B;
}

I'll suggest this option. Moreover the previous solution options is special case of this one (incompatible constraints are merged on member level).

Possible dupe of #209

@RyanCavanaugh

Are there other examples of where this would be needed? It seems pretty specific.

There is one more example in #6529.

Additional explanation and examples + possible usage taken from the duplicate https://github.com/Microsoft/TypeScript/issues/7083:
It's currently possible to do this:
  method<A extends Array<number>>(one):number;
  method<A extends Array<string>>(two):string;

But not possible to do this:
interface Example<T extends Array<number>> {
  method(one):number;
}
interface Example<T extends Array<string>> {
  method(two):string;
}

This means we cannot have different typings depending on the generic type constraint of the interface.
I've even tried a hack like this:
interface Example<T extends Array<any>> {
  method<A extends T & Array<number>>(one):number;
  method<A extends T & Array<string>>(two):string;
}

I was hoping that TS will infer the type of the T array from the intersect, unfortunately that does not happen (it offers both methods, regardless of whether Example is an instance of Example<Array<number>> or of Example<Array<string>>).
Among other uses, this feature would be useful for a variety of database libraries that return internal types that can have their own operations done on them. For example, when I map an DbArray<DbNumber>, I should get a different set of methods than when operating on DbArray<DbString>.
The current workaround is to ask the user to explicitly declare both - the outer and the inner type, e.g.:
interface Example<TOuter, TInner> {
  map<TOut>((item: TInner) => TOut): TOut;
  // ...TOuter used in another method
}

However, this TInner is redundant (it's already inside of TOuter) and sometimes not relevant at all.
With more complex types this can cause the introduction of even more generic types, that grow like cancer in the declarations (interface Example<A, B, C, D, ...>) - the more possibilities there are, the more explicit declarations need to be done at the interface level. This has been an obstacle to creating proper type definitions for RethinkDB https://github.com/DefinitelyTyped/DefinitelyTyped/issues/4551.
Last example: an interface DbValue can be a generic of any primitive type in the database: an array, a string or a number.
For an instance of an array, you'd need to pass in DbValue<Array<number>, number>, yet for an instance of string, the second parameter is irrelevant: DbValue<string, void>.
What we'd need is to be able to constrain not only by method's own generics, but by the containing interfaces generics, for method signatures themselves, something like:
interface Example<T> {
  // here the constraint is not of the method, but of the type
  method(one):number where T extends Array<number>;
  method(two):string where T extends Array<string>;
}

This is very useful.
Any type that provides operations only if its type parameter is specialized enough can greatly beneficiate from the type safety this would bring. Ex: Flattening any kind of nested container like Streams, Arrays. You don't want to be able to call flatten on Array<number> but you should be able to do it on Array<Array<number>>
Another example:  Lodash's max method. Calling max on a collection is making the assumption that its elements can be compared. _([ {a: true}, { a: false } ]).max makes no sense, yet it compiles just fine.

Would the OP @Igorbek or anyone else like to collaborate on a proposal for this feature?

@niieani Absolutely. Send me if you have something already. If not, I'll start to formulate a proposal.

I don't have anything yet, but we can use parts of your initial post and mine https://github.com/Microsoft/TypeScript/issues/1290#issuecomment-185236270. If you start working on something, let's use something like Google Docs and link here, so we can collaborate on the document.

I've created a gist to start with https://gist.github.com/Igorbek/21b2bd503fd291d3281def829e2d5fbd

Hello,
Does the following example help (it works as of 2.0.0) ;
class Test<T> {

    // note that if there is no member of type T, the errors are not spotted
    val: T

    strings<S extends string>(this: Test<S>) {
        console.log('strings !')
    }

    numbers<N extends number>(this: Test<N>) {
        console.log('numberss')
    }

}

let ts = new Test<string>()
let tn = new Test<number>()

// Those work, as intended.
ts.strings()
tn.numbers()

// those don't
ts.numbers()
tn.strings()

@ceymard that's a pretty cool hack, but it still means you need to explicitly type all the generics in case a method has more than one that we want to use. A more complex example:
class Test<T> {

    // note that if there is no member of type T, the errors are not spotted
    val: T

    strings<S extends string, X>(this: Test<S>) {
        console.log('strings !')
        return 1 as X
    }

    numbers<N extends number, X>(this: Test<N>) {
        console.log('numberss')
        return 1 as X
    }

}

let ts = new Test<string>()
let tn = new Test<number>()

// S and N could be inferred, but I X needs to be explicitly stated here, so I can't do this with good results:
ts.strings()
tn.numbers()

// I'd need to duplicate the typings of S and N, which beats the point of inferrence:
ts.strings<string, number>()
tn.numbers<number, number>()

It would be best if we could solve this problem without adding making the methods themselves generic.

If you prefer, you can do that too ;

class Test<T> {

    // note that if there is no member of type T, the errors are not spotted
    val: T

    strings(this: Test<string>) {
        console.log('strings !')
        return 1 as X
    }

    numbers<X>(this: Test<number>) {
        console.log('numberss')
        return 1 as X
    }

}

This still works IIRC, I don't know why I used the <... extends > as it is not mandatory.
Also, if you have a Test<MyType>, it will automatically accept anything that extends MyType as well.
I agree it would be best though, but for now that we have nothing, I think this is a "hack" that may help whoever is looking to do just that in 95% of their use case.
Doesn't mean this issue should be closed.

OK, looks cool! Thanks. Sad you still need the val: T in there though.

I think this parameters plus conditional types effectively solve the use cases here. We can take a new suggestion if there are more concrete scenarios that needed addressing


Improved error message about JNI cache initialization [ECR-3086]

Overview
Now it clearly says about JNI cache

See: https://jira.bf.local/browse/ECR-3086
Definition of Done

[x] There are no TODOs left in the code
[x] Change is covered by automated tests
[x] The coding guidelines are followed
[x] Changelog is updated if needed (in case of notable or breaking changes)
[ ] The continuous integration build passes

Coverage remained the same at 86.038% when pulling ad6c303e99c71a47bb4946a7b8ccf4d70b97bfa1 on skletsun:cache-is-not-init-msg-ecr-3086 into 201f5fc6a4a0df3d5ad7dcc748154a446b9f6ace on exonum:master.


Ios15.3.1报错does not specify the "Write Without Response" property - ignoring response-less write

用Ios15.3.1 发送指令给外设报错如下：[CoreBluetooth] WARNING: Characteristic <CBCharacteristic: 0x2818d49c0, UUID = FFF1, properties = 0xA, value = {length = 20, bytes = 0x0102030405060708090a0b0c0d0e0f1011121314}, notifying = NO> does not specify the "Write Without Response" property - ignoring response-less write，如何解决

Ios
发送数据[84, 90, 1, 9, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255]是这个，
为什么到Ios底层，数据就变成0x0102030405060708090a0b0c0d0e0f1011121314，[CoreBluetooth] WARNING: Characteristic <CBCharacteristic: 0x28007a280, UUID = FFF1, properties = 0xA, value = {length = 20, bytes = 0x0102030405060708090a0b0c0d0e0f1011121314}, notifying = NO> does not specify the "Write Without Response" property - ignoring response-less write


Debugging error : path not found

@MagixInTheAir commented on Tue Mar 26 2019
Here is the full console output when trying to debug a simple python program:
generated command : D:\Chris\Documents\MEGA\IPSA\Aéro 3\Quadrature & EDO\MP>cd "d:\Chris\Documents\MEGA\IPSA\Aéro 3\Quadrature & EDO\MP" && cmd /C "set "PYTHONIOENCODING=UTF-8" && set "PYTHONUNBUFFERED=1" && "C:\Users\Chris de Claverie\AppData\Local\Programs\Python\Python37\python.exe" "c:\Users\Chris de Claverie\.vscode\extensions\ms-python.python-2019.2.5558\pythonFiles\ptvsd_launcher.py" --default --client --host localhost --port 63937 "d:\Chris\Documents\MEGA\IPSA\Aéro 3\Quadrature & EDO\MP\ex7.py" "
Output : Le chemin d’accès spécifié est introuvable.
Translated from french, the error at the bottom says the specified path cannot be accessed. I presume this comes from the path having both special characters (é and &) and spaces.

Not an extension issue, as the commands are sent to VSC via the debugger protocol, and VSC builds the commands and sends them to the terminal.

@DonJayamanne How does your launch config look like?

Potentially related: https://github.com/microsoft/vscode/issues/71917

Sorry, no idea.
This was reported by a user & thats over a year ago. Not sure if it still replicates.
Sorry not much help here.

I tried to repro the linked issue and wasn't able to --  nor this one.
 (ignore all the environment variable junk that js-debug needs to set)
Both are from April-March last year, so I will close this as a tentative dupe. @pwnorbitals please comment on #71917 if you still run into this in recent versions of VS Code.


To remove access of re-enabling cancelled subscriptions by subscription owners

Problem Statement
Once any subscription goes into disabled state upon cancellation, as per our organization hierarchy setup, we would programmatically move that subscription to decommissioned Management Group where subscription owner won't have access to enable it again. Only a dedicated team at root management Group level with owner rights can do so.
Possible ways figured out

If there could be a policy implied at decommissioned Management Group, so that subscription owner can't change state.
Programmatically removing all RBAC at subscription scope and assigning contributors which were earlier owners of respective subscription, so that they can have visibility to it but can't change subscription state.

Way 1 didn't come out to be feasible as we can't find as such policy.
For Way 2, below documentations were referred.
Azure documentation issue guidance

https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/role-based-access-control/troubleshooting.md ( You are allowed to remove the last Owner (or User Access Administrator) role assignment at subscription scope, if you are the Global Administrator for the tenant. In this case, there is no constraint for deletion. However, if the call comes from some other principal, then you won't be able to remove the last Owner role assignment at subscription scope.)
https://github.com/MicrosoftDocs/azure-docs/issues/65647

Problem
As, only Global Administrator can remove last owner at subscription scope, this can't be possible programmatically through logic apps or API call through service principal.
As, there should be a group with owner role assigned only at subscription scope, this can't be possible as Admin group with owner role can't be applied at subscription scope as it would be applied at root level which all subscriptions will inherit.
Is there any other possibility to solve this issue?

@meenaTrex - Yes please, that would be great. Thank you.
At this moment, Since there is no doc update required, We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


Version 4.1.1 doesn't run, gives white screen on Ubuntu

I previously had 4.0.5 running fine on Ubuntu 16:10, 64bit. Upgraded to 4.1.1 and GPMDP either does not start or starts but just gives a white screen with no content. I have tried deleting the config files and starting again, but no luck.
Starting from the command line shows the following:
Starting Sentry
error: Failed to load bonjour with error: {}
Bonjour is required to use Chromecast Support or to enable ZeroConf for the PlaybackAPI
On linux you need to install "avahi"
Failed to encode dictionary
Failed to encode reply value
Failed to encode dictionary
Failed to encode reply value
avahi-daemon is installed and up-to-date (0.6.32-1ubuntu1).
I have tried generating a debug file, but pressing Ctrl-shift-g in the white window does nothing.
Downgraded to 4.05, works fine.

Looks like a transitive dependency bump broke something.  I would pull the linux update but I can't as it isn't technically an update (people download manually).  I've pulled the bintray release though.
/cc @jostrander can you investigate?

Same issue on fedora25 :cactus:

I deleted the uploaded 4.1.1 linux artifacts so no one else will download into this issue.

I've just built the project from the current master branch (c3081d2) on Fedora 25 x86_64, starting from a clean tree. The resulting rpm from the command npm install && npm run make:rpm:64 works perfectly fine, no issues whatsoever.

@voria To confirm, building locally for you works as expected but the previously published builds did not?

@MarshallOfSound I had no chance to try the published builds, they were already taken off when I noticed the new 4.1.1 release. If they are still available for download somewhere, I can test them.

Try this one out for size 👍
https://1489-40008106-gh.circle-artifacts.com/3/home/ubuntu/Google-Play-Music-Desktop-Player-UNOFFICIAL-/dist/installers/redhat/google-play-music-desktop-player-4.1.1.x86_64.rpm

It does NOT work, exactly as reported. At start, GPMDP gives a white screen with no content. This is the terminal output (nothing relevant I think):

Starting Sentry
*** WARNING *** The program 'Google Play Music Desktop Player' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=Google Play Music Desktop Player>
*** WARNING *** The program 'Google Play Music Desktop Player' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=Google Play Music Desktop Player&f=DNSServiceRegister>

The locally built rpm works flawlessly and prints out a similar log in the terminal:

error: Last.fm API keys have not been set!
*** WARNING *** The program 'Google Play Music Desktop Player' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=Google Play Music Desktop Player>
*** WARNING *** The program 'Google Play Music Desktop Player' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=Google Play Music Desktop Player&f=DNSServiceRegister>
*** WARNING *** The program 'Google Play Music Desktop Player' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=Google Play Music Desktop Player>
*** WARNING *** The program 'Google Play Music Desktop Player' called 'DNSServiceRegister()' which is not supported (or only supported partially) in the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/avahi-compat?s=libdns_sd&e=Google Play Music Desktop Player&f=DNSServiceRegister>

Strange, can you run the following
git checkout ceb20222a9965da6bd711b1eaafd95561430d260
rm -rf node_modules
npm install
npm run make:rpm:64

And try that build.  (That commit is the v4.1.1 hash).  Just want to check if I "fixed" it by accident in a recent commit or if the build agents made broken builds.

The locally built rpm from v4.1.1 hash also works flawlessly (same log output in the terminal as before).
Definitely, the build agents made broken builds.

Hmmm, gonna fix the linting errors and fire off some new builds

If you need any help for testing new builds or anything else, let me know.

Interesting, I also tried to build at the 4.1.1 hash and got the same white screen problem. Trying again.

@MarshallOfSound I've just tested the artifact built on circleci from latest commit (c780bf5) and it still gives the white screen problem. Instead, the resulting rpm built locally on my machine from the same commit works as expected. There must be something wrong in build agents configuration, or maybe some missing/mismatch dependency? Doing a diff between circleci build logs and local build logs, I cannot find any relevant difference though.

@voria Must be a native dependency issue, I'll try reconfiguring the build agent from scratch when I get time.  But I'll build the next release in a linux VM 👍

@MarshallOfSound I have some news. The rpm built locally from the current latest commit (d2bfd07) does NOT work, it gives the white screen problem as described previously.
So, I did some further testing, and I found that the problem started with commit 67567c4. The rpm built from its preceding commit 6a016f2 works as expected instead.

@voria Can you upgrade Electron to 1.5.0 on your local on latest master and see if that had the same issue?

@MarshallOfSound Bumping electron to 1.5.0 in packages.json makes no difference. Still white screen.

@MarshallOfSound I did some more testing and found the cause of the problem. The culprit is commit 67567c4, everything works flawlessly after reverting it.
To be more precise, look at file src/renderer/ui/components/generic/PlatformSpecific.js. At line 5, semver.parse() returns null on my system: apparently it does not like the string 4.9.5-200.fc25.x86_64 returned by os.release(). Then, at line 6, there is an uncaught error caused from the attempt to read the properties of the null object.

Looks like there are a lot of reasons for it to return null:
https://github.com/npm/node-semver/blob/master/semver.js#L236-L255
function parse(version, loose) {
  if (version instanceof SemVer)
    return version;

  if (typeof version !== 'string')
    return null;

  if (version.length > MAX_LENGTH)
    return null;

  var r = loose ? re[LOOSE] : re[FULL];
  if (!r.test(version))
    return null;

  try {
    return new SemVer(version, loose);
  } catch (er) {
    return null;
  }
}

It seems that the _ in the version string is causing the issue.

This version prop is only used on windows currently, I'll just ignore it on linux for now

I have some more info that may be useful, regarding the non-working published builds for v4.1.1 that you asked me to test some days ago. I tested it again, this time by exporting the environmental variable ELECTRON_ENABLE_LOGGING=1 in order to get some more useful log messages:

[3501:0130/093154:INFO:CONSOLE(457)] "Uncaught Error: Cannot find module 'jquery'", source: module.js (457)
[3501:0130/093154:INFO:CONSOLE(51)] "Uncaught ReferenceError: Logger is not defined", source: /usr/share/google-play-music-desktop-player/resources/app.asar/build/renderer/rendererEmitter.js (51)

Uncaught Error: Cannot find module 'jquery'", source: module.js (457)

Weow... That's super weird


Epic: Support Bigger and Bigger Databases

Motivation
The main proposal here was to start with a database size of ≤10 Tb
DoD
Implementation ideas
Tasks

[ ]

Other related tasks and Epics

will close in favor of having a roadmap item:
https://github.com/neondatabase/neon_roadmap/issues/113


Unable to authenticate Azure AD on both new Azure Data Studio install and old

Issue Type: Bug
On my old install, where I had previously validated my Azure AD:

Attempt to link Azure AD account by selecting the Accounts icon on the right-hand panel. See "Azure" and my old Corp account show up. Am told, "You need to refresh the credentials for this account."
When I attempt to authenticate my Azure AD account (both through Azure Auth Code Grant or Azure Auth Device Code) neither seem to get my authentication back onto Data Studio.
It appears, from my mysignins.microsoft.com page, that I have a successful verification, but this verification doesn't post to my local Azure Data Studio.

On my new install, on a separate computer, I encountered similar issues (it seems that the web verification doesn't redirect back to Azure Data Studio, appropriately... it seems, instead, trying to be calling vscode?)
Azure Data Studio version: azuredatastudio 1.39.1 (7553f799e175f471b7590302dd65c997b838b29b, 2022-08-30T01:11:13.047Z)
OS version: Windows_NT x64 10.0.22621
Restricted Mode: No

System Info

Item
Value

CPUs
11th Gen Intel(R) Core(TM) i7-1185G7 @ 3.00GHz (8 x 1805)

GPU Status
2d_canvas: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onoop_rasterization: enabledopengl: enabled_onrasterization: enabledskia_renderer: enabled_onvideo_decode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabled

Load (avg)
undefined

Memory (System)
31.39GB (11.37GB free)

Process Argv

Screen Reader
no

VM
0%

Extensions (2)

Extension
Author (truncated)
Version

azuremonitor
Mic
0.1.4

kusto
Mic
0.5.4

Hi @Knuffa
Could you test the same with Insiders build and let us know if you experience same behavior or solves issue?
You can download latest insiders build from here: Try out the latest Insiders build from main

Hi @cheenamalhotra , thanks for your speedy reply.
I installed the latest Data Studio Insiders build and this did not resolve the problem. On the stable build, attempting to link an account opened up an Edge window (Edge is my default browser). On the Insiders build, when I attempt to add an account, a notification shows up saying "Adding account..." but no browser is opened or is it apparent an authentication process has started.

Also can you share with which version of ADS did AAD login work before for you?

I was/am on ADS 1.39.1 when AAD login worked for me.

Hi @Knuffa
Could you try the following:

Command Palette > Azure Accounts: Clear Azure Account Token Cache
Command Palette > Clear all saved accounts
Command Palette > Developer: Reload Window
Try adding a new Azure account

Let us know if you still have problem signing in to add a new Azure Account.

Hi @cheenamalhotra -- That worked, thank you! Do you mind if I ask why that worked?

Sometimes stale account caches can cause ADS to load inconsistent data, so cleaning up caches/accounts comes handy tool in times like these :)


Added functionality to select swipeable directions

I needed up/down functionality and made your library configurable - See #30. The default behaviour is still horizontal. But now you can change swipeable directions with the new direction attribute.

+1 Would love to have the 4 main directions swiping (up, down, left, right)

Why isn't the commit conflicts have not been resolved. according to my understanding kh0r's solution has not been committed due to conflicts. So does that mean I can't use this library for swiping up and down.  :(

Hi
when i swipe right side without remove my finger open alert dialog i can able to swipe but i removed my finger after that cant able swipe please give solution

@maduperera
when i am using app:direction="HORIZONTAL|VERTICAL"
it gives me below Error -
Error:(9) No resource identifier found for attribute 'direction' in package 'com.showbuddy'
My layout files are as below -

<com.lorentzos.flingswipe.SwipeFlingAdapterView
    android:id="@+id/frame"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:direction="HORIZONTAL|VERTICAL"
    app:rotation_degrees="15.5" />

Build.gradle has lines as below -
compile 'com.lorentzos.swipecards:library:1.0.9'

Why is this pull request still open? Please resolve it.


Fix undefined error in carry over script

Thanks for the this app and the carry over feature.
Here is a fix for #298  the user.promise_number_of_days_available_in_allowance undefined error.
New to nodeJS.

@moopmonster thank you for the PR.
I've taken it as a base for fix that came into master today.
Thank you again for contribution.


Android's WiFi seamless switching network seamless recovery

When there are two WiFi networks in Android, the automatic connection to the optimal network function of Android's WiFi will send seamless WiFi switching, resulting in WiFi being unable to recover. The listener will not execute, and only turning off WiFi will restore when turning on and switching back to the original network. NetInfo. refresh() has no effect

Hi there! With apologies, I do not have time to troubleshoot library user's issues or code fixes for them as a volunteer normally. But, the beauty of open source is that you have all the code and tools you need - if you (or anyone affected that needs this for their use case) can propose a reasonable PR, I'll be happy to merge it


Added Code Coverage

Motivation
Having code coverage computed is very useful.
Description
Added some JaCoCo config and tasks that are able to generate the code coverage reports - for each module individually (jacoco.gradle) and for 'root' report that combines all the module reports together (build.gradle). The build. gradle also contains few variables used in both individual and root jacoco tasks to avoid duplicity definitions of these variables.
Additional Notes
Next step would be to integrate with coverals or codecov and add nice badge to README.md so that we can track the trend of code coverage over the time.

@trepel Can you rebase?

@trepel just a note about the next steps, we have used codecov on some AeroGear projects with shields.io for

Hi @danielpassos , rebased.
I know about both codecov and coveralls being used for some AeroGear projects. That's why I wanted to investigate that two. I read you comment so that you would prefer codecov, thus I will start with that.
I will be on holiday next week so don't be surprised if I don't reply on your comments.


RGBW Device Handling Not Working Anymore

Hi - this device handler isn't working, get repeated null pointer exceptions in multiple areas of the code.
java.lang.NullPointerException: Cannot invoke method toInteger() on null object @line 875 (zwaveEvent)
This is one example of several.
Can you take a look?
Ryan

I have the same problem.  QR code not recognized either


docs: improve example

What kind of change does this PR introduce?
Bug fix, feature, docs update, ...
What is the current behaviour?
You can also link to an open issue here.
What is the new behaviour?
...
Does this PR introduce a breaking change?
What changes might users need to make in their application due to this PR?
Other information:
Please check if the PR fulfills these requirements:

[ ] Tests for the changes have been added
[ ] Docs have been added / updated
[ ] Relevant Changeset has been added

coverage: 100.0%. remained the same
when pulling 9bfe759cc4885588cbc91348539112718d0cce80 on better-examples
into 444fc151a2f5b3282d14621a17b990a8c9f1fdde on master.


Manual: Move where to buy and sell info to the manual

https://library.threefold.me/info/threefold#/tokens/threefold__how_to_buy
Right now we are linking to the above Library location from
https://manual.grid.tf/threefold_token/buy_sell_tft/buy_sell_tft.html
We should move whatever is relevant from the Library page to the manual, and generally we shouldn't link to the Library from the Manual.

i'm already working on it

you can find all files on 'tokens' folder, migration4 branch


Remove password validation from login page

Description
currently the password validation is added in both register page and login page ... remove the validation from login page but keep in the register page.
Screenshots
No response

Hi @Arnabdaz , I want to work in this issue. Please assign it under GSSOC'23!

@anshumanjaiswal go ahead

@Arnabdaz Sure

@Arnabdaz Please check and let me know


Please explain use of "SuppressCommit" in CU5763

Hi,
you closed my previus issue #16 for this reason:

After further discussions I am sorry to disappoint you, but currently we do not intend to make suppressing of commits generally available. We would still like to handle your specific issues though. Please just create a new issue for the individual requests.

Well. Please can you explain how we can use "SuppressCommit" in warehouse?
CU 5763 call CU80, CU90 and CU5704. All these CUs have "SuppressCommit" but CU 5763 not.
Maybe we have to develop our version of "Whse.-Post Shipment" ? Or "SuppressCommit" will be added to warehouse and we have to redefine all posting entry points? Or your "further discussions" should be more "further"?
Please don't underestimate partner experience, the road ahead is long.
S.

Hi,
as mentioned before, the way to "fix" this would be to request that the SuppressCommit pattern be added to CU 5763 in the same way as it has been added to CU 80, CU 90 and CU 5704. You would then be able to create a variable of CU 5763 and call SetSuppressCommit on that. The SuppressCommit would get passed along to the relevant other cu's called in CU 5763.
I assume you would want us to also add this to CU 5760.
Would you like us to implement SuppressCommit in CU 5763 and CU 5760?
br/Gert

I second this. There are many commits in the warehouse management system which I routinely remove on implementation. If we are now unable to remove them we require a pattern such as SupressCommit. It would be better if they were simply removed (they should never have been added)

@JesperSchulz
@grobyns
With extensions style development, COMMIT is an absolutely unsafe instruction! You will never be sure about database integrity. What about a crazy APP with COMMIT in the middle of a codeunit, raised by an event subscription, with show_my_code=false?
Simply a mess.
COMMIT must be removed from posting codeunits and generally you have to provide a global event to handle them (for example OnBeforeCommit with caller information and a variable by reference to skip the commit, but handled in a safe way: the first subscriber that want to skip, skip it for all).
I'm not sure that you would to manage your money savings with a random-commit software.

Doing some ticket inventory when I stumbled upon this open issue! Somehow the system did not report back, that the improvement request linked to this issue was resolved on the 15th of May. The changes should have shipped with the latest major release in October. I'm hence closing this issue. If you have further requests, please open a new ticket or, if the request is larger, log an Idea on aka.ms/bcideas. Sorry about the breach in communication - it would appear the link between tickets and our internal system failed for a few issues. My apologies.


Move compile_fail doctests to ui compiletests.

Moves the four compile_fail doctests from kubelet::state to UI tests using compiletest-rs. This ensures that the compilation is failing for exactly the reason we expect (the stderr is compared).

There are some known issues with running compiletest_rs on OSX (and I guess aarch64). Now that I think about it, I think this is what prevented me from implementing this before. Since these tests are for my own validation, my preference would just be to conditionally run them once for Ubuntu x86_64. Thoughts?

There are some known issues with running compiletest_rs on OSX (and I guess aarch64). Now that I think about it, I think this is what prevented me from implementing this before. Since these tests are for my own validation, my preference would just be to conditionally run them once for Ubuntu x86_64. Thoughts?

I recalled that the issue last time was that everyone develops on Macs so not being able to test on OSX was annoying. I believe I've fixed the issue by manually configuring the linking path for OSX.
I have updated the action to skip aarch64.

I recalled that the issue last time was that everyone develops on Macs so not being able to test on OSX was annoying. I believe I've fixed the issue by manually configuring the linking path for OSX.
I have updated the action to skip aarch64.

I am not sure if I understand the advantages of doing things this way. I like these as doctests for 2 primary reasons:

They provide real examples in the documentation, which I think is very useful
This new way doesn't support all architectures, and even if it did, it adds more code for actually running the tests

Could you clarify more about what advantages you see here? As it stands now I don't think I'd be in favor of merging this

I am not sure if I understand the advantages of doing things this way. I like these as doctests for 2 primary reasons:

They provide real examples in the documentation, which I think is very useful
This new way doesn't support all architectures, and even if it did, it adds more code for actually running the tests

Could you clarify more about what advantages you see here? As it stands now I don't think I'd be in favor of merging this

Currently, if a change in our code causes these examples to not compile for a reason other than what we are checking for, this fails silently. In nightly it is possible to specify an error code to assert for doc tests, but this is not likely to stabilize soon.
This approach is how the compiler team asserts that code does not compile for the reason that they are expecting.
If we want to expand the state docs to reiterate these rules, I would support that, but I do not think we need such verbose examples.
If it's critical that it runs on ARM, then I can spend some time getting that to work (I do not think it's an actual issue, just that using --target changes where some dependencies are found).
I would really prefer that we move to this because currently I have to periodically I uncomment compile_fail and run the tests to ensure that they are failing for the right reasons.

Currently, if a change in our code causes these examples to not compile for a reason other than what we are checking for, this fails silently. In nightly it is possible to specify an error code to assert for doc tests, but this is not likely to stabilize soon.
This approach is how the compiler team asserts that code does not compile for the reason that they are expecting.
If we want to expand the state docs to reiterate these rules, I would support that, but I do not think we need such verbose examples.
If it's critical that it runs on ARM, then I can spend some time getting that to work (I do not think it's an actual issue, just that using --target changes where some dependencies are found).
I would really prefer that we move to this because currently I have to periodically I uncomment compile_fail and run the tests to ensure that they are failing for the right reasons.

I did have a moment of surprise at the naming but it seems like that might be idiomatic?

Yeah, it is idiomatic and specifies the type of test we are running. It is also not the name I would have chosen. FWIW we are comparing the exact compiler output here, so in effect we are testing the compiler's UI rather than for a specific error code or something. If the UI changes we will have to update the stderr files, but hopefully that will be infrequent.
@thomastaylor312 I know you had some concerns, am I good to merge?

I did have a moment of surprise at the naming but it seems like that might be idiomatic?

Yeah, it is idiomatic and specifies the type of test we are running. It is also not the name I would have chosen. FWIW we are comparing the exact compiler output here, so in effect we are testing the compiler's UI rather than for a specific error code or something. If the UI changes we will have to update the stderr files, but hopefully that will be infrequent.
@thomastaylor312 I know you had some concerns, am I good to merge?

Seeing as @itowlson has LGTM'd this, you are good to merge whenever

Seeing as @itowlson has LGTM'd this, you are good to merge whenever


WIP: Metadata response parsing

After looking at the definition of astring, the innocent-looking "/ string" part allows a pretty complicated snyntax. So processing entry names in two passes like it is now is the only viable solution without repeating all the quoting and escaping of strings and literals.


Implementation the new Data Node API

Using the API specifications from this PR: Sage-Bionetworks/nlp-sandbox-schemas/pull/71

Generating new server code base from the spec defined in the PR.
npx @openapitools/openapi-generator-cli generate -i ../nlp-sandbox-schemas/dist.yaml -g python-flask -o server

The server is now running locally. I'll now work on connecting a MongoDB instance.


Write a TypeScript program to convert hexadecimal to decimal

Description
Write a TypeScript program to convert hexadecimal to decimal
Hexadecimal is a base-16 number system. It uses sixteen digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, and F. The digits are called hexits. A hexit is the smallest unit of information in a computer. A hexit can be used to represent a single value, such as 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, or F, or it can be used to represent a single state, such as on or off.
To convert a hexadecimal number to decimal, we can use the following algorithm:

Multiply the first hexit by 16^0.
Multiply the second hexit by 16^1.
Multiply the third hexit by 16^2.
Multiply the fourth hexit by 16^3.
Repeat steps 3 and 4 until the last hexit.
Add the results of all the multiplications.
The decimal number is the sum of all the multiplications.

Input  : A
Output : 10

How to contribute

Save the solution in ConvertHexadecimalToDecimal.ts file
Add ConvertHexadecimalToDecimal.ts file in convert-hexadecimal-to-decimal folder

!assign


Infinite recursion issue when traversing object properties

A typical example is https://github.com/Azure/azure-powershell/blob/main/src/DataProtection/DataProtection.Autorest/generated/api/Models/Api20231201/InnerError.cs#L37. The EmbeddedInnerError will cause infinite loop when accessing its property value.

Getter of a property will auto create an object is by design.
See https://github.com/Azure/autorest.powershell/blob/main/powershell/llcsharp/model/property.ts#L78-L79 for details.
We can not make the change since it will break a lot of users.
@vidai-msft, for Azure PowerShell circle reference issue, I think we could still follow your proposals. If any such issue is detected either through telemetry or others way, we should put related class(model) in the exception list.


[Event Request] Codeunit 5812 Calculate Standard Cost - OnBeforeSetProperties

In the codeunit 5812 Calculate Standard Cost, I need an event OnBeforeSetProperties at the beginning of the procedure SetProperties, and pass the same var parameters as in the OnAfterSetProperties. Then someone can change the parameters passed in the SetProperties procedure before continuing.
Thus, like following:
OnBeforeSetProperties(NewCalculationDate, NewCalcMultiLevel, NewUseAssemblyList, NewLogErrors, NewStdCostWkshName, NewShowDialog);

This event already exists
[IntegrationEvent(false, false)]
local procedure OnBeforeSetProperties(var NewCalculationDate: Date; var NewCalcMultiLevel: Boolean; var NewUseAssemblyList: Boolean; var NewLogErrors: Boolean; var NewStdCostWkshName: Text[50]; var NewShowDialog: Boolean)
begin
end;


Fireblocks Integration: V1

PR Checklist
PR Structure

[ ] This PR has reasonably narrow scope (if not, break it down into smaller PRs).
[ ] This PR avoids mixing refactoring changes with feature changes (split into two PRs
otherwise).
[ ] This PR's title starts with name of package that is most changed in the PR, ex.
paymentservice.stellar, or all or doc if the changes are broad or impact many
packages.

Thoroughness

[ ] This PR adds tests for the most critical parts of the new functionality or fixes.

What
SDFSOF-15: Implemented controller for handling Fireblocks webhook notifications. Added signature validation.
SDFSOF-17: Define Anchor template config for FB integration
SDFSOF-21: Implement cron job scheduler for FB updates
SDFSOF-26: Update runner for Custody component
Why
Initial commit
Known limitations
[TODO or N/A]

Reference Server Preview is available here:https://anchor-ref-pr851.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr851.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr851.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr851.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr851.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr851.previews.kube001.services.stellar-ops.com/

Reference Server Preview is available here:https://anchor-ref-pr851.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr851.previews.kube001.services.stellar-ops.com/

LGTM except 1 small comment

Reference Server Preview is available here:https://anchor-ref-pr851.previews.kube001.services.stellar-ops.com/SEP Server Preview is available here:https://anchor-sep-pr851.previews.kube001.services.stellar-ops.com/


incorrect response message for deletion

[x] estimate deletion

[x]

[x] retainer invoice deletion

[x] sales order

[ ]

[x] sales return

[ ]

[x] delivery challan

[ ]

[x] invoice

[ ]

issue fixed !


wasm with missing .data section always fails SetHook checks

Issue Description

wasm with missing .data section always fails SetHook checks
Steps to Reproduce

Set the following hook
0061736d0100000001130360017e017e60027f7f017f60037f7f7e017e02
170203656e7606616363657074000203656e76025f670001030302000005
03010000071803066d656d6f72790200046362616b000204686f6f6b0003
0a1c02040042010b150041004100420010001a410e41e40010011a42010b

Expected Result

SetHook should succeed
Actual Result

SetHook fails on short check
Environment

Supporting Files

this appears to be fixed