Compile google.clouds.speech.v1beta1 dotnet.exe crash with visual studio 2015

Compile google.clouds.speech.v1beta1 dotnet.exe crash with visual studio 2015
OS: window server 2012
Microsoft Visual Studio Professional 2015
Version 14.0.25431.01 Update 3
Microsoft .NET Framework
Version 4.6.01055
Installed Version: Professional
LightSwitch for Visual Studio 2015   00325-60002-99905-AA499
Microsoft LightSwitch for Visual Studio 2015
Visual Basic 2015   00325-60002-99905-AA499
Microsoft Visual Basic 2015
Visual C# 2015   00325-60002-99905-AA499
Microsoft Visual C# 2015
Visual C++ 2015   00325-60002-99905-AA499
Microsoft Visual C++ 2015
Visual F# 2015   00325-60002-99905-AA499
Microsoft Visual F# 2015
AnkhSVN - Subversion Support for Visual Studio   2.5.12703.45
AnkhSVN - Subversion Support for Visual Studio 2.5.12703.45

Ankh.Package 2.5.12703.45
Subversion 1.8.13 via SharpSvn 1.8013.3694.107

SharpSvn is linked to: Apr 1.5.1, Apr-util 1.5.4, Cyrus Sasl 2.1.25, eXpat 2.1.0, OpenSSL 1.0.2d 9 Jul 2015, serf 1.3.8, SQLite 3.7.17, Subversion 1.8.13-SharpSvn-1.8.13, ZLib 1.2.8
SharpSvn is optionally linked to: Berkeley DB 4.4.20, SharpPlink 0.64.0(SharpSvn)
Application Insights Tools for Visual Studio Package   7.8.00927.1
Application Insights Tools for Visual Studio
ASP.NET and Web Tools 2015.1   14.1.20907.0
ASP.NET and Web Tools 2015.1
ASP.NET Web Frameworks and Tools 2012.2   4.1.41102.0
For additional information, visit http://go.microsoft.com/fwlink/?LinkID=309563
ASP.NET Web Frameworks and Tools 2013   5.2.40314.0
For additional information, visit http://www.asp.net/
Azure App Service Tools v2.8.1   14.0.11123.0
Azure App Service Tools v2.8.1
Common Azure Tools   1.8
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.
GitHub.VisualStudio   1.0
A Visual Studio Extension that brings the GitHub Flow into Visual Studio.
JavaScript Language Service   2.0
JavaScript Language Service
JavaScript Project System   2.0
JavaScript Project System
Microsoft .NET Core Tools (Preview 2)   14.1.20907.0
Microsoft .NET Core Tools (Preview 2)
Microsoft Azure Mobile Services Tools   1.4
Microsoft Azure Mobile Services Tools
Microsoft MI-Based Debugger   1.0
Provides support for connecting Visual Studio to MI compatible debuggers
NuGet Package Manager   3.5.0
NuGet Package Manager in Visual Studio. For more information about NuGet, visit http://docs.nuget.org/.
Office Developer Tools for Visual Studio 2015 ENU   14.0.23025
Microsoft Office Developer Tools for Visual Studio 2015 ENU
PreEmptive Analytics Visualizer   1.2
Microsoft Visual Studio extension to visualize aggregated summaries from the PreEmptive Analytics product.
Python Tools for Visual Studio   2.2.30718.00
Python Tools for Visual Studio provides IntelliSense, projects, templates, Interactive windows, and other support for Python developers.
Python Tools for Visual Studio - Django Integration   2.2.30718.00
Provides templates and integration for the Django web framework.
Python Tools for Visual Studio - Profiling Support   2.2.30718.00
Profiling support for Python projects.
SQL Server Data Tools   14.0.60519.0
Microsoft SQL Server Data Tools
TypeScript   <IP_ADDRESS>
TypeScript tools for Visual Studio
Visual C++ for Cross Platform Mobile Development   1.0
Visual C++ for Cross Platform Mobile Development
Visual C++ for Cross Platform Mobile Development   1.0
Visual C++ for Cross Platform Mobile Development
Visual Studio Tools for Universal Windows Apps   14.0.23121.00 D14OOB
The Visual Studio Tools for Universal Windows apps allow you to build a single universal app experience that can reach every device running Windows 10: phone, tablet, PC, and more. It includes the Microsoft Windows 10 Software Development Kit.
Workflow Manager Tools 1.0   1.0
This package contains the necessary Visual Studio integration components for Workflow Manager.
Xamarin   3.11.837.0 (f10676f)
Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.
Xamarin.Android   <IP_ADDRESS> (f98871a95a479f6d71b3067b7e5834d41fcb2118)
Visual Studio plugin to enable development for Xamarin.Android.
Xamarin.iOS   <IP_ADDRESS> (6db87c53c073f4af2f5247fb738a27ea08c094fd)
Visual Studio extension to enable development for Xamarin.iOS.
Xamarin.iOS Unified Migration   1.0
Automated migration for Xamarin iOS Classic projects to Unified
Xamarin.TestCloud.Integration   1.0
Early preview of Xamarin Test Cloud integration

Can you give any more details of the error? You've given a lot of details about your environment, but not what you were doing or the exact result. (It's still fine for me, and CI seems okay...)

When I open google.clouds.speech.v12beta1.sln, VS 2015 is ask me install Microsoft Net.core 1.0.1 -SDK preview 2-003131(x64)
also I find   Microsoft Net.core 1 SDK 1.0.0 preview 2 (x64) installed.  Microsoft Net.core 1 SDK 1.0.1 VS 2015 tooling preview 2 (x64).  Now whenever Open solution it crash .
Error from VS 2015:
Problem signature:
Problem Event Name:	APPCRASH
Application Name:	dotnet.exe
Application Version:	<IP_ADDRESS>00
Application Timestamp:	576218d2
Fault Module Name:	StackHash_a081
Fault Module Version:	<IP_ADDRESS>
Fault Module Timestamp:	00000000
Exception Code:	c00000fd
Exception Offset:	PCH_AE_FROM_Microsoft_DotNet_ProjectModel+0x0000000000067070
OS Version:	6.2.9<IP_ADDRESS>.400.8
Locale ID:	4105
Additional Information 1:	a081
Additional Information 2:	a081c3b14d504e6ea27bd946428a134c
Additional Information 3:	6b8d
Additional Information 4:	6b8d3cc592abc571cd7a2338bab2c0d6
Read our privacy statement online:
http://go.microsoft.com/fwlink/?linkid=190175
If the online privacy statement is not available, please read our privacy statement offline:
C:\Windows\system32\en-US\erofflps.txt
windiw evet view log:
Faulting application name: dotnet.exe, version: <IP_ADDRESS>00, time stamp: 0x576218d2
Faulting module name: unknown, version: <IP_ADDRESS>, time stamp: 0x00000000
Exception code: 0xc00000fd
Fault offset: 0x000007fcdd1b7cc1
Faulting process id: 0x2938
Faulting application start time: 0x01d2257d46872229
Faulting application path: C:\Program Files\dotnet\dotnet.exe
Faulting module path: unknown
Report Id: 8acfd943-9170-11e6-943a-005056a54822
Faulting package full name:
Thanks for quick respond

another window event log:
Faulting application name: dotnet.exe, version: <IP_ADDRESS>00, time stamp: 0x576218d2
Faulting module name: System.Private.CoreLib.ni.dll, version: 4.6.24410.1, time stamp: 0x57aa8203
Exception code: 0xc00000fd
Fault offset: 0x00000000004f3065
Faulting process id: 0x2b64
Faulting application start time: 0x01d2257cf66adc79
Faulting application path: C:\Program Files\dotnet\dotnet.exe
Faulting module path: C:\Program Files\dotnet\shared\Microsoft.NETCore.App\1.0.1\System.Private.CoreLib.ni.dll
Report Id: 3c3ba356-9170-11e6-943a-005056a54822
Faulting package full name:
Faulting package-relative application ID:

That sounds like it's a problem with the dotnet CLI... I can't see how it's a problem with the code in this repo.
Have you tried compiling from the command line instead of VS? Do any other solutions work?

I can compile C:\Users\wxiaoming\Downloads\dotnet-docs-samples-master\dotnet-docs-samples-master\speech\api  which I download from githurb. I can direct compile it. i do not need install anything, but for  Compile google.clouds.speech.v1beta1 I can not compile it at begining. error : missing Microsoft Net.core 1.0.1 -SDK preview 2-003131
Cloud you check your program and feature , Do you install Microsoft Net.core 1.0.1 -SDK preview 2-003131(x86)?

Yes, as per the global.json file, this repository expects preview2-003131.

here is SKD path in my computer.
C:\Program Files\dotnet\sdk\1.0.0-preview2-003131

Here is my computer system information
OS Name	Microsoft Windows Server 2012 Datacenter
Version	6.2.9200 Build 9200
Other OS Description 	Not Available
OS Manufacturer	Microsoft Corporation
System Name	RD1223
System Manufacturer	VMware, Inc.
System Model	VMware Virtual Platform
System Type	x64-based PC
System SKU
Processor	Intel(R) Xeon(R) CPU           E5506  @ 2.13GHz, 2133 Mhz, 2 Core(s), 2 Logical Processor(s)
Processor	Intel(R) Xeon(R) CPU           E5506  @ 2.13GHz, 2133 Mhz, 2 Core(s), 2 Logical Processor(s)
BIOS Version/Date	Phoenix Technologies LTD 6.00, 2012-06-22
SMBIOS Version	2.4
Embedded Controller Version	0.00
BIOS Mode	Legacy
BaseBoard Manufacturer	Intel Corporation
BaseBoard Model	Not Available
BaseBoard Name	Base Board
Platform Role	Desktop
Secure Boot State	Unsupported
PCR7 Configuration	Not Available
Windows Directory	C:\Windows
System Directory	C:\Windows\system32
Boot Device	\Device\HarddiskVolume1
Locale	Canada
Hardware Abstraction Layer	Version = "6.2.9200.16442"
User Name	Not Available
Time Zone	Eastern Daylight Time
Installed Physical Memory (RAM)	10.0 GB
Total Physical Memory	10.0 GB
Available Physical Memory	4.36 GB
Total Virtual Memory	11.4 GB
Available Virtual Memory	5.42 GB
Page File Space	1.44 GB
Page File	C:\pagefile.sys
A hypervisor has been detected. Features required for Hyper-V will not be displayed.

I suggest you report all of that to Microsoft - I'm afraid I can't help you, not having seen the same thing myself (and I compile this very regularly - and it's compiled on AppVeyor, Travis and Myget as well...)

Thanks a lot

I download latest githurb google-clound-dotnet , Now I can compile it


c program execution problem

Type: Feature Request
no c file is executing it says no such or directory
VS Code version: Code 1.90.2 (5437499feb04f7a586f677b155b039bc2b3669eb, 2024-06-18T22:34:26.404Z)
OS version: Windows_NT x64 10.0.22631
Modes:

/duplicate of #216880

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!


[extractor/youtube] More parameters for storyboards

Template

Before submitting a pull request make sure you have:

[x] At least skimmed through contributing guidelines including yt-dlp coding conventions
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

Description of your pull request and other information

Currently there's no reliable way to get amount of frames, rows or columns in storyboard format. This PR adds rows, columns fields to JSON output and fps to be able to calculate storyboard frame count.

Document the fields in extractor/common.py

Can you share a snapshot so I/we know what you have merged? Snapshot/picture of the 'storyboard'.

yt-dlp -j -f sb0 https://www.youtube.com/watch?v=HtVdAasjOgU | jq .fragments[0].url


how to evaluate the accuracy of 3Dmesh

@DRosemei hey~
How can I quantitatively judge the accuracy of 3Dmesh? For example, I want to know whether the coordinates of the lane lines are accurate. Can I compare them with the results of the laser or project them onto a satellite map?
Thanks again for your patience

@Lin239522 Sorry for late reply. It is hard to evaluate accuracy. Extrinsics, poses and elevations all contribute to the accuracy.
A simple way is as follows:

Label on BEV
Transform 2d labels to 3d labels by elevations
Reproject 3d labels to cameras
Compute reprojected labels errors in image space


[New Chain / Network] Optimism on Gnosis Chain

Will complete as many steps as possible today
Useful Links
Please list any useful links that you encounter in the process. Such as, block explorers, faucets, bridges, etc.
Network Name: Optimism on Gnosis Chain
Chain ID: 300
RPC Endpoint: https://optimism.gnosischain.com
WebSocket Endpoint: wss://optimism.gnosischain.com/wss
Block Explorer: https://blockscout.com/xdai/optimism
L1 (GC) Contract Addresses: https://www.xdaichain.com/for-developers/optimism-optimistic-rollups-on-gc/l1-contract-addresses
L2 (Optimism) Contract Addresses: https://www.xdaichain.com/for-developers/optimism-optimistic-rollups-on-gc/l2-contract-addresses

ChainId

Provide the chain ID: 300
Provide the link to the chainlist.org entry in their repository with the chain details: [Issue Created] https://github.com/ethereum-lists/chains/issues/1035

Validation steps
As you complete the steps, provide links to the chain's block explorer transactions, to verify the correct execution of the steps.

[x] If contracts are not deployed. Deploy them using the tool

[ ] Verify the chain at https://chainlist.org/ .

[ ] Please document links of interest such as faucets, bridges, block explorer, etc. as comments in this issue.
[ ] (Optional) Execute using safe-tasks the steps in our internal guide for user side validation of the contracts:

[ ] Deploy 2 L2 safes
run $ yarn safe create --l2 (Note: you will need to specify --factory and --singleton addresses if the chain enforces EIP155)
[ ] Use one safe to wrap and unwrap ETH.
[ ] Transfer native currency of the chain to one of the safes from your EOA
[ ] Transfer ERC20 token (please provide link and/or deploy one if necessary) to one of the safes
[ ] Transfer ERC20 token and native coin between the safes
[ ] Add an additional owner to one of the safes

Where possible, provide links to the transactions in the block explorer of the chain.

Deploying using public key: https://blockscout.com/xdai/optimism/address/0xDDb60CD742A05E1076e60fE6Cb9303BDf6c36aeB/transactions
reusing "SimulateTxAccessor" at 0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da
deploying "GnosisSafeProxyFactory" (tx: 0xb4ca563360bdaf7e431adad4374e208f270ddb945fc0f0ad23ad4986fd3036e4)...: deployed at 0xa6B71E26C5e0845f74c812102Ca7114b6a896AB2 with 867594 gas
reusing "DefaultCallbackHandler" at 0x1AC114C2099aFAf5261731655Dc6c306bFcd4Dbd
deploying "CompatibilityFallbackHandler" (tx: 0xcb0bc4aa5d469ac510e4304e669926d4dfbc1265acb958cd5d43a64aa65bee90)...: deployed at 0xf48f2B2d2a534e402487b3ee7C18c33Aec0Fe5e4 with 1238095 gas
reusing "CreateCall" at 0x7cbB62EaA69F79e6873cD1ecB2392971036cFAa4
reusing "MultiSend" at 0xA238CBeb142c10Ef7Ad8442C6D1f9E89e07e7761
reusing "MultiSendCallOnly" at 0x40A2aCCbd92BCA938b02010E17A5b8929b49130D
deploying "SignMessageLib" (tx: 0xefa1a7db819cf9e97a17b8a440c834a3aed00c0d949ea8e6914934cec1967576)...: deployed at 0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2 with 262353 gas
deploying "GnosisSafeL2" (tx: 0xe547a11ab2deddcb2dddaddc1127fe4647e1b795c996037c8c39c72442fadd3d)...: deployed at 0x3E5c63644E683549055b9Be8653de26E0B4CD36E with 5200241 gas
deploying "GnosisSafe" (tx: 0xfb6121897b1b0591d2c355aef66807cbf04b185bc413dff13b75c5b31f15654b)...: deployed at 0xd9Db270c1B5E3Bd161E8c8503c55cEABeE709552 with 5017833 gas

Issue Requested for ChainList
[]- approved: https://github.com/ethereum-lists/chains/issues/1035

Links of Interest:
Network Name: Optimism on Gnosis Chain
Chain ID: 300
RPC Endpoint: https://optimism.gnosischain.com
WebSocket Endpoint: wss://optimism.gnosischain.com/wss
Block Explorer: https://blockscout.com/xdai/optimism
L1 (GC) Contract Addresses: https://www.xdaichain.com/for-developers/optimism-optimistic-rollups-on-gc/l1-contract-addresses
L2 (Optimism) Contract Addresses: https://www.xdaichain.com/for-developers/optimism-optimistic-rollups-on-gc/l2-contract-addresses


GLOBAL_AGENT.HTTP_PROXY configuration value: URL protocol must be http:

Extension
https://www.raycast.com/krzysztofzuraw/search-mdn
Description

Steps To Reproduce
No response
Current Behaviour
Use proxy setting with system Petwork Preference.

Expected Behaviour
It seems a duplicate of  https://github.com/electron/get/issues/215.

can you check in v1.45.1 to see if it's fixed?

can you check in v1.45.1 to see if it's fixed?

It's still have problem 😢

@Moeyua The proxy server URL must use the http protocol (in your screenshot there's https), but there's still currently a bug so you can try again with the next release end of the week.
What kind of local proxy are you using? Could you point us to the tool or source code in case it's an OSS project?

Thank you for your hard work.
I'm using Surge as my system proxy.

Thanks! I've just tested it with Surge and it's going to work with the next release. (No need to change any proxy settings.)

Should be fixed now!


Bool parameters like --train do not validate that the value is a bool

--train=Train results on --train=False
We should do better validation here and raise ValueError
AB#3906

Can we simplify the parser in the same washup, and interpret "--azureml" as "--azureml=True"?

For all boolean arguments that have False as their default, it should be valid to write only --flag_name, and it would be equivalent to --flag_name=True.
For all boolean argument that have True as their default, it would still be necessary to say --flag_name=False if you want to change its value.

Changing the parser: add_args in generic_parsing.py


Update faq.md

Link to #1
Base from an answer from StackOverflow
https://superuser.com/questions/209703/why-wont-windows-exes-work-on-linux?answertab=votes#tab-top

Make it shorter if you want

I guess we don't need to have an explantion for API, but I'll sure put it in the glossary.


Node dragging test fail when run on Redux example

What platform were you using when you found the bug?

React Flow / Svelte Flow version: 12.3.4
Browser and version: playwright chromium latest (npm: 1.48.2)
OS and version: Windows 10/11

Live code example
No response
Describe the Bug
It's not possible to drag nodes with playwright since xyFlow/react v12 when using redux as a state manager.
Steps to reproduce the bug or issue

Setup xyFlow/react playwright tests locally (from source)
Modify the "dragging" test to run on the redux example
"dragging test":
https://github.com/xyflow/xyflow/blob/97fdff59d40071aee0b3192f7b571c6bdd4d09fd/tests/playwright/e2e/nodes.spec.ts#L61
"redux example":
https://github.com/xyflow/xyflow/tree/main/examples/react/src/examples/Redux
Or online:
https://reactflow.dev/learn/advanced-use/state-management
Run test
Test fails ❌ (note that it passes on the original example if redux isn't involved)

Expected behavior
Test should pass.
Screenshots or Videos
No response
Additional context
We use reactflow and test our application with playwright. Since upgrading to v12 moving nodes around in playwright doesn't properly work anymore.
It seems that modifying "steps" in the playwright "page.mouse.move(x,y,{steps:stepcount})" test code to a higher count will actually execute all steps until n - 1. This means in actual use this usually goes unnoticed, but still seems like a bug to me.
One workaround is to move the cursor 2x the distance and set steps to 2, since this will only execute the first step, but this doesn't sound like it should be the solution.

@chr11115 I tried replace the test with the redux version and it works for me. You can check it out in this branch.

One workaround is to move the cursor 2x the distance and set steps to 2, since this will only execute the first step, but this doesn't sound like it should be the solution.

This does not sound to far off. We set the nodeDragThreshold to 1 for the playwright tests. The default nodeDragThreshold changed in v12 which influences how much a node has to be moved until it is registered as a drag vs. a click.

Ah cool thank you! So the main difference was that your Redux example just like our code did not change nodeDragThreshold back to 0 causing these tests to fail..
The behavior is still somewhat un-intuitive, but that explains it.
Thank you for looking into it!

The behavior is still somewhat un-intuitive

It should have been the default from the get-go. A nodeDragThreshold of 1 delays dragging to commence until the node has been moved by 1 pixel, which is the standard for most dragging behaviors.
Happy to hear you resolved the issue.


Can't access docker debain instance from across network.

Hi there,
I'm able to run and access the Rhasspy instance from the local machine.
However I can't do the same from another machine on the same network.
This usually points to either not exposing the ports, or the local instance only binding to localhost.
I have the ports exposed using -p 12101:12101
Other docker images on this host (Home-assistant, MQTT) I have no issues accessing.
Looking at the git hub dockerfile.debian I don't see the EXPOSE command, unlike the dockerfile which contains 'EXPOSE 12101'
Does anyone more experienced with docker know what I may have missed?

Depending on the exact details of how you're running Rhasspy, you may try adding --http-host <IP_ADDRESS> to the Rhasspy script command-line arguments to have it bind to all available interfaces.

Did adding the flag solved your issue?

Closing due to inactivity. Please re-open if the problem persists.

Closing due to inactivity. Please re-open if the problem persists.


Zeromq for Mac M1  & other linux distros

Zeromq is used to communicate with kernels. If zeromq didn't work on an os, then we rely on users installing jupyter, which will install python and zeromq will get built on the os.
Mac m1 is an os for which we don't have a prebuilt binary.

I can confirm building zeromq works on Mac M1, & this works in a Mac

TODO:

Ship this as an experiment (for controlled roll out)
Consider contributing upstream
Sign & Build dependencies (build pipeline)
Should we sign & build dependencies for all OS & linux distros (even though we already have pre-built packages via npm)
How to detect what's a Mac M1

We could optionally load currrenly shipped zeromq and then if that fails, try our build.
Would require some changes to the zeromq package code or we'll need to update the files during runtime.

Just so I am clear, does this mean that this issue is still being addressed and I will need the Python extension to run Jupyter notebooks on a Mac M1 machine until it is solved?

and I will need the Python extension to run Jupyter notebooks on a Mac M1 machine until it is solved?

Unfortunately yes, please consider installing the Julia extension, which supports jupyter notebooks without zeromq.

I did install the Julia extension - version 1.3.30 (tried both regular and insider). As I mentioned in my original bug report, I can run Jupyter notebooks using Julia code, but on the Mac M1, I also have to install the Python extension to get this to work. On the MacBook Pro with an Intel chip, I do not have to install the Python extension. So, perhaps the issue is in the Julia extension and how it works with the M1 chip?

n. So, perhaps the issue is in the Julia extension and how it works with the M1 chip?

Please file an issue with Julia extenssion if notebooks do not work in Mac m1.

Will do. In fact this is where I originally filed this issue.

Any progress here? There is a similar issue caused by this #4

Is there an interim solution for users on this front? My .env files won't reload in jupyter and this problematic.

Is there an interim solution for users on this front?

I'm sorry, however there's no work around for now. Related comments here https://github.com/microsoft/vscode-jupyter/issues/9774#issuecomment-1110329606

Summary of discussion with @deepak1556
Build

Build on the CI pipeline (with Mac OS  SDK), we provide the target arch (e.g. arm64) - via a cross compilation
We cross compile as there's no arm64 machine on CI
Ensure zeromq has the build targets for arm64 (seems to work for Don on his M1, hence things should work as expected)
Create separate pipeline for building on Mac arm
Here's an sample pipeline https://github.com/microsoft/vscode/blob/4c72dedb4ad283a569f83a7389468c3ae2c642c3/build/azure-pipelines/darwin/product-build-darwin.yml#L98-L116

Signing

[ ] Check with Steven/Isidor about signing contents in the vsix (are they signed today)

OS

On website
Platform all 3 arcs (32, 64, arm64)
No support for linux 32
Check link provided for supported - (https://code.visualstudio.com/docs/supporting/requirements#_platforms)

These are the minimum versions supported
We might want to consider building for these as well.

Mac Universal?

This is the future (no arch specific builds)
Highly recommended (core ships universal for binaries)
We might want to build a universal binary for Mac (then we ship just a single binary)
Build x64 and arm64, then use mac toolchain to create universal binary (lipo)

https://github.com/microsoft/vscode/blob/4c72dedb4ad283a569f83a7389468c3ae2c642c3/build/azure-pipelines/darwin/product-build-darwin-universal.yml

[ ] We might want to add a universal tag into extension package.json so it shows up in marketplace


Update existing tailscale installation if up command-line arguments change

This role will update Tailscale to the latest version but will only run up if it detects the system is logged out of Tailscale. It should support an idempotent method of re-running tailscale up if the command-line arguments to the up command change.

Can maintain a statefile on the target host similar to https://github.com/artis3n/ansible-role-jetbrains-projector/blob/main/tasks/lib/update_configs.yml

I'm just looking at implementing this as I probably want it before I implement subnet routes, but I have a question. According to the CLI manual:

To clear previously set flags like tags and routes, pass the flag with an empty argument:
# Connects with `tag:server`
tailscale up --advertise-tags=tag:server

# Connects and clears any tags
tailscale up --advertise-tags=

In Tailscale v1.8 or greater, if you forget to specify a flag you added before, the CLI will warn you and provide a copyable command that includes all existing flags.

Now, if we use the method laid out here we should be able to know if any arguments have been removed. So, if an argument has been removed, would we expect the new command to include an empty --flag=, to ensure a setting that is no longer part of Ansible in unset? Or trust the user to know about this, and explicitly provide empty flags?

I hadn't considered that yet! In the spirit of Ansible (idempotency, explicit declarations) I'd prefer this role have the capability to realize if a previously set flag is missing and fail the task with a clear failure message explaining what flags are missing. And the user would need to explicitly pass an input variable to allow overwriting the state without including previously declared flags.
Perhaps an assert similar to https://github.com/artis3n/ansible-role-jetbrains-projector/blob/main/tasks/lib/validate.yml.
Happy to let you tinker with an implementation for this issue! Feel free to put up a draft PR if you'd like input while you work on it.

That creates idempotency challenges running the same playbook twice in a row so we'd need to solve for that.

I've pushed a PR with initial support for this functionality. I've adjusted my previous comments to this behavior - let tailscale handle updating users correctly about required or missing CLI arguments and save this role from having to make any opinionated decisions on that front. Previously, all stdout/stderr was hidden from users by default because the authkey would be printed. Now stdout/stderr will be printed to users of the role and the authkey will be safely redacted by default.


chore(build): simplify html build

@EisenbergEffect I fixed the merge conflicts, should be good now.

Thanks!


SSL enabled AWS-cluster connection failing.

I tried connecting with a SSL enabled elastic-cache cluster using spring-data-redis lib for lettuce. But the connection is failing as RedisHealthIndicator is complaining.
Getting the following exception.
2020-02-07 18:48:44.885   WARN [campaigns,,,] 6172 --- [nfoReplicator-0] o.s.b.a.redis.RedisHealthIndicator       : Redis health check failed

org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisException: Cannot retrieve initial cluster partitions from initial URIs [RedisURI [host='<cluster-name>', port=6379]]
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1111)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1084)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getClusterConnection(LettuceConnectionFactory.java:363)
	at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getConnection(LettuceConnectionFactory.java:333)

Using the below code for connecting with Cluster.
 if (clusterEnable) {
            log.info("Connecting to ElasticCache cluster");
            String elasticCacheClusterEndpoint = redisProperties.getCluster().getNodes().get(GET_CONFIG_END_POINT);
            List<String> configEndpointNode = Collections.singletonList(elasticCacheClusterEndpoint);
            RedisClusterConfiguration redisClusterConfiguration = new RedisClusterConfiguration(configEndpointNode);
            if(redisProperties.isSsl()) {
                LettuceClientConfiguration lettuceClientConfiguration = LettuceClientConfiguration.builder().useSsl().build();
                return new LettuceConnectionFactory(redisClusterConfiguration, lettuceClientConfiguration);
            }
            return new LettuceConnectionFactory(redisClusterConfiguration);
        }

I am able to connect with cluster without SSL using the same code.

According to the failure, the hostname is empty. I’m not sure how AWS maps cluster names with SSL. Redis itself has no builtin SSL support and in some cases, you need to re-map addresses to SSL-enabled ports.

Note that Lettuce uses CLUSTER NODES to determine which nodes to connect to. You can enable debug/trace logging for the io.lettuce.core.protocol category to view Redis responses.

@mp911de The host name is not empty I have removed the cluster name from the exception. So if you like below is the exact exception. We are using AWS elasticCache, so the cluster is running on the usual port-6379.
I tried with disbalePeerVerivication() also like below but didn't helped.
Any pointer may help. :-)
if(redisProperties.isSsl()) {
LettuceClientConfiguration lettuceClientConfiguration = LettuceClientConfiguration.builder().useSsl().disbalePeerVerivication().build();
return new LettuceConnectionFactory(redisClusterConfiguration, lettuceClientConfiguration);
}
2020-02-07 18:48:44.885   WARN [campaigns,,,] 6172 --- [nfoReplicator-0] o.s.b.a.redis.RedisHealthIndicator       : Redis health check failed
org.springframework.data.redis.RedisConnectionFailureException: Unable to connect to Redis; nested exception is io.lettuce.core.RedisException: Cannot retrieve initial cluster partitions from initial URIs [RedisURI [host='clustercfg.mmp-redis-cluster-tls-dev.be4wyx.usw2.cache.amazonaws.com', port=6379]]
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getNativeConnection(LettuceConnectionFactory.java:1111)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory$SharedConnection.getConnection(LettuceConnectionFactory.java:1084)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getClusterConnection(LettuceConnectionFactory.java:363)
at org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory.getConnection(LettuceConnectionFactory.java:333)

The exception has either a cause or suppressed exceptions. Check these as the reason is listed in there.

May I close this ticket or is there anything else I can assist you with?

Yes you can close the ticket
On Thursday, February 13, 2020, Mark Paluch<EMAIL_ADDRESS>wrote:

May I close this ticket or is there anything else I can assist you with?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/lettuce-io/lettuce-core/issues/1221?email_source=notifications&email_token=AJXSCL5P324NJUN7TDF6EN3RCUBLDA5CNFSM4KRVVTE2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELT37KQ#issuecomment-585613226,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJXSCL5EGU273R7HNOF2PELRCUBLDANCNFSM4KRVVTEQ
.

Can you please help me out, I am facing the same problem. What was the resolution of this issue? @mp911de @surjadutta

If you would like us to spend some time helping you to diagnose the problem, please spend some time describing it and, ideally, providing a minimal sample that reproduces the problem or at least the full stack trace including all suppressed exceptions.

Please let me know if any one has template to connect to Redis Cluster using SSL connection from Java? or if the above SSL issue was solved, please let me know how?


FilterableRequestSpecification.getUri removes duplicate parameters

Hello, I'm having a problem while doing some logging of the requests/responses, where the request is made with multiple query parameters with same name - the uri is logged with only the last parameter.
the code I'm running is:
RequestSpecification request=RestAssured.given().filters(logbackFilter); request.request("GET", "https://sampleWebPage.org/test?filter=value1&filter=value2");
where logbackFilter is defined like this:
public class RequestLogbackFilter implements Filter {     public Response filter(FilterableRequestSpecification filterableRequestSpecification, FilterableResponseSpecification filterableResponseSpecification, FilterContext filterContext) {         String uri = filterableRequestSpecification.getURI();;         System.out.println(uri); ...
my expectation is that the printed uri will be the same as the one used in request, but I got back:
https://sampleWebPage.org/test?filter=value2

private String generateRequestUriForLogging(uri, method) {
    def targetUri
    def allQueryParams = [:]

    if (uri.contains("?")) {
      def uriToUse
      if (isFullyQualified(uri)) {
        uriToUse = uri
      } else {
        uriToUse = getTargetPath(uri)
      }

      targetUri = substringBefore(uriToUse, "?")
      def queryParamsDefinedInPath = substringAfter(uri, "?")

      // Add query parameters defined in path to the allQueryParams map
      if (!isBlank(queryParamsDefinedInPath)) {
        def splittedQueryParams = split(queryParamsDefinedInPath, "&");
        splittedQueryParams.each { queryNameWithPotentialValue ->
          String[] splitted = split(queryNameWithPotentialValue, "=", 2)
          def queryParamHasValueDefined = splitted.size() > 1 || queryNameWithPotentialValue.contains("=")
          if (queryParamHasValueDefined) {
            // Handles the special case where the query param is defined with an empty value
            def value = splitted.size() == 1 ? "" : splitted[1]
            allQueryParams.put(splitted[0], value)
          } else {
            allQueryParams.put(splitted[0], new NoParameterValue());
          }
        }
      }
    } else {
      targetUri = uri
    }

    ....
  }

When allQueryParams.put(splitted[0], value) runs, it will update value to existing key, therefore filter=value1&filter=value2 --> filter=value2. It only happens to URI in logging. Not sure why need this method.

Se use the logs to show the request and response, and in this particular scenario the logs are misleading.

Another point is that since maps are used for requestParameters as well as for queryParameters - i'm not sure if it's possible to send multiple query parameters with the same name using rest assured. This is allowed by HTTP protocol and is used.

I can add a fix to this part, like this
if (!isBlank(queryParamsDefinedInPath)) {
        def values = []
        ...
            values.add(value)
            allQueryParams.put(splitted[0], values)
          ...
      }

But now I can't build RestAssured with lastest commit. I could build the project at some point in the past, before upgrading groovy version 4.0.x

@costea32 By default, Rest-Assured doesn't replace value. It works with MERGE strategy. You can see it it in ParamConfig.java

The bug is not urgent and I would really appreciate it being fixed at some point. I would create a fix but my knowledge of groovy is limited

@costea32 I found one way to workaround it, use param() method instead of set all query params on URI. For example:
RestAssured.filters(new RequestLoggingFilter());
given().param("foo", "bar")
        .param("foo", "now")
        .get("https://postman-echo.com/get");

Log:
Request method:	GET
Request URI:	https://postman-echo.com/get?foo=bar&foo=now
Proxy:		<none>
Request params:	foo=[bar, now]
Query params:	<none>
Form params:	<none>


Update JS onchange event details

onChange should be onChange(oldFlags: ...) and Required no/empty. i didnt realise the function passed the previous flags and had a bug, until it clicked looking at other docs needed to call getflags seperately in fn

Updated


[i18n] Missing space between strings and image in "What's New" dialog

Expected Behaviour: Enaught space between strings and image in "What's New" dialog
Actual Behaviour: Missing space between strings and image in "What's New" dialog
Reproduce Scenario (including but not limited to)
Steps to Reproduce

Install extension
Go to project folder
Open extension action bar
Click on sandwich button > What's New

Platform and Version
Chrome 131.0.6778.86
Sidekick v7.1.2

fix layout so longer text wraps onto a seocnd line
review translations to see if they can be shortened


Interface for hardlink/symlink?

I noticed there is no interface for managing hardlinks and symbolic links. This might be a hard requirement for me. I need to implement a real on-disk filesystem and I would prefer to implement it in pyfilesystem and expose it through FUSE, rather than implement in FUSE and mount here.
Would it be acceptable for me to draft an extension to the base class, with NotSupported default implementation, and FUSE exposing class to make use of it?
If the owner gives a green light, I promise to implement it 100% and test it throughly.
@willmcgugan Please give a go?

See also #79 for an example of where this was discussed previously

Good reference. So this was already debated at least since April...

Nope, it was imported from GoogleCode to GitHub in April ;-)  The bit you want to look at is Original issue reported on code.google.com by<EMAIL_ADDRESS>on 20 Jul 2011 at 12:17 - i.e. over 4 years ago!
I wasn't suggesting that this issue should be closed, more that it's also something else that people have asked for... but I guess there's no reason you can't add your comments to #79 instead.

I dont think this will be ever even considered by the owner. Thats why I closed it.


PR: Commented lines taking into account the indentation of the code

Fixes #2845
Fixes #1785
Edit:
Takes into account some ideas from @bcolsen and @Ericvulpi, thanks for your help in this one :)

A preview:

Lets add a space between the # and the code so it is valid pep8 and ensure that we check if there is a space or not also when de-denting.
So that
# def hello():
    # pass

#def hello():
    #pass

Both work when removing the comment

@bcolsen, what do you think about this one?
@rlaverde, would this help code folding to work correctly when big chunks are commented?

would this help code folding to work correctly when big chunks are commented?

Hmm, this was the original solution, but we can't expect that lines will be always comment out with spyder shortcut, because of that I make code folding ignore commented lines in #4728, they could have an arbitrary indentation and that will break codefolding
Although I really like this change, IMO commented out lines at the first of the line is visually annoying. also other editors comment out lines according identation

I really like this style because it keeps the flow of the code even with comments in the middle.
The code is good at undoing the comments even crazy stuff like this:
# if __name__=="__main__":
#     app = QApplication(sys.argv)
    #btn = Test()
#     btn.show()
#     app.exec_()

However, it is not backwards compatible with the previous block comments, and can break code that has been manually commented out at the beginning of the line.  These can be hard to spot and make whitespace management a difficult chore.
But I think this problem can be fixed.
The code fails on this:
#if __name__=="__main__":
#    app = QApplication(sys.argv)
#    btn = Test()
#    btn.show()
#    app.exec_()

It deletes the spaces in front of the indented section leaving 3 spaces instead of for.
Should be possible to tell whether a space needs to be deleted or not by:

Count the number of spaces
Mod the count by number of spaces set for indents in the file
If mod equals 1 remove the extra space
Else don't remove any spaces

This wouldn't work perfectly for long line continuations, but those won't break your programs like other indents do.

@dalthviz, please try to fix the use case shown by @bcolsen.

Hello @dalthviz! Thanks for updating the PR.

In the file spyder/widgets/sourcecode/codeeditor.py, following are the PEP8 issues :

Line 1813:80: E501 line too long (82 > 79 characters)
Line 1886:23: E127 continuation line over-indented for visual indent
Line 1887:23: E127 continuation line over-indented for visual indent
Line 1888:23: E127 continuation line over-indented for visual indent
Line 1921:17: E129 visually indented line with same indent as next logical line
Line 1939:19: E111 indentation is not a multiple of four
Line 1942:19: E111 indentation is not a multiple of four
Line 1944:19: E111 indentation is not a multiple of four

@dalthviz, great work so far. Please squash all commits referring to Testing and also make sure that this PR also fixes issue #1785.

You can take a look at PR #4720 to see how to do it.

Preview:

@bcolsen, could you help us to manually test this PR and see if it passes all your use cases? Thanks!

@bcolsen, could you help us to manually test this PR and see if it passes all your use cases? Thanks!

Ok I think this might be more than you asked for but I spent a few hours looking at this.  Here are some issues I found.
Issue 1
If I highlight a section right to the beginning of a line, when I press ctrl-1 it adds the last character of the previous line to the active selection.

Issue 2
Comment that added the # and a space at the beginning of a line are not uncommented properly. This would be unlikely to happen except that block comments work this way in this PR.
I know this is pain fully bad, but it could happen.

This is also the default block comments in pycharm:

Issue 3
I will preface this with the fact that I don't really care about compatibility of commenting out large blocks of code with pep8. I don't think that the code style guide would think commenting out chunks of code is a good code style. I mostly use code commenting as a quick way of reusing and testing code to make quick data analysis scripts. I think this my be the most common use of spyder.
tldr; I don't think this code change should make more pep8 problems

Solutions
Solution number here for ease of reference. They do not correspond to the issue numbers.
Solution 1
Drop ctrl-4/5 style block comments from spyder. They are not standard and do the same as ctrl-1 comments. This will make things easier and you can use ctrl-1 to undo legacy block comments except deleting the top and bottom lines(not too bad..it doesn't make broken code)
Solution 2
I think that the block comment style in pycharm makes it easy to see the block of code as opposed to the current indented comments(which pep8 also doesn't like)

Solution 3
I don't know how the current code works for removing spaces but you can check that the line is even or odd after the # is removed. If it's odd remove a space(I haven't seen anyone on the 3-space indent band wagon but they should stop anyways)
Bonus:
Watch pycharm eat my code(it always removes a space. This is incompatible with manual commenting..I think we can do better):

@ccordoba12 @bcolsen this is a preview:

@bcolsen could you test it please? thanks :)

Wow that's great it's much more robust pycharm and I like the look of it. I gave it quite a bit of abuse and it held up nicely.  I like the unblocking of block comments that's slick.
Now onto the bugs ;)
Issue 1
If I highlight the beginning of a line and comment out the section I start loosing selection off the end of the selection.  It looks like the number of characters decreased by twice the number of lines that are highlighted in the selection.
Highlight:

Comment:

Uncomment and Comment again:

Issue 2
You may have noticed in the screen shots above that the comments are not in line with the text this seems to happen when a line is blank. If you have a space in the line it skips it but not if its blank.
Issue 3
if you uncomment a block comment with at commented line light highlighted it completely uncomments the line instead of only removing the block comments.

Issue 4
The new unblocking of the block comments seems incompatible with the old blocks.  I'm not sure how the blocks are detected so I don't know if it's possible.  It would be nice, but not the end of the world either way.

@bcolsen thanks again for the good feedback :+1:, could you test the latest changes? I think this is almost finished :)

Issue 1 and 4 are solved now. :+1:
I'm back on my laptop so I made some gifs of the other two.
Issue 2
The blank lines getting skipped now but they are still counting as smallest indent so the comments are still on the far left.

Issue 3
The comment in block comments are still getting uncommented when I use ctrl-1. If you press undo after you remove the block comments the original comment is restored and undo again to bring back the block comment.

Maybe to resolve these issues we could consider two shortcuts for comment/uncomment code, instead of only one. (i.e Ctrl+1 will always comment code, and Ctrl+Shift+1 will uncomment code )

I was actually thinking the same thing
Crtl-shift-1 is a little awkward but it makes sense

@bcolsen I made some more changes can you test again? :). About the reasons of the issues still there: in the case of the unblockcomment I was not returning in the method and in the case of the indentation level of the comment it was a missing validation.
About the suggestion of @rlaverde (by the way, thanks for the feedback :+1:), thinking beyond the issues that @bcolsen helped to find, you guys think that could be helpful to have a different shortcut to manage the comment/uncomment? What do you think @ccordoba12?

@dalthviz Everything looks great to me here! I couldn't find anything that would I would normally do or end up with that can break. :+1:
As for the ctrl-shift-1 for removing comments:
Keep the current commenting tool the same
I think ctrl-1 is very easy as it is now and should remain the same, removing comments if only all the selected lines are commented. The ctrl-1 code already comments mixed commented and uncommented code. I can't think of a time I would want to double or triple comment something that is already commented out.
Add an option for just uncommenting
I have had times when I wanted to uncomment a whole section that had mixed commented and uncommented code.  A ctrl-shift-1 uncomment could be very handy in these situations.
For example, pressing ctrl-shift-1 twice would completely uncomment this code with only one selection. With the current commenting code this would require three selections and three key presses
# if language.lower() in value:
#     self.supported_language = True
#     # sh_class, comment_string, CFMatch = self.LANGUAGES[key]
#     # self.comment_string = comment_string
    if key in CELL_LANGUAGES:
        self.supported_cell_language = True
        self.cell_separators = CELL_LANGUAGES[key]
#     if CFMatch is None:
#         self.classfunc_match = None
#     else:
#         self.classfunc_match = CFMatch()

This way we can keep the commenting tool "smart"(or contextual) like it is now about when to comment or uncomment, as well as give the option to take an arbitrary block of code and uncomment all of it.

Thanks a lot @bcolsen for all your help with this :+1:
About the new shortcut for only uncommenting, from that point of view could be interesting, however I think that it could be left for another issue @ccordoba12 @rlaverde what do you guys think?

@bcolsen, thanks a lot for your careful and detailed review! It helped us a lot to improve this!
About adding an option to just uncommenting, it looks like a reasonable idea. Please open a new issue about it, so we can continue our discussion there.

@dalthviz, I left a couple of minor comments, then I'll merge ;-)


Add pagination

This plugin is really great! However is would be very useful if we could have pagination in the view. So we can not only limit it to, for example, the fists ten items, but also be able to click the button and see the next ten, and then the next ten, etc. It would help a lot with the big amounts of data.

Sure,  it was one the next steps :-) Thank you very much for trying it out.

Done in 1.0.10


WIP: Change bitmap loader

Not ready for review yet, opening to track a bit easier

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: kusma:x: eeue56You have signed the CLA already but the status is still pending? Let us recheck it.

Closing as old. I don't see a particular issue this was addressing, so no issue has been created.


Fixing login error

There are some errors when the user profile does not include name or location.
This allows the user to have nil fields in github.

I've also changed the dependency for Tiddle to the real gem, as we are not updating it yet locally.


Fix/array field validation

This PR closes #662
Any Array Field helper method now also runs the onChange validation of the Form and the field.
Furthermore, there is now a new method to validate a single field on a form.

A couple of questions:

We're now explicitly adding change validation on all methods, is there a reason why we're not adding it only to setFieldValue since all other methods are calling it anyway?
We're now running the validation on all changes which as a side effect sets touch: true on the field.
Does that mean that form.pushFieldValue("name", "", { touch: false }) would still set my field as touched due to the validation?

I did that since I was unsure if validation is a wanted side-effect for the setFieldValue method. But I guess it would make sense to move the change validation there since that effectively is a handleChange method for the form
Oh yes you are right, that should not be the case. For the validateField method I copied the existing validation logic which sets the isTouched to true whenever validation runs. So in that case using form.pushFieldValue("name", "", { touch: false }) would validate and set the isTouched=true either way

I will fix 2, as for 1 I am open to move validation to the setFieldValue if that is wanted

I did that since I was unsure if validation is a wanted side-effect for the setFieldValue method. But I guess it would make sense to move the change validation there since that effectively is a handleChange method for the form

Ok! Just wanted to make sure this was intentional. Let's also wait for more reviews before doing any change here as it might be ok this way.

Oh yes you are right, that should not be the case. For the validateField method I copied the existing validation logic which sets the isTouched to true whenever validation runs. So in that case using form.pushFieldValue("name", "", { touch: false }) would validate and set the isTouched=true either way

I will fix 2, as for 1 I am open to move validation to the setFieldValue if that is wanted

Great, thanks!

How do we want to handle the following case:
We have a form with an onChange validation and do a form.pushFieldValue("name", "", { touch: false }). That should still run the validation on the form, since the form has no touched state for validation correct?

How do we want to handle the following case:
We have a form with an onChange validation and do a form.pushFieldValue("name", "", { touch: false }). That should still run the validation on the form, since the form has no touched state for validation correct?

I see you removed setting touched: true on validation, I think that was correct though. Since validateAllFields also sets touched, the single validation should do it too.
My point was more about pushFieldValue (and the other methods): should we run the validation if you pass { touched: false }?
If the answer is yes, your code is ok (by adding back the part you removed) but if the answer is no, we should also apply this condition to field.setValue since it is always running the validation now.

I see you removed setting touched: true on validation, I think that was correct though. Since validateAllFields also sets touched, the single validation should do it too.

I think it is better that way, because now validation only runs if the fields have been touched either through the { touch: true } option or because they have been touched before.
Having the validation method implicitly setting the touched state feels a bit off to me

My point was more about pushFieldValue (and the other methods): should we run the validation if you pass { touched: false }?

To answer your question, no I don't think validation should run if the field should not be touched (at least the field validation, the form validation should still run)
By keeping the code as it is now I do the same thing as the field.SetValue function, since that first sets the isTouched state depending on the options and then runs validation. If it was touched during that process, the validation will abort early.
This is the same as the array field helpers are doing it now.

I think it is better that way, because now validation only runs if the fields have been touched either through the { touch: true } option or because they have been touched before.
Having the validation method implicitly setting the touched state feels a bit off to me

@gutentag2012 We talked about the {touch: boolean} API among the maintainers because it's kind of confusing. The thing is, it's an API that is supposed to be used internally for testing. Right now this is not obvious at all, but in the future, we're planning to default it to true everywhere and rename it to something else.
I think we should go back to following the example of validateAllFields() for now and set isTouched to true for the validated field. This will also spare us from running the validate() method of the form where validate a field, because a field's validate() method will run the form's validate() function anyways.
So this this.validate('change') will become redundant:
https://github.com/TanStack/form/blob/de8d8aaf70b07492f4362640cffacf658627cbf5/packages/form-core/src/FormApi.ts#L708-L709
because the field's validate() method is called here:
https://github.com/TanStack/form/blob/de8d8aaf70b07492f4362640cffacf658627cbf5/packages/form-core/src/FormApi.ts#L381
and it runs validate() on the form if isTouched is true for the field:
https://github.com/TanStack/form/blob/de8d8aaf70b07492f4362640cffacf658627cbf5/packages/form-core/src/FieldApi.ts#L716-L720
Notes on testing

The tests will need to be updated after this change, see how 👇
Note that if you don't run the form's validate() function explicitly, you'll need to create a field instance and mount it for the new tests, otherwise they'll fail. For example, the "should run onChange validation when pushing an array field's value" test would look like this:
  it("should run onChange validation when pushing an array field's value", () => {
    const form = new FormApi({
      defaultValues: {
        names: ['test'],
      },
      validators: {
        onChange: ({ value }) =>
          value.names.length > 3 ? undefined : 'At least 3 names are required',
      },
    })

    const field = new FieldApi({
      name: 'names',
      form,
    })

    form.mount()
    field.mount()
    form.pushFieldValue('names', 'other')

    expect(form.state.values).toStrictEqual({ names: ['test', 'other'] })
    expect(form.state.errors).toStrictEqual(['At least 3 names are required'])
  })

Oh, I see, that does make sense.
I will make the validateField method then also set the touched state and remove the explicit this.validate("change") for the form.
I think there might be an issue with the validation for the insertFieldValue and the swaptFieldValues and moveFieldValues. I will verify that and fix that if that is the case.

Okay, so there was a bigger issue where nested fields within the arrays where not validated properly and removeFieldValue validating all fields within the form despite that not being necessary.
So I added a new method validateArrayFieldsStartingFrom to validate nested fields within an array starting from a specified index, that is now used in the removeFieldValue and insertFieldValue methods, since they required all shifted fields to revalidate the validation.


Replace usage of QueryGenesisParameters by on that only fetches KES parameters

This PR is a proposal to remove usage of the bulky QueryGenesisParameters query from ouroboros-network, by a new, lighter query, GetKESConfig. As I see it, merging this PR would have the following benefit of reducing the interface between cardano-node and ouroboros-consensus.
The PR that introduces the GetKESConfig query in ouroboros-consensus is https://github.com/input-output-hk/ouroboros-network/pull/4156.
Also, there is probably additional cleaning up to do, e.g., removing parts of Cardano.Api.GenesisParameters. Again, I have postponed doing that until green light.

Closing. See https://github.com/input-output-hk/cardano-node/pull/4551#discussion_r1060910996


adding meetup_button callback handler

I am working on the meetup command and am struggling with it.
Using /meetup command displays the countries as buttons as intended, but clicking the buttons returns a KeyError, because the soundboard_button callback handler is used instead of my meetup_button.
I don't understand why this is the case, because I added an extra CallbackQueryHandler for this command:
meetup_handler = CommandHandler('meetup', meetup_command, run_async=True)
meetup_callback_handler = CallbackQueryHandler(meetup_button)

dispatcher.add_handler(meetup_handler)
dispatcher.add_handler(meetup_callback_handler)

So the soundboard_button() shouldn't be called at all?
Have a look at my master branch to inspect the code.

Closing this, if this is still an issue let me know.


build: Change spellchecking tool and fix spelling mistakes

Fixes #7693

Sorry I didn't finish reviewing.  Thanks, @avelad, for reviewing so this could get merged, and thanks @tykus160 for all the hard work in correcting so many mistakes.


OpenSSL 3.0.7: Unable to set ivlen >12 via params field of EVP_EncryptInit_ex2 for AES-GCM

I work on an application that has used a wide variety of cryptographic libraries on an absurd number of different platforms over the years and uses automation including cryptographic test vectors to ensure parity across different libraries and platforms.
Our AES-GCM support has successfully used the legacy three-call pattern with vectors from IEEE P1619.1 and http://csrc.nist.gov/groups/STM/cavp/ with IV lengths of 1, 12, 16, 17, and 128 bytes.
New, fetch (fips provider), and error handling removed for clarity:
EVP_EncryptInit_ex (ctx, cipher, NULL, NULL, NULL);
EVP_CIPHER_CTX_set_params (ctx, params); /* Set IV length */
EVP_EncryptInit_ex (ctx, NULL, NULL, key, iv);

I recently noticed that EVP_EncryptInit_ex had been deprecated while making an unrelated change and started working on upgrading from ex to ex2. The documentation for EVP_EncryptInit_ex2 states that "The parameters params will be set on the context after initialisation.", implying that one could collapse the three calls above into a single call:
EVP_EncryptInit_ex2 (ctx, cipher, key, iv, params);
This approach works for the test vectors with 1 and 12 byte IVs but fails for the test vectors with 16, 17, and 128 byte IVs, apparently because the IV length is extracted from the context before the parameters are actually set on the context:
evp_enc.c line 218:
        return ctx->cipher->einit(ctx->algctx,
                                  key,
                                  key == NULL ? 0
                                              : EVP_CIPHER_CTX_get_key_length(ctx),
                                  iv,
                                  iv == NULL ? 0
                                             : EVP_CIPHER_CTX_get_iv_length(ctx),
                                  params);

Either the documentation should be corrected to state that the key length and IV length are extracted from the context before the params are applied, or the params should be applied after the context is initialized and before the call to EVP_CIPHER_CTX_get_iv_length().
On a related note, the "AEAD Interface" section of https://www.openssl.org/docs/man3.0/man3/EVP_CIPHER_CTX_new.html still shows the deprecated EVP_CIPHER_CTX_ctrl calls, forcing callers who wish to follow the new patterns to bounce between the "AEAD Interface", "Controls", and "Parameters" sections of that page, plus https://www.openssl.org/docs/man3.0/man3/OSSL_PARAM.html and https://www.openssl.org/docs/man3.0/man3/OSSL_PARAM_int.html.  A simple example of the new calling patterns for AES in AEAD mode in https://www.openssl.org/docs/man3.0/man3/EVP_CIPHER_CTX_new.html would make the upgrade process much easier and less error prone.
Thanks!

You could collapse the first two calls at least?
If so, I would make it just a documentation issue.

Please also note that EVP_EncryptInit_ex is NOT deprecated. The ex2 function is just a convenient (but perhaps not so convenient given the limitations from above) shortcut.

The documentation looks correct to me..
By collapsing the code you changed the order of the calls.
The documentation says that it runs the params last. With the 3 calls case it runs the params in the middle.
Setting the ivlen after the iv has already been set will not work.
Internally it does not cache everything, so the order does matter.


Add Generate map button in replay card for generated map

The new generate map button for lobbies is very nice. Would be amazing to also have this option when browsing through replays.

Unfortunately there is no way to know if a replay is a generated map or not from the replay metadata. Right now though it is set that if you download more info about the replay and it turns out to be a generated map the map will be generated.

Is there a reason to wait with downloading the replay info until the user requests it?

Mainly just to conserve bandwidth and not make unnecessary requests. Since most people don't care about downloading every replay. As the replay info is read from the replay itself.


Add javadoc to public methods/interfaces in the core OpenTracing API

I'm no fan of such enforcement.
I've seen first hand across multiple teams with various experience that going from enforced apidocs on every class and method to aiming for a little  apidoc as possible actually produces better code.
Try to write code that's so obvious that comments are superfluous.
Do this with meaningful class, method, and field names.
Do this but having small methods. Even pull out a few statements into a separate method so that with the new method name you have a placeholder for descriptive text, instead of adding a comment.
Such a practice does rely on peer review to include pointing out anything that is unclear and needs to be better described (or referenced back to specifications).
This creates comments where others, not the author, deem necessary.
So the author tries to write code that is simple and intuitive enough, through the use of the code's structure and nomenclature, that comments are reduced to a bare minimum. At the same time the author always accepts the request to add comments where reviewers find them warranted.
This is not something that I previously believed in but seeing the significantly increase in code quality, from average to experienced developers, and the constructive discussions it introduces into the peer review process, was so astounding that I changed my mind and have never looked back.

@michaelsembwever I see and agree with your point for code in large systems (e.g., Cassandra), but for a very thin facade API like OpenTracing I'd say it's worth maintaining excellent javadoc for the top (-api) layer, which is what I'm referring to here. Honestly, this is like an hour of work max, probably rarely to be revisited or repeated given the eventual stability of this API. Sound better this way?

A more accurate title would help then :-)
Everything that implements the specification, for example, warrants documentation.

@michaelsembwever

A more accurate title would help then :-)

Mea culpa! I tried to fix this just now...

Spring cleaning here: the current API is well documented, so I'm closing this. Feel free to reopen or create a new issue if there is further debate of the level/type of documentation.


How to specify a customer classifier on tj.see or tj.recognizeObjectsInPhoto

I've trained a custom classifier in my watson visual recognition service, but am not sure the best way to have my tjbot code pick up this classifier when using tj.see or tj.recognizeObjectsInPhoto. Either of those are using the "generic" classifiers and not the custom model i have training in my visual recognition service.
Any help, tips?

Good question. I just pushed a change to the dev branch adding support for this. Would you be able to test it to see if it works for you?  I'm not able to test this out right now.  Thanks.

Thanks, Justin. I will test it eventually, but at the moment I've worked around this by simply calling the visual recognition service directly in my code and not using the tjbot library.

That's fair. It's a tradeoff for us about how much Watson functionality we want to expose vs. how much of its complexity we want to hide. Last thing we want to do is re-implement the whole Watson SDK… but at least we can make some things simpler than they currently are.


[BUG] Can't resolve antd dependencies

Describe the bug
I am getting the following errors when using refine with antd:
- wait compiling /[...catchAll] (client and server)...
- error ./node_modules/@refinedev/antd/dist/esm/index.js:1:17980
Module not found: Can't resolve 'antd/es/ConfigProvider'

Steps To Reproduce
Run Refine app and import an AntD package in any page.
Expected behavior
App builds without issues.
Screenshot

Desktop
"@refinedev/antd": "^5.28.0",
"@refinedev/cli": "^2.7.2",
"@refinedev/core": "^4.26.4",

Seems this is the possible cause: https://github.com/ant-design/ant-design/issues/43362

We'll be watching the progress on this issue on both ant design and next.js side. For now, the issue is not related with refine and we'll re-open if the solutions have any side effects on our codebase. 🙏


Keras NLU

Hello everyone, Will the keras library supports NLU?

Nothing prevents you from using keras to make NLU. See https://github.com/keras-team/keras/blob/master/examples/babi_memnn.py


 This happened when I edited the name of a LES 261. I clicked 'save' and then 'save all'. It saved correctly, but as I went to he show page, it showed:

Assigned @grdw

This error was caused by old heat pump profiles which were still in use by older testing grounds. As it hasn't been triggered in over a week, I think it's safe to close.

:+1:


Wrong environment variable for revert-reason-enabled in docs

Description
In the docs, the revert-reason-enabled option has  REVERT_REASON_ENABLED as the equivalent environment variable, but it should be BESU_REVERT_REASON_ENABLED

Thanks for raising @jlcs-es.  I'm moving this issue the besu-docs repo and we'll get it fixed.

Issue moved to hyperledger/besu-docs #335 via ZenHub


some problem with dwGameTypes_mapName

"matchmaking.dll": {
"dwGameTypes_mapName": 288}
for some reason - wrong offset
i cant read mapname past 2 updates

Seems it's now at 0x120 ] 0x4. Maybe best to just read it from global vars + 0x1B8.

Thanks!