Integration Test - Release - 2019/02/15 23:29:43

Auto create for integration test. IssueCommandFlow

#pri1

Just type '#backlog'

#pri2

#backlog

#please-close

The feedback you logged for Integration Test - Release - 2019/02/15 23:29:43 has been in our backlog for 90 days. While we try to respond individually to as many feedback items as possible, we are not able to respond to all of them. Since this item has been in the backlog for 90 days, we’re closing it.
For more information about the process by which we handle documentation feedback, see "How we respond to Azure technical documentation feedback" in our public contributor guide.

The feedback you logged for Integration Test - Release - 2019/02/15 23:29:43 has been in our backlog for 90 days. While we try to respond individually to as many feedback items as possible, we are not able to respond to all of them. Since this item has been in the backlog for 90 days, we’re closing it.
For more information about the process by which we handle documentation feedback, see "How we respond to Azure technical documentation feedback" in our public contributor guide.


feat: add endpoint to create many templates at once.

Thank you for contributing to Retraced!
Please add a summary of your change
Adds a new endpoint that expects the following object:
{
    templates: TemplateValues[]
}

will create many templates to the same project and environment at once.
Does your change fix a particular issue?
Not an issue. Will be used by my cal.com integration to setup a list of default templates for all events that cal.com will report.

@ukrocks007 Your suggestion to use bulk convention sounds good, @oliverqx you can ignore my earlier comments.


stock BF.B and BRK.B can NOT be get from yahoo

simply does not work. empty data

try using a '-' as opposed to the '.' before ether B character (i.e. BF-B and BRK-B). Some providers use a '.' others use a '-' and yet others may use '/' or nothing at all.

Thanks a lot. I found out the issue.
On Mon, Oct 16, 2017 at 1:05 AM, Rajeev Jain<EMAIL_ADDRESS>wrote:

try using a '-' as opposed to the '.' before ether B character (i.e. BF-B
and BRK-B). Some providers use a '.' others use a '-' and yet others may
use '/' or nothing at all.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ranaroussi/fix-yahoo-finance/issues/38#issuecomment-336748657,
or mute the thread
https://github.com/notifications/unsubscribe-auth/Ae25L2i3AkCdA7VltLhyp4N0n9GluMeFks5sso-ggaJpZM4P56f_
.


Specify default timeout in application config

This allows users to override the default for an entire application.

Great idea! Thanks!

Awesome! After using the library some more, I feel like this would be useful for other defaults as well (headers, ib_options, and follow_redirects). Would you like a pull request implementing app config defaults for some/all of those?

Not sure about headers (there's an overridable process_request_headers function already) but yeah, adding this to follow_redirects seems fine.
ib_options? Hmm… I don't know when a default value for that makes sense.

For headers, I can imagine it being nice to set a default e.g. User-Agent without having to create a new module to override process_request_headers.
For ibrowse options, I think your README actually has a pretty good use case for it: setting a proxy.

Fine. I guess that's reasonable. But you'd want to merge the defaults in, otherwise e.g. passing a different header only would erase the user-agent completely.


Typescript: Issue with type assigned to data

Bug report
Description / Observed Behavior
Not sure if I'm missing anything, but the type of data returned from the useSWR hook seems incorrect. Take below example:

I provide TestData type, and the type assigned to the data in response is TestData. But on initial load, until a response is available, the value of data will be null. So shouldn't the type assigned to data be TestData | null ?
Thanks in advance

Ah I was looking at the wrong tsconfig.json, the strict option was disabled..
The types are correct!


1.5.4 installed via amd64 .deb fails to run on Debian buster

Running from a terminal window reveals why:
"[16268:0203/212859.867721:FATAL:setuid_sandbox_host.cc(157)] The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that /opt/yakyak/chrome-sandbox is owned by root and has mode 4755."
-rwxr-xr-x 1 root root 5581136 Jan 22 15:25 /opt/yakyak/chrome-sandbox
Why do we require a suid-root sandbox to run yakyak 1.5.4 now?  What changed here?

From our part nothing.
This should be a change from an update to electron (or for our deb package fpm)
Probably electron: https://github.com/electron/electron/search?q=suid&type=Issues

Wouldn't that be an issue to fix in the yakyak deb, then, given that electron is installed with yakyak?
Even so, I'm finding myself slightly skeeved out by electron requiring root.

Please check the code itself, but as far as I know there is no requirement of any root command for yakyak
Seems it's for this: https://blog.chromium.org/2008/10/new-approach-to-browser-security-google.html
Maybe we should use a electron-specific packager for debian and rpm such as https://github.com/electron-userland/electron-installer-debian

I was able to use chrome-sandbox from the chromium-sandbox package like this:
sudo dpkg-divert --divert /opt/yakyak/chrome-sandbox.disabled --rename /opt/yakyak/chrome-sandbox
sudo dpkg -i yakyak-1.5.5-linux-amd64.deb
sudo ln -s /usr/lib/chromium/chrome-sandbox /opt/yakyak/

As the error suggests, this fixed the issue for me:
sudo chmod 4755 /opt/yakyak/chrome-sandbox

Thanks, everyone.  Yes, setting chrome-sandbox u+s works, but the original question was two parts (I apologize for not making this clear when I originally asked!): A. why is this necessary and B. why isn't the yakyak package setting appropriate permissions, as this now appears to be a requirement?
The first part of the question was answered in https://github.com/yakyak/yakyak/issues/1119#issuecomment-585371864 (thanks @averissimo !), but the second part remains unresolved - installing the 1.5.7 deb resulted in the same issue, so the package is still not setting correct perms on the chrome-sandbox binary, leaving it up to the user to do by hand.
Alternatively, as @rvandegrift suggests in https://github.com/yakyak/yakyak/issues/1119#issuecomment-593615919, we can add the chromium-sandbox package as a dependency to yakyak, and not have to include a separate sandbox binary.  Either of these should fix this issue, though I think I'd prefer to see yakyak use the existing package, rather than packaging it's own suid-root binary.

Using a deb-specific packager now.
This shouldn't be an issue anymore. v1.5.10-beta deb uses a different method to package it. (it should be available 20minutes from this comment)


Renaming folder containing project from csproj name breaks compilation

Describe the bug
If the blazor folder is renamed to something not matching the project name, strange compilation errors come up.
To Reproduce
Steps to reproduce the behavior:

Create new Blazor solution
Build, it works.
Close solution, rename folder csproj is in to something (e.g. web)
Open sln, remove existing project and relink to new location.
Clean and rebuild.
Errors

1>obj\Debug\netstandard2.0\RazorDeclaration\App.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\_ViewImports.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Shared\MainLayout.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Shared\NavMenu.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Shared\SurveyPrompt.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\Counter.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\FetchData.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\Index.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\_ViewImports.cshtml.g.cs(22,30,22,36): error CS0234: The type or namespace name 'Shared' does not exist in the namespace 'RenameBlazorFolder' (are you missing an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\Counter.cshtml.g.cs(23,69,23,79): error CS0246: The type or namespace name 'MainLayout' could not be found (are you missing a using directive or an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\FetchData.cshtml.g.cs(23,69,23,79): error CS0246: The type or namespace name 'MainLayout' could not be found (are you missing a using directive or an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\Index.cshtml.g.cs(23,69,23,79): error CS0246: The type or namespace name 'MainLayout' could not be found (are you missing a using directive or an assembly reference?)
1>obj\Debug\netstandard2.0\RazorDeclaration\Pages\_ViewImports.cshtml.g.cs(23,69,23,79): error CS0246: The type or namespace name 'MainLayout' could not be found (are you missing a using directive or an assembly reference?)

Full Build Log: https://gist.github.com/chamons/f144aaa161636e09fdf5963dc3b46950
I've attached example projects here.
BeforeMove.zip
AfterMove.zip
Expected behavior
The folder containing the csproj should not affect compilation by being named differently.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.
Include the output of dotnet --info
dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.0.100-preview3-010431
 Commit:    d72abce213

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.0.100-preview3-010431\

Host (useful for support):
  Version: 3.0.0-preview3-27503-5
  Commit:  3844df9537

.NET Core SDKs installed:
  2.1.502 [C:\Program Files\dotnet\sdk]
  2.1.602 [C:\Program Files\dotnet\sdk]
  3.0.100-preview3-010431 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.0.0-preview3-19153-02 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.1.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0-preview3-27503-5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.0.0-preview3-27504-2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

Good news, this has been fixed for VS 16.1 preview1 + 3.0.0-preview4 which will be the next release.


WIP: machxo2: Make sure tristates are mapped to active-low enable before

techmapping to machxo2 cells.
It appears I missed the cutoff for 0.11 :D! Oh well...
MachXO2 tristates are active low, which iopadmap does not support directly. My techmap to create active-low tristates runs after ABC has created $luts. The end result is that designs using tristates would have a $not cell that wasn't properly mapped to a LUT4. Since nextpnr can't map $not cells on machxo2, this ends up being a problem creating bitstreams with tristates. These changes fix this problem so that bitstreams with tristates can be generated.
This is a WIP because the arch/machxo2/tribuf.ys test passes without any changes, and still produces a $not gate as output. I wouldn't expect this, but according to tribuf.log:
<IP_ADDRESS>. Extracting gate netlist of module `\tristate' to `<abc-temp-dir>/input.blif'..
Extracted 0 gates and 0 wires to a netlist network with 0 inputs and 0 outputs.
Don't call ABC as there is nothing to map.
Removing temp directory.
Removed 0 unused cells and 4 unused wires.

yosys decides not to call ABC at all, and I don't understand why yosys thinks there is nothing to map. This is what the circuit looks like just before the map_luts label of the synth_machxo2 pass:

And this is what it looks like after ABC has run map_luts:map_cells:

Should yosys be adding a LUT here, or did I do something specifically wrong with mapping to active-low tristates using an intermediate techmap?

Please do not merge this one — we're discussing a better solution

Closed in favor of #3073. If there's any issues I have left, it'll be on the nextpnr-machxo2 (i.e. my) side.


react query dev tools has a black text color in dark mode

Describe the bug
react query dev tools has a black text color in dark mode
Your minimal, reproducible example
aa
Steps to reproduce
aa
Expected behavior
aa
How often does this bug happen?
Every time
Screenshots or Videos

Platform
aa
Tanstack Query adapter
react-query
TanStack Query version
latest
TypeScript version
No response
Additional context
No response

Thank you for filing this issue, but we need more information before looking into this.
Specifically, a minimal, standalone, runnable reproduction is needed - preferably with codesandbox or stackblitz. If your issue is TypeScript related, prefer a TypeScript playground.
We'll close this issue for now, but we'll certainly re-open it if there is a proper reproduction.


Add validation of the changelog

It would be nice to have some basic validation of the changelog to ensure developers are incrementing the version in accordance with Semantic Versioning standards and Keep a Changelog formatting.
Proposed Validation Rules:

The version is a valid semantic version.
The versions are sorted in reverse chronological order.
That each specified section (Added, Changed, Removed, etc) actually has changes listed underneath them.
Enforce that only specified types are allowed for changes between versions.

Major releases allow sections for added, removed, changed, deprecated, fixed, and security
Minor releases allow sections for added (non-breaking), changed (non-breaking), deprecated, fixed, and security
Patch and below releases allow sections for fixed, and security

Adding an input param such as validation_depth would allow users to configure how much, if any, of their changelog they would like to have validated. Setting a depth to 0 would, in sense, disable validation. This would be a helpful setting in case the codebase maybe had a change log that didn't follow standards when it was started.

This is a great idea but I can't see it implemented in this project (or we'll need to talk more about it). As I started to explain it in https://github.com/mindsers/changelog-reader-action/pull/17#discussion_r475318851 and in the README.md:

This action only work if your CHANGELOG.md file follows the Keep a Changelog standard for now.

My point is: this action is only a CHANGELOG reader and I don't know if altering the CHANGELOG.md data or enforcing specific format/standard is relevant. But I could definitely by another action that works with this one.
I'm open to discussion though 😉

I feel it is very relevant in this action. Since the entire action is geared around only working if you follow the Keep a Changelog standard, I feel that having validation to enforce those standards is a must have.  The validation logic could also help some developers keep their versioning practices follow in line with how semantic versioning requires them to be. What good is a Changelog reader if the changelog it wants to read is invalid?

I think the validation step should appear way before in the developer workflow. Using this action means you already wrote the CHANGELOG.md (in a great or bad way), pushed it and even tagged it.
So, having the reader failing because it wants to tell your CHANGELOG is not valid at this time could be really frustrating I guess. You're not writing your CHANGELOG anymore at the time in the process.
In comparison, having an validator failing because your CHANGELOG.md is not valid when you push code on a PR (your feature branch) is really useful!

That being said, someone could use this action in other places in the dev workflow.
I mean, we could use it as a check for PRs to only validate the content of the changelog before merging the code but not actually getting the content. But in that case most of the rules don't apply because changes are added to the "Unreleased" section (no semver).
We could also use it to validate changelog on master but it won't prevent tagging  or publishing since the code is already on master.. 😞

So I think it could be useful in some cases but as an option but not as a default behavior.

I'm thinking along the same lines. I can see this action being used in multiple places. I can make the default behavior not do any validation if that is what you'd like.

@mindsers have you had any other thoughts on this enhancement? Do you want to have this in your action here or should this be a separate action?

@aroemen We'll add it to the action but I need to read a bit more the related PR 😉

@all-contributors please add @aroemen for idea


ability to exclude tests by name at runtime

There are the run and runlist commandline arguments that can be used to specify what tests to include, but it would be nice to have a norun argument (or a syntax in the case of runlist, like a '-' prefix) that can be used to indicate tests to exclude at runtime.

You can exclude by using categories, but it shouldn't be too hard to modify run/runlist to accept a '-' prefix - TNameFilter.Match would be the place to look at for that. Unfortunately I don't have time to work on this right now but will accept a pull request with this.


Incorrect conditional of user vs assistant when creating history.

Followed your example and it worked great, but noticed that the assistant treated me like its assistant xD.
https://github.com/Me163/rusty_llama/blob/6bd996fe3fc9ae5954e2bd2e083260e6c77f25e0/src/api.rs#L29

Saw this too, quite a funny mistake

thanks for catching this! indeed a pretty funny bug - I actually never noticed the model treating me like an assistant in my testing - very strange


difflib uses each() which is deprecated in php 7.2

Affected Version
SilverStripe 4.1 on php 7.2
Description
I tried comparing two versions in the History tab in Dev-mode. I got a 500 error because php outputs a Deprecation warning.
Steps to Reproduce
Run SilverStripe 4.x on a machine with php 7.2, run in dev mode, and try comparing two history versions.
It is caused by /thirdparty/difflib which uses the deprecated each function. I guess it should be updated, replaced or patched. I can patch it just for this issue, if that is a good enough solution?

Just had a quick look. This file appears to be only used directly by SilverStripe\View\Parsers\Diff via a require_once statement.
It's been copied over from a project called PhpWiki which was hosted on SourceForge. It appears to have been abandoned since 2015.
The way we are using right now is dodgy. I think we should switch to an alternative. If we can't find one, we should rewrite the logic and fold it back into our own codebase properly.
We can quickly rewrite the existing file so it works with PHP7.2, but I think it would be better to take this opportunity to redo it properly.
We'll have the same problem in core/Diff.php in SS3 framework who is also using this old class. So if we want SS3 to work on PHP7.2, we'll need to fix it there as well.


Package layout is confusing and over complicated

The design of the project has a folder structure like <tool-type>/tools and <tool-type>/tests and there's no good place for common utils and so on.
I think it would be better just to have something like tools/monitoring and tools/data and tools/utils.py and so on. So that tools/tests could exist where there are tests for everything.
Anyhow, a better structure would be nice.

@alexgleith thank you for your suggestion, I'll be working on that soon.

Oh, this has been done without review. Got it.


[BUG]The operator installed on the console is in UpgradePending status

Can you provide more details about your setup (crc version, OS, ...) and about the steps you took before having this issue?

General information

OS: Linux
Did you run crc setup before starting it (Yes/No)? Yes

CRC version
CodeReady Containers version: 1.31.2+19538dab
OpenShift version: 4.8.4 (embedded in executable)

CRC status
DEBU CodeReady Containers version: 1.31.2+19538dab
DEBU OpenShift version: 4.8.4 (embedded in executable)
DEBU Running 'crc status'
DEBU Checking file: /home/casa/.crc/machines/crc/.crc-exist
DEBU Checking file: /home/casa/.crc/machines/crc/.crc-exist
DEBU Found binary path at /home/casa/.crc/bin/crc-driver-libvirt
DEBU Launching plugin server for driver libvirt
DEBU Plugin server listening at address <IP_ADDRESS>:44949
DEBU () Calling .GetVersion
DEBU Using API Version 1
DEBU () Calling .SetConfigRaw
DEBU () Calling .GetMachineName
DEBU (crc) Calling .GetState
DEBU (crc) DBG | time="2021-09-15T04:03:52-04:00" level=debug msg="Getting current state..."
DEBU (crc) DBG | time="2021-09-15T04:03:52-04:00" level=debug msg="Fetching VM..."
DEBU (crc) Calling .GetBundleName
DEBU (crc) Calling .GetIP
DEBU (crc) DBG | time="2021-09-15T04:03:53-04:00" level=debug msg="GetIP called for crc"
DEBU (crc) DBG | time="2021-09-15T04:03:53-04:00" level=debug msg="Getting current state..."
DEBU (crc) DBG | time="2021-09-15T04:03:53-04:00" level=debug msg="IP address: <IP_ADDRESS>"
DEBU Running SSH command: df -B1 --output=size,used,target /sysroot | tail -1
DEBU Using ssh private keys: [/home/casa/.crc/machines/crc/id_ecdsa /home/casa/.crc/cache/crc_libvirt_4.8.4/id_ecdsa_crc]
DEBU SSH command results: err: <nil>, output:<PHONE_NUMBER>72<PHONE_NUMBER>0 /sysroot
DEBU Making call to close driver server
DEBU (crc) Calling .Close
DEBU Successfully made call to close driver server
DEBU Making call to close connection to plugin binary
CRC VM:          Running
OpenShift:       Running (v4.8.4)
Disk Usage:      15.8GB of 106.8GB (Inside the CRC VM)
Cache Usage:     33.42GB
Cache Directory: /home/casa/.crc/cache

CRC config
- consent-telemetry                     : no
- cpus                                  : 32
- disk-size                             : 100
- memory                                : 61440

Host Operating System
NAME="Red Hat Enterprise Linux"
VERSION="8.1 (Ootpa)"
ID="rhel"
ID_LIKE="fedora"
VERSION_ID="8.1"
PLATFORM_ID="platform:el8"
PRETTY_NAME="Red Hat Enterprise Linux 8.1 (Ootpa)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:redhat:enterprise_linux:8.1:GA"
HOME_URL="https://www.redhat.com/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"

REDHAT_BUGZILLA_PRODUCT="Red Hat Enterprise Linux 8"
REDHAT_BUGZILLA_PRODUCT_VERSION=8.1
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="8.1"

Steps to reproduce

oc login -u kubeadmin
crc console
go to the console to install cluster-logging operator

Expected
Red Hat Openshift Logging operator was successfully installed
Actual
Failed to install Red Hat Openshift Logging operator.

@cfergeau


[AP-2609] Update pm2 dependency

This should be tested alongside the app repo PR (https://github.com/docnetwork/app/pull/7940). The app repo's package.json points to a specific commit from this branch, so it shouldn't matter which PR is merged first.
There isn't much testing you can do in this repo. Just make sure that unit tests still pass when running npm test. Note: You can't run npm test while PM2 is running.

Already tested in the other PR, but:

[x] Unit tests are passing
[x] pm2 is working fine

Prod app is already pointing at the latest commit from this branch (d8dec7365edfe1d1148456dd408009fbe1024794), so I'm just going to merge this.


security, server: Implement SAN-based client certificate verification

What problem does this PR solve?
Problem Summary:
Currently, TiKV supports cert-allowed-cn for application-layer validation of connecting peers for both the gRPC server and HTTP status server by common name. There does not currently exist support for peer validation on any other X509 certificate fields.
Additional context: https://pingcap.slack.com/archives/C01AXTD2EHJ/p1635350511014300
What is changed and how it works?
What's Changed:
This change adds a new configuration field cert-allowed-san which allows the specification of X509 subject alternative names (both DNS names and URI names, to support standards like SPIFFE) against which to validate client certificates. It is implemented as an additional RPC checker routine for the gRPC code path, and as another logic branch in the check_cert routine for the status server.
Note that the change proposal allows CN and SAN checks to operate simultaneously.
Related changes

PR to update pingcap/docs/pingcap/docs-cn: Will create a PR to update TiKV configuration file documentation after getting some feedback on whether we should proceed with this change.
PR to update pingcap/tidb-ansible:
Need to cherry-pick to the release branch

Check List
Tests
Manual test:
Provision two certificates signed by ca.pem

foo.pem with URI spiffe://example.com/workload
bar.pem with URI spiffe://example.com/invalid

Populate configuration as follows:
[security]
ca-path = "/path/to/ca.pem"
cert-path = "/path/to/cert.pem"
key-path = "/path/to/key.pem"
cert-allowed-san = ["spiffe://example.com/workload", "spiffe://example.com/unrelated"]

Run TiKV.
Attempt connection from a TiDB process with foo.pem: TiDB starts successfully and select tidb_version(); completes successfully.
Attempt connection from a TiDB process with bar.pem: observe in TiDB logs:
...
{"level":"INFO","time":"2021/10/27 20:34:41.075 +00:00","caller":"client_batch.go:583","message":"batchRecvLoop fails when receiving, needs to reconnect","target":"scrubbed-hostname:20160","forwardedHost":"","error":"rpc error: code = Unauthenticated desc = subject alternative name check fail, reason: no matching x509_subject_alternative_name or doesn't exist, cert_allowed_san: {\"spiffe://example.com/workload\",\"spiffe://example.com/unrelated\"}"}
{"level":"INFO","time":"2021/10/27 20:34:41.075 +00:00","caller":"client_batch.go:547","message":"batchRecvLoop re-create streaming success","target":"scrubbed-hostname:20160","forwardedHost":""}
...

There are no side effects and the change is backwards compatible.
Release note
security, server: Implement SAN-based client certificate verification

Hello, is there any plans to add SAN to TiKV? if this is still valid can we merge it?


Run script after UI quits

This change allows an admin to set an Optional option of --scriptwhenuiquits to run a script after the UMAD UI disappears signaling the machine is now UAMDMed.
I tested this in UMAD with a manual enrollment workflow and a non-UAMDMed machine that had the enrollment profile installed but not approved yet.  Both fired off the script on exit.

this will more than likely need to be rewritten for python3. Please look at that branch.


allow hstore in query! macro

With mytable as CREATE TABLE mytable(f HSTORE) the following query! invocation fails with
error: unsupported type hstore for param #1.
let query = query!(
    "INSERT INTO mytable(f) VALUE ($1);",
    PgHstore::new()
);

I assume that's because https://github.com/launchbadge/sqlx/blob/main/sqlx-postgres/src/type_checking.rs#L10-L213 does not contain PgHstore.

This should be pretty easy if someone wants to try their hand at it.
At its simplest, yes, it would just involve adding it to that list. Also Vec<PgHstore>, &[PgHstore] to support HSTORE[].


remove leading zeroes from q_code (don't align with downstream formats)

we haven't changed our end yet (Andy Howells doing this), so maybe hold off merging for now

LGTM :+1:


Edit machine-learning-overview-of-azure-ml-process.md

Heading levels changed.

Hi @ShawnJackson, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (v-shawja). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, or work for Microsoft Open Technologies, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;

Shawn, please have another look at this. The hierarchies appear deeper, rather than shallower -- it's especially noticeable at the latter part of the article. Content buried in H3s and H4s+ won't be discoverable in the on-page TOC. The latter part of the article is not very discoverable.


Changes that use autoclose break single-repeat (dot repeat)

When a text is inserted or changed and a autocloase pair is inserted during that operation, the operation can no longer be dot repeated with . (:help single-repeat).
For example if I would like to replace the word abc with (xyz) I could move the cursor over the word, then type  ciw(xyz)<ESC> and could then repeat this operation on any other abc by pressing ..
With autoclose.vim enabled I get xyzabc when repeating.

Thanks, it now works as long as I'm on the same line. It still breaks if you enter something like (<CR>abcd, though. But that's probably much harder to fix and also not used that often.


AMBARI-23427 : Metrics Collector stops after starting.

What changes were proposed in this pull request?
Fixed an issue where an empty metric record could bring down metrics collector during UPSERT aggregation. Cleaned up UUID calculation and tests.
How was this patch tested?
Manually tested. mvn clean test on Ambari metrics.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/1571/
Test FAILed.
Test FAILured.


create-config CLI and using config file for beacon CLI

TLDR: Implemented #177, refactored/removed unnecessary imports/added typing for files I came across or directly relating, added tests including testing the required output file flag (assuming functionality of throwing error when -o flag not set which was implied)
I implemented the TOML marshalling and unmarshalling using the library:
"@iarna/toml": "^2.2.3",

Because it was the only one that had the stringifying and parsing functionalities needed and seemed well tested.
I had an issue with the deepmerge library that was used in the project for my specific case. The problem I had was if an empty object (which had a parameter defined and defaulted to be undefined) was deep merged with an object that had that type defined, it would not be merged and instead kept the empty object value.
for example:
db: {
    name: options.db
},

would create (when options.db was undefined):
"db":{}

and when merged with:
"db":{"name":"..."}

would end up being:
"db":{}

And when trying to keep the heirarchy of cli options > config file options > defaults there would be inconsistencies and unintended functionality. Workaround for this was to handle the db.name and eth1.contract.address specifically (because they both came from cli and/or defaults):
interface IConfigFile extends JsonMap{
  db?: {name: string};
  chain?: {chain: string};
  rpc?: {port: string};
  eth1?: {contract?: {address: string}};
}
...
    let parsedConfig: IConfigFile;
    if (options.configFile) {
      let data: Buffer;
      try {
        data = fs.readFileSync(options.configFile);
      } catch {
        throw new CliError(`${options.configFile} could not be parsed.`);
      }
      parsedConfig = parse(data.toString());
    }

    let optionsMap: BeaconNodeCtx = {
      db: {
        name: options.db || parsedConfig ? parsedConfig.db.name : defaults.db.name
      },
...

and deepmerge the rest after. I avoided handling each value specifically and still relying on deepmerge for the others (since all others worked as intended which leads me to believe it is because name was defined for that object but unset).
Currently, the config file only saves the chain, db, rpc port, and eth1 contract address but it can be extended to include any others from the eth1 and p2p object defaults easily (I ignored other variables because the implementations were not final and I personally didn't see the need to have those config saved).
Other notes:

I changed --depositContract abbreviation to -dc to allow config file flag to be -c
Created interfaces for config options to allow the objects to be passed into the action function without destructuring or defaulting to any type
Fixed a few bugs (can elaborate if you want specifics)
Added types where missing
Fixed other linter warnings in directly relating files
Created basic test for if the command line function was added and that it throws the error when output flag is not set

 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.

I had an issue with the deepmerge library that was used in the project for my specific case. The problem I had was if an empty object (which had a parameter defined and defaulted to be undefined) was deep merged with an object that had that type defined, it would not be merged and instead kept the empty object value.

I've already created simple helper to overcome deepmerge wierd behaviors with objects, you can use it like here: https://github.com/ChainSafe/lodestar/blob/master/src/node/index.ts#L55

One last check, do you guys want me to add any other variables to save to this config file, or did I cover all of the ones you would expect?

theres a merge conflict that has to be resolved

Sorry was pretty off grid this weekend, I resolved the conflicts and tested with the merged branch and everything seems to function as intended.


Unexpected color given in StatusBar._updatePropsStack when using PlatformColor for theming

Description
Setting a PlatformColor value as the backgroundColor prop of StatusBar causes an "Unexpected color given in StatusBar._updatePropsStack" error.
Steps to reproduce

Install and run the application on an Android device or emulator which supports Material You theming with npm run android
Notice the background colour was appropriately applied to the View defined in line 27
Uncomment line 25 (StatusBar.backgroundColor)
The app throws an "Unexpected color given in StatusBar._updatePropsStack" error

React Native Version
0.76.5
Affected Platforms
Runtime - Android
Output of npx react-native info
System:
  OS: macOS 15.1.1
  CPU: (8) arm64 Apple M1
  Memory: 121.88 MB / 8.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 23.3.0
    path: /opt/homebrew/bin/node
  Yarn:
    version: 1.22.22
    path: /opt/homebrew/bin/yarn
  npm:
    version: 10.9.0
    path: /opt/homebrew/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods: Not Found
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.2
      - iOS 18.2
      - macOS 15.2
      - tvOS 18.2
      - visionOS 2.2
      - watchOS 11.2
  Android SDK:
    API Levels:
      - "28"
      - "29"
      - "30"
      - "31"
      - "32"
      - "33"
      - "34"
      - "35"
    Build Tools:
      - 28.0.3
      - 29.0.2
      - 30.0.2
      - 30.0.3
      - 31.0.0
      - 33.0.0
      - 34.0.0
      - 35.0.0
    System Images:
      - android-24 | Google APIs ARM 64 v8a
      - android-24 | Google APIs Intel x86 Atom
      - android-24 | Google APIs Intel x86 Atom_64
      - android-29 | Google APIs ARM 64 v8a
      - android-31 | Google Play ARM 64 v8a
      - android-32 | Google Play ARM 64 v8a
      - android-S | Google Play ARM 64 v8a
    Android NDK: Not Found
IDEs:
  Android Studio: 2024.1 AI-241.18034.62.2411.12071903
  Xcode:
    version: 16.2/16C5032a
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.13
    path: /usr/bin/javac
  Ruby:
    version: 2.7.5
    path: /Users/marin/.rvm/rubies/ruby-2.7.5/bin/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.0.1
    wanted: 15.0.1
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.5
    wanted: 0.76.5
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: Not found
  newArchEnabled: false

Stacktrace or Logs
(NOBRIDGE) ERROR  Invariant Violation: Unexpected color given in StatusBar._updatePropsStack

Reproducer
https://github.com/Glavotaner/InvariantStatusBar
Screenshots and Videos
No response

Issue:
For the StatusBar component, it seems that we are currently only accepting integer values for color, and not PlatformColor values from Android.
You can see the relevant code here:
https://github.com/facebook/react-native/blob/85bdd75828f85230aaa90ed510666457c46f996c/packages/react-native/Libraries/Components/StatusBar/StatusBar.js#L450
When a PlatformColor is passed, processedColor becomes an object, which causes an error. This behavior appears to be intentional, but the exact reason for not supporting PlatformColor is unclear.
Proposed Solution:
We can use ColorPropConverter.getColor, which parses PlatformColor values correctly. However, for this solution to work, we would also need to update StatusBarModule to accept these values as valid inputs.
@cortinico , what are your thoughts on this approach?


comments-time-machine-links: Cannot read property 'attributes' of null

When opening some github PR page (it could reproduce for many PR links), below error shows up in the F12 console window. The top frame in below stack is listed as the last line in below code snippet.
❌ Refined GitHub → comments-time-machine-links → TypeError: Cannot read property 'attributes' of null
at init (refined-github.js:5062)
at runFeature (refined-github.js:2116)
at setupPageLoad (refined-github.js:2124)
at refined-github.js:2157
    }), source_features.add("comments-time-machine-links", {
      include: [ hasComments ],
      init: function() {
        const comments = select_dom.all('\n\t\t:not(.js-new-comment-form):not([id^="pullrequestreview"]) > .timeline-comment:not(.rgh-time-machine-links),\n\t\t.review-comment > .previewable-edit:not(.is-pending):not(.rgh-time-machine-links)\n\t');
        for (const comment of comments) {
          const timestamp = select_dom("relative-time", comment).attributes.datetime.value;

Thanks for the report! I believe this will be fixed by https://github.com/sindresorhus/refined-github/pull/3844


Add support for testing aws-hosted-cp

Note: This PR was intentionally created on a repository branch instead of my fork so we can iterate on the e2e testing workflow and then change it to pull_request_target for merge.

Break KubeClient helpers into provider specific file
Finish aws-hosted-cp test and add comments through test to make it easier to understand.
Use GinkgoHelper across e2e tests to simplify error handling, populate hosted vars from AWSCluster.
Move cloud nuke outside of test and into workflow to ensure we always delete resources no matter what.

Closes: #212

Welp, running the tests locally seems to work ok, but GitHub actions consistently encounters: NatGatewaysReconciliationFailed :\

I was able to fix the nuke behavior so we reliably cleanup EIP's now which helps the behavior but concurrent running tests will fail because of the allocation limit.  I just need to figure out #290 and this should be done.  It's definitely ready for review.

Currently failing in Deletion validation and reproducing the VPC dependency violation bug, I'll probably comment those tests out with a fixme because they'll never pass otherwise.

Currently failing in Deletion validation and reproducing the VPC dependency violation bug, I'll probably comment those tests out with a fixme because they'll never pass otherwise.

We already have bug #152 for AWS VPC

Heads up to reviewers:  The tests are failing as they've revealed two issues: #152 and #290.  The testing code itself isn't problematic though.

I've removed the CCM tests for the hosted-cp temporarily so we can test cluster deletions via CI.  I intend to bring them back before merge.

It appears cancelled tests will not run the cleanup resources workflow, which is concerning since we could get into a state where our test gets cancelled by a subsequent PR push and then the AWS resources are never cleaned.  I'll need to look into the best way to handle this case since the if: always() declaration doesn't appear to work in this situation.

It appears cancelled tests will not run the cleanup resources job, which is concerning since we could get into a state where our test gets cancelled by a subsequent PR push and then the AWS resources are never cleaned. I'll need to look into the best way to handle this case since the if: always() declaration doesn't appear to work in this situation.

I think I have an idea of how to fix this, I can make the e2etest job concurrent and then have a cleanup job that runs as always(), we'll see if this works...

I've squash and pushed all of the changes since no one has reviewed this yet.  In summary the squashed commit resolves all of the outstanding issues and fixes the cancellation issue.  We just need @slysunkin 's merge in #229 so I can rebase and that should fix the deletions that are stuck for both hosted and standalone templates ... hopefully
Looking forward to that green checkmark.

I put the other make steps for dev-aws-nuke in the PHONY nooooooo 🤦♂

I pulled @slysunkin 's changes in and CI is running, hopefully things are good 🤞

Last test failed in secret generation, that's a new one.
E0914 20:07:27.884717       1 controller.go:329] "Reconciler error" err="failed to add &Node{ObjectMeta:{      0 0001-01-01 00:00:00 +0000 UTC <nil> <nil> map[] map[] [] [] []},Spec:NodeSpec{PodCIDR:,DoNotUseExternalID:,ProviderID:,Unschedulable:false,Taints:[]Taint{},ConfigSource:nil,PodCIDRs:[],},Status:NodeStatus{Capacity:ResourceList{},Allocatable:ResourceList{},Phase:,Conditions:[]NodeCondition{},Addresses:[]NodeAddress{},DaemonEndpoints:NodeDaemonEndpoints{KubeletEndpoint:DaemonEndpoint{Port:0,},},NodeInfo:NodeSystemInfo{MachineID:,SystemUUID:,BootID:,KernelVersion:,OSImage:,ContainerRuntimeVersion:,KubeletVersion:,KubeProxyVersion:,OperatingSystem:,Architecture:,},Images:[]ContainerImage{},VolumesInUse:[],VolumesAttached:[]AttachedVolume{},Config:nil,},} watch on cluster hmc-system/ci-1726339710-e2e-test-hosted: failed to create cluster accessor: error fetching REST client config for remote cluster \"hmc-system/ci-1726339710-e2e-test-hosted\": failed to retrieve kubeconfig secret for Cluster hmc-system/ci-1726339710-e2e-test-hosted: Secret \"ci-1726339710-e2e-test-hosted-kubeconfig\" not found" controller="machine" controllerGroup="cluster.x-k8s.io" controllerKind="Machine" Machine="hmc-system/ci-1726339710-e2e-test-hosted-md-6dx4q-cnzvf" namespace="hmc-system" name="ci-1726339710-e2e-test-hosted-md-6dx4q-cnzvf" reconcileID="e4dfb466-766a-4267-9c3d-ca3b30e0992d"

Almost there, seeing a failure to delete standalone now with:
I0916 20:53:12.723064       1 cleanup.go:64] "deleting aws resources created by tenant cluster" controller="awscluster" controllerGroup="infrastructure.cluster.x-k8s.io" controllerKind="AWSCluster" AWSCluster="hmc-system/ci-1726517368-e2e-test" namespace="hmc-system" name="ci-1726517368-e2e-test" reconcileID="22e48f35-85e1-4a5c-97d5-7b116922050d" cluster="ci-1726517368-e2e-test"
I0916 20:53:12.723081       1 cleanup.go:97] "get aws resources created by tenant cluster with resource group tagging API" controller="awscluster" controllerGroup="infrastructure.cluster.x-k8s.io" controllerKind="AWSCluster" AWSCluster="hmc-system/ci-1726517368-e2e-test" namespace="hmc-system" name="ci-1726517368-e2e-test" reconcileID="22e48f35-85e1-4a5c-97d5-7b116922050d" cluster="ci-1726517368-e2e-test"
E0916 20:53:13.726802       1 controller.go:329] "Reconciler error" err=<
	error deleting network: failed to detach internet gateway "igw-0b4456b73e77a2f65": DependencyViolation: Network vpc-0829721ee4d5f7b15 has some mapped public address(es). Please unmap those public address(es) before detaching the gateway.

I've commented out the deletion test for standalone for a couple of reasons:

The IGW bug here: https://github.com/Mirantis/hmc/pull/280#issuecomment-2354046567 is intermittent, but even if we get past that we eventually run into issues reconciling the AWSMachine's due to https://github.com/kubernetes-sigs/cluster-api-provider-aws/issues/4120 almost every single time.
We're already testing deleting of an AWS template via our aws-hosted-cp test which covers HMC's involvement in the deletion process relatively well.  We can work in a follow-up once 4120 above is resolved or perhaps work on a workaround in a follow-up.
There's a bunch of e2e test work that would benefit from the changes in this PR and I've worked through a ton of issues to get to a pretty much green result, minus a deletion test with outstanding known bugs.


Bug fix 3.5/fix duplicate actions

Scope & Purpose
Fix duplicate DDL actions from popping up

[x] Bug-Fix for a released version (did you remember to port this to all relevant release branches?)
[x] The behaviour change can only be verified via automatic tests

Testing & Verification
This change is already covered by existing tests, such as all cluster AQL tests.
https://jenkins01.arangodb.biz/view/PR/job/arangodb-matrix-pr/5211/

I messed this up by using wrong branches.


Moving forward

Note that currently, CI depends on the progress branch of python-shader. Although both projects do not depend on each-other, both the CI's do :) The plan to move forward:

[x] Merge https://github.com/almarklein/wgpu-py/pull/71
[x] Perhaps a bit more work on wgpu-py

[x] Improve api coverage #74
[x] Implement indirect drawing #75
[x] Use one API for defining shader inputs #76

[x] Release wgpu-py
[x] Merge https://github.com/almarklein/python-shader/pull/22
[x] Perhaps a bit more work on python-shader

[x] Allow just one API for defining shader inputs https://github.com/almarklein/python-shader/pull/26
[x] More consistent exceptions
[x] More examples and validate them on CI
[x] Docs in readme

[x] Release python-shader
[x] Remove wgpu-py's pip install from git
[ ] More work on wgpu-py

[x] Update to latest wgpu-bin and webgpu #77
[x] Canvas update method #63 #78
[x] Re-evaluate #25
[x] Docs #13 #79 #80
[x] Update readme #80
[x] Update wgpu-bin to wgpu-native v0.5.1
[ ] Update wgpu-py to v0.5.1
[ ] Rework request_adapter and swap chain w.r.t. surface id.
[ ] Have another quick look at #73
[ ] Implement debug markers

[ ] New release of wgpu-py
[ ] Finally get to work on visvis2 🤣

Nice work on the docs! The GUI API page left me a little confused though; where are the calls to request_draw?

Woohoo! :rocket:


[FLINK-31919][core] Only run closure cleaner if serialization fails

Avoid unnecessary reflective accesses by the closure cleaner by only running it on objects/fields for which serialization fails.
In the ideal world this means it is only applied to user lambdas/anonymous classes, never touching any JDK stuff.

Can we have a regression test for this?

I can't think of a way to do that right now.
Once we've set up the Java 17 build this is implicitly checked because this trick allows us to skip various add-opens/exports.


Requires npm install for plugin to work, then alters CSS properties via Browserify

Hey --
I'm having an issue where I npm install ampersand-autocomplete-view but then get an error about how module css-browserify cannot be found. When I go into the ampersand-autocomplete-view directory and npm install it (which I usually don't have to do with other modules), the error goes away but then my CSS gets highjacked by a <style> element placed in my application's header.
Any idea how I can prevent this behavior from happening?

@KayBeSee This is Rongxin from Retsly. Thank you for bringing this up. We are looking into it. Are you integrating with Retsly or this a non-related project?

@KayBeSee this should fix your problem.

I will have to get it approved before publishing to npm
https://github.com/Retsly/ampersand-autocomplete-view/pull/2/files
However, you can try this fix: npm install git://github.com/Retsly/ampersand-autocomplete-view.git#rongxin/css-require in your local github repo.

Fixed with #2, closing this issue.


Potential fix for .Net Framework issues

Issue #14 looks to be caused by the .Net Framework never receiving a backport of this change: Link which as stated here: Link seems to only be in more recent .Net Core runtimes, with no plans of a backport as of late 2020. Structures that use the [MarshalAs()] attribute for return values will compile fine for .Net Standard but when ran on .Net Framework, will likely fail.
I got everything building and running on my end by creating a BoolToSignedByte() Utils method which converts a bool to a 0 or 1 sbyte, removing any attributes in structures with [MarshalAs(UnmanagedType.I1)] and of course changing it's type to an sbyte I'm not 100% if this remains valid on all platforms and hardware, but for C++ afaik despite bools being finicky they tend to be 1byte and the dotnet docs show that attribute describing the value as a 1byte signed integer.
TL;DR More advanced marshaling of structures is likely not available on .Net Framework, a potential workaround is instead to manually convert affected types, so instead of using [MarshalAs(UnmanagedType.I1)] manually convert it's type.

Feel free to request a re-review from me when you're ready for this to be merged by the way :)

I've made all the old marshalled fields private and setup properties to convert data forwards and backwards via another Utils method SignedByteToBool() now.

Looks good to me! Thanks again for the PR 👍
I'll merge this once the CI has finished


Update onelake-shortcuts.md

propose the following change:
"## Limitations and Considerations

The maximum number of shortcuts per Fabric item is 10,000.In this context the term item refers to: apps, lakehouses,  warehouses, reports, and more."

Based on this - https://learn.microsoft.com/en-us/fabric/get-started/fabric-home. for clarification of the doc

https://learn.microsoft.com/en-us/fabric/get-started/fabric-home. Suggesting the clarification of the term Fabric Item inside of limitation, based on the documentation.

@TrevorLOlson
Can you review the proposed changes?
When the changes are ready for publication, add a #sign-off comment to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@LiliamLeme is FTE at Microsoft in Azure CXP, so I think we can accept this change as-is to help prevent support requests.
I fixed some spacing.
#sign-off


⚠ ClamAV has degraded performance

In 0b61688, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 72 ms

Resolved: ClamAV performance has improved in 1f8e8b6.


[maintanance]: v4.16.0 promo release notes

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This PR is included in version 5.0.0-beta.12 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Suppress Operations API Implemenetation Error

Suppresses the  Operations API Implemenetation Linter Error

Automation for azure-sdk-for-python

Automation for azure-sdk-for-node

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-go

@sarangan12 I assume the suppression has been approved?

@sarangan12 also the PR title doesn't match the changes?

@sarangan12 reassigning to you as you're driving the internal conversation.

Automation for azure-sdk-for-java


<EMAIL_ADDRESS>Decompress Error

`PS C:\windows\system32>

scoop install cherrytree
ERROR It looks like a previous installation of 'cherrytree' failed.
ERROR Run 'scoop uninstall cherrytree' before retrying the install.
Nothing to install
PS C:\windows\system32>
scoop uninstall cherrytree
Uninstalling 'cherrytree' ()
'cherrytree' was uninstalled
PS C:\windows\system32>
scoop uninstall cherrytree
Uninstalling 'cherrytree' ()
'cherrytree' was uninstalled
PS C:\windows\system32>
scoop install cherrytree
Installing 'cherrytree' (<IP_ADDRESS>) [64bit] [extras]
WARN  By installing you accept following license: GPL-3.0-or-later (https://spdx.org/licenses/GPL-3.0-or-later.html)
Loading cherrytree_<IP_ADDRESS>_win64_portable.7z from cache.
Checking hash of cherrytree_<IP_ADDRESS>_win64_portable.7z ... ok.
Extracting cherrytree_<IP_ADDRESS>_win64_portable.7z ... ERROR Could not find 'cherrytree_<IP_ADDRESS>_win64_portable in C:\Scoop\apps\cherrytree\<IP_ADDRESS>'! (error 16)

Please try again or create a new issue by using the following link and paste your console output:
https://github.com/ScoopInstaller/Extras/issues/new?title=cherrytree%4<IP_ADDRESS>%3A+Decompress+Error&body=Could+not+find+'cherrytree_<IP_ADDRESS>_win64_portable+in+C%3A\Scoop\apps\cherrytree\<IP_ADDRESS>'!+(error+16)
ERROR This application failed to install: extras/cherrytree`

I've pushed a temorary fix so it should install for now (just run scoop update first). But ideally hopefully they will fix the underlying cause for next release.


Deleted old Dropbox v1 api

Deleted old Dropbox v1 api from XPlat

@newky2k,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla2.dotnetfoundation.org.
It will cover your contributions to all .NET Foundation-managed open source projects.
Thanks,
.NET Foundation Pull Request Bot

@newky2k,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla2.dotnetfoundation.org.
It will cover your contributions to all .NET Foundation-managed open source projects.
Thanks,
.NET Foundation Pull Request Bot

Hi, I am closing and re-opening this PR to bump the CLA bot. Sorry for the inconvenience!

@newky2k,
Thanks for having already signed the Contribution License Agreement. Your agreement was validated by .NET Foundation. We will now review your pull request.
Thanks,
.NET Foundation Pull Request Bot

Old PR not working anymore


enable adding (re)sources directly via command line options

What this PR does / why we need it:
As an alternative to adding resources/sources by specifications in a separate source file now three options can be used
to completely describe a single (re)source via command line options (#144):
--resource/--source/--reference: to describe the meta data
--input: to describe the data used to compose a resource stored locally with the component version
--access: to describe the access specification for referenced artifacts
The data for the meta data is partly fixed, but potentially very complex, therefore it does not seem to be appropriate to describe these attributes by dedicated options. The data for the input and access highly depends on the structure of the used types. The command just uses a dynamic deserialization as part of the currently used specification file and a validation provided by registered implementations. Therefore it is not really possible to find dedicated options for all the possible variants.
Because of this, all three options accept a json/yaml given as string. Only this allows specifying the required arbitrary and potentially deep data structures.
Additionally, there are dedicated options for the meta data, like --name, --version, and --type for (re) sources and --component for references. This allows specifying basic meta data with no labels or extra identities just by command line options. Both variants can be combined: specify required meta data per dedicated value option and the rest optionally via the YAML based option.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
To handle the dynamic nature of the configuration of access method and input specifications required for the artifact composition commands a new type of option handling has been introduced. With OptionTypes, OptionTypeSets and ConfigProviders based on OptionTypes is it possible now for dynamically registered elements to compose options sets and to  validate given option sets and  finally map given values to generic configuration objects.
This feature is then used by the dynamic parts to register appropriate handlers used by the CLI commands.
They now are completely based on this mechanism to handle meta data of the various element types (resources, sources, references) to be added to a component version, and the content offered either by inputs or access specifications.
Additionally, commands based on the same mechanism has been introduced to configure appropriate
element specification source files (resources.yaml, sources.yaml), which can then be used as traditional control files for the (component version) add commands.
Release note:
It is possible now to describe artifacts or references to be added to a component version completely or partly
by options of the add commands without the use of an element description file.
For example:
$ ocm add resources  /tmp/ca --name image --version  v0.1.0 --type ociImage --accessType ociArtefact --reference ghcr.io/mandelsoft/pause:v0.1.0

$ ocm add resources  /tmp/ca --name image --version  v0.1.0 --type ociImage --inputType docker --hint mandelsoft/pause:v0.1.0 --inputPath mandelsoft/pause:v0.1.0

$ ocm add references  /tmp/ca --name testdata --component  github.com/mandelsoft/pause  --version 1.0 --label "*purpose=test"  --label 'label@v1={"local": true}'

Additionally there are commands accepting the same options to compose an element description file usable for the
add commands:
$ ocm add resourceconfig  resources.yaml --name myresource --type PlainText --input '{ "type": "file", "path": "testdata/testcontent", "mediaType": "text/plain" }'

This is a replacement for #154, which was corrupted after setting this repo to pubic.


new command should generate .bsp/scala-cli.json file

Is your feature request related to a problem? Please describe.
When users run the new command, Scala CLI should generate a default .bsp/scala-cli.json file to enable IDE imports to work. This idea is based on the comment - https://github.com/VirtusLab/scala-cli/pull/2202#issuecomment-1597192591.

For the implementation, can't the new command just call https://github.com/VirtusLab/scala-cli/blob/92f069c1439c0431e90f4c3f5666670c43bd8bb4/modules/cli/src/main/scala/scala/cli/commands/setupide/SetupIde.scala#L61 at the end?

For the implementation, can't the new command just call
https://github.com/VirtusLab/scala-cli/blob/92f069c1439c0431e90f4c3f5666670c43bd8bb4/modules/cli/src/main/scala/scala/cli/commands/setupide/SetupIde.scala#L61
at the end?

most other commands, e.g. run, also call SetupIde.runSafe in their implementation, so probably best to follow that

Thank you! I'll try to whip something up.

Hi @zetashift, I think it could be beneficial to add SharedOptions into the new command. This enable users to specify some configs for their project, such as the Scala version:
scala-cli new VirtusLab/scala-cli.g8 -S 2.13


Add support for #[max] and #[min] for string command option types?

Hey there!
It looks like there isn't support for restricting strings to certain lengths with the function parameter macros.
It's fairly similar to min_value and max_value for integers, but uses min_length and max_length (in the Discord API)
See: api docs
Would it be possible to add support for this in the future? I haven't looked at the internals of this library but I can set up a PR for it if you don't have time.

Sure! Would you prefer #[min = ...] and #[max = ...] or #[min_length = ...] and #[max_length = ...]?

min_len and max_len would be the best as the std uses len

Sure! Would you prefer #[min = ...] and #[max = ...] or #[min_length = ...] and #[max_length = ...]?

I think #[max_length = ...] and #[min_length = ...] would make the most sense as it's referring to the bounds of the length attribute (as opposed to #[max = ...] which refers to the actual value)?

@matteopolak Can you test the commit I just pushed?
You need to replace the poise dependency line in Cargo.toml with poise = { git = "https://github.com/serenity-rs/poise" }

Seems to be all working! I tested both of them by themselves and both of them together.

Perfect. Released in 0.5.5


Use alternate deployment and upload plugin json always

This makes two changes:

Upload plugin json file as release asset irrespective of if release is canary or tagged
Use an alternate deployment of bot which makes use of fix deployed proposed in https://github.com/fermyon/spin/pull/2906

requesting review from @bacongobbler


8.0.40 未查询到个人信息

两个数据库文件都已经解密
在run main.go之后报了如下错误
2023/10/11 00:48:39 未查询到个人信息,Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub
2023/10/11 00:48:39 未查询到图片索引表名,Binary was compiled with 'CGO_ENABLED=0', go-sqlite3 requires cgo to work. This is a stub

解决了吗


Playing as the Opponent (No Lua, Full blown Source Code)

What feature do you want to get added on the base engine?
Can you make an Option to play as the Opponent
To test your sight, and reliability, please select the option of what should NOT be requested.
Stage Editor, 6K+ support, and winning icons.

So many people have asked for this and it hasn't happened yet, and I doubt it ever will.

in ClientPrefs, there are what seem to be leftovers from an opponent play gameplay changer modifier, so it may be being worked on, although ive seen this for a while so it's also very likely it isnt coming

What feature do you want to get added on the base engine?
Can you make an Option to play as the Opponent

https://github.com/l1ttleO/ProjectFNF/blob/main/source/PlayState.hx


subject-wise

Have added the UI section. Please review and let me know if any issues are there.

Sharing the screenshot

Since, there are 10+ subjects I'm not sure checkboxes are an option. It must be MultiSelect. Then the challenge will be to place it at a proper position :)

I'll try to do that.

Just to be sure, you are talking about multiselect dropdown list with checkboxes right? @arjunsuresh

Will this work? Let me know

The multi select looks good in style :+1:  Just the font of "Select Subjects" can be made similar to other fonts on the page.
Also, there should be Submit button for form right?

I'll change the font of "Select Subjects". But coming to the submit button, it may look a bit ugly, that's why I made the updation dynamic. Like whenever you check or uncheck a subject, a list of subject IDs is returned(you can check the console). Let me know your thoughts on this. And if there is any scope of improvement or any other thing please let me know  :). @arjunsuresh

have changed the fonts. Is the dark styles ok?


[request] Throttling Control

Definition:

Throttling is to defer operations, where requests can be suspended or curtailed, with an exception generated to inform the consumer that the system is busy and that the operation should be retried later.

Thoughts / Ideas:

Rejecting requests from consumers who have already requested certain endpoints more than n times per x time unit (seconds, minutes, etc ...) over a given period of time.

Disabling or downgrading tiers of offending consumers based on same rules

Defaulting to cache for throttled consumers?

Isn't the rejecting requests from consumers already available via ratelimting plugin?

@tamizhgeek there could be significant difference between a traditional rate limiting behaviour and throttling. there also overlap in certain aspects.
in this case, throttling is dynamic over a range of time, vs. with rate limiting it's a fixed limit to a time unit.
e.g. you can have BOTH rules working together:
rate limiting:
500 req / day
1000 req / month total
each count towards upper limit
primarily used to limit access to data over time.
throttle:
100  req / secons
no upper limits / counting towards rate quotas.
primarily used to slow down requests to avoid server overload
also, since this would be a separate plugin would need it's own logic for rejecting requests...

+1 for a throttling plugin. One of the missing features compared to alternative solutions.

I was searching for a plugging like this. This issue is closed now and I don't see a throttle plugin on the kong website. Are there any alternatives that implement this behaviour?

Kong Enterprise Edition (EE) includes https://docs.konghq.com/enterprise/latest/plugins/rate-limiting-advanced/ plugin which offers a sliding window option. Using a sliding window has the effect of limiting the rate of requests - requests occurring at a consistently excessive rate will be rejected. More details are available here https://docs.konghq.com/enterprise/latest/rate-limiting/ and here https://konghq.com/blog/how-to-design-a-scalable-rate-limiting-algorithm/
Going forward, please move the discussion of features to Kong Nation https://discuss.konghq.com/ - Github Issues are reserved for bug reports. Thanks!


[2452] Fix subject specialism mapping

Context
https://trello.com/c/OfcQm0PB/2452-fix-subject-specialism-mapping
When new subject mappings were added to DTTP, the "Refactor subject specialism mapping logic" PR was updated to reflect this. However, some subject like "Design and technology" which now have its own DTTP ID still need to show all the other subject specialisms.

 Fix subject specialism mapping


fix: count(distinct column_name) in metrics

SUMMARY
The aggregate function count_distinct isn't ANSI SQL. Currently, when the user uses simple metric, the AdhocMetric control will generate a count_distinct(column) for the label. If the user switches to the SQL tab, this label will apply to SQL. It isn't ANSI SQL, so directly use this SQL snippet, the error will appear on many databases.
This PR transform count distinct metric from count_distinct(column) to count(distinct column), but does not change the original metric label(verbose name).
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

After
https://user-images.githubusercontent.com/2016594/165227389-3aede361-7216-439f-a261-211f5711f553.mov
TESTING INSTRUCTIONS

select birth_name dataset.
select count_distinct as AGGREGATE, and num as COLUMN in metric popover.
query
open count_distinct metric, and switch to custom SQL, verify the SQL is COUNT(DISTINCT num), but the label is still count_distinct(num).
copy and paste the COUNT(DISTINCT num) in custom SQL, verify the label has been changed.

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[x] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Lgtm! 1 suggestion - should we rename COUNT_DISTINCT to COUNT DISTINCT on our list of aggregates in Simple tab?

Thanks @kgabryje! the count_distinct is used for a lot of places, and COUNT_DISTINCT also affects label(verbose name in query), so I didn't modify it.

🏷 preset:2022.17


Added options for windowing

It takes into account the issue raised in #16.

Codecov Report

Merging #18 into master will decrease coverage by 2.47%.
The diff coverage is 50%.

@@            Coverage Diff             @@
##           master      #18      +/-   ##
==========================================
- Coverage   90.09%   87.61%   -2.48%
==========================================
  Files           1        1
  Lines         202      210       +8
  Branches       70       57      -13
==========================================
+ Hits          182      184       +2
- Misses         10       15       +5
- Partials       10       11       +1

Impacted Files
Coverage Δ

xrft/xrft.py
87.61% <50%> (-2.48%)
:arrow_down:

Continue to review full report at Codecov.

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

Please rename this pull request to describe what it does. Does it fix a specific issue? If so, you can refer to the issue in the description (e.g. #16).

I added tests for the _hanning function.

#21 implements a different fix for the same issue.

Your new PR for windowing is better so I'm going to close this pull request.


Keybase always moves to Top of Favorites list in Finder Sidebar on macOS 10.12.5 (16F73)

I move it to the bottom, but it moves itself right back up to the top position after a restart.
Keybase GUI Version: 1.0.23-20170522181119+8a8aea0

Duplicate of https://github.com/keybase/client/issues/5222


[folding] Folding and Move Line does not work

Copy this text into an editor

aaaa
    bbbb
    cccc
    dddd
eeee
    ffff
    gggg

Fold All, you will see "aaaa" and "eeee".

Place cursor in first line ("aaaa")

Move line down (Alt + DownArrow)

Unfold All

6a. Expected
eeee
    ffff
    gggg
aaaa
    bbbb
    cccc
    dddd

6b. Experienced
    bbbb
eeee
    ffff
    gggg
aaaa
    cccc
    dddd

Trying the example above I get
    bbbb
aaaa
    cccc
    dddd
eeee
    ffff
    gggg

Ooops. Sorry for the incorrect bug report. I was anticipating to move collapsed groups so much that I did not realize that. Sorry. Well, I guess I should open a feature request then (#49886).


Bot stops working in server

Hello, everyone. Now I am facing to a problem that after some time my bot stops working on server without any reason.
I used
nohup php artisan bot:start </dev/null &>/dev/null &
command and it is working some time, but after 2 or 3 days it stops working. I asked help from hosting service support, but they say problem is not on the server, it is in my code.
HELP, PLEASE!

Hi, I'm facing the same issue with pulling mode.


Configure dry-run as diff or validate

Currently, dry-run always shows diff and also validates topic configs and schemas. Sometimes it would be helpful to see the full diff although validation fails. Therefore we should have the option to specify if we want to validate or not

What is the use case?
Should the logs of the dry-run be printed, or is only the diff sufficient?
Should this be done in a separate CLI command?


Licenses from child poms override parents

Per 'licenses' not being included in the merge list here: https://maven.apache.org/guides/introduction/introduction-to-the-pom.html#project-inheritance
Closes #87

Yep. All we can do is trust the pom and the developer.


Add Scottish Qualifications Authority (SQA) as a source

https://www.sqa.org.uk/sqa/57523.html

I'm working on it

see #161. Suggestions for improving this draft are very welcome :)

Thanks @nutcracker22. We'll take a look at this soon 😊


qa_crowbarsetup: only enable ssl if available

this avoids issues such as
https://github.com/SUSE-Cloud/automation/pull/1729
breaking deployment of GM7 that does not include
the required crowbar-openstack code

test correctly printed Cannot enable ssl for barbican (crowbar PR is not yet merged)


HWKAPM-781 - Added support for OpenTracing

ZipKin-related changes, following the changes for OpenTracing support.

I think this can be closed.


Add speedtest-tracker.

Add Speedtest Tracker.

The logs say "generating self-signed keys in /config/keys, you can replace these with your own keys if required".

If it says that in the app log (not the traefik log) then it seems like the app is trying to do its own TLS. you just need to turn that off and let traefik be the only thing that does TLS.


Wrong TypeScript syntax highlighting

From @PiranhaGreg on November 18, 2017 22:51

VSCode Version: 1.18.1 x64
OS Version: Windows 10 Pro, Version 1709, Build 16299.64

Steps to Reproduce:

Reproduces without extensions: Yes
Everything important is in the screenshot. Minus sign cause bad coloring of data type...
Copied from original issue: Microsoft/vscode#38703

From @sagea on November 19, 2017 7:50
I found what was wrong and will put in a PR here shortly

Is this problem the same as https://github.com/Microsoft/TypeScript/issues/20133 ?
  <number>1 && <number>2 & <number>3 | <number>4 + <number>5 ^ <number>6 && (<number>5)
//              ~~~~~~      ~~~~~~      ~~~~~~      ------      ~~~~~~        ------
//                                                  ok here, after '+'        ok here, after '('


gasprice fix #63

Thanks for your contribution.  Would you mind expanding the test for eth_sendTransaction to include the gasPrice parameter as well so that this gets a bit more test coverage?
https://github.com/pipermerriam/eth-testrpc/blob/master/tests/endpoints/test_eth_sendTransaction.py

I wasn't able to get back to this PR earlier. I see you already added fix and tests, so I will just close this PR. Thanks!


Update README with getting started instructions

The README.md for this repo needs to be updated with getting started instructions. For now, let's focus on getting started for Azure Functions since the sidecar model isn't officially supported yet. A few things we'll need to include:

A link to the Durable Functions overview with a language tab set to java: https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview?tabs=java (the content isn't there yet, but it will be)
Maven package information
JDK requirements (Java 8? Java 11? Both?)
Pointer to the quick start, once we know what the URL will be (can start out with a placeholder)
Step-by-step guide for getting started with the sample
Dev container instructions

The exact content can be flexible, but ideally advanced folks can use this information to get started without necessarily needing to refer to the quick start.

These getting started instructions are here: https://github.com/microsoft/durabletask-java/tree/main/azurefunctions#azure-durable-functions-setup-for-java.
We also have an official quick-start guide here: https://docs.microsoft.com/en-us/azure/azure-functions/durable/quickstart-java


[SQL Lab] Improve result table rendering performance

CATEGORY
Choose one

[x] Bug Fix
[ ] Enhancement (new features, refinement)
[ ] Refactor
[ ] Add tests
[ ] Build / Development Environment
[ ] Documentation

SUMMARY

When rendering the FilterableTable component we were rendering and measuring the width of every cell to determine the width of each column. For tables with many columns or columns with large amounts of content, this would hang the page for seconds at a time:

This fix changes the font for the FilterableTable to monospaced so that we can calculate the max width of a column without rendering the each cell. This resulted in a 665x improvement in perf for the function (>3 s down to 4.8 ms in some nasty edge cases)

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

Before:

After:

TEST PLAN

Ensure the column widths still fit all the content. Pass CI
ADDITIONAL INFORMATION

[ ] Has associated issue:
[x] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

REVIEWERS
@graceguo-supercat @soboko @mistercrunch @john-bodley

@etr2460 I'm doing some tests trying to optimize getTextDimension to avoid modifying the DOM, reusing the nodes instead of creating them from scratch all the time.

@etr2460 something like this:
const SVG_NS = 'http://www.w3.org/2000/svg';
const STYLE_FIELDS = [
  'font',
  'fontWeight',
  'fontStyle',
  'fontSize',
  'fontFamily',
  'letterSpacing',
];
const textNode = document.createElementNS(SVG_NS, 'text');
const svg = document.createElementNS(SVG_NS, 'svg');
svg.style.position = 'absolute'; // so it won't disrupt page layout
svg.style.opacity = '0'; // and not visible
svg.style.pointerEvents = 'none'; // and not capturing mouse events
svg.appendChild(textNode);
document.body.appendChild(svg);

function getTextDimension(input) {
  const { text, className, style = {} } = input;

  textNode.textContent = text;

  if (className !== undefined && className !== null) {
    textNode.setAttribute('class', className);
  }

  STYLE_FIELDS.filter(
    field => style[field] !== undefined && style[field] !== null,
  ).forEach((field) => {
    textNode.style[field] = `${style[field]}`;
  });

  const bbox = textNode.getBBox();
  return {
    height: Math.ceil(bbox.height),
    width: Math.ceil(bbox.width),
  };
}

@etr2460 I'm doing some tests trying to optimize getTextDimension to avoid modifying the DOM, reusing the nodes instead of creating them from scratch all the time.

That should definitely help performance too! I think separate of the performance question, we should consider if monospace is the right direction to go for the query results. For some types of data, I think it's actually easier to read in monospace, but it probably depends on people's preference

Design change: @elibrumbaugh do you wanna take a look? Context is above
Before:

After:

@etr2460 Thanks for the tag. I find the monospace easier to read and it sounds like a big win for performance. My biggest concern is how "spaced" out the letters are now. In design we call this tracking or more recently letter-spacing. Check out this bit about legibility.

I think you should try to reduce the amount of spacing.
Run it past SQL Lab users. You would be surprised how sensitive people can be about this kind of typographic change.

Keep me posted!

I apologize Erik, I made a mistake. Monospace of course is a fixed width.
I wonder if it's worth the extra space because of the advantage of spacing out compressed syntax per the link I shared in this comment.

@elibrumbaugh spacing out JSON is definitely a perk for using a monospace font here. I'll try to find some folks who use sql lab on a daily basis for feedback!

Personally I prefer the old style, but I've learned to trust designers in cases like this. If @elibrumbaugh says it's better I'm happy to go with it. :)

Thanks Beto 🙏We'll def confirm with users first!

Side note outside the scope of this before: I thought before that it could be good to limit/collapse wide columns to say 100 chars by default and allow users to expand it. Maybe a right caret in the column header that widens the column to its full extend?
For json specifically, when detected we could also allow a modal on click that would auto-json-format.

Superseded by https://github.com/apache/incubator-superset/pull/8011


Feat: Footer UI

Describe the feature
Improve the design of the Footer and make it more interactive
Please assign me this task, I will efficiently do it!
Add ScreenShots
reference footer :

Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

This issue is already assigned


Check module node.js 4.* to raise in express.js

Please update the AppVeyor configuration as well.

AppVeyor does not yet support node.js 4.1

Lame, lol. They should just pull like Travis CI does :) Using just "4.0" is likely good enough for now, because Node.js with 4 follows semver, so there cannot be any breaking changes between 4.0 and 4.1.


How do I configure the log fields and values?

How do I add, remove and configure field values when logging?
I would like to change the platform source to "Back-end" and add a path field.

Hi @travistylerVII, you cannot override the platform values at the moment.
I recommend using your own field for that, you can attach fields to a logger like this:
const log = req.log.with({ source: 'back-end' });

It will then show up as fields.source.
Please reopen this issue if this doesn't solve this to your satisfaction.


Proposal: Load file as templ

I have a Vite setup where, at the end, JavaScript, CSS, and HTML files are produced. The HTML has the proper script tags, and everything is built using one command. To load the HTML as a template, I now have to use http/template like this:
        goTemplate,err := template.New("index.html").Funcs(template.FuncMap{}).ParseFiles("./fe/dist/index.html")
	if err != nil {
		log.Fatal(err)
		panic(err)
	}
	var sb = strings.Builder{}
	page.Render(ctx,&sb)
	return goTemplate, template.HTML(sb.String())

In the body, I can add a placeholder like this:
<body >
    {{ . }}
</body>

Here is the full repository: https://github.com/dadcod/frank-rank
I suggest having ParseFiles similar to http/template.

I'm not sure what you're asking for here.
Go's built-in templates work quite differently to templ.
templ has a "generator" which generates Go code files from templ files. These go code files are then compiled into your application, rather than parsed at runtime.
I've talked about how templ works a little bit in https://www.youtube.com/watch?v=EkK8Jxjj95s&t=2s (40m onwards, I think). There's a new talk coming (once the talks from Big Sky Dev Con are edited and put on YouTube) that goes into a lot more detail, but the https://github.com/a-h/templ/blob/main/CONTRIBUTING.md is a good place to start for now.
Do you have a specific issue or reason for having this function?

TL;DR: I have a Vite-generated HTML file that I want to reuse.
For one part of the app, I have heavy client-side interactions, such as graphs, drag-and-drop, etc. For that, I want TypeScript support, npm, and the ability to test in isolation. So, I decided to use Vite for that, as well as for templ Tailwind classes. Now, instead of using separate esbuild and Tailwind commands, I have Vite handling everything. Plus, it takes care of importing the bundles. For the layout of the whole app, I want to use this Vite-generated index.html, and for everything else, I will use templ, htmx, and Tailwind.

Hi, I'm afraid I still don't understand what the request is. Is it that you want to import the Vite generated HTML file? Is it that you want to output that generated HTML file in a Go web server? Not sure.

I think I understand. You are looking for a way to use a generated layout file in templ. There is no way to do this currently with just templ as templ files need to be compiled to go. I think what you need is a custom component in your code:
You may want to refactor this to avoid global state and panics if possible but I hope you understand the general idea.
var layout templ.Component
func MustGetLayout() templ.Component {
	if layout != nil {
		return layout
	}
	l, err := ParseLayout("index.html")
	if err != nil {
		panic(err)
	}
	layout = l
	return l
}
func ParseLayout(filepath string) (templ.Component, error) {
	f, err := os.Open(filepath)
	if err != nil {
		return nil, err
	}
	layout, err := io.ReadAll(f)
	if err != nil {
		return nil, err
	}
	top, bottom, ok := bytes.Cut(layout, []byte("{{ . }}"))
	if !ok {
		return nil, fmt.Errorf("couldn't find children in layout")
	}
	return templ.ComponentFunc(func(ctx context.Context, w io.Writer) error {
		if _, err := w.Write(top); err != nil {
			return err
		}
		if err := templ.GetChildren(ctx).Render(ctx, w); err != nil {
			return err
		}
		if _, err := w.Write(bottom); err != nil {
			return err
		}
		return nil
	}), nil
}

This would allow you to use your layout in other templates:
package views

templ Page() {
	@MustGetLayout() {
		....
	}
}

Sorry for the delayed response, @joerdav. Exactly what I needed, thanks!

Thanks for returning with your update!


APK download?

Is there any chance you could provide a signed release APK for download (ideally attached to tagged releases here at Github, as that's where folks would look first) for those folks without access to PlayStore? Thanks in advance!

You really get around! I've seen posts from you on a couple of android apps that I took inspiration from while I was writing Hot Stuff. So, thanks for visiting my little corner of the internet.
This is my first public-facing app, so it's probably going to take a bit for me to become familiar with these features. Here's a link to that first release, and I'll make sure that these releases are made alongside the versions published to the Play Store.

You really get around!

As repo maintainer that tends to happen, yes. So disclosure: I was hoping to include your app with my repo, yes :wink:

it's probably going to take a bit for me to become familiar with these features

Took me several years. But we all learn from each other, so it's usually a win-win.

Here's a link to that first release

Thanks! Looking at it now, running it through my scanners. First note:
SigningBlock blobs:
-------------------
0x504b4453 (DEPENDENCY_INFO_BLOCK; GOOGLE)

This can easily be avoided:
android {
    dependenciesInfo {
        // Disables dependency metadata when building APKs.
        includeInApk = false
        // Disables dependency metadata when building Android App Bundles.
        includeInBundle = false
    }
}

For some background: that BLOB is supposed to be just a binary representation of your app's dependency tree. But as it's encrypted with a public key belonging to Google, only Google can read it – and nobody else can even verify what it really contains.
No show-stopper, but would be nice to have fixed with the next release.
Offending libs:
---------------
* Google Mobile Services (/com/google/android/gms): NonFreeComp

1 offenders.

Oof. That's not that good, as it's proprietary. What do you need it for? Looking at your build.gradle.kts, I have a guess:
id("com.google.android.gms.oss-licenses-plugin")

Not the best choice: always be careful if something carries .gms. in its package name. That plugin drags in GMS. But there are several good replacements available, some of them using the same license as your app and hence fitting from that point as well. I'm no Android developer, so I cannot tell which one to recommend by functionality – so please check for yourself. AboutLibraries is still actively maintained and probably a good choice, the other Apache-ones haven't seen any activity lately.
Permissions look fine. So it would be just that blob and GMS you'd like to fix. I'll meanwhile integrate your app now, it will have the NonFreeComp anti-feature first (because of GMS) which will be removed once fixed.
Oh, and it would be a good idea to have your tag names correspond to either the versionName (v1.1.1) or the versionCode (e.g. c5) :wink:
A "LOL" remark: you might wish to take a look at VT for your APK. Google doesn't like it for some reason, and Ikarus (a minor engine) considers it a Trojan…
That said:

Funny: android.hardware.camera, but no CAMERA permission… Well, will become available here with the next sync around 6 pm UTC. Waiting for your updates to remove the "red flags" then :smiley:

Ouch, seems like I have some reconfiguring to do! These all seem like pretty simple fixes, so I should be able to have a version ready in a couple of days. Really appreciate you taking an interest, this is all great advice.

Thanks, and best luck for easy adjustment! If you want to, I then also can send you the metadata in fastlane format via PR, so you have it in your own hands how your app is presented. For some background on that, you can see my Fastlane Cheat Sheet. But that can come later, don't want to distract you with too many tasks at once :wink:

Could you add support for armeabi v7a architecture in your next update.

Hm, the last comment was from you on April 14th, @PamCatten, saying

These all seem like pretty simple fixes, so I should be able to have a version ready in a couple of days.

Now I wonder whose activity is expected? :wink: Hint: there was no new version since. No pressure, just saying :smiley:

This issue is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in a week.

Running in circles then, @PamCatten? :wink:

Hey Izzy. The labels are an automated process I set up a long time ago. It's probably for the best if you remove the app from your curated list of open-source software.
I haven't able to find a job in software since I graduated from university last year, and since then I've run out of money, which has forced me to a couple of jobs, and I just don't have the time to work on Hot Stuff right now. I fully intend on returning to the project at some point, but with how things are going with entry level jobs here in the US, it's probably going to be at least a few months more.
Sorry for the headache, I really appreciate your time.

The labels are an automated process

Thought so. Was just confused they come from "your name" and not something something stale-bot or so.
Sad to read about your job situation – hope you run into some luck there soon!
As for the app: It's not exactly "red flags" (yet). And I probably wouldn't show up as often here were it not for those "stale" notifications. Not sure if you can override them for this issue – I'd then simply wait until you find time for it.

This issue is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in a week.

The bot hit again :see_no_evil:

This issue is stale because it has been open 45 days with no activity. Remove stale label or comment or this will be closed in a week.

:zany_face:


feat: Add compute-feature to BaseBone

Extension for #623. With this PR you can now pass a compute parameter to each bone.
The compute parameter is a dataclass and consists of the following attributes.
@dataclass
class Compute:
    fn: callable  # The callable computing the value
    threshold: ThresholdValue   # The value caching interval
    raw: bool = True  # defines whether the value is used as is, or is passed to bone.fromClient

The ThresholdValue is a dataclass to and defiend like this.
class ThresholdMethods(Enum):
    Always = 0
    Until = 1
    Once = 2

@dataclass
class ThresholdValue:
    method: ThresholdMethods = ThresholdMethods.Always
    seconds: int = 0

Hello @ArneGudermann,
thanks for starting this pull request draft.
I think you've used my first proposal from [https://github.com/viur-framework/viur-core/issues/629#issuecomment-1409531246](my comment in #629) which you got by email, but I did several revisions on it. I think, that Threshold is the wrong value for this, and named it (in a later version of the comment) into ComputeInterval. Can you please re-check this and merge this proposal into this pull request?
For clarification, here's my comment from the link above as a copy. I've tested it and it should entirely fulfill all requirements on issue #692.

Hello @ArneGudermann,
I think that this namedtuple + enum definition would generally be the better choice in BaseBone. This draft defines all required features, and might also answer your question: The compute-definition might be configured to allow for raw values or to pass them through the bone's fromClient.
from dataclasses import dataclass
from enum import Enum, unique

@unique
class ComputeInterval(Enum):
    ALWAYS = 1
    ONCE = 2
    SECONDS = 3

    @classmethod
    def seconds(cls, value):
        instance = cls.SECONDS
        instance._value_ = value
        return instance

@dataclass
class Compute:
    fn: callable  # the callable computing the value
    interval: ComputeInterval = ComputeInterval.ALWAYS   # the value caching interval
    raw: bool = True  # defines whether the value is used as is, or is passed to bone.fromClient

Afterwards, compute_me can be defined this way:
def testme():
    return "123.1"

compute_me = NumericBone(
    compute=Compute(testme)
)

# Compute(fn=<function testme at 0x7f790476cee0>, interval=<ComputeInterval.ALWAYS: 1>, raw=True)

compute_me_securely = NumericBone(
    compute=Compute(testme, raw=False)
)

# Compute(fn=<function testme at 0x7f790476cee0>, interval=<ComputeInterval.ALWAYS: 1>, raw=False)

compute_me_2min = NumericBone(
    compute=Compute(testme, ComputeInterval.seconds(60 * 2))
)

# Compute(fn=<function testme at 0x7f790476cee0>, interval=<ComputeInterval.SECONDS: 120>, raw=True)

The readOnly is automatically enforced by the constructor.
What do you think? I want to avoid enforcing to only accept str and parse them always via fromClient, as this might result in values generated, converted to a parse-able representation to become the same representation as originally created in the end, which is an unnecessary round trip.

Hello @phorward
Thanks for your answer. I have one thing.
compute_me_2min = NumericBone(
    compute=Compute(testme, ComputeInterval.seconds(60 * 2))
)

Unfortunately this does not work because when I clone the skeleton before passing it to the compute function I get 120 as the value of the enum.

Unfortunately this does not work because when I clone the skeleton before passing it to the compute function I get 120 as the value of the enum.

You're right and I apologize. I really miss Rust's enums in Python, as
enum ComputeInterval {
    Always,
    Once,
    Seconds(usize),
}

is what I wanted to imitate here.
Anyway, could we make it simply this way first?
from dataclasses import dataclass

@dataclass
class Compute:
    fn: callable  # the callable computing the value
    seconds: int = 0  # interval in seconds, default is always
    raw: bool = True  # defines whether the value is used as is, or is passed to bone.fromClient

So seconds is just an int, which defines 0 as always, anything < 0 as once and >0 as timeout?
compute_me = NumericBone(
    compute=Compute(testme)
)

#Compute(fn=<function testme at 0x7fe27e97fd90>, seconds=0, raw=True)

compute_me_securely = NumericBone(
    compute=Compute(testme, seconds=-1, raw=False)
)

#Compute(fn=<function testme at 0x7fe27e97fd90>, seconds=-1, raw=False)

compute_me_2min = NumericBone(
    compute=Compute(testme, seconds=60 * 2)
)

#Compute(fn=<function testme at 0x7fe27e97fd90>, seconds=120, raw=True)

@sveneberth @ArneGudermann I've made a reworked proposal based on Arne's draft. It works, but I think some things could be improved as well. Can you please make a review on this?

Can we resolve https://github.com/viur-framework/viur-core/pull/639/files#r1166918242 before merging?

This refers to #639, can you clarify?

For the caching thing I've create an issue #709

Thanks! :+1:

Can we resolve https://github.com/viur-framework/viur-core/pull/639/files#r1166918242 before merging?

This refers to #639, can you clarify?

For the caching thing I've create an issue #709

Thanks! +1

The link was stupid... This was the issue, that has been resolved: https://github.com/viur-framework/viur-core/pull/639#discussion_r1166918242


Publish skips Our.Umbraco.AuthU.dll

I installed version 1.0.3 via Nuget on a Umbraco 7.7.1 web project. Everything works great when I try my website locally. However, when I try to Publish (Web Deploy) the website hosted on a VM, the main dll (Our.Umbraco.AuthU.dll) does not get copied by Publish. I am on Visual Studio 2017. I won't be able to try version 2 since we won't be moving to Umbraco 8 any time soon. Could you help resolve the issue with Publish? Thanks.

I’m not that familiar with cloud, but at a guess, I think you may not have the dll committed to your git repository. With cloud I believe all your bin folder should be committed to the repo.

No, I tried publishing to a staging site on a VM in the same LAN as my machine. I noticed that Our.Umbraco.AuthU.dll is not strong name signed but all the other dependent dlls are. Could that be the issue? My own attempt to strong name sign it didn't help.