[Enhancement] Support tidaltitle

Close with https://github.com/GioF71/upmpdcli-docker/commit/f7ec64f947f1ead0c77fd4d9d86e60e594009388


Various Stash / to_glib_none() related optimizations and bugfixes

See individual commits.
CC @jf2048

@bilelmoussaoui You probably have to check for similar things in gtk4-rs

I also found this (changing to PhantomData if we can) to have actual effect in release builds as the stash is not always completely optimized away (without further inlining and LTO). It reduces required stack space for functions.

Looks good to me, thanks!


Keyboard not showing what I typed.

Hi,
I am facing an issue related to keyboard in evernote API. When evernote window open an I tried to enter email for authentication, It will not show what I typed and keyboard covers up all the UI box and I am not able to check what I typed there. I have gone through many links and other users also facing the same issue.
Please help and let me know how can this be fixed.
Thanks

How is this related to the PHP SDK? An additional information and screenshots of what you see on your screen might help better understand the problem.

@iafan
You are correct. it is not related to SDK but I thought that I will get some solution from here.
Anyways, this is done.
Thanks


Reduce the size of the APIHooks, eliminating enum gap

This is an ABI incompatible change.

[approve ci clang-format]

[approve ci]


Added support for open clock dates

Recognize clock dates without an end, they were previously ignored
Regarding the regex, since the whole match about the end date is optional now (second line, starting with "--"), it needs to be wrapped in parentheses and will show up as an own match group. That's why I had to move the int() parsing to the different parts

nice, thanks! and a special thanks for the tests :)


DSD-608: Deprecates the Input component

Fixes JIRA ticket DSD-608
This PR does the following:

Deprecates the Input component by moving it to the "Components/Deprecated" category in Storybook.

How has this been tested?

Checklist:

[ ] I have updated the Storybook documentation accordingly.
[ ] All new and existing tests passed.

Front End Review:

[ ] View the example in Storybook

Tugboat has finished building the preview for this pull request!
Link:

https://pr781-uvjsqaz7k0u0h5p0sjnc7ildytmebxim.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/61a68be6aee91ce4d7c18cbf

Tugboat has finished building the preview for this pull request!
Link:

https://pr781-uvjsqaz7k0u0h5p0sjnc7ildytmebxim.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/61a68be6aee91ce4d7c18cbf

Tugboat has finished building the preview for this pull request!
Link:

https://pr781-uvjsqaz7k0u0h5p0sjnc7ildytmebxim.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/61a68be6aee91ce4d7c18cbf


Can't confirm IBC deposits on testnet toronto (ibc_path set to "" after upgrade)

Issue
axelard tx axelarnet confirm-deposit always fails for Terra IBC tokens on testnet toronto.
Theory
@jcs47 has a theory: before we upgraded the testnet the ibc_path for chain terra was unset (nil).  The exported genesis.json file used in the upgrade contains the following
"chains": [
    {
        "addr_prefix": "terra",
        "assets": [
            "uluna",
            "uusd"
        ],
        "ibc_path": "",
        "name": "terra"
    }
],

Notice "ibc_path": "",.  This entry sets ibc_path to the empty string "", which is distinct from nil.  Thus, after the upgrade, testnet thinks that the terra IBC path is set (not nil) and its value is the empty string.  That's wrong.  (If it were set it would be a long string of the form ibc/XXX....)
What if this theory is correct?
My understanding is the only way to fix it is with another upgrade to testnet.
Why did this happen?  At first glance it appears to be a bug in Cosmos SDK: export a nil value -> import non-nil empty string "".
One way to fix on our end is to add checks on genesis import.  ie. any field set to the empty string should be replaced with nil or simply ignored so as to resort to default value.
Presumably other fields in genesis.json are susceptible to this problem.  Any such field must be guarded by checks.  Boo.

I am 99% that this is indeed the problem. Take a close look at the error message thrown when I tried to register the path for terra:
/ # echo $KEYRING_PASSWORD | axelard tx axelarnet confirm-deposit CE480DD235018B9A5DD404CC063D13596A6FD75A80F5C76D5552C51029A16C8A 900000"ibc/6F4968A73F90CF7DE6394BF937D6DF7C7D162D74D839C13F53B41157D315E05F" axelar1eyuyhl4uanrz
tfw2yam6y3c8x94fzmt27hy43sj4shrhcudpjyaswqar4p --from controller --gas auto --gas-adjustment 1.2 --keyring-backend file
Error: rpc error: code = InvalidArgument desc = failed to execute message; message index: 0: path transfer/channel-0 does not match registered path  for asset uusd: axelarnet error: invalid request

If you look closely, there are two spaces between "registered path" and "for asset uusd". If we then look at the source code, it is clear this is not a typo:
		// check if the asset registered with a path
		chain, ok := s.BaseKeeper.GetCosmosChainByAsset(ctx, denomTrace.GetBaseDenom())
		if !ok {
			return nil, fmt.Errorf("asset %s is not linked to a cosmos chain", denomTrace.GetBaseDenom())
		}
		path, ok := s.BaseKeeper.GetIBCPath(ctx, chain.Name)
		if !ok {
			return nil, fmt.Errorf("path not found for chain %s", chain)
		}
		if path != denomTrace.Path {
			return nil, fmt.Errorf("path %s does not match registered path %s for asset %s", denomTrace.GetPath(), path, denomTrace.GetBaseDenom())
		}

The error message clearly includes the path that was supposedly already registered. Yet, what we are getting is an empty string. Furthermore, there is even a previous check making sure that the path does exist, which is passing. So it stands to reason that we indeed have set an empty string as the registered path for terra -- despite the fact, judging from the exported genesis file, we obviously didn't get to set up.
This is a kind of error that we already had to fix during the boot camp (specifically for the fee collector address). My guess is that these two bugs are not the only ones of their kind. We really should do an audit on the parts of the source code that deal with importing/exporting the state.

Seems like Sammy already fixed the issue two days ago: https://github.com/axelarnetwork/axelar-core/commit/4d877b8106fbbab95ac7bd75396d7cddd06eb77d#diff-e79b18ad01c506b41ea226efb1b1c0dcaa21aeb6c399f815371f1736cb60a0a1


Unable to verify TOTP using google/microsoft authenticator applications

Hi,
I have been using your library for handling TOTP based QR code generation and validation from last 1 year. It was working successfully with google and microsoft authenticator. Just all of a  sudden the TOTP validation is failing which I am failing to understand why?
Below is the code to generate QR code which i scan using authenticator app:
QrData data = new QrData.Builder().label(userDispVal).secret(secret).issuer(label).algorithm(HashingAlgorithm.SHA1).digits(6).period(30).build();
QrGenerator generator = new ZxingPngQrGenerator();
byte[] imageData = generator.generate(data);
String mimeType = generator.getImageMimeType();
String dataUri = getDataUriForImage(imageData, mimeType);
and below is the code to validate the the TOTP code generated by authenticator app:
TimeProvider timeProvider = new SystemTimeProvider();
CodeGenerator codeGenerator = new DefaultCodeGenerator(HashingAlgorithm.SHA1);
DefaultCodeVerifier verifier = new DefaultCodeVerifier(codeGenerator, timeProvider);
boolean successful = verifier.isValidCode(secret, code);
The last call is always returning false. It was working earlier like I mentioned.
Any help in this regard will be appreciated.
Thanks,
Ashutosh

Hi @ashutoshkumarmishra560,
This could be related to the fact that Since September 2021, OpenSSL in version 3.0.0 discards by default certificates signed using SHA1, as techniques have been found to create collisions on SHA1 signatures.
In order to continue using SHA1-signed certificates, end users have to configure their OpenSSL installation to lower its security level, which will also allow other less-securely signed certificates to be validated by OpenSSL (this issue talks about it).
Hope it helps,
Alex

I have the same problem. The code that worked half a year ago, revisited, now stopped working.
This method returns FALSE where it should return TRUE, as before.
boolean successful = verifier.isValidCode(secret, code);

Any update on this?

import dev.samstevens.totp.code.*;
import dev.samstevens.totp.secret.DefaultSecretGenerator;
import dev.samstevens.totp.secret.SecretGenerator;
import dev.samstevens.totp.spring.autoconfigure.TotpAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;

@Configuration
@Import(TotpAutoConfiguration.class)
public class TotpConfiguration {
    @Bean
    public CodeGenerator codeGenerator() {
        return new DefaultCodeGenerator(HashingAlgorithm.SHA512);
    }
}

// Generate QR code
QrData data = qrDataFactory.newBuilder()
    .label(user.getUsername())
    .secret(secret)
    .issuer(AuthoritiesConstants.ISSUER)
    .algorithm(HashingAlgorithm.SHA512)
    .build();

String qrCode;

try {
    qrCode = getDataUriForImage(qrGenerator.generate(data), qrGenerator.getImageMimeType());
} catch (QrGenerationException e) {
    return new ResponseEntity<>(null, HttpStatus.INTERNAL_SERVER_ERROR);
}


How to comfirm which optimised assembly is used (C)?

I've embedded the various BLAKE3 C source files in an existing autotools project.  (I had to add AM_PROG_AS to configure.ac.)
How can I confirm that the blake3_dispatch is working correctly?  Ideally I'd like to set -DDEBUG and see which implementation it was choosing.  Or perhaps a new function in blake3_dispatch to report which specialised code was used?
Assuming that debug of this sort doesn't currently exist, would this be a welcome addition upstream?

The implementation chosen is the most recent instruction set supported on the current machine. Currently that's mainly Intel instruction sets, so you get:

avx512 if AVX-512 is supported
otherwise avx2 if AVX2 is supported
otherwise sse41 if SSE4.1 is supported
otherwise sse2 if SSE2 is supported
otherwise portable

You can see what your CPU supports with e.g. cat /proc/cpuinfo on Linux. The only other thing that can affect dispatching is if you disabled some instruction sets at build time, like with -DBLAKE3_NO_AVX512.
If you want to see this in action, I'd suggest putting in some print statements in the blake3_hash_many and then hashing a 100 KB input. (You could also log from blake3_compress_in_place or blake3_compress_xof, but AVX2 doesn't show up in those functions.)
As far as a public, stable debugging API, what would be the expected use case there?

Thanks for your response.
Can you leave this issue open, as I'm getting some very odd results?  Mostly the SSE41 code is run, occasionally the SSE2 code.  My CPU reports "avx":
$ cat /proc/cpuinfo | grep sse | head -1
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 popcnt tsc_deadline_timer aes xsave avx lahf_lm epb pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm ida arat pln pts md_clear flush_l1d

More debug to follow...

When you say "Mostly the SSE41 code is run", could you clarify what that means? Where are you putting your print statements, and what commands are you running to test the code?


Compile on windows

I tried compiling the library in windows and I had a few issues.
I wanted to use gcc to avoid depending on visual studio.  But it was a challenge.  The compiler would not identify __int64 and it would fail right away.
I would appreciate help on this task.

@gastaldi the build is fixed...  yay... tests are compiling.
I saw a couple of options to get access to the DLL so it can be part of the release. In your opinion what is the best way?
 Perhaps there's a way to configure an action that will push a commit?

How about having a separate repository publishing the DLLs using different classifiers?

@gastaldi are you strong opinionated about it? I would prefer to keep it simple. single jar it easy enough.

@gastaldi I will close this issue and open a new one.. provide .dll on the distribution for windows.


decoder: parsing optimisations

Optimisations of the parsing: avoid calling functions of the bytes package for operations on just one or two bytes.

I cannot believe it, another contributor !
I am very sorry I just pushed something and now I was checking it and saw your pull request. It looks like I caused some conflicts !

I can try to solve them and make a PR to your fork.

Don't worry about the conflicts: I resolved them and rebased. Check my updated branch.

I did it via CLI at the end. Bad timing all around.
I only added a few comments where you replaced standard library by the optimised code.
Thank you !

FYI
avoiding an extra String() call I noticed + your commits afterwards:
benchmark                                      old ns/op     new ns/op     delta
BenchmarkDecodeEmptyEvent-4                    1399          804           -42.53%
BenchmarkDecodeEmptyEventWithIgnoredLine-4     1519          892           -41.28%
BenchmarkDecodeShortEvent-4                    1437          898           -37.51%
BenchmarkDecode8kEvent-4                       8983          6199          -30.99%
BenchmarkDecode16kEvent-4                      14820         10309         -30.44%

cannot believe it, another contributor !

Actually this is not a coincidence: we are working in the same office.


Running a peek with an unset module crashes F*

Example input:
$ /build/fstar/master/bin/fstar.exe  "backtracking.fst" --ide < "backtracking.peek-with-unset-module.in"

backtracking.fst
module Backtracking

backtracking.peek-with-unset-module.fst
{"query-id":"1","query":"push","args":{"kind":"full","code":"module backtracking\n","line":1,"column":0}}
{"query-id":"2","query":"autocomplete","args":{"partial-symbol":"let","context":"code"}}
{"query-id":"3","query":"peek","args":{"kind":"lax","code":"\nlet a ","line":2,"column":0}}
{"query-id":"4","query":"peek","args":{"kind":"lax","code":"\nlet a = 1","line":2,"column":0}}

Current output:
$ /build/fstar/master/bin/fstar.exe  "backtracking.fst" --ide < "backtracking.peek-with-unset-module.in"
{"kind":"protocol-info","version":2,"features":["autocomplete","compute","compute/reify","compute/pure-subterms","describe-protocol","describe-repl","exit","lookup","lookup/documentation","lookup/definition","peek","pop","push","search"]}
{"kind":"response","query-id":"1","status":"failure","response":[{"level":"error","message":"Syntax error: Parsing.Parse_error","ranges":[{"fname":"<input>","beg":[1,19],"end":[1,19]}]}]}
{"kind":"response","query-id":"2","status":"failure","response":"Current module unset"}
{"kind":"response","query-id":"3","status":"success","response":[{"level":"error","message":"Syntax error: Parsing.Parse_error","ranges":[{"fname":"<input>","beg":[3,6],"end":[3,6]}]}]}
{"kind":"message","level":"error","contents":"ASSERTION FAILURE: Unset current module\nF* may be in an inconsistent state.\nPlease file a bug report, ideally with a minimized version of the program that triggered the error."}
{"kind":"response","query-id":"4","status":"success","response":[{"level":"error","message":"ASSERTION FAILURE: Unset current module\nF* may be in an inconsistent state.\nPlease file a bug report, ideally with a minimized version of the program that triggered the error.","ranges":[{"fname":"<input>","beg":[1,0],"end":[1,0]}]}]}

Expected output:
{"kind":"protocol-info","version":2,"features":["autocomplete","autocomplete/context","compute","compute/reify","compute/pure-subterms","describe-protocol","describe-repl","exit","lookup","lookup/context","lookup/documentation","lookup/definition","peek","pop","push","search"]}
{"kind":"response","query-id":"1","status":"failure","response":[{"level":"error","message":"Syntax error: Parsing.Parse_error","ranges":[{"fname":"<input>","beg":[1,19],"end":[1,19]}]}]}
{"kind":"response","query-id":"2","status":"failure","response":"Current module unset"}
{"kind":"response","query-id":"3","status":"failure","response":"Current module unset"}
{"kind":"response","query-id":"4","status":"failure","response":"Current module unset"}

Fixed in cpitclaudel_completion


Error deploying on GKE: Forbidden

Hi,
I have a GKE cluster (standard) and try to deploy origin-ca-issuer on it.
But after all my steps I get the following error:
"re-queuing item due to error processing" err="admission webhook "webhook.cert-manager.io" denied the request: status.conditions: Forbidden: user "system:serviceaccount:cert-manager:cert-manager-helm-ad2b5fe3" does not have permissions to set approved/denied conditions for issuer {prod-issuer OriginIssuer cert-manager.k8s.cloudflare.com}" logger="cert-manager.controller" key="default/backend-ingress-tls-12345-1"
I use pulumi to deploy cert-manager helm chart and origin-ca-issuer helm chart with some manual step. Will give in the following my steps:
To create the cert-manager I use the python library pulumi_kubernetes_cert_manager:
`def deploy_cert_manager(provider):
cert_manager_ns = core.v1.Namespace("cert-manager", metadata={"name": "cert-manager"})
cert_manager_component = cert_manager.CertManager(
    "cert-manager",
    install_crds=True,
    helm_options=cert_manager.ReleaseArgs(
        namespace="cert-manager",
        skip_crds=True,
    ),
    opts=ResourceOptions(provider=provider, depends_on=[cert_manager_ns]),
)

return cert_manager_component`

After the installation I install the crds for clsteroriginissuer and originissuer:
    crd_url = "https://raw.githubusercontent.com/cloudflare/origin-ca-issuer/v0.9.0/deploy/crds/cert-manager.k8s.cloudflare.com_originissuers.yaml"  # For OriginIssuer
    crd_url_cluster = "https://raw.githubusercontent.com/cloudflare/origin-ca-issuer/v0.9.0/deploy/crds/cert-manager.k8s.cloudflare.com_clusteroriginissuers.yaml"  # For ClusterOriginIssuer

    # Apply the chosen CRD
    origin_ca_issuer_crd = apply_origin_ca_issuer_crd(k8s_provider, name="origin-ca-issuer-crd", depends_on=[cert_manager_component], crd_url=crd_url)
    origin_ca_clusterissuer_crd = apply_origin_ca_issuer_crd(k8s_provider, name="origin-ca-clusterissuer-crd", depends_on=[cert_manager_component],
                                                      crd_url=crd_url_cluster)

def apply_origin_ca_issuer_crd(provider, name, depends_on, crd_url):
    origin_ca_crd = yaml.ConfigFile(
        name,
        file=crd_url,
        opts=ResourceOptions(provider=provider, depends_on=depends_on)
    )
    return origin_ca_crd

Then I install the origin-ca-issuer helm chart:
def deploy_origin_ca_issuer(provider, depends_on):
    origin_ca_issuer_namespace = core.v1.Namespace(
        "origin-ca-issuer-ns",
        metadata={"name": "origin-ca-issuer"},
        opts=ResourceOptions(provider=provider, depends_on=depends_on)
    )

    origin_ca_issuer_chart = Chart(
        "origin-ca-issuer",
        chart="oci://ghcr.io/cloudflare/origin-ca-issuer-charts/origin-ca-issuer",
        version="0.5.7",
        namespace="origin-ca-issuer",
        values={},
        opts=ResourceOptions(provider=provider, depends_on=[origin_ca_issuer_namespace] + depends_on)
    )

    return origin_ca_issuer_chart

Then I create the originissuer as written in the documentation:
kubectl create secret generic \
    --dry-run \
    -n default service-key \
    --from-literal key=v1.0-FFFFFFF-FFFFFFFF -oyaml

Save the output of this command into service-key.yaml and run following command:
kubectl apply -f service-key.yaml -f deploy/example/issuer.yaml
When I check the prod-issuer I get following log:
origin-ca-issuer % kubectl get originissuer.cert-manager.k8s.cloudflare.com prod-issuer -o json | jq .status.conditions
[
  {
    "lastTransitionTime": "2024-07-30T16:42:12Z",
    "message": "OriginIssuer verified and ready to sign certificates",
    "reason": "Verified",
    "status": "True",
    "type": "Ready"
  }
]

Then I deploy my backend, service and ingress with pulumi:
def create_ingress(provider, namespace_name, name, host, service_name, service_port):
    return networking.v1.Ingress(
        name,
        metadata=ObjectMetaArgs(
            namespace=namespace_name,
            annotations={
                "cert-manager.io/issuer": "prod-issuer",
                "cert-manager.io/issuer-kind": "OriginIssuer",
                "cert-manager.io/issuer-group": "cert-manager.k8s.cloudflare.com",
                "external-dns.alpha.kubernetes.io/hostname": host
            },
        ),
        spec=networking.v1.IngressSpecArgs(
            rules=[
                networking.v1.IngressRuleArgs(
                    host=host,
                    http=networking.v1.HTTPIngressRuleValueArgs(
                        paths=[
                            networking.v1.HTTPIngressPathArgs(
                                path="/",
                                path_type="Prefix",
                                backend=networking.v1.IngressBackendArgs(
                                    service=networking.v1.IngressServiceBackendArgs(
                                        name=service_name,
                                        port=networking.v1.ServiceBackendPortArgs(number=service_port)
                                    )
                                )
                            )
                        ]
                    )
                )
            ],
            tls=[
                networking.v1.IngressTLSArgs(
                    hosts=[host],
                    secret_name=f"{name}-tls-12345"
                )
            ]
        ),
        opts=ResourceOptions(provider=provider),
    )

My pod and service are starting but with the ingress I have problems:
Error syncing to GCP: error running load balancer syncing routine: error initializing translator env: secrets "backend-ingress-tls-12345" not found
In the cert-manager container I can find following logs:
Setting lastTransitionTime for CertificateRequest "backend-ingress-tls-12345-1" condition "Approved" to 2024-07-30 16:41:26.176465605 +0000 UTC m=+93.442562707
"re-queuing item due to error processing" err="admission webhook "webhook.cert-manager.io" denied the request: status.conditions: Forbidden: user "system:serviceaccount:cert-manager:cert-manager-helm-32108e2d" does not have permissions to set approved/denied conditions for issuer {prod-issuer OriginIssuer cert-manager.k8s.cloudflare.com}" logger="cert-manager.controller" key="default/backend-ingress-tls-12345-1"
"certificate resource is not owned by this object. refusing to update non-owned certificate resource for object" logger="cert-manager.controller.ingress-shim" resource_name="backend-ingress-e9afea6e" resource_namespace="default" resource_kind="" resource_version="" related_resource_name="backend-ingress-tls-12345" related_resource_namespace="default" related_resource_kind="Certificate" related_resource_version="v1"
In the cert-manager-webhook container I find following log:
http: TLS handshake error from XX.XXX.XXX:36738: EOF
In the origin-ca-issuer the logs are:

Guess the crd kind error were happening during the installation and later it worked but not sure on that.
Any of you know what my error is? I did it as the README has documented but still I have no luck with that.
Woul appreciate help. Thanks :)

Please ensure you've deployed the equivalent of the signer RBAC role: https://github.com/cloudflare/origin-ca-issuer/blob/7b16c1daa5d0dcd0c376eaefa47ce430f14be455/deploy/rbac/role-approver.yaml

Is this not done with the helm chart?
In general when I install the helm chart, do I need to run following commands:
kubectl apply -f deploy/rbac
kubectl apply -f deploy/manifests
The command
kubectl apply -f deploy/crds I need to run as that is written in the Readme

It is part of the helm chart: https://github.com/cloudflare/origin-ca-issuer/blob/7b16c1daa5d0dcd0c376eaefa47ce430f14be455/deploy/charts/origin-ca-issuer/templates/issuer-clusterrole.yaml#L33. however the error suggests it's not been applied or the rolebinding is for the wrong service account.

Applied it now manually but still the same error.
Just for documentation if the steps are correct or I am missing something:
1.) Install cert-manager via helm chart (will be create in the cert-manager namespace)
2.) kubectl apply -f https://raw.githubusercontent.com/cloudflare/origin-ca-issuer/v0.9.0/deploy/crds/cert-manager.k8s.cloudflare.com_originissuers.yaml
kubectl apply -f https://raw.githubusercontent.com/cloudflare/origin-ca-issuer/v0.9.0/deploy/crds/cert-manager.k8s.cloudflare.com_clusteroriginissuers.yaml
3.) Install 0.5.7 helm chart of origin-ca-issuer in namespace origin-ca-issuer
4.) Create secret with command:
kubectl create secret generic \
    --dry-run \
    -n default service-key \
    --from-literal key=v1.0-FFFFFFF-FFFFFFFF -oyaml

Save output into service-key.yaml file and run command:
kubectl apply -f service-key.yaml -f deploy/example/issuer.yaml
This will create prod-issuer in namespace default
And this prod-issuer I can then reference in my ingress.
Are this steps correct or am I missing something crucial?

Please make sure the service account name matches what you've deployed in cert-manager: https://github.com/cloudflare/origin-ca-issuer/blob/7b16c1daa5d0dcd0c376eaefa47ce430f14be455/deploy/charts/origin-ca-issuer/values.yaml#L99-101

Thanks. That fixed it


ShuTu SWC editor desktop app: view & edit SWCs clientside

The simplest and crudest thing to do is simply download the SWC file.
But folks can also set up Google Drive and mirror a folder to localhost to make the process simpler. Having the code write the SWC to Drive will ensure it is persisted across VM reboots (at least every 12 hours, max time allowed on Colab).

Mirror FS on laptop and Google Drive:

Generate SWC on Colab
View (and correct) SWC in ShuTu desktop UI
(The mirroring just makes it simple.)

from google.colab import drive
drive.mount('/content/gdrive')


[VS Code] Starting collaboration session: Cannot read property 'document' of undefined

Error: Cannot read property 'document' of undefined
Starting collaboration session: Cannot read property 'document' of undefined
Steps to Reproduce:

Login with Github.
Start a Session.

||Version Data|
LiveShareLogs.zip
|-:|:-|
|extensionName|VSLS|
|extensionVersion|1.0.470|
|protocolVersion|2.2|
|applicationName|VSCode|
|applicationVersion|1.35.1|
|platformName|Windows|
|platformVersion|10.0.18362|

We are aware of the issue and working on a fix. Closing as a dupe of #2363. Thanks for using Live Share!

We published a new release of the extension to the marketplace which contains a fix for this issue. The version number is 1.0.471. Please update your extension in Visual Studio Code. Thanks everyone for the feedback!


Let's change the ClaimTab dropdown from a Menu to a Popover

HeadlessUI's documentation says that a Popover is better for more complicated dropdown user interfaces than a Menu.

TODO:
*Make the popover close on Attach Definition.
*Add the conditional buttons.

TODO:

Add the conditional buttons.

Let's merge!


Issues with vbmai commands

Hey! Love this tool, and the convenience it brings, it's truly incredible. I've tried dipping my toes in the water with the AI section of it, despite being not fully developed, but I noticed it had some commands in the code, such as swapping a master, and cancelling the ai mode.
I jumped into a party with my alt account, and attempted to swap masters but it failed to do so, but running vbmai cancel, indeed cancels the ai on both sides. Neither was able to take master control with vbmai follow though.

Yeah AI mode isn't really well developed, at least for now.


Spotify-clone-project Using HTML and CSS

Describe the project
I want to make the Spotify frontend clone by using HTML and CSS
Issue Type:

It is a new Project

Additional context
@TusharKesarwani assign me this issue so that I can master my skills in HTML and CSS

#474 is already done


allow use of tokens instead of having to specify a username/password

can you please resolve the conflicts  in favor of master!  Thank you


[WIP] First draft of internet bridge section

Open to any and all criticism here, writing documentation isn't my strong suit. But here is a decent start at explaining the differences between the transports. Also I believe there should be a way to "compile" this markdown to html, not exactly sure how to accomplish that, will try to look into this further in the weekend.

Thanks, this is great. I'll merge it as it is. Don't worry about compiling it to HTML, I can just do it and push that to the manual. If you have sphinx and related tools installed, you can do make html in the documentation directory, and it will compile it. But generally pull requests on the docs are totally fine with just the source files updated, since it makes the commit and pull request more concise.

Oops, didn't notice the changes was in the build output directory. The actual source files are in ./docs/source, not ./docs/manual/_sources. That's a bit confusing, should have thought about it. I just moved it to the correct source file now.


"Trust parent" translated incorrectly

Testing #129410

Open an untrusted folder with the French language pack installed
:bug: The "trust parent" button seems to be translated to something that means "parent of trust" rather than "to trust to the parent folder"

@TylerLeonhardt, is this something that you could assist with? Thanks!

FYI @v-mholloway

Also side note: not sure why the bot didn't assign me and csigs when it had the L10N label. Maybe because it also had the WT label? ( @JacksonKearl )

@TylerLeonhardt I remember discussing something regarding this but don't recall where we landed. In any case, the bot can be configured to assign folks upon a label being added like so: https://github.com/microsoft/vscode/blob/main/.github/commands.json#L68-L72.
In default configuration it will not auto-assign based on labels, it will only auto-deduce labels (which only exist in it's head, they don't get auto-added) then auto-assign based on the mapping from the deduced label to assignee here: https://github.com/microsoft/vscode/blob/main/.github/classifier.json

bug opened 116768

bug 116768 resolved - closing


Implement a few AVM1 BitmapData and MovieClip members, and AVM2 BitmapData#drawWithQuality

Specifically, AVM1BitmapData#dispose and AVM1MovieClip#hitArea.
r? @yurydelendik.

/botio reftest

r+ with test/swfs/avm1/hitarea/hitarea.swf + .fla files added and test passing

/botio reftest


Embedding of app inside Shopify admin UI with @shopify/koa-shopify-auth not working / redirect occurs

Overview
What I want to achieve

use @shopify/koa-shopify-auth for authentication flow
load an embedded app inside Shopify admin UI

What's happening

authentication works fine, token is being exchanged
as soon as my app loads, it escapes the Shopify admin UI and the browser redirects to my app url

What I implemented and tried

created an app and set it as embedded via extensions menu
implemented simple koa server according to @shopify/koa-shopify-auth
serve an app

via sending markup directly from my koa server that handles the auth flow according to app.ejs as being used in shopify-node-app after successful authentication
instead of serving the markup directly (for testing purposes), I actually want (and tried) to redirect to a static web app on another subdomain. This app is based on polaris where I also set shopOrigin and forceRedirect via the AppProvider. But this doesn't work either.

set the following headersctx.response.set('X-Frame-Options', `allow-from https://${shop}`);
ctx.response.set('Content-Security-Policy', `frame-ancestors *.myshopify.com`);

What makes me curious / Questions
Docs are saying that we should escape the iframe before authentication is happening, which @shopify/koa-shopify-auth seems to be doing in redirection-page. I assume the containing script is what the shopify browser lib is doing under the hood?
If I serve a polaris app instead of the markup that also disables the forceRedirect, what happens if my react app takes some time to load? Documentation is also saying that ShopifyApp.init(shopifyAppConfig); should happen immediately.
A comment in app.ejs also mentions that the redirect will only happen during development if it's not disabled. Does this mean it will at least work when my app is published?
I do remember that I had implemented a test app a few months ago with the express version of the auth flow and the app was being displayed inside the admin UI during development. Although I don't have the code anymore 😕
Am I missing something or is this really a bug? I'm really desperate and your opinion is very much appreciated! I can also give you access to my private repo if that might be of help.
Consuming repo

https://github.com/Shopify/quilt

Additional resources
test app being served after successful auth
<!DOCTYPE html>

    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>woop</title>

🙆♂

So I can confirm that changing the secret will result in another auth flow, which returns a new access token. This is being stored in the session without leaving the admin ui. I have not investigated if and why this is occuring or even required (shopify-express is doing that).
Maybe you know if that might pose a security threat?

I have just tested @shopify/koa-shopify-auth again as it is currently available through npm and indeed, it is creating a new access token every time I reload my app in shopify admin.
The fix that resembles the way how shopify-express is acting, is available in my fork
I'll use that for now.

:wave: hi! Sorry you're having trouble :(
Here are the instructions we used to test out the implementation: https://github.com/Shopify/quilt/pull/268#issue-212953768
It involves cloning the unite-react-node-app-workshop repo and then replacing the server/index.js with a modified one that uses the koa-shopify-auth package.
Can you see if you're able to get it working properly in that environment? If so, that might help you narrow down why your implementation is failing to stay inside the iframe.
This isn't as turnkey as we'd like right now, and we're actively working on improving our development tools to make it really straightforward to get started.
Let me know if this helps and I'll keep an eye on this thread in case you still end up having trouble.

Thank you very much for your help!
I tried the example in unite-react-node-app-workshop with the following server as index.js. Installing the app works, but then the callback route /shopify/auth/callback is returning a 404 and I'm getting Not found. as response.
I slightly modified the file to see the request paths being called. And I'm not using the baseUrl as I could only find those in the tests.
That's really weird since I haven't had this behaviour before.
Maybe you have an idea? I didn't change anything else.
App Urls being used:
entry: https://sanalytics-api.eu.ngrok.io/shopify
whitelisted urls:
https://sanalytics-api.eu.ngrok.io/shopify/auth/callback
and for sure the API key and secret set in .env
import 'isomorphic-fetch';

import dotenv from 'dotenv';
import Koa from 'koa';
import session from 'koa-session';
import shopifyAuth, {verifyRequest} from '@shopify/koa-shopify-auth';
dotenv.config();

const {SHOPIFY_API_KEY, SHOPIFY_SECRET} = process.env;

const app = new Koa();
app.keys = [SHOPIFY_SECRET];

app
  // sets up secure session data on each request
  .use(session(app))
  .use((ctx, next) => {
    console.log(ctx.request.path);
    next();
  })

  // sets up shopify auth
  .use(
    shopifyAuth({
      apiKey: SHOPIFY_API_KEY,
      secret: SHOPIFY_SECRET,
      //   baseUrl: '', // 💡 removed as it's not being used in sources, only in tests
      scopes: ['write_orders, write_products'],
      prefix: '/shopify',
      afterAuth(ctx) {
        const {shop, accessToken} = ctx.session;

        console.log('We did it!', accessToken);

        ctx.body = 'hello'
      },
    }),
  )

  // everything after this point will require authentication
  .use(
    verifyRequest({authRoute: '/shopify/auth', fallbackRoute: '/shopify/auth'}),
  )

  // application code
  .use((ctx) => {
    console.log('sending body');
    ctx.body = `

    🎉
    `;
  });

export default app;

I don't know why this is (I'm not super well-versed on koa in particular), but when I remove the path logging it seems to work for me:
  .use((ctx, next) => {
    console.log(ctx.request.path);
    next();
  })

I think I still had a modified version of koa-shopify-auth running, which was the reason for my issue. Reinstalling the module helped. Even with the path logging. Thank you so much @ragalie ! I'll integrate this into my project and will leave a note when everything works.

Works so far. But it seems I can't reinstall the app unless I manually delete the cookies for my app domain.
If I don't delete them, shopify is showing a page saying The page you're looking for couldn't be found Check the web address and try again, or try navigating to the page from Shopify Home.

Hmmm, I wasn't able to reproduce that. I was able to successfully reinstall by doing the following:

I added a new scope to the list of scopes (which should trigger a reinstall).
I torched the session (I just added ctx.session = {} to the last use function, but I think koa-session supports something nicer).
I attempted to access the app and it prompted me to accept the new scopes and then redirected properly.

What are you trying that's resulting in the error message?

I manually removed the app from my test store and triggered a reinstall for this store through my partner account.
I was able to reproduce it multiple times. But I won't be able to access my mac before Friday.
Most important to me is that I can continue now as long as I'm aware of what to take care of. But I'll look into the cookie issue and certainly let you know how I triggered this error page in detail as soon as possible

Thanks for the update!
This error happens because your app thinks the merchant is still logged in (due to the cookie), but in reality the app has been uninstalled, so Shopify refuses to load the app.
I'm aware of some apps that listen to the app/uninstalled webhook (https://help.shopify.com/en/api/reference/events/webhook) and then remove the shop token for that shop when their app is uninstalled. That way the app knows that the shop has uninstalled the app, and redirects to the OAuth flow instead of redirecting to the Shopify embedded app URL.
Since the original issue has been resolved, I'm going to close out this issue. Thanks again for participating!

Sounds reasonable. Thank you very much for your help @ragalie

@ragalie I finally found the root cause of my issue. What I wanted to do was passing all app config data dynamically to the authentication middleware of koa-shopify-auth to use the middleware for multiple shopify apps while having a single point of authentication. Therefore, I was wrapping all middleware into a (ctx, next) => ... koaShopifyMiddleware(config)(ctx,next) function. And obviously I did not use async for all my middlewares. So when an error occured (I still don't know what this error is because everything works perfectly fine internally), koa seemed to break out of the promise chain and returned a 404.
When we however add an async to each and every middleware / wrapper, everything works as it should.
I'm also usually using express and am quite new to koa. Lesson learned :D
Thanks again so much !!!!

@ragalie Hi, I just started with shopify-koa-auth and I was redirected to /auth/enable_cookies & then to Shopify embedded app URL instead of OAuth Path (/auth?shop={shop}) everytime -> The page you're looking for couldn't be found Check the web address and try again, or try navigating to the page from Shopify Home

A bit late to the thread but I just figured out what is the solution to make your app rendered inside the Shopify admin without a redirect.
There is a setting that is not well documented in the repo nor the partners' documentation.
When you define the App URL in your app's settings page, you can simply switch the URL to e.g. https://kdkf92n34.ngrok.io/auth/inline and that makes your app to not trigger a top-level redirect.
Also check the screenshot:

Here is the source code of this:
https://github.com/Shopify/quilt/blob/22a1ce062d95c425b390ffbd0919fc03594da072/packages/koa-shopify-auth/src/auth/index.ts#L41
I hope it will help any future developer that is having the same issue.

Looks like this results in an "Request origin could not be verified". See here: https://github.com/Shopify/quilt/issues/791#issuecomment-524315739
I'm getting this on Safari and Chrome, but not Firefox.

I am getting "Oauth error invalid_request: The redirect_uri is not whitelisted" when I use the inline


add superlinter check

@prathmesh4321 @Xiangs18 i will be adding this yamllint stylecheck to the stylecheck this will cause several files to start failing. I tried to fix several files but didnt do all of them. When you do get chance please do fix them in subsequent PRs.


Karpenter should not destroy all provisioner resources when provisioner is removed

Version
Karpenter: v0.12.0

Kubernetes: v1.20.15-eks-a64ea69
Expected Behavior
When replacing Provisioner during Karpenter upgrade, production application remains available
Actual Behavior
Production application crashes and burns as Karpenter ungracefully destroys all resources owned by the provisioner, without replacing them
Steps to Reproduce the Problem

Create provisioner
Deploy application which causes provisioning
Create new provisioner with different specs which can still support the application
Delete the original provisioner

Deleting of production resources which causes outages should be a fully intentional action invoked by an administrator making a conscious decision to take down the application. It should NEVER be a result of an unrelated action. I am aware this functionality was recently added to Karpenter, however I strongly believe it should be removed.

Feel free to reopen if you disagree with the discussion, or have further questions or comments.


help setting up s3 storage please

I'm trying to connect to an s3 bucket but getting a Failed to establish S3 connection warning when I save the changes. This is what I've entered so far:

I know pretty much nothing about AWS or S3 so any help would be much appreciated.
Thanks!

The config from the screenshot doesn't look properly formatted.
For "Endpoint" I believe the correct one should be just s3.eu-central-1.amazonaws.com.
For "Bucket" - keep only the plain bucket name, eg. bucket-name.
For "Region" - keep only the region identifier, eg. eu-central-1.
I'll move the issue to Q&A discussion.


CI: create rpm packages

Use docker to create the correct build environment
Bump patch version to 2.0.1
The scripts in /build/ do not work.

Thanks, but there is no need to do that manually. We have generic CI configuration that can be applied here (see for example https://github.com/QubesOS/qubes-app-linux-split-gpg/blob/master/.gitlab-ci.yml). It requires Makefile.builder file (which is required anyway to build official packages).
And generally, we use gitlab-ci, not github actions.

@fepitre, would you like add missing pieces here?

Sure.


Text bug

Thanks for the good article!
In the section deleting-all-pods-in-namespace-while-keeping-the-namespace you have a mistake in a word in the first command:
kubeclt delete po --all
You used kubeclt instead of kubectl.

@mhdsmd thank you for opening this issue, fixed via https://github.com/knrt10/kubernetes-basicLearning/commit/bd37fae013e9a1db3cd2dfdac0dc5c1e74a7ec0c


Allow hosts to charge different fees per Collective

User story
As a host admin, I want to specify different fees for different Collectives in my host, so that I can manage both internal projects (who I don't want to charge a fee to) and offer fiscal hosting services externally (which I do want to charge for).
Best solution for this problem
Probably would need a "Collectives" tab on the host dashboard that lists some settings hosts define per Collective, one of which is the host fee.
MVP
If it's possible for us to set this up by request that would be great, even if we don't develop a user-facing feature right now.

I also want to be able to specify a plan rather than a fee.
Eg. Open Collective Brussels is asking €10/month to each collective. Right now they have just created a tier and they manually ask collectives to subscribe to it. It would be very useful if this could be part of the built-in experience.

https://github.com/opencollective/opencollective/issues/3355 will solve this issue. We'll follow up on https://github.com/opencollective/opencollective/issues/2821#issuecomment-584154676 with https://github.com/opencollective/opencollective/issues/3362.


[Revise subclass] MONDO:0008608 down syndrome subclass of many

MONDO:0008608 down syndrome
is currently
Subclass of:
syndromic intellectual disability
Moyamoya syndrome
chromosomal anomaly with epilepsy as a major feature
genetic multiple congenital anomalies/dysmorphic syndrome
rare syndrome with cardiac malformations
multiple congenital anomalies/dysmorphic syndrome-intellectual disability
total autosomal trisomy
I suspect that at least some of those parents should better be represented as associations with phenotypes or disorders. The link to Moyamoya syndrome was brought up in a previous MONDO ticket (https://github.com/monarch-initiative/mondo/issues/544). The broader issue of parentage inherited from Orphanet is documented in EFO too (https://github.com/EBISPOT/efo/issues/322). In this particular case, EFO inherits parentage of Down syndrome from MONDO (http://www.ebi.ac.uk/efo/EFO_0001064). Any opinions?
Also, the label should be 'Down syndrome' as it's an eponym (https://en.wikipedia.org/wiki/Down_syndrome#History).
Thanks!

We really need to review the only-ordo supported is-as soon
Definitely not a type of moyamoya.
for the others, wondering if we should even obsolete some of the parents
@nicolevasilevsky can you handle?

@cmungall I removed several superclasses and made them excludedSubclassOf:

MONDO:0000508 'syndromic intellectual disability'
MONDO:0003847 'inherited genetic disease'
MONDO:0018792 Moyamaoya syndrome
MONDO:0015652 'chromosomal anomaly with epilepsy as a major feature'
MONDO:0015159 'multiple congenital anomalies/dysmorphic syndrome-intellectual disability'
MONDO:0015506 'rare syndrome with cardiac malformations'

Should we consider obsoleting any of these terms?
Should we create a new ticket re: reviewing the only-ordo supported is-as relationships?

Another question here that @paolaroncaglia brought up on our call is - some of the old superclasses for Down Syndrome are phenotypes (ie intellectual disability, cardiac malformations) - do we want to capture these logically on this term somehow?

given we do not have common disease association files in place yes, make these disease-has-phenotype links if you believe them to be true

Would this be the correct way to do this:
add SubClassOf axioms:
'disease has feature' some 'Intellectual disability'
'disease has feature' some epilepsy
'disease has feature' some 'Abnormal facial shape'
'disease has feature' some 'Abnormality of the cardiovascular system'
Thanks!

@nicolevasilevsky
@cmungall
Another "pending PR". Yes, I'm reviewing EFO tickets in Mondo in view of our meeting on Monday... thank you both!

@nicolevasilevsky
Reopening this ticket please as something seems to have gone wrong, MONDO:0008608 'Down syndrome' still has some weird superclasses, including 'syndromic intellectual disability' that is both a superclass and an excluded superclass? See https://www.ebi.ac.uk/ols/ontologies/mondo/terms?iri=http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FMONDO_0008608, and I'm seeing the same in current EFO + Mondo import. To summarize, 'Down syndrome' should only be a direct subclass of 'total autosomal trisomy'.
Not sure what happened, let me know if I can help. Tagging this for your January release please. And thank you! :-)


Rebased Unnecessary String interpolation fix.

This PR replaces #54 as a rebase branch instead.

Travis is failing with: The command "eval git fetch origin +refs/pull/56/merge:" failed. Retrying ... Any idea why?

@ssanj Because it is merged, that doesn't exist anymore.

cool! :)


Import Compilation Error

Trying to test this lib with my project. But I am getting the error on import.

Inside index.ts also

it says Cannot find module 'flub-error-handler' and Cannot find module 'error-handler'
I have updated my dependencies too as mentioned in your package.json peerDependencies
"@nestjs/common": "^5.4.0",  "@nestjs/core": "^5.4.0".
Any help will be much appreciated. Let me know if I am missing anything

Whats the status @bashleigh? Just installed this good looking dependeny via npm and got this error!

@maxfriedmann sorry I've not managed to take a look at this :( been really busy! I'll try and find some time this week to take a look at it. Sorry!

Hasn't it been solved yet?

released as 0.2.0


Navigation button broken in browser

This is not an issue. The number or chromosomes showing is a function of the reference being used. So if there is only 1 chromosome in the reference, that is all that will show.


[WIP] Skip normal authentication for JDBC requests in Router

Authentication for JDBC requests should use credentials stored in the JDBC connection context instead of the HTTP headers.
On the broker, DruidAvaticaHandler handles JDBC requests separately from the normal authentication checking filters.
On the router, JDBC requests currently go through the normal authentication checking filter which is extraneous/incorrect.
This PR sets the Avatica path as "unsecured" on the Router, deferring the authentication check to the broker where authentication will occur using the JDBC connection context.

This looks reasonable, but now I'm wondering, is there a reason why any of the proxied paths have security checks? In those cases I would think you could do a pass-through and let the target verify authentication & authorization.

I don't think auth checks are necessary for the proxied paths at the Router (extraneous but doesn't break anything), I'll take a look at removing those as well

@jon-wei I think there's no need to do that in this patch, especially if you want to backport it to 0.12.0, in which case it should be as targeted as possible to the bug being fixed. I was just wondering since it seemed like a weird inconsistency to check for other paths but not for the Avatica JDBC path. It set off a red flag: "surely there must be some reason we were checking authorization on these paths; is it a security hole to set it to unsecured?"
If that red flag is not actually warranted, there should at least be a comment here about why it's ok that we aren't checking this path. And making the paths more generally consistent would be good as a separate patch to master.

@gianm Alright, sounds good, I'll keep this WIP for now though (adding an integration test)

added an integration test for broker/router avatica queries with authentication

@jon-wei could you please do the backport?


use remark pluging logger

The second argumen of visit should be a logger; we should use that in order to get proper logging in the builds

Also add support for github annotations format

ref: https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#setting-a-warning-message
from: https://github.com/microsoft/rise4fun/commit/663a786f39de026fab57465edd8e4e8dbde441ec#commitcomment-77467560
(just linking everything together for my own reference)

API for visit: (tree: Node, test_node: string, visitor: Function, reverse?: boolean)
Doesn't seem to have an argument for a logger.
Is our current logging mechanism enough? If so we can close this one.


feat: Optionally add permissions to gql resolvers

Still need to add more tests.  Allows configuring agent with authentication boolean at instantiation.  An auth-identity can be set in the request context and resolvers will include that identity in their generated queries if authentication is set to true.

@simonas-notcat updated

@walfly I just released 4.0. Please create a new PR to master with your changes to
packages/daf-core/src/__tests__/resolvers.test.ts
packages/daf-core/src/graphql/graphql-core.ts

Sorry for inconvenience

@simonas-notcat alright ready now


Release drafter does not draft new releases

For a new project generated using go-template, release-drafter does not work out-of-the-box as expected. When a new pull request is merged, release-drafter runs as an action, but fails to update the draft release with information related to the merged pull request.
This bug might be related to the fact that a specific version of release-drafter is pinned in workflow currently
https://github.com/notsatan/go-template/blob/3c240566ff685b5863e1a9360d26038f7b459740/{{ cookiecutter.project_name.strip() }}/.github/workflows/release-drafter.yml#L10-L19

This bug might be related to the fact that a specific version of release-drafter is pinned in workflow currently

Just tested this out — pinning a minor/patch version of the action seems to causing the bug. Specifying just the major version allows the action to continue functioning normally.


V4 dev gem badge goes to non BS owned gem

https://rubygems.org/gems/bootstrap directs to a non V4 Bootstrap gem from an individual not on the core team.

removed for now

Refs e7b0d726dbe8ad7b442056846b52545e391ace18

Looks like the gem is owned by @glebm—can/should we restore the badge?

Yes. Restored in 27596f48f4c84f823a2b4cb6ff3e4fc55ced6344.


Support Nested Transactions / Savepoints

Problem
Nested Transactions are useful in many cases. They are implemented in all other serious database query systems: (TypeORM, Rail's ActiveRecord, Django ORM, Laravel's Eloquent ORM, Elixir Phoenixs Ecto, Spring etc.)
A common use case is using nested transactions to run tests within their own transaction. (Rails, Django, Phoenix and possibly others default to this behaviour).
Other use cases include more complex business logic, where partial rollback is necessary.
Many users of Prisma have run into this problem (1 2 3 4 5), and it has inspired a number of workarounds (1 2 3 4 5).
Suggested solution
Most databases implement nested transactions with "Save points". For example, see the PostgresSQL API:
BEGIN; # Outer Transaction starts
    INSERT INTO table1 VALUES (3); #
    SAVEPOINT my_savepoint; Inner Transaction starts
    INSERT INTO table1 VALUES (4);
    RELEASE SAVEPOINT my_savepoint; Inner Transaction ends
COMMIT; # Outer Transaction ends

Application code usually do not care about whether or not the transaction it's about to start is nested within another transaction. In the case of running transactional tests, all application code transactions should actually be nested transactions, but it should not need to require changes to the application code.
Thus, I propose either that prisma.$transaction is changed to run nested transactions if a transaction has already been started, or to crease a new function prisma.$possibly_nested_transaction that will nest transactions automatically.
As far as I can tell it's not possible to implement this via the prisma extension system, as we have to proxy all calls to the prisma clients to make sure no new outer transactions are started.
Here is an (untested, possibly buggy) "extension" to the prismaClient to implement this feature for PostgreSQL:
function dbClient() {
  let prismaClient = new PrismaClient({ log: ['query'] });
  let proxy = new Proxy(prismaClient, {
    get: (target: any, prop, receiver: unknown) => {
      // We need a track the nesting level
      if (target.transactionNestedLevel === undefined) {
        target.transactionNestedLevel = 0;
      };

      // On all method calls to the prismaClient, we need to check if we are currently within a transaction,
      // and if the Prisma Transaction Object has that method. If it has, call the method on the Prisma Transaction Object
      // to avoid starting and committing new transactions.
      if (prop !== '$possibly_nested_transaction') {
        if (target['currentTransaction'] && prop in target['currentTransaction']) {
          return Reflect.get(target['currentTransaction'], prop, receiver);
        } else {
          return Reflect.get(target, prop, receiver);
        }
      }

      // When $possibly_nested_transaction is called, we should check if we are currently within a (outer) transaction or not.
      // If we are not inside a transaction, we should start one, and save the Prisma Transaction Object for the usage described above.
      // If we are inside an (outer) transaction, we should use Savepoints instead of Transactions.
      // In both cases we must increase the nesting level, call the callback, and then decrease the nesting level again.
      return async function(callback: () => Promise<void>) {
        if (target['transactionNestedLevel'] === 0) {
          return target.$transaction(async (tx: any) => {
            target['currentTransaction'] = tx;
            target['transactionNestedLevel'] = 1;

            try {
              await callback();
            } finally {
              target['transactionNestedLevel'] = 0;
              target['currentTransaction'] = null;
            }
          });
        }

        target.$executeRaw`SAVEPOINT ${target['transactionNestedLevel']}`;
        target['transactionNestedLevel'] += 1;

        try {
          await callback();
        } catch (e) {
          target.$executeRaw`ROLLBACK TO SAVEPOINT ${target['transactionNestedLevel']}`;
          target['transactionNestedLevel'] -= 1;
          throw e;
        }

        target['transactionNestedLevel'] -= 1;
        target.$executeRaw`RELEASE SAVEPOINT ${target['transactionNestedLevel']}`;
      }
    }
  });

  return proxy;
}

Alternatives
The Prisma extension callback-free-itx implements an imperative API to start and stop transactions without wrapping them in a function. This an attempt at allowing transactional tests, however, it will not work with tests relying on transactions in the application code. It's mostly a workaround for the fact that some test runners does have the feature to wrap each test within a function. Eg:
decorateEach((runTest) => {
  prisma.$transaction(() => {
    await runTest();
  });
});
// Now all tests should be run within the `prisma.$transaction`.

Thus I believe it should be implemented in the test runners, not by Prisma.
Additional context
The issue of running transactional tests have been mentioned numerous times in this repo. Mocking database calls (as it proposed here) makes tests faster, but often, its the actual database calls that are the most important thing to test. There's a reason why serious application frameworks default to not mock the database. I've tried to do so in the past, but in most cases it simply leads to tests that don't actually test anything).
As I began investigating this, I realised that another team within my organisation had run into exactly this issue a year ago in another project that uses Prisma. Speaking with the programmers on the team, they advised me not to use Prisma for future projects.

Such a good writeup (thank you). Strongly +1. Just hit & discovered this limitation, and it's a major bummer. Hard to have modular application code (e.g. helper functions that can do things atomically, creating and committing their own transactions to do so) and decouple higher-level transactions from lower-level ones.
Besides the testing use case, another use case for higher-level transactions is for robust idempotency across your whole application. Brandur Leach describes this technique really well in this article:
https://brandur.org/idempotency-keys
And ironically, I was thinking of going this way in part because Prisma also doesn't support SELECT ... FOR UPDATE! (https://github.com/prisma/prisma/issues/8580) 😕
Please consider supporting nested transactions via savepoints. Thank you!

See also:

https://github.com/prisma/prisma/issues/15212


open plot in external browser cannot load image in vscode insider

Describe the bug
In vscode insdier with ssh remote, when create a plot, it can be showed in vscode window, but cannot display in an external browser.
The external browser only display a httpgd framework without image, and stay in loading.
But everything is OK in the vscode stable 1.85.2 (not latest stable). Even all settings and extensions are same, expect the version of vscode (and some pre-release extesion including remote-ssh)
I don't know whether it relates to the vscode changed its remote requirement.
To Reproduce
Steps to reproduce the behavior:

Using vscode insider
draw a pic in vscode
Click the button in 'Open in external brwoser'
See error

Can you fix this issue by yourself? (We appreciate the help)
No
Expected behavior
image can display in web browser
Screenshots

Environment (please complete the following information):

OS: local win11, remote Cent OS 7
VSCode Version: 1.87.0-insider, 1.85.2-stable (not lateest)
R Version: 4.3.2  (remote)
vscode-R version: 2.8.2 (remote)

insider 1.88.0 repaired this problem


Waypoint: Change the Font Size of an Element

Challenge http://www.freecodecamp.com/challenges/waypoint-change-the-font-size-of-an-element has an issue.
I think I've completed the challenge correctly, but the system does not recognize it?

Your code looks alright to me too. Are you sure you clicked the "Run tests" button?

yes, several times. i'd skipped this challenge and continued with the rest..

Okay, any errors in the Console?

no. i reset and typed the answer again still didnt work.

@StudioSwift have you tried this in incognito mode? Or have you done a Hard Reset?

Incognito, cleared browser cached.  Problem exists. Probably a BUG?

Would you be up for a ScreenHero session to figure this out?

@StudioSwift thanks for posting this issue!
I can't reproduce this issue and I'm able to pass that test with your code. Try to Refresh Your Browser Cache and Clear Your Browser's Local Storage.

Please review the Guidelines for Contributing, thank you!.

@awesomeaniruddh thanks for your offer to help.  I'd completed all the other challenges and moved on to Javascript, so I'll just let this one go.

for ghost : you should  code like this:
.red-text {
color:red;
font-size:16px;
}
and than add class .red-text to the "p" tag.
Good luck! ))))


Add on_after_backwards callback option

🚀 Feature
Add an on_after_backward callback option.
Motivation
Currently there are no callbacks for after the backwards step so non-essential code like logging gradients clutters the LightningModule.
Pitch
Expand the callback options to include a hook for on_after_backward() to execute callbacks immediately after the backwards pass
Alternatives
Sticking my non-essential gradient logging code in my LightningModule

useful!

I need nearly the same feature: on_before_backward as an abstract method in the Callback base class would be awesome!

maybe we should add all the optimizer-related hooks to callbacks too if it makes sense?? What do you think @awaelchli?

@rohitgr7 which hooks do you have in mind?

@awaelchli all of them? on_after_backward, on_before_backward, on_before_zero_grad.

I think that would be nice to have.

okay, will add them in few hours.


[workgroups] Create testing workgroup

This workgroup will provide a place to coordinate Upgrade testnet, and share information and parameters for people to connect to the upgrade testnet.

Commit

Committed


Update README.md with limitations in Windows

Hmm, I wonder why Windows has those problems and whether we can avoid them? Theoretically speaking, this package does not use any *nix-specific api at all!

Hmm, I wonder why Windows has those problems and whether we can avoid them? Theoretically speaking, this package does not use any *nix-specific api at all!

It's a dart:io bug (dart-lang/sdk#48329) which impacts cli_repl.  I'ts been mentioned before #81 #88 (and I see an unfinished PR at #61).  Fortunately it's easy to install WSL.
I would worry more about "Hot reload failed" on syntax/type errors, which completely breaks the REPL in all platforms and wipes all your progress.  At least that's what happens if I do something like print() or 1+'a'.

I see. Then maybe we should explain it is dart:io bug. No worries just leave this pr as-is and I will update it.

I would worry more about "Hot reload failed" on syntax/type errors, which completely breaks the REPL in all platforms and wipes all your progress. At least that's what happens if I do something like print() or 1+'a'.

I do not have windows at hand, so I wonder whether you mean "Hot reload failed" is also caused by this dart:io bug? Or by something else

I do not have windows at hand, so I wonder whether you mean "Hot reload failed" is also caused by this dart:io bug? Or by something else

It happens in Windows and WSL Linux too, so I'd assume it breaks other platforms/OSes as well, if not all of them.  It's pretty aggravating.  This doesn't happen in MacOS?

Oh I see. Btw it would be great if we fix this, and feel free to PR for this!

(I will merge a bit later since will need to do a bit of modifications after merging)

@all-contributors please add @Chematronix for code

@all-contributors please add @Chematronix for doc


FixedScaleOffset for handling NaN inputs

Hi,
I was wondering if you all would be interested in a FixedScaleOffset that can handle np.nan inputs? In the style of HDF/netcdf, having a fill value to replace np.nan with an appropriate integer. This could be either user defined or determined automatically based on the astype integer size (assign it the smallest possible integer value).
I can either modify the existing FixedScaleOffset class, or I could create another class. It's a very simple change, though there may be concerns of more memory usage due to boolean masking.
Also, is there any reason why dtype shouldn't always be a float and astype shouldn't always be an integer?
Thanks

is there any reason why dtype shouldn't always be a float and astype shouldn't always be an integer

I can certainly imagine an offset for integers, but a scale less so. Of course, you also get to specify the bitsize of each, and it can be important whether you save as uint8 and load into float32 or something bigger.

We have a lot of use for this, especially to move away from using attributes "add_offset" and "scale_factor" in xarray, and instead using the zarr encoding directly. I’ve made some preliminary changes to address this issue in my fork. You can check them out in this branch: fixedscaleoffset-nans.
I added to the tests, except the test_backwards_compatibility. This appears to create files that do not clean up after each run, which will interfere with the nan/fill_value cases because the codecs get run on all the previous datasets saved. This causes an issue when a scale/offset is used on a "old" dataset that has values that do not make sense to use with the current codec's offset/scale. I am probably overlooking a way to handle this:
https://github.com/zarr-developers/numcodecs/blob/main/numcodecs/tests/common.py#L259-L276
    # save fixture data
    for i, arr in enumerate(arrays):
        arr_fn = os.path.join(fixture_dir, f'array.{i:02d}.npy')
        if not os.path.exists(arr_fn):  # pragma: no cover
            np.save(arr_fn, arr)

    # load fixture data
    for arr_fn in glob(os.path.join(fixture_dir, 'array.*.npy')):
        # setup
        i = int(arr_fn.split('.')[-2])
        arr = np.load(arr_fn, allow_pickle=True)
        arr_bytes = arr.tobytes(order='A')
        if arr.flags.f_contiguous:
            order = 'F'
        else:
            order = 'C'

        for j, codec in enumerate(codecs):

Would this be something worth going forward with? Thank you for the help/suggestions.

I had some confusion on my previous post. I've added some fixtures for the case where a fill_value is present. Would this be worth a PR, or should this "fill_value" FixedScaleOffset be added as a different filter?


Problem: Your platform doesn't suppport hardware accelerated AV1 decoding. Failed to get pixel format.

Hello, I have a problem when using opencv-python:
System information (version)：

python: 3.8
opencv-python: <IP_ADDRESS>
ffmpeg: ffmpeg version 6.0-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2023 the FFmpeg developers

I just want to extract frame, but it got an unexpected error：

Here is my demo code:
`import cv2
video_path = "/home/marden/source/video/sample.mp4"
cap = cv2.VideoCapture(video_path)
if not cap.isOpened():
print("Error: Could not open video file.")
exit()
ret, frame = cap.read()
if not ret:
print("Error: Could not read frame.")
exit()
cv2.imwrite("frame.jpg", frame)
cap.release()`

+1

Same Issue +1

+1

+1

+1


@Skyfallk u can use this => https://github.com/autonomousvision/differentiable_volumetric_rendering/blob/master/configs/multi_view_reconstruction/angel/ours_rgb.yaml

@tharinduk90 thanks, i'll try


Support Rack 3

Update Service to properly support Rack 3.
Looks like this is all we need to do.

Rewinding the body is no longer required. Only rewind if it is rewindable. Apps can add Rack::RewindableInput::Middleware if they need rewindable input.
Response headers must all be lower case. Use Rack::Headers as recommended (when available) to help ensure headers are lower case.
Updated example code for Rack 3.
Added example_rack2 that locks to Rack 2, but uses the code from the regular example.

Closes #111

@arthurnn our team could use this update as well. Hoping it gets merged in!

thanks for working on this. this is great. I would be nice to have CI running on rack 2 and 3 too (like we have a matrix for faraday)

@arthurnn added.

👋 @arthurnn Our team is facing a vulnerability issue that could benefit from this update as well! Anything else needed to get this over the finish line?

thanks for working on this


[TypeScript] Go to definition goes to *.d.ts when across project references

The issue is, with project reference, going to the generated declaration file is really inconvenient. It should be possible to go directly into the source file.
Not sure this is a dup since many issues have been reported and it's unclear whether they're fixed, or whether it's a vscode or TS issue.
Maybe it's related to https://github.com/Microsoft/TypeScript/issues/16792 ?

VSCode Version: 1.33.1
OS Version: OS X 10.14.4

Steps to Reproduce:

clone https://github.com/RyanCavanaugh/project-references-demo.git
run gulp core; gulp animals
open the project using vscode
navigate to animals/dog.ts
do go to definition on the second line, either on the file name or the symbol name
vscode will go into utilities.d.ts

Does this issue occur when all extensions are disabled?: Yes

Can you please try adding "declarationMap": true to the compilerOptions in your tsconfig. This will generated a map so that go to definition can just back to the original ts source instead of the generated d.ts

I think you're right. I did not know that!
Thanks a lot! Closing


add Ecto.Query.reverse_order/1 to reverse query sort

Following my proposal from today, this PR adds a reverse_order/1 function to Ecto.Query. This function reverses the order for each of the query's order_bys.
Most of this logic was already implemented in last/2, so I extracted that to a shared private function and used that from both places.
Let me know what changes I can make 😄:v:

:heart: :green_heart: :blue_heart: :yellow_heart: :purple_heart:

The counter argument to that is that list == reverse(list) for an empty
list too. :)
José Valimwww.plataformatec.com.br
http://www.plataformatec.com.br/Founder and Director of R&D

The result of the query is not empty, though. And we already have some similar behaviour in the last query modifier.

@michalmuskala oh, you are saying that we should reverse by primary key then? That is fine by me. So last becomes reverse_order |> first right?

Yeah, I think that would give less surprising results.

Well, that would make the code even more shared with last 🙂 can’t think of any scenarios where that would be problematic either.

Sweet, i pushed a change to master!


[enhancement] Correct zoom scale and bounds in kepler video export

https://github.com/keplergl/kepler.gl/blob/master/src/utils/export-utils.js#L70-L91
https://github.com/keplergl/kepler.gl/blob/master/src/components/plot-container.js#L160-L172

Pull Request Test Coverage Report for Build 991348014

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 16.701%

Totals

Change from base Build 990848113:
0.0%

Covered Lines:
142

Relevant Lines:
667

💛  - Coveralls


problem when execute npx tsx demos/demo.ts

Verify latest release

[X] I verified that the issue exists in the latest chatgpt release

Verify webapp is working

[X] I verify that the ChatGPT webapp is working properly for this account.

Environment details
node : v18.11.0
OS : win11
browser : edge
Describe the Bug
⠋ Write a python version of bubble sort. Do not include example usage.(node:6704) ExperimentalWarning: The Fetch API is an experimental feature. This feature could change at any time
(Use node --trace-warnings ... to show where the warning was created)
✖ Write a python version of bubble sort. Do not include example usage.
TypeError: fetch failed
at Object.fetch (node:internal/deps/undici/undici:11118:11)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at Promise.then.promptTokens (d:%E5%AD%A6%E4%B9%A0%E8%AF%BE%E5%A4%96\ChatGPT API\chatgpt-api\src\chatgpt-api.ts:251:25) {
cause: ConnectTimeoutError: Connect Timeout Error
at onConnectTimeout (node:internal/deps/undici/undici:6625:28)
at node:internal/deps/undici/undici:6583:50
at Immediate._onImmediate (node:internal/deps/undici/undici:6612:37)
at process.processImmediate (node:internal/timers:471:21) {
code: 'UND_ERR_CONNECT_TIMEOUT'
}

}

This project is undergoing a major revamp; closing out old issues as part of the prep process.
The chatgpt package is pretty outdated at this point. I recommend that you use the openai package or the openai-fetch package.


[CognitiveServices] account show on nonexistent account throws stack trace

(env2) C:\Users\trpresco\Documents\github\azure-cli>az cognitiveservices account show -g tjp-rg -n nonexist
(ResourceNotFound) The Resource 'Microsoft.CognitiveServices/accounts/nonexist' under resource group 'tjp-rg' was not found.
Traceback (most recent call last):
  File "C:\Users\trpresco\Documents\github\env2\lib\site-packages\knack\cli.py", line 197, in invoke
    cmd_result = self.invocation.execute(args)
  File "c:\users\trpresco\documents\github\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 347, in execute
    six.reraise(*sys.exc_info())
  File "c:\users\trpresco\documents\github\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 319, in execute
    result = cmd(params)
  File "c:\users\trpresco\documents\github\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 180, in __call__
    return super(AzCliCommand, self).__call__(*args, **kwargs)
  File "C:\Users\trpresco\Documents\github\env2\lib\site-packages\knack\commands.py", line 109, in __call__
    return self.handler(*args, **kwargs)
  File "c:\users\trpresco\documents\github\azure-cli\src\azure-cli-core\azure\cli\core\__init__.py", line 418, in default_command_handler
    result = op(**command_args)
  File "c:\users\trpresco\documents\github\env2\lib\site-packages\azure\mgmt\cognitiveservices\operations\cognitive_services_accounts_operations.py", line 289, in get_properties
    raise models.ErrorException(self._deserialize, response)
ErrorException: (ResourceNotFound) The Resource 'Microsoft.CognitiveServices/accounts/nonexist' under resource group 'tjp-rg' was not found.

The recommended fix would be an exception handler for these commands as it is likely common throughout the service.

Environment summary
Install Method (e.g. pip, interactive script, apt-get, Docker, MSI, edge build) / CLI version (az --version) / OS version / Shell Type (e.g. bash, cmd.exe, Bash on Windows)
azure-cli (2.0.30)

acr (2.0.22)
acs (2.0.30)
advisor (0.5.0)
appservice (0.1.30)
backup (1.0.7)
batch (3.1.11)
batchai (0.1.6)
billing (0.1.7)
cdn (0.0.13)
cloud (2.0.12)
cognitiveservices (0.1.11)
configure (2.0.14)
consumption (0.2.2)
container (0.1.19)
core (2.0.30)
cosmosdb (0.1.19)
dev-tools (0.1.1)
dla (0.0.18)
dls (0.0.19)
eventgrid (0.1.11)
eventhubs (0.1.1)
extension (0.0.11)
feedback (2.1.0)
find (0.2.8)
interactive (0.3.18)
iot (0.1.18)
keyvault (2.0.20)
lab (0.0.19)
monitor (0.1.3)
network (2.0.26)
nspkg (3.0.2)
profile (2.0.20)
rdbms (0.1.1)
redis (0.2.11)
reservations (0.1.1)
resource (2.0.26)
role (2.0.21)
servicebus (0.1.1)
servicefabric (0.0.11)
sql (2.0.24)
storage (2.0.28)
testsdk (0.1.0)
utility-automation (0.1.1)
vm (2.0.29)

Extensions:
alias (0.3.0)
rdbms (0.0.3)
subscription (0.1.0)

Python location 'C:\Users\trpresco\Documents\github\env2\Scripts\python.exe'
Extensions directory 'C:\Users\trpresco\.azure\cliextensions'

Python (Windows) 2.7.11 (v2.7.11:6d1b6a68f775, Dec  5 2015, 20:32:19) [MSC v.1500 32 bit (Intel)]

@pchoudhari


message_view: Fix error thrown on deleting stream and searching for it.

Previously, when a stream is deleted and the deleted stream is looked up in the search bar, then an error is thrown.
This is because, when the StreamSubscription object of the deleted stream is fetched we try to access its properties -- invite_only and is_web_public, despite it being undefined.
This is fixed by accessing the properties only when the object is not undefined.

CZO

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[x] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[x] Responsiveness and internationalization.
[x] Strings and tooltips.
[x] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

@timabbott Tagging for integration review as it looks like you're reviewing this, and there's an answer to your comment above.

Merged, thanks @roanster007!


Company seems dead. You won't be able to get support lol.


remove import to allow compile

Since last version drops support for Cordova 2.9 it doesn't compile.
Not sure if this pr is correct, but at least compiles

Thanks. I'm making this same fix now. I'll push a new version to NPM after I test everything.

Cool! (Great job btw)


Popout window is blank

After migrating to the version 2.0.0, the popout window displays no content.
The browsers tested are:

Version 87.0.4280.88 (Official Build) (x86_64) on macOS 11.0.1
Version 14.0.1 (166<IP_ADDRESS>.8) on macOS 11.0.1
Version 87.0.4280.88 (Official Build) (64 bit) on Windows 10

Version 1.3.0 was working fine with same set ups.
Not only on my app that this behavior is present, but also the online demo is showing the same behavior as well.

😯 it works good on chrome, but not on firefox.
in v2 i started using some browser event to make things happen.
will take a look.

my thought was to hook on the window load event, but it seems each browser have different behavior for when to dispatch this event. have to find some other way...

@leesan70 hi,
i have published a fix in v2.1.0 https://www.npmjs.com/package/angular-popout-window
please test it and let me know.

Working fine on my set ups!


Performance issues

Hi,
I tried to use table-master (alone, not the end2end model) but it takes 18s just to infer on one image from pubtabnet (~500 pixels width) plus it takes about 2GB memory from the GPU (1 tesla K80).
Therefore I wanted to know if it is the normal memory consumption and processing time for table-master and also I wanted to know if there is any mean to reduce the memory consumption and increase the processing speed. Because it is unfeasible to use a model that takes 18s to infer on one image.
Thank you in advance for your answer

my bad I just found this issue: https://github.com/JiaquanYe/TableMASTER-mmocr/issues/8


[Wallet] Reduce invite redemption time

Description
Successfully redeeming an invite code currently takes ~44 seconds on average, which results in a large amount of users dropping off. This PR does three things to try to speed the process up:

Runs invite redemption generators in parallel to the extent possible
Hard codes the gas estimate for moving funds to $0.005, an order of magnitude higher than the $0.0003 it costs when recorded
Moves the DEK registration to after the invite redemption is successful. In practice DEK registration will now run simultaneously to verification

Other changes
Added in more event logging so we can better diagnose bottlenecks. Removed a migration hack from the DEK registration process that we no longer need.
Tested
Tested on device
Related issues

Partially addresses #4655

Backwards compatibility
Yes

Reading this I am now realizing that we actually estimate gas twice for every transaction, which is less than ideal. Instead of hardcoding the gas fee here, we need to be hard-coding the gas amount and using that to derive the fee if we hope to avoid the cost of both gas estimations. I can provide more context if needed.

@tarikbellamine @jeanregisser  i have verified task using TestFlight 1.1.0 build (21) and Play Store internal<PHONE_NUMBER>) and observed that invite code redemption time is ~30-35 sec for me.
Note: I have check 2 -2 times on Android and IOS platform.


Example run on AWS

I think default AWS run example on http://googlecloudplatform.github.io/PerfKitBenchmarker/getting-started in "EXAMPLE RUN ON AWS" section should be changed to:
./pkb.py --cloud=AWS --benchmarks=iperf --machine_type=t2.micro
t1.micro => t2.micro
as t1.micro was replaced by t2.micro and t1.micro does not support Placement Groups.
It returns "Placement groups may not be used with instances of type 't1.micro'" error.

Thanks for pointing that out - fixed in the above PR


Could not find TensorFlow Java 2.3.0 release in maven central

System information
Not relevant
Describe the problem
<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>tensorflow</artifactId>
  <version>2.3.0</version>
</dependency>

This dependency cannot resolve.

Just curious to know what has happened to the Java releases in general. It looks like 1.15 is the latest release on Maven. Are there any plans to continue these releases?

@goldiegadde I do not know who owns the java releases, do you know?

I wonder if there is any update on the issue?

@jason-dai as far as I know they have split (and redone) the java bindings, you can find it at https://github.com/tensorflow/java

@edwinRNDR Thanks, we'll take a look.

@yangw1234,
As the version numbers used for TF and TF Java are different. Your should update the version as 0.2.0 if you want to install TF 2.3.0 . Here's a documentation that provides the mapping between TF and TF Java
<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>tensorflow</artifactId>
  <version>0.2.0</version>
</dependency>

Let me know if it answes your question. Thanks!


[KYUUBI  #3982] [FEATURE] introduce refreshing user defaults configs

Why are the changes needed?

to close #3982 .
Introduce feature of refresh user defaults config (which starts with three continuous underscores "___") from config file via kyuubi-admin cli and refresh/user_defaults_conf Rest API.

add refreshUserDefaultsConf methond in KyuubiServer to read user defautls configs from property file and apply config changes to server's KyuubiConf
add refresh/user_defaults_conf api to AdminRestApi calling refreshUserDefaultsConf of KyuubiServer
add config type userDefautls in kyuubi-admin cli refresh command

This feature will

help to apply user defaults conf without restarting server or losing connections
load latest config for engine launch, e.g. spark related config spark.*

It won't

affect the components already started and using the clone of server conf
affect configs for launched engine instance

How was this patch tested?

[x] Add some test cases that check the changes thoroughly including negative and positive cases if possible

[ ] Add screenshots for manual tests if appropriate

[x] Run test locally before make a pull request

Codecov Report

Merging #3983 (bf5448e) into master (ff6b792) will increase coverage by 0.00%.
The diff coverage is 80.00%.

@@            Coverage Diff            @@
##             master    #3983   +/-   ##
=========================================
  Coverage     52.06%   52.07%
  Complexity       13       13
=========================================
  Files           529      529
  Lines         29155    29169   +14
  Branches       3891     3893    +2
=========================================
+ Hits          15181    15191   +10
- Misses        12589    12594    +5
+ Partials       1385     1384    -1

Impacted Files
Coverage Δ

.../kyuubi/ctl/cmd/refresh/RefreshConfigCommand.scala
88.88% <0.00%> (-11.12%)
:arrow_down:

...in/java/org/apache/kyuubi/client/AdminRestApi.java
91.30% <0.00%> (-8.70%)
:arrow_down:

...a/org/apache/kyuubi/ctl/opt/AdminCommandLine.scala
100.00% <100.00%> (ø)

.../scala/org/apache/kyuubi/server/KyuubiServer.scala
54.92% <100.00%> (+1.30%)
:arrow_up:

...rg/apache/kyuubi/server/api/v1/AdminResource.scala
94.93% <100.00%> (+0.65%)
:arrow_up:

...n/scala/org/apache/kyuubi/engine/ProcBuilder.scala
80.74% <0.00%> (-0.63%)
:arrow_down:

...in/scala/org/apache/kyuubi/config/KyuubiConf.scala
97.45% <0.00%> (-0.07%)
:arrow_down:

...g/apache/kyuubi/operation/BatchJobSubmission.scala
75.47% <0.00%> (ø)

...apache/kyuubi/engine/JpsApplicationOperation.scala
77.41% <0.00%> (ø)

...he/kyuubi/ha/client/etcd/EtcdDiscoveryClient.scala
69.06% <0.00%> (+0.55%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

An alternative option is wrapper settings and reader of KyuubiConf by Guava cache, WDYT? cc @yaooqinn @ulysses-you @turboFei

I am open to refreshing server conf manually or automatically. Auto-refreshed cache with intervals provided is also good to me.
Considered replacing settings from map to Guava cache. There's one thing that bothered me when getting evicted key from the cache loader, it will cause extra repeated IO load of reading the whole config file for each key.

I think the first things is: we should make sure what configs can be hot updated. e.g. what happens if user modify the Kyuubi server port or host ?

how about referring hadoop implementation
https://github.com/apache/hadoop/blob/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/conf/Reconfigurable.java

I would like to change this PR for reloading users' default configs (with "___${user}___" prefix) this time rather than all the server configs, to limit the impact for engine instance launching.
For Reconfigurable support in each config, it could be introduced later with a detailed design and related mechanism for event or restarting components.

I would like to change this PR for reloading users' default configs (with "___${user}___" prefix) ...

SGTM, I suppose this way does not introduce side effects.

I would like to change this PR for reloading users' default configs (with "___${user}___" prefix) this time rather than all the server configs, to limit the impact for engine instance launching.
For Reconfigurable support in each config, it could be introduced later with a detailed design and related mechanism for event or restarting components.

cc @pan3793 @ulysses-you @turboFei
I have changed this PR to refreshing user defaults configs, please have a check.

I'm not against this feature. But a question: can this be covered by SessionConfAdvisor ?

I'm not against this feature. But a question: can this be covered by SessionConfAdvisor ?

SessionConfAdvisor was considered and may not be the best solution for this scenario.

user defaults configs are prepared and set in kyuubi-defaults.conf. From the  perspective of ops, changing it as where it is is more straight, and this refreshing feature only helps applying changes without restarting server instance.
general usage of SessionConfAdvisor is not limit to applying specific default values to conf but also contains some rules for proper conf settings. e.g. fix max mem usage over 4g to 4g at maximum.
only one SessionConfAdvisor supported right now and it may conflict to other possible usage of SessionConfAdvisor
user defaults configs may cover larger area than session confs

Also, consider backporting this feature to 1.6 ?

thanks, merging to master


Constructor "undefined" when target ES2022 & decorator is used

Bug Report
The way how static fields are initialized seems to have changed in ES2022.
In previous module versions, it was possible to pass constructor of a class to a function that initializes a static field.
This still works in ES2022 as long the class has no decorator.
Once a decorator is applied, the constructor is undefined.
@decorate()
class A {
 static a = doSomething(A);
}

function doSomething(token: any) {
  console.log('TOKEN', token).
   // ES2020 logs "TOKEN",  class A {}
   // ES2022 logs "TOKEN",  undefined
}

🔎 Search Terms

static
constructor
decorator

🕗 Version & Regression Information

4.8.4
It seems not to be related with the typescript version, but with the specified target

⏯ Playground Link
https://www.typescriptlang.org/play?target=9&ts=4.8.4&useDefineForClassFields=true#code/PQKhCgAIUqYRgHSQJIDNIE8D2BXSAzgA4CmAxgJZqaQAuAhgE4DmJtAXJAKIDKATAAZBkbI278h8OgAsSkMtgB2BWo1xlaoyAHcKAGz2QARnL3ZmrACbI4kPsgCCaWiTHFyVTBUXM6TVhzignx8MnIKyqrqmmIUBJC4ipYkaN4k1nDA4OAAAskKjPQuAOoUtNIAYvQaopgAFACU4GR69ATxDpAA3lAqRRRkkPSQALyQltg82AC2bNLezHUODQDc4AC+2eBoiRoUSuPkokUkpeVVNYz1Dd1QkIxsuIyKkHUMLGyc9IqYNyMAfLdIMD7o9nn4PrQ1sDNpttrtaPsXhMprNygs3tgANYkRRfH43HrAiIEbB6EiIMyLADkABUAPIAaS4ADlqQAaOjY3FNdZAA

Playground link with relevant code
💻 Code

/**
 *
 * 1. If you specify target: ES2020 or ES2021 the constructor will be logged.
 * 2. After specifying target: ES2022 the constructor is undefined.
 */

@decorateWithFactory()
class A {
 static a = doSomething(A);
}

function decorateWithFactory() {
  return (target: any) => {
    return target;
  }
}

function doSomething(token: any) {
  console.log('TOKEN', token)
}

🙁 Actual behavior
The Library https://github.com/co-IT/ngrx-ducks makes use of extracting information from a constructor.
The function useActions does not work any more with ES2022.
https://github.com/co-IT/ngrx-ducks/issues/85
🙂 Expected behavior
Calling a function to initialize a static field by using its constructor should work.
Please let me know if I can provide further information. 🙏
Thanks for your help.

More or less a duplicate of https://github.com/microsoft/TypeScript/issues/51570

Correct, thanks a lot.


Allow any callable as a handler

Callable handlers, not just closures, should be allowed.
Refs #4, #5

cc @lukelancaster

Is there an use case for this?
 And due the default container can resolve strings, I'd use strings always as container ids and never as callables.
And the reason of why only Closure is allowed is because they can be created easily from any callable thanks to Closure::fromCallable, that provide a better control, performance and safety.

The use case is pretty simple:
class FooController
{
    public function __invoke(RequestHandlerInterface $request) { /* ... */ }
}

And the route is defined as:
'foo' => FooController::class,

I would rather not write this for every single route:
'foo' => \Closure::fromCallable(FooController::class),

you never know whether you want a container entry that doesn't exist

This is why I added $container->has(...) to the check.

The default RequestHandlerContainer should resolve FooController::class, isn't?

This is why I added $container->has(...) to the check.

Let's say that I have a controller called print and my container should return an instance of Controllers\PrintController. If the controller is not created yet, it still being a valid callable so no error is throw.
And if it's not a valid callable it throws a RuntimeException instead a NotFoundException so, at the end, you will get random results depending of the name of your controllers.

If the controller does not exist yet

This argument doesn't make sense. By the time this code runs, the container should know what objects it has available and be able to determine that print means PrintController.
As an aside, many containers are opting to use full class names as the identifier, so it is fairly unlikely that there would be a conflict between $container->has(...) and is_callable(...) checks.

What I mean is that $controller->has('print'), can return false (because the class PrintController does not exists, or is misnamed to PrinController, or you forget to add the controller php file before commit, etc...), and the middleware will try to execute the print() function. Or if this happens with a non existing function (let's say $controller->has('listUsers')), you'll get a RuntimeException instead a NotFoundException.
If strings are considered as callables too, there's no way to restrict the requestHandler is resolved only through the container, so if it exists as a global function it will be executed as a fallback. I can consider accept any callable but strings.
Other thing is why you find useful to have a controller with __invoke instead implements the RequestHandlerInterface. In fact, __invoke was suggested but rejected as the method of a RequestHandlerInterface 😃
Anyway, your use case should work perfectly right now, because the default RequestHandlerController should handle this case (as it does in the tests), or please, let me know if this is not happening.

Other thing is why you find useful to have a controller with __invoke instead implements the RequestHandlerInterface.

I don't want to import an interface for all my controllers. There's no benefit to doing that, since the controllers are specific to my application and don't need interop.

@shadowhand Thanks 😃


add generated code to enable security scan

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

51 of 123 (41.46%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 84.332%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

service/doc.go
51
123
41.46%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
2126

Relevant Lines:
2521

💛  - Coveralls


build: simplify the build rules (NFC)

Swift requires CMake 3.19.x to build.  Update the minimum supported CMake to allow us to simplify the build rules somewhat by removing the workarounds for older releases.  Additionally, re-order and use straightline configuration over conditional paths.

CC: @yim-lee @etcwilde

@swift-server-bot please test

@yim-lee can we merge this?  I have a follow up change that I would like to put up.


Greek TV

Addon Manifest URL
https://stremio-greek-tv.herokuapp.com/manifest.json
Addon Description
Greek TV Stremio Add-on
Language of Content
Greek (el-GR)
Choose Labels

[ ] anime
[ ] debrid support
[ ] http streams
[X] live tv
[ ] metadata
[ ] misc
[ ] movies
[ ] music
[ ] nsfw
[ ] radios
[ ] subtitles
[ ] torrents
[ ] tv shows
[ ] video games

most of the channels work, but not all

the addon url has changed. new url is : https://stremiogreektv.bsite.net/manifest.json

you can try again , the correct url is : https://stremiogreektv.bsite.net/manifest.json

its ok dont worry you are not bothering me, the add-on is hosted in a free provider and has some issue .
Please be patient and will be up again.

Seems that's still not working

restarted the service and its working again

It's not loading

@danamag  the addon url changed again, this is the new one : https://stremiogreektv.fly.dev/manifest.json
if you can update also the url on the site. thanks

Addon works for me but most channels throw an http error like ert and mega. Is there any fix for that?

i dont get any http error  . did you get that from stremio desktop , web or android/ios ?

It was actually because I am not in Greece. I changed my VPN and it works now.
For some reason unlike the desktop app, my chromecast is still having trouble with SKAI and Alpha though, even with the VPN. The other channels work.

@tninis the addon is offline. Can you please restart?

@gazoza
Please search inside stremio application the add-on  or use the new URL : https://stremiogreektv.fly.dev/manifest.json

@tninis a day or two ago the add-on stopped responding

@gazoza
The URL was changed , but stremio should have already handle it. Anyway you can use the new URL : https://stremio-greek-tv-latest.onrender.com/manifest.json