Gzip on the server was stopping Transmit from working

Package version
2.0.2
Describe the bug
Bug Report: Gzip Interference with Adonis Transmit/Client on Coolify Deployment
Description:
I'm new to Adonis and encountered an issue when deploying Adonis with Transmit (@adonisjs/transmit v2.0.2) and Transmit Client (@adonisjs/transmit-client v1.0.0) packages on a Hetzner VPS via Coolify. The setup works perfectly on my local machine but fails after deployment. I'm not entirely sure if this is a bug, but I wanted to report it in case others experience the same issue.
Environment:

Adonis Version: 6.13.1
Transmit Version: 2.0.2
Transmit Client Version: 1.0.0
VPS Provider: Hetzner
Deployment Platform: Coolify

Steps to Reproduce:

Install Adonis and add Transmit and Transmit Client packages.
Deploy the app to a Hetzner VPS via Coolify.
Observe the failure.

Expected Behavior:
Transmit should work as expected after deployment, similar to the local environment.
Actual Behavior:

The __transmit/subscribe HTTP request is missing in production. For example, accessing http://localhost:3333/__transmit/subscribe does not work in production.
The __transmit/events?uid=xxx request in production does not get a 200 OK response.
As a result, the connection is never successfully established.

Workaround:
Disabling Gzip in Coolify (an option in the Coolify dashboard) resolved the problem.
Additional Information:
Since I'm new to Adonis, I’m not sure if this is a bug or a configuration issue. I'm happy to provide more details or logs if necessary.
If it's an actual configuration issue, I think adding this to the documentation for future users would be a good addition.
Thanks for the awesome work!
Reproduction repo
No response

Hey @eduwass! 👋🏻
This is interesting! Do you know which Reverse Proxy Coolify is setting up on your server?
Also, do you have any logs on your server that may explain why __transmit/events never answer? It should answer and keep the connection open.
I needed to add a few headers to make it work properly with Traefik and Nginx, so it may be something on our side.

Hi @RomainLanz 👋
Thanks for chiming in so quickly!
I believe Coolify does set up a reverse proxy using Traefik to manage traffic, here's a Configuration file I've found:
networks:
  coolify:
    external: true
services:
  traefik:
    container_name: coolify-proxy
    image: 'traefik:v3.1'
    restart: unless-stopped
    extra_hosts:
      - 'host.docker.internal:host-gateway'
    networks:
      - coolify
    ports:
      - '80:80'
      - '443:443'
      - '8080:8080'
    healthcheck:
      test: 'wget -qO- http://localhost:80/ping || exit 1'
      interval: 4s
      timeout: 2s
      retries: 5
    volumes:
      - '/var/run/docker.sock:/var/run/docker.sock:ro'
      - '/data/coolify/proxy:/traefik'
    command:
      - '--ping=true'
      - '--ping.entrypoint=http'
      - '--api.dashboard=true'
      - '--api.insecure=false'
      - '--entrypoints.http.address=:80'
      - '--entrypoints.https.address=:443'
      - '--entrypoints.http.http.encodequerysemicolons=true'
      - '--entryPoints.http.http2.maxConcurrentStreams=50'
      - '--entrypoints.https.http.encodequerysemicolons=true'
      - '--entryPoints.https.http2.maxConcurrentStreams=50'
      - '--providers.docker.exposedbydefault=false'
      - '--providers.file.directory=/traefik/dynamic/'
      - '--providers.file.watch=true'
      - '--certificatesresolvers.letsencrypt.acme.httpchallenge=true'
      - '--certificatesresolvers.letsencrypt.acme.storage=/traefik/acme.json'
      - '--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=http'
      - '--providers.docker=true'
    labels:
      - traefik.enable=true
      - traefik.http.routers.traefik.entrypoints=http
      - traefik.http.routers.traefik.service=api@internal
      - traefik.http.services.traefik.loadbalancer.server.port=8080
      - coolify.managed=true

Regarding the request, my server logs were showing a completed HTTP request, but it didn't show up as completed in the browser:
[14:13:45.505] INFO (140): Completed HTTP request
    method: "GET"
    url: "/__transmit/events"
    requestHeaders: {
      "host": "gzip.sp500.info",
      "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1 Safari/605.1.15",
      "accept": "application/json",
      "accept-encoding": "gzip, deflate, br",
      "accept-language": "en-US,en;q=0.9",
      "cache-control": "no-cache",
      "cookie": "adonis-session=s%3AeyJtZXNzYWdlIjoieXBsZnMxM240d3hlZmprYXVmMXR5ZzFwIiwicHVycG9zZSI6ImFkb25pcy1zZXNzaW9uIn0.YVWZnXsjdstZqEyUwFCY08vzmfqyFk4n-5IizkfkoPk",
      "pragma": "no-cache",
      "priority": "u=3, i",
      "referer": "https://gzip.sp500.info/",
      "sec-fetch-dest": "empty",
      "sec-fetch-mode": "cors",
      "sec-fetch-site": "same-origin",
      "x-forwarded-for": "<IP_ADDRESS>",
      "x-forwarded-host": "gzip.sp500.info",
      "x-forwarded-port": "443",
      "x-forwarded-proto": "https",
      "x-forwarded-server": "5ef697d65c1a",
      "x-real-ip": "<IP_ADDRESS>",
      "x-request-id": "txrc88ky54xj8tix998i8hsq"
    }
    requestBody: {}
    responseHeaders: {
      "set-cookie": "adonis-session=s%3AeyJtZXNzYWdlIjoieXBsZnMxM240d3hlZmprYXVmMXR5ZzFwIiwicHVycG9zZSI6ImFkb25pcy1zZXNzaW9uIn0.YVWZnXsjdstZqEyUwFCY08vzmfqyFk4n-5IizkfkoPk; Max-Age=7200; Path=/; HttpOnly; Secure; SameSite=Lax"
    }
    status: 200
    responseTime: 2.27261
    clientIp: "<IP_ADDRESS>"
    queryString: {
      "uid": "d0585165-e6b7-4227-a5e0-18248afcee4e"
    }
    routeParams: {}
    acceptedTypes: [
      "application/json"
    ]
    operation: "completed_http_request"
    file: "app/build/app/middleware/log_request.js"
    function: "LogRequest.handle"

The moment I disabled Gzip in the Coolify UI, this option here:

The request started successfully responding.
I've deployed two instances of the same project with and without gzip to be able to easily see the difference in behavior:

https://sp500.info
https://gzip.sp500.info

If you open up network tab on the gzip one you'll see how /events is not resolving.

Can you try to monkeypatch the @boringnode/transmit module and add Content-Encoding: deflate in the header sent?

Hi @RomainLanz 👋,
Thanks again for the guidance earlier!
I apologize for the late reply, I went away on vacation and I'm just got back recently.
Had a chance to tackle this again today, here's an update on what I've tried so far:

I manually patched the @boringnode/transmit module by adding the Content-Encoding: deflate header to the destination.writeHead method in stream.js.
After applying the patch and restarting the server, the Content-Encoding header is now correctly added to the response for the /__transmit/events endpoint.
However, I’m observing a new behavior: the SSE connection frequently disconnects and reconnects. This pattern is consistent, and it wasn’t happening prior to adding the Content-Encoding: deflate header.

You can see it right now in that test env: https://gzip.sp500.info
I wanted to check if you have any suggestions for debugging this behavior.
Looking forward to your thoughts!
Thanks again,
Edu

Here's my last suggestion: if this doesn't resolve the issue, I'll try reproducing it locally.
Could you update your Traefik configuration to use the excludedcontenttypes setting so that text/event-stream is not compressed?

PS: What do you think about adding a note about this here?
https://github.com/adonisjs/v6-docs/blob/main/content/docs/digging_deeper/transmit.md
And maybe in the @adonisjs/transmit readme too?
Happy to submit a PR for it if you like.
Thanks!

Yes, we can update the documentation to mention GZip and clarify that it should be disabled for the text/event-stream content type.
We can also include an example with a Traefik configuration.
Could you open a PR to update the documentation, this repository’s README, and the README within the BoringNode organization?

Here you go @RomainLanz :

https://github.com/adonisjs/v6-docs/pull/174
https://github.com/adonisjs/transmit/pull/35
https://github.com/boringnode/transmit/pull/1

Great! Thanks for your help! 🙌🏻
I am closing this issue.


The version macro in src/pugixml.hpp has not been updated for release 1.12.0

define PUGIXML_VERSION 1110
-> should be 1120

Of course :( Thanks!


Missing 'requests' package in requirements.

I had this as well, not a huge problem, but simple fix.


Render active actions after layoutSubviews.

This resolves a bug where if something triggers a layoutSubviews in your {Collection,Table}ViewCell while the actions are visible, the actions will remain visible.
Without this fix the actions would disappear despite having an active state.

Well, this fixes the issue i was having, but seemingly introduces additional issues.


virtualenv python 2.7.6 import tensorflow. TypeError: init() got an unexpected keyword argument 'syntax'

I am running inside a virtual env and followed the given instructions. The following problem is consistent whether I compile from scratch or use the whl from the provided Internet link.
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.

>>> import tensorflow
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/mnt/4tb_internal/python/tensorflow/local/lib/python2.7/site-packages/tensorflow/__init__.py", line 4, in <module>
    from tensorflow.python import *
  File "/mnt/4tb_internal/python/tensorflow/local/lib/python2.7/site-packages/tensorflow/python/__init__.py", line 13, in <module>
    from tensorflow.core.framework.graph_pb2 import *
  File "/mnt/4tb_internal/python/tensorflow/local/lib/python2.7/site-packages/tensorflow/core/framework/graph_pb2.py", line 16, in <module>
    from tensorflow.core.framework import attr_value_pb2 as tensorflow_dot_core_dot_framework_dot_attr__value__pb2
  File "/mnt/4tb_internal/python/tensorflow/local/lib/python2.7/site-packages/tensorflow/core/framework/attr_value_pb2.py", line 16, in <module>
    from tensorflow.core.framework import tensor_pb2 as tensorflow_dot_core_dot_framework_dot_tensor__pb2
  File "/mnt/4tb_internal/python/tensorflow/local/lib/python2.7/site-packages/tensorflow/core/framework/tensor_pb2.py", line 16, in <module>
    from tensorflow.core.framework import tensor_shape_pb2 as tensorflow_dot_core_dot_framework_dot_tensor__shape__pb2
  File "/mnt/4tb_internal/python/tensorflow/local/lib/python2.7/site-packages/tensorflow/core/framework/tensor_shape_pb2.py", line 22, in <module>
    serialized_pb=_b('\n,tensorflow/core/framework/tensor_shape.proto\x12\ntensorflow\"d\n\x10TensorShapeProto\x12-\n\x03\x64im\x18\x02 \x03(\x0b\x32 .tensorflow.TensorShapeProto.Dim\x1a!\n\x03\x44im\x12\x0c\n\x04size\x18\x01 \x01(\x03\x12\x0c\n\x04name\x18\x02 \x01(\tb\x06proto3')
TypeError: __init__() got an unexpected keyword argument 'syntax'
>>>

Here is the output to pip show numpy protobuf
Name: numpy
Version: 1.10.1
Location: /mnt/4tb_internal/python/tensorflow/lib/python2.7/site-packages
Requires:

Name: protobuf
Version: 3.0.0a3
Location: /mnt/4tb_internal/python/tensorflow/lib/python2.7/site-packages
Requires: setuptools

Here is the output to uname -a. My machine runs Ubuntu 14.04 LTS.
Linux yi-2014 3.13.0-64-generic #104-Ubuntu SMP Wed Sep 9 12:36:12 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

Likely a dupe of https://github.com/tensorflow/tensorflow/issues/11 -- see the solutions near the very end to see if they help.  Thanks!

I followed instructions from https://github.com/google/protobuf and installed the new version of protoc.
Here is the output to protoc --version
(tensorflow)yiliu@yi-2014:~$ protoc --version
libprotoc 3.0.0

I then reinstalled tensorflow, but the output persists.

It's probably something to do with the path -- can you verify that there are no other protobuf libraries on your system that might be interfering?  This problem only occurs when it's using the proto2 version of the python libraries: our python generated files use python3.
To help debug, maybe also try to print the version of the protobuf library when in python?
import google.protobuf
print google.protobuf.__version__

or something like that?

Thank you for your help.
google.protobuf.version was not defined, thereby confirming your suspicion about paths.
To fix my issue:
I exited the tensorflow virtualenv and returned to my default env. Then, I  did sudo pip uninstall protobuf.


Team switch using SDC Client is not possible. We should deprecate switch_user_team method

When our App is used thorough browser, session_Ids are maintained through cookies and sessions are persistent between calls.
Current Team is part of the session and it get loaded from DB (lastUsedTeam) on user login.
On the other hand, when we have requests with SDC_TOKEN instead of cookies, sessions are not persistent, and they last only until request is executed, after which they are destroyed.
That is basically the reason why we have SDC_TOKEN for each (user, team) combination, because SDC_TOKEN identifies USER + TEAM.
Since SDC Client is using SDC_TOKEN, switching team is possible only by acquiring new SDC_TOKEN token for that team.
switch_user_team implementation that we have now is wrong. The effect of its execution is that is it is changing the team for that session, but that session will be destroyed at the end of that request. Next request executed with SDC_TOKEN will again have session for previous team.
Since our client is based on SDC_TOKEN, if someone want to change the team, it should create new client, with new token.
That said we should delete switch_user_team method completely, since it is redundant and can cause misleading feel that team is actually changed.

Closed this issue as the method was removed 2 years ago.


mavlink and land_detector airspeed timeout fixes

This PR updates mavlink VFR_HUD and the fixed wing land detector to handle airspeed data timeout, rather than continuing to use old data. These cases should probably be updated to use airspeed_validated, but this is a quick fix for now.
https://github.com/PX4/Firmware/issues/13697

@dagar I'd prefer to do this with airspeed_validated from the beginning, as this is exactly what this was made for. Made a PR https://github.com/PX4/Firmware/pull/13710. What do you think?

@dagar I'd prefer to do this with airspeed_validated from the beginning, as this is exactly what this was made for. Made a PR #13710. What do you think?

Yes that's my preference as well.


Added stylelint-config-prettier

stylelint-config-prettier will override clashing rules with any other stylelint configs, to prevent stylelint errors being created due to prettier formatting.

VSCode will now recognize .stylelintrc as a jsonc filetype.

Why not a json filetype?

Why not a json filetype?

Right, it should be json since stylelint errors with comments in stylelintrc. Anyway, this was added in #1709 so I can remove it from this PR.

What's the status of this PR?

@amilajack This was rebased against v0.16.0. It passed the working CI.


Python: removed google palm

Motivation and Context

Since Google Palm will be deprecated soon, removing Google Palm from SK.
Closes #6362
Description

Contribution Checklist

[x] The code builds clean without any errors or warnings
[x] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[x] All unit tests pass, and I have added new tests where possible
[ ] I didn't break anyone :smile:

Python 3.10 Test Coverage Report • FileStmtsMissCoverMissingsemantic_kernel/connectors/ai/google_palm   gp_prompt_execution_settings.py29197%45semantic_kernel/connectors/ai/google_palm/services   gp_chat_completion.py691677%68, 155–160, 172–173, 212, 215, 218–219, 227, 231–232, 240   gp_text_completion.py41685%55, 79–80, 86–87, 122   gp_text_embedding.py34585%54, 65–66, 75–76TOTAL668678188%
Python 3.10 Unit Test Overview

Tests
Skipped
Failures
Errors
Time

1567
1 :zzz:
0 :x:
0 :fire:
18.502s :stopwatch:


add Simd::from_slice

this PR adds Simd::from_slice. however this needs lots of documentation + (maybe?) optimizations. so it is marked as draft for now
edit:
added docs, and undrafted it

@workingjubilee hopefully this is the end of this PR, as i dont have time to continue work on this PR (because im distracted by new things)

@workingjubilee please review the changes 😄

Hm. The bizarre failure in const format args is disappointing, and I should probably bring that up with oli or someone, but clearly not your problem.
Right then, going to squash this. Thank you!

That's actually a known limitation of const panics.  The formatters are not const!

@workingjubilee

Right then, going to squash this.

thank you :>

Thank you!

always welcome 😄


Lottie version is too old.

Please update the package by updating the Lottie.

will release an update this weekend

@Ezaldeen99 Any updates?

done


Error trying to retrieve license request

I launched the following command as root:
# dixer_amd64 -genlicreq
Dixer
RED Edition
Version 1.3.0 for linux amd64
Build Time 2020-11-20T15:05:57.737-04:00
Runtime version go1.15.5
SHA1VER 73759c8e6be77a95ec5136ec09bcaaeed24714f8
Copyright (C) Santiago De la Cruz. All rights reserved.

2020-12-03 13:59:37.413 error getting host serial number

My OS is NixOS Linux 20.09 on amd64 platform.

Nevermind, just a matter of missing dmidecode.


better to fail startup than auto-kill other running instances

I stumbled upon #167 and that sems bad design to me: Normal behavior of daemons is to simply refuse to start if a pidfile exist and the referenced PID is alive.
It seems you wanted the forceful startup specifically for certain deployment scripts.  I urge you to consider removing this functionality from atomic-server and instead handle such unusual forceful treatment of pre-existing processes e.g. by having your deployment script do a killall atomic-server && sleep 2 || true before starting atomic-server.
Reason I stumbled upon #167 was that I wondered why heim was used.  If you insist that forceful startup should be implemented in atomic-server itself, then at least consider moving to a more lightweight library for that - e.g. sysinfo.  I have zero experience programming in Rust, so only mention that alternative because others seem to recommend it, both at stackoverflow and users.rust-lang.org.

Here is an excellent explanation on why it is better to leave daemon handling to external tools: https://stackoverflow.com/a/61681452
I.e. the recommendation there goes even further: Don't create a PID file at all - leave that to external tools as well!

If you [try to handle daemonizing yourself, and do it wrong], the process becomes kind of hard to find and kill.

Yes, handling background processes correctly is hard. Very hard. Might even be insecure - depending on how you fail to do it exactly correct.
So don't do it yourself.
Just please pretty please don't do it yourself.

Ok, no real arguments still, but I know that I can trust your opinion on this. I'll remove the feature.


237 bump emr and spark versions

Resolves https://github.com/gchq/sleeper/issues/237

CI failing due to API limits.
A full test has been run locally, and passes.
Code has been deployed to AWS and verified that a bulk import succeeds.


Add get it github badge to Readme

And delete this "Or download the latest APK from the Releases Section."

Interesting. Do you have a link to an example or any reference material for implementing this?


Add setup and run batch files

Add basic batch files to simplify running and setup.
The setup file should complete all steps in the instructions and point towards the next step. The only thing that really changed was having it setup the environment in the base directory, so .venv should probably be added to the gitignore. The environment is named jarves_venv and is activated in the run file. A shortcut can be created from the run.bat file so it can be put on the desktop or run on a scheduled task as your video showed.
This should not affect any current users, just make new installations smoother.

glad to be helpful!


Blastoff.zone: Earn 1 ETH

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
youzp, @buptzaw, @1491928274, @markradomski, @tomener, @wangLi007, @ywk, @wjl110, @goofen, @CraneXHu, @yumengmeng0, @YF-Gooo, @nerekihs, @axrdiv, @leodemo, @HammerChen, @DM139, @ace-han, @Master1978, @dlk1932, @DomRR, @nicoleWong007, @keyniu, @vincentking2015, @gngn18, @zjf3591666, @xinghuwang, @ddcw-xufangwei, @GKerison, @2665477495, @BlockChanZJ, @lisidi, @Steven-Yuan, @random-string-of-chars, @Praying, @aManOf502, @JamesZhang-Nauto, @ugurak, @skytt, @ddmc133, @LiosWong, @JHXue, @iboohii, @aystshen, @gkwangustc, @Halen88, @matrix0721, @meda2008, @JimmyTsoi, @dajneem23

您好，邮件已收到！我会尽快处理的。


Power Shell Requirements Details

Nothing is said about Power Shell 7, just PowerShell 5.1 or higher.  Does this include PowerShell 7?

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

ID: a65d64c7-5f3f-e516-c9c9-0f0cebe100fe
Version Independent ID: 0bff8d8c-c692-b862-a906-483d7430415d
Content: Prepare your environment for Windows Admin Center
Content Source: WindowsServerDocs/manage/windows-admin-center/deploy/prepare-environment.md
Product: windows-server
Technology: windows-admin-center
GitHub Login: @nwashburn-ms
Microsoft Alias: niwashbu

We hugely appreciate your contribution, feedback, and support to our technical documentation.
We’ve phased out GitHub Issues on this repository as the feedback mechanism for content and have replaced it with a new feedback system. For more information see, Content User Feedback. As part of this rollout, we are migrating your issue where our team will use your comments to improve the documentation experience. Unfortunately, this does mean you won't be able to access this issue after the migration is complete.
All issues will be migrated by Thursday 29th August 2024.
Once again, thank you for your valuable feedback, we hope you’ll continue to contribute using our new feedback system.


[Bug]: Laravel detection fails when Laravel is included by another composer dependency

Short bug description
When including Laravel via another composer dependency it's not booted in tinker
Extended bug description
Since the addition of Laravel detection composer set-ups where another composer.json dependency includes laravel/framework no longer work with the tinker plugin, as $isLaravelProject (of tinker_run.php) is false and thus the kernel isn't required/bootstrapped
Your project is not the problem

[X] I tried using a fresh laravel install - I'm fairly certain it has nothing to do with my project.

How to reproduce?

Create a repo which includes a composer.json that requires laravel/framework
Create another repo which includes the first repo in its composer.json
Attempt to use a Laravel function in tinker, eg: echo app()->environment() . PHP_EOL;

Expected behavior
Laravel would be booted and the code execute under tinker
Screenshots
No response
IDE & Version
PHPStorm 2024.1.4
PHP Version
8.3
OS and version
Windows 11
Laravel Tinker plugin version
2.7.3
Interpreter type
Remote
Laravel Version
v11.18.0
Tinker version
v2.9.0
Psysh version
v0.12.4
Additional Context
Simply checking the composer.lock instead of the composer.json to see if Laravel exists will resolve this problem

Hmmmmmmmmmmmmm, yea I could see that being a problem. Should detect if the file vendor/laravel/framework/conposer.json exists maybe instead.


export-policy rule index 1 is not updated

Describe the bug
In the backend of the ontap-nas driver and dynamic export policies enabled, all Kubernetrs's nodes were recreated by rolling update.
As a result, the the old node's IP remains at the export-policy rule index 1 in ONTAP.
Environment
Provide accurate information about the environment to help us reproduce the issue.

Trident version: 20.04.0
Trident installation flags used: -n trident
Container runtime: Docker 19.03.8
Kubernetes version: 1.17.5
Kubernetes orchestrator: non
Kubernetes enabled feature gates: non
OS: Ubuntu 18.04
NetApp backend types: ONTAP AFF 9.1P14
Other: none

To Reproduce
(Maybe) you can reproduce the bug.
I show our test steps.

Setup NetApp/Trident v20.04.0 and dynamic export policies
Check Kubernetes Node's IP

(e.g) 5 Nodes in Kubernets
$ kubectl get nodes  -o custom-columns='NAME:.metadata.name,IP:.status.addresses'
NAME                                            IP
demo-ysaka-2004-ingress-default-87f591-lnnm2    [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-ingress-default-87f591-lnnm2 type:Hostname]]
demo-ysaka-2004-master-default-513dd026-r4dst   [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-master-default-513dd026-r4dst type:Hostname]]
demo-ysaka-2004-worker-default-a6179107-28kkg   [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-worker-default-a6179107-28kkg type:Hostname]]
demo-ysaka-2004-worker-default-a6179107-7jmn7   [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-worker-default-a6179107-7jmn7 type:Hostname]]
demo-ysaka-2004-worker-default-a6179107-mzwl2   [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-worker-default-a6179107-mzwl2 type:Hostname]]

Check export-policy rule in ONTAP

(e.g) 5 entries in export-policy rule
vs1::vserver export-policy rule> show trident-b25eca67-aac2-4089-af00-4df891798946
             Policy          Rule    Access   Client                RO
Vserver      Name            Index   Protocol Match                 Rule
------------ --------------- ------  -------- --------------------- ---------
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             1       nfs      <IP_ADDRESS>           any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             2       nfs      <IP_ADDRESS>           any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             3       nfs      <IP_ADDRESS>          any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             4       nfs      <IP_ADDRESS>          any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             5       nfs      <IP_ADDRESS>          any
5 entries were displayed.

Recreate all nodes one by one(like rolling update)
Check Kubernetes Node's IP

(e.g) New 5 Node in Kubernetes
$ kubectl get nodes  -o custom-columns='NAME:.metadata.name,IP:.status.addresses'
demo-ysaka-2004-ingress-default-e61b403f-kswxr   [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-ingress-default-e61b403f-kswxr type:Hostname]]
demo-ysaka-2004-master-default-5a3104d8-tjfgc    [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-master-default-5a3104d8-tjfgc type:Hostname]]
demo-ysaka-2004-worker-default-dd1bd1a7-lrw8d    [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-worker-default-dd1bd1a7-lrw8d type:Hostname]]
demo-ysaka-2004-worker-default-dd1bd1a7-mjqf9    [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-worker-default-dd1bd1a7-mjqf9 type:Hostname]]
demo-ysaka-2004-worker-default-dd1bd1a7-xglmr    [map[address:<IP_ADDRESS> type:InternalIP] map[address:demo-ysaka-2004-worker-default-dd1bd1a7-xglmr type:Hostname]]

Check export-policy rule in ONTAP

(e.g) 6 entries but number of nodes are 5. (Rule Index 1 remains)
vs1::vserver export-policy rule> show trident-b25eca67-aac2-4089-af00-4df891798946
             Policy          Rule    Access   Client                RO
Vserver      Name            Index   Protocol Match                 Rule
------------ --------------- ------  -------- --------------------- ---------
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             1       nfs      <IP_ADDRESS>           any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             6       nfs      <IP_ADDRESS>           any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             7       nfs      <IP_ADDRESS>            any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             8       nfs      <IP_ADDRESS>           any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             9       nfs      <IP_ADDRESS>           any
vs1          trident-b25eca67-aac2-4089-af00-4df891798946
                             10      nfs      <IP_ADDRESS>           any
6 entries were displayed.

Expected behavior
Just the current node IPs are registered in the export-policy rule in ONTAP.
Additional context
None

Hi @ysakashita,
The Trident pod running on each Node needs to be restarted. Trident is only scanning the available IPs when the pod starts. If you restart the pod then the existing rules should be updated.

@gnarl Is the Trident pod created from ds?　If trident pod created from ds, We are recreating on new node. If you mean trident pod which is created from deployment, I believe that the trident should watch a node status in reconcile loop.
I think this bug is caused by the remaining old CR of tridentnodes.trident.netapp.io.

If a CR was left behind (due to a missed node deletion event) you can manually remove it from trident's database via tridentctl node delete <node name> which should initiate a reconcile loop for the export policies

@adkerr Thanks. I understood this solution. However I don't want to use the way.
Our company has 500 overs K8S clusters. So we want to delete old CR automatically as declarative way.


Pressing ENTER in interactive results in line-break

Coming from the MATLAB and PyDev worlds, I am very much used to pressing ENTER in an interactive console to send commands to the interpreter.  In PTVS, Pressing ENTER only seems to send the command if the cursor is at the very end of the line.  If the cursor is elsewhere, a line break is entered.
I think this behavior is OK, but I'd like the ability to change it, such that ENTER always sends the command, and something else (perhaps Control+ENTER) is used for line breaks.
I think I could get used to the way it works currently, but it is a significant difference from other tools. Coming from a scientific software engineering background, typing commands out in interactive is something I do very, very often, and making sure that the cursor is always in the correct place feels burdensome and slows me down.

Currently Enter is the "smart" submit key. If you're at the end of one or more lines of valid code (all groups closed, etc.) then we'll submit.
This is actually designed to match the VS editor behavior so when you're not at the very end of the submission you can edit it just like normal.
You can press Shift+Enter anywhere to insert a line break, and Ctrl+Enter anywhere to submit the current text.

I cannot insert a line break by pressing Shift+Enter.
It simply doesn't work.
Python Tools for Visual Studio   2.2.30718.00
Python Tools for Visual Studio provides IntelliSense, projects, templates, Interactive windows, and other support for Python developers.
Python Tools for Visual Studio - Django Integration   2.2.30718.00
Provides templates and integration for the Django web framework.
Python Tools for Visual Studio - Profiling Support   2.2.30718.00
Profiling support for Python projects.

You may need to update your version of PTVS - there's been some updates since your version. See PTVS 2.2.2.

I have updated. It's 2.2.3.

I agree with original poster:
This behavior can be understood, but to me it is very irritable. I think it could be an option to have "Enter" send code to the console in an interactive window, wherever the cursor is.
This is the behavior you can find in Jetbrain's PyCharm, for example.

We won't be changing the default behavior, but since the Customize/Keyboard page won't let you specify Enter as a shortcut, we should consider providing an option to switch the behavior.
(More likely we need to get Roslyn to implement this though - I think they own this part of the interactive window these days.)


Mute audio symbol is not central

Didn't see that before:

Yes, the mute icon is not centered because we use the max volume icon to center all volume icons.
The "speaker" is constant in all images.
if we centered the icons, when changing from one to another, the icon would move. as if jumping or dancing
What do you think? @oas777? @turro?

Yes, I remember the "dancing effect". I presume the only way to solve it is to make them equally wide in "on" and "mute". Either in YouTube/Vimeo style

PS: I like Netflix more...

Yes and no: YouTube and Vimeo (above) have the same symbol in both positions (speaker and waves), only it's crossed through when the postion is "mute". Netflix has two different symbols (speaker and waves vs. speaker and cross). But all of these are centered.

Icon changed! Opinions?

Works for me. No dancing. Thanks!

I updated also the other version:

https://github.com/polimediaupv/paella-ethz/blob/main/public/ethz_theme/icons/volume-mute.svg
https://github.com/polimediaupv/paella-ethz/blob/main/public/ethz_theme/icons/volume-mute-cross.svg

We have to decide which one to use

I'm in favor of volume-mute-cross.svg. You? @turro?

I'm also for volume-mute-cross.svg, The other one gives me a bit of cognitive overhead because it feels to me like "very loud but muted"

Icon changed to volume-mute-cross.svg 😄


Improve Blazor CascadingTypeParameter support - Current compiler cannot handle common scenarios.

Is there an existing issue for this?

[X] I have searched the existing issues

Is your feature request related to a problem? Please describe the problem.
I expected the CascadingTypeParameter feature to work in the most common and obvious scenarios, but it does not.  If the cascaded type was a string, it should be possible to use <Widget Action="item => Console.WriteLine(item)" /> instead of <Widget Action="(string item) => Console.WriteLine(item)" />.  If you were passing in a parameter, it should be possible to do this <Widget Item="Hello" /> instead of needing to do this <Widget Item="@("Hello")" />.  The CascadingTypeParameter feature was intended to resolve this type of issue but needs more work.
Describe the solution you'd like
Imagine this repeater:
@attribute [CascadingTypeParameter(nameof(T))]
@typeparam T

@foreach (var item in Items)
{
    @ChildContent(item)
}
@code {
    [Parameter] public RenderFragment<T> ChildContent { get; set; }
    [Parameter] public IEnumerable<T> Items { get; set;}
}

Then this Widget component intended to be used inside the repeater:
@typeparam T
Type is @typeof(T)
@code {
    [Parameter] public EventCallback<T> Action { get; set; }
    [Parameter] public T? Item { get; set; }
}

Warning: Do not overthink this widget as it is not intended to do anything sensible, other than demonstrate compiler limitations.
Now imagine we use the component like such:
<Repeater Items="items">
    <Widget Action="(string i) => Console.WriteLine(i)" />
</Repeater>
@code {
List<string> items = ["David", "Fred", "Jimmy", "Banjo"];
}

The above code works, and <Widget T="string" Action="i => Console.WriteLine(i)" /> also works.  However, it is completely reasonable to expect to be able to use the following syntax:
<Widget Action="i => Console.WriteLine(i)" />

Another example of the compiler's mediocre compilation process is the following example.  Let us say we write this code:
<Widget Item=@("Hello") />

That works, but because T is a string, for consistency with the way the rest of blazor works, we would expect this to work (noting that it does work if the underlying type was a string instead of a type parameter, where the parameter was a string) :
<Widget Item="Hello" />

However, this does not work (it looks for a member called Hello, which is what blazor would normally do for anything other than a string.  Even this does NOT work: <Widget T="string" Item="Hello" />.
@danroth27 and @SteveSandersonMS I had thought we were further along than this once we got to .NET 6 and added the CascadingTypeParameter feature.  It is hard, not being on the compiler team, to understand why when an outer component uses CascadingTypeParameter, that that isn't the same as directly passing in the type using the old-school T="string" approach.  But I do feel the current expectation means almost everyone will hit this issue and get stuck/frustrated.
Is there a concrete reason why the situation cannot be improved for .NET 9 or even .NET 10 if that is needed.
Additional context
No response

Hi @davidwengier nice train simulator!  I am Melbourne based as well.
If it helps, I notice that if the Widget.razor file uses an Action like this:
    [Parameter] public Action<T> Action { get; set; }

Then you can use this code without specifying the type of i:
    <Widget Action="i => Console.WriteLine(i)" />

But if it is specified using EventCallback like thisthis:
    [Parameter] public EventCallback<T> Action { get; set; }

Then you you must specify the type of i either like this <Widget Action="(string i) => Console.WriteLine(i)" /> or this <Widget T="string" Action="i => Console.WriteLine(i)" />
I have not looked under the covers, but note that this does compile fine:
        EventCallbackFactory factory = new EventCallbackFactory();
        factory.Create<string>(null, s => Console.WriteLine(s));

Thus I have to assume there is a way of getting the razor compiler to handle this situation.  We want developers to be using EventCallback rather than Action because it plays better with the way Blazor interacts with StateHasChanged when the callback happens.

Thanks for writing this up. If I'm reading it correctly, you are reporting two separate issues:

CascadingTypeParameter and EventCallback don't play nicely in all cases. I haven't investigated deeply, so this might be wrong, but as you said, it looks like the razor compiler should emit EventCallbackFactory.Create<T> if there is type inference involved - and where Action<T> works, EventCallback<T> should work similarly.
Passing a string literal directly to a generic component parameter which we know has type string doesn't work. This is not related to CascadingTypeParameter, e.g., the following doesn't work either:<Widget T="string" Item="Hello" />

Whereas if the Widget wasn't generic, i.e., the Item parameter type was simply string, that would work.
Changing that would be a breaking change though - if users are today relying on this behavior and passing a variable, it would suddenly start to be interpreted as a string literal.

@jjonescz Yes I agree with your summary of point 1 that "if there is type inference involved - and where Action works, EventCallback should work similarly."
I think this should be a simple change and would ideally get into .NET 9.  I was surprised this did not work out of the box.
Regarding point 2: Thank you for clarification and I agree with that it would be a breaking change so will need to be done through good documentation rather than a change (and I should not have included point 2 in the same bug/issue report - sorry).

Hm, I've investigated the EventCallback<T> problem more and I don't think it's easy to fix.
The razor compiler doesn't know the T at compile-time, it very deliberately relies on the C# compiler to do the type inference.
For example, for an Action<T> parameter we generate this C#:
CreateWidget(i => Console.WriteLine(i));

void CreateWidget<T>(Action<T> a) { }

but for EventCallback<T> we need to call EventCallbackFactory (it has multiple overloads to support scenarios where user passes Func<Task> for example which is then converted to the EventCallback<T> etc):
CreateWidget(EventCallback.Factory.Create(i => Console.WriteLine(i)); // error: the factory creates EventCallback instead of EventCallback<T>

void CreateWidget<T>(EventCallback<T> e) { }

If runtime provided EventCallbackFactory.CreateGeneric which would only have overloads returning EventCallback<T> we could use that (when we know the parameter type is the generic EventCallback<T>) and it would work, I think. Otherwise, I don't see an easy solution we could do in the compiler.


[R000578] Rep. David Reichert

Rep. David Reichert:
http://reichert.house.gov
Likely contact form URL to start with:
http://reichert.house.gov/contact-me

YMAL file not found. I am working on it.


[multi-release-bundle] provide a way to remove the Import-Package or Require-Capabilites header

I have created a lightly advanced use-case of a MR-OSGi Bundle here:

https://github.com/bndtools/bnd/pull/5581

and it has shown that there is one case not covered by the spec that us if the main manifest has a Import-Package or Require-Capabilites header, but the supplemental one should not.
This can happen if for example in the main part a library is used (--> package is imported) and later on java provides a build in (--> package import not required anymore).
My current idea would be to have a special syntax for example
Import-Package: -
in a supplemental manifest mean remove the header from the manifest.

The example is here: https://github.com/bndtools/bnd/pull/5581/files I just noticed that BND generates no Imports for Java 9 only for Java 11 in the case I only use pure java API.

I just noticed that BND generates no Imports for Java 9

I believe this to be a bug in bnd's heuristics. Imports for java.* packages were added (in release 7 I think) to help support modular Java runtimes and not necessary in previous versions. Bnd uses the Java version as a proxy for framework version if no framework package is imported. Java 9 existed long enough ago that it might be used with an old framework, hence the heuristic to be "old".
In this case the heuristic is wrong as Multi-Release bundles were added in Core R7, which means that java.* packages should be imported by bundles using them.

I created:

https://github.com/bndtools/bnd/issues/5585

bnd already checks for the framework version it is importing for this. However, the culprit seems to be that we check for Java 11 instead of Java 9.
Since MRJ's are fully backward compatible, I think we should just keep the framework version check in there. Some stuff out there is surprisingly old and I do not see we gain anything.
I am not sure I understand the EE check in bnd. Java  1.8 code can run on a >=9 EE with a >=7 Framework. The important part seems to be the Framework version since it can't properly handle Java imports.

I am not sure I understand the EE check in bnd. Java 1.8 code can run on a >=9 EE with a >=7 Framework. The important part seems to be the Framework version since it can't properly handle Java imports.

The EE capability is provided by the framework, therefore your framework implementation must be new enough to understand what EE the version of Java that you’re using corresponds to. This couldn’t be done in advance as there was no way know what system packages to offer.
If you are using Java 11 this limits you (in open source) to R7+ framework impls. Therefore a bundle requiring an EE of 11 or higher is overwhelmingly likely to imply a requirement for R7+.
I only want to be certain that in the case where there is no framework api on the classpath at all we still get imports for java. packages by default.   Lid


Fix and perf optimize startup

Automated message from Dropbox CLA bot
@borisyankov, it looks like you've already signed the Dropbox CLA. Thanks!


hostfxr.dll missing

When attempting to execute:
CanvasAppPackager /a:unpack /z:"..\T&S Feedback App_v01_01.msapp" /f:"..\T&S Feedback App_v01_01_unpack"
after downloading your v<IP_ADDRESS>
I am getting the following error:
A fatal error occurred. The required library hostfxr.dll could not be found.
when executing on Windows 10.0.18363
Should this dll be included in your zip?
I am not admin on my corporate machine so I need justification to have sysadmins help with unauthorized installs.
Can the dll be added without install as the dlls in your app folder are?

This is because you are missing the .net core run time in the machine, and the app is created as a framework dependent application.  If you're a dev, you should be able to just download the code and run it

This is because you are missing the .net core run time in the machine, and the app is created as a framework dependent application.  If you're a dev, you should be able to just download the code and run it

I would also recommend checking out https://github.com/microsoft/PowerApps-Language-Tooling at some point in the future as well, since Microsoft now has their own version of the tool that they will be supporting.

I would also recommend checking out https://github.com/microsoft/PowerApps-Language-Tooling at some point in the future as well, since Microsoft now has their own version of the tool that they will be supporting.


Deploying cloud code for the first time

I had not used Cloud Code prior to migrating from parse, so how do I go about deploying this for the first time on parse server?
Thanks

Edit the main.js file in your cloud folder. Redeploy every time you make changes.

Cool thanks


Add cloudfront hostedzoneid for route53

When creating an A record for a cloudfront distribution, the AliasTarget must refer to the cloudfront HostedZoneId.
Reference: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html

Awesome, thanks!


Can't configure component with only solar panels

Version of the custom_component
1.1.0
Configuration

Describe the bug
When attempting to configure the integration it fails with this (and yes I put the correct token in the window):

I only have a solar system (no car), I think it's related to this: https://github.com/alandtse/tesla/pull/58. Maybe @giachello knows what's going on?
Debug log
2021-10-12 11:34:20 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_protocol.py", line 422, in _handle_request
    resp = await self._request_handler(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_app.py", line 499, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.9/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 220, in forwarded_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 24, in request_context_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 78, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 144, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 136, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 157, in post
    return await super().post(request, flow_id)
  File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 62, in wrapper
    result = await method(view, request, *args, **kwargs)
  File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 111, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 198, in async_configure
    result = await self._async_handle_step(flow, cur_step["step_id"], user_input)
  File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 256, in _async_handle_step
    result: FlowResult = await getattr(flow, method)(user_input)
  File "/config/custom_components/tesla_custom/config_flow.py", line 56, in async_step_user
    info = await validate_input(self.hass, user_input)
  File "/config/custom_components/tesla_custom/config_flow.py", line 160, in validate_input
    result = await controller.connect(test_login=True)
  File "/usr/local/lib/python3.9/site-packages/teslajsonpy/controller.py", line 349, in connect
    self.__energysite_name[energysite_id] = energysite["site_name"]
KeyError: 'site_name'

@mcolyer Just to confirm, have you created a name for your energy site? Don't create it if you haven't but it may explain why you got the error. Assuming that's the cause, the most likely fix will be to handle your situation so it'd be great if you could test it once we have it ready.

Oops. Didn't realize I could close this using a dependency merge.

Just wanted to add a comment:

This bug is encountered even if you have vehicles, if you have a Solar system
Definitely because the default name of your home is "My Home", and it must be returning NULL instead of "My Home"
Tapping on the name "My Home" in the Tesla app will allow you to change the name (while viewing your Solar)

Once the name is changed, this error disappears in the integration.

It works perfectly, thanks!


renovatebot(deps): update dependency org.yaml:snakeyaml to v1.25

This PR contains the following updates:

Package
Update
Change

org.yaml:snakeyaml
minor
1.24 -> 1.25

Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR is stale, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

Available now for Enterprise: Renovate Pro with real-time webhook handling and priority job queue.

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


Build: Failed

I am using the last version of Spring and follow all instructions. But every time when I am trying to build the project, I see few errors:
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftc failed with exit code 1

test

I have the same error even in another project.


Add support for checking latest version of unifi

Short of parsing HTML, I couldn't find any other place than the Cloud Key Debian repo to fetch the version info, so here we are 😄.

dope!


NimBLE AFR: Set flags field only in advertisement data and not in scan response

Description

Have added if-check to avoid filling FLAGS field in scan response data.
Previous to this PR, FLAGS were potentially getting set twice. Once in advertisement data and second time in scan response data. To avoid duplication, added this check.

Checklist:

[x] I have tested my changes. No regression in existing tests.
[ ] My code is Linted.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/bot run checks

/bot run checks

/cbmc run checks

/cbmc run checks


Not handling error: "FacebookProvider: Error logging in with Facebook. User logged in as different Facebook user"

Android device: HTC A9
Android OS version: 6.0
Google Play Services version: 3.1.0
Firebase/Play Services SDK version: 11.0.4
FirebaseUI version: 2.3.0
Facebook-android-sdk: 4.25.0

Firebase UI does not handle "E/FacebookProvider: Error logging in with Facebook. User logged in as different Facebook user."
Steps to reproduce:

Use native Facebook app to log out current user A
Launch firebase-ui and try log in in with another facebook user B

Expected: firebase-ui should display any errors, or onActivityResult should be called with some error
Actual: Nothing happens. Logcat prints "E/FacebookProvider: Error logging in with Facebook. User logged in as different Facebook user."
This use case might be quite rare, but it is confusing for customer to not get any feedback.

This comes from the `onError callback here:
https://github.com/firebase/FirebaseUI-Android/blob/bee4c1a9f6e4e872670796d30bc94e7a396751e3/auth/src/main/java/com/firebase/ui/auth/provider/FacebookProvider.java#L173
It does call onFailure().
@joknu1 what happens in this case exactly?  Does it return back to the sign-in button screen?

Yes. It looks like it actually never leaves the sign-in button screen.
Or maybe on first attempt I got to select Facebook account to use before returning to sign-in button screen. On sequential attempts I do not get to select Facebook account. From a user perspective, the Facebook button then appears non functional.

What happened with this?, I'm facing the same issue and I couldn't find a solution :/

Hi,
This issue is still open? Can I help?
Thanks.

@ericalima if you have an idea of what's wrong and how to fix it we'd love your help!  We are always looking for new contributors.

 Thanks!

 Thanks!

Hi @samtstern @SUPERCILEX ! I believe this issue is not related with Firebase-UI, but with Facebook Auth Library. It checks in AccessToken class if:
/**
     * Returns whether the current {@link AccessToken} is active or not.
     *
     * @return true if the current AccessToken exists and has not expired; false, otherwise.
     */
 public static boolean isCurrentAccessTokenActive() {
             final AccessToken accessToken = AccessTokenManager.getInstance().getCurrentAccessToken();
              return accessToken != null && !accessToken.isExpired();
    };

The thing is, in our case the Token is not expired yet and is also not null. But it has been removed access as you can see in the screenshot below.

Since we return true in isCurrentAccessTokenActive() we instantiate our AccessTokenAppIdPair wrongly here:
// If we have a session and the appId passed is null or matches the session's app ID:
        if (AccessToken.isCurrentAccessTokenActive() &&
                (applicationId == null || applicationId.equals(accessToken.getApplicationId()))
                ) {
            accessTokenAppId = new AccessTokenAppIdPair(accessToken);
        } else {
            // If no app ID passed, get it from the manifest:
            if (applicationId == null) {
                applicationId = Utility.getMetadataApplicationId(
                        `FacebookSdk.getApplicationContext());
            }
            accessTokenAppId = new AccessTokenAppIdPair(null, applicationId);
        }

The current implementation works fine if after the token has been removed access the user tries to log in with the same account, but it breaks when the user tries it with a different account.


Training Dataset

One of the two main contribution of this work is the Training Recipe. Are you planning on releasing the training datasets and annotations?
It looks like ./data/annotations are only annotations for eval.

We are not planning to releasing our in-house annotated training data. For the open-source dataset we used, we have listed them in the paper.


screen flckering

Type: Bug
while i am using the vs code at the top side there is a black line occured and screen flickering solved my ibalissued
VS Code version: Code 1.86.0 (05047486b6df5eb8d44b2ecd70ea3bdf775fd937, 2024-01-31T10:28:19.990Z)
OS version: Windows_NT x64 10.0.22631
Modes:

System Info

Item
Value

CPUs
AMD Ryzen 5 5600H with Radeon Graphics          (12 x 3294)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
7.34GB (2.31GB free)

Process Argv
--crash-reporter-id 5ef479b3-b23f-4181-8195-892ba2559b64

Screen Reader
no

VM
0%

Extensions (15)

Extension
Author (truncated)
Version

vscode-html-css
ecm
2.0.9

code-runner
for
0.12.1

debugpy
ms-
2024.0.0

python
ms-
2024.0.0

vscode-pylance
ms-
2023.12.1

jupyter
ms-
2024.1.0

jupyter-keymap
ms-
1.1.2

jupyter-renderers
ms-
1.0.17

vscode-jupyter-cell-tags
ms-
0.1.8

vscode-jupyter-slideshow
ms-
0.1.5

cmake-tools
ms-
1.16.32

cpptools
ms-
1.18.5

cpptools-extension-pack
ms-
1.3.0

r
REd
2.8.2

cmake
twx
0.0.17

(1 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
vscod805cf:30301675
binariesv615:30325510
vsaa593cf:30376535
py29gd2263:30899288
c4g48928:30535728
azure-dev_surveyone:30548225
962ge761:30951796
pythongtdpath:30769146
welcomedialog:30910333
pythonidxpt:30866567
pythonnoceb:30805159
asynctok:30898717
pythontestfixt:30902429
pythonregdiag2:30936856
pyreplss1:30897532
pythonmypyd1:30879173
pythoncet0:30885854
pythontbext0:30879054
accentitlementsc:30887149
dsvsc016:30899300
dsvsc017:30899301
dsvsc018:30899302
dsvsc019bcf:30953938
b5d27386:30958190
3ef8e399:30949928
bg6jg535:30958357

/gifPlease

Thanks for reporting this issue! Unfortunately, it's hard for us to understand what issue you're seeing. Please help us out by providing a screen recording showing exactly what isn't working as expected. While we can work with most standard formats, .gif files are preferred as they are displayed inline on GitHub. You may find https://gifcap.dev helpful as a browser-based gif recording tool.
If the issue depends on keyboard input, you can help us by enabling screencast mode for the recording (Developer: Toggle Screencast Mode in the command palette). Lastly, please attach this file via the GitHub web interface as emailed responses will strip files out from the issue.
Happy coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Cannot load timit_asr data set

Describe the bug
I am trying to load the timit_asr data set. I have tried with a copy from the LDC, and a copy from deepai. In both cases they fail with a "duplicate key" error. With the LDC version I have to convert the file extensions all to upper-case before I can load it at all.
Steps to reproduce the bug
timit = datasets.load_dataset("timit_asr", data_dir = "/path/to/dataset")
# Sample code to reproduce the bug

Expected results
The data set should load without error. It worked for me before the LDC url change.
Actual results
datasets.keyhash.DuplicatedKeysError: FAILURE TO GENERATE DATASET !
Found duplicate Key: SA1
Keys should be unique and deterministic in nature

Environment info

datasets version:
datasets version: 2.2.2
Platform: Linux-5.4.0-90-generic-x86_64-with-glibc2.17
Python version: 3.8.12
PyArrow version: 8.0.0
Pandas version: 1.4.2

Thanks for reporting, @bhaddow.
I'm fixing it.

Thanks for the quick fix!

@bhaddow we have also made a fix so that you don't have to convert to uppercase the file extensions of the LDC data.
Would you mind checking if it works OK now for you and report if there are any issues? Thanks.

Hi @albertvillanova  -It loads fine on a copy of the data from deepai - although I have to remove the copies of the .WAV files (with extension .WAV,wav). On a copy of the data that was obtained from the LDC, the glob still fails to find the files. The LDC copy looks like it was copied from CD, in 2004, so the structure may be different to a current download.

Ah, if I change the train/ and test/ directories to TRAIN/ and TEST/  then it works!

Thanks for your investigation and report, @bhaddow. I'm adding another fix for the TRAIN/train and TEST/test directory names.


When the action runs on a Windows server self-hosted runner, some workflow failed to run

Describe the bug
When the action runs on a Windows Server 2022 21H2 self-hosted runner, these workflow failed to run:

Graphs CI
Uptime CI

Here is the log:
Run<EMAIL_ADDRESS>Error: \\?\C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\dist\lib\binding\node_libcurl.node is not a valid Win32 application.
\\?\C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\dist\lib\binding\node_libcurl.node
    at Object.Module._extensions..node (node:internal/modules/cjs/loader:1282:18)
    at Module.load (node:internal/modules/cjs/loader:107[6](https://github.com/AnnAngela/annangela.cn-monitor/actions/runs/7016106396/job/19086640147#step:3:7):32)
    at Function.Module._load (node:internal/modules/cjs/loader:911:12)
    at Module.require (node:internal/modules/cjs/loader:1100:19)
    at require (node:internal/modules/cjs/helpers:119:18)
    at Object.1[7](https://github.com/AnnAngela/annangela.cn-monitor/actions/runs/7016106396/job/19086640147#step:3:8)001 (C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\webpack:\@upptime\uptime-monitor\node_modules\node-libcurl\lib\binding\node_libcurl.node:1:1)
    at __nccwpck_require__ (C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\webpack:\@upptime\uptime-monitor\webpack\bootstrap:21:1)
    at Object.30376 (C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\webpack:\@upptime\uptime-monitor\node_modules\node-libcurl\dist\Easy.js:5:1)
    at __nccwpck_require__ (C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\webpack:\@upptime\uptime-monitor\webpack\bootstrap:21:1)
    at Object.9501[8](https://github.com/AnnAngela/annangela.cn-monitor/actions/runs/7016106396/job/19086640147#step:3:9) (C:\actions-runner\_work\_actions\upptime\uptime-monitor\v1.33.0\webpack:\@upptime\uptime-monitor\node_modules\node-libcurl\dist\Curl.js:[17](https://github.com/AnnAngela/annangela.cn-monitor/actions/runs/7016106396/job/19086640147#step:3:18):1)

To Reproduce
Steps to reproduce the behavior:

Set the runner value to a label connected to a self-hosted runner running on Windows Server 2022 21H2 in .upptimerc.yml

That's all.

You're right, this is because the node_libcurl library that's compiled and shipped is for Linux. Definitely something we can work on!

You're right, this is because the node_libcurl library that's compiled and shipped is for Linux. Definitely something we can work on!

Maybe the documents can be updated to reflect that upptime does not currently work on Windows Runner.
And I dicided to switch back to linux server to avoid this problem now. Hope this issue can be addressed soon. THX for your quick response.


pkeyutl.c: Avoid freeing pkey at multiple places

Also fixes a leak of pkey in error case for -verifyrecover.

This pull request is ready to merge

Merged to the master branch. Thank you for the reviews.


Api stateful domains config option

In a project that runs on 2 domains, I had an issue where the log-viewer API calls failed and caused an 'this action is unauthorized' on the secondary domain. After some digging, I found that I needed to set the sanctum.stateful config option. The problem is that my project does not use Sanctum. I had to create a dummy sanctum.php config to create and set that config variable.
That's why I propose to make that an option in the log-viewer config so that it can be easily customized even when you don't use Sanctum in your project.
I made the change a non-breaking change by still checking and using config('sanctum.stateful') if the config('log-viewer.api_stateful_domains') is not set.

Big thanks @gdebrauwer , this makes perfect sense!
Tagged a new release - https://github.com/opcodesio/log-viewer/releases/tag/v3.7.0


Why does getItemValue has to return string?

As per title - what if I need to return an object and have this object in onSelect

Hi! getItemValue needs to return a string because its return value is used to determine which item to highlight (by matching the input text with the item display value). To retrieve the selected source object when an item is selected, simply use the second argument passed to onSelect.


GSSOC 2021 Even Pair Sum Problem

Two positive integers A and B are given. Find the number of pairs of positive integers (X,Y) such that 1≤X≤A, 1≤Y≤B and X+Y is even.
Input
The first line of the input contains a single integer T denoting the number of test cases. The description of T test cases follows.
The first and only line of each test case contains two space-separated integers A and B.
Output
For each test case, print a single line containing one integer ― the number of valid pairs.
Constraints
1≤T≤1,000
1≤A,B≤109
Example Input
4
1 1
2 3
4 6
8 9
Example Output
1
3
12
36
### Motivation
This is a nice competitive programming problem that would include brainstorming and the biggest constraint over here is time and this kind of problem is the basis of many other cp problems. It is one of the problem that came in December long challenge of codechef 2020 and being a competitive programmer, I would like to share it with all.
hey! @bhav09 may I start working on this issue in C++. I am GSSOC'21 Participant.

Great! You have been assigned.

You can assign the Issue for yourself by using the '/assign' command. Make sure The algorithm/ data structure you are trying to add doesn't already exist. read the Doc before you proceed.

I'm the participant from GSSOC'21. I'll solve this issue from c++. please assign me this issue.

@rk05-lenavo Actually Someone else is already working on C++. So Can you select any other language you want to work?

@bhav09 With kind request would you please help me to know why issue has been closed before PR being merged?

@ankitaggarwal23  @bhav09 please let me know about it. Would PR be considered?

Hey @mansi-9, I might have done it by mistake. Sorry about that.
However, your PR has been reviewed and have requested changes. Need not worry, your PR will be considered.

@ankitaggarwal23 @bhav09 please assign level label to it.Thnx!!


Add Settings screen (for choosing health authority data sources)

Brief overview of changes:

Added a settings screen so users can choose their healthcare authorities for trace overlap checks and news
Fixed a capitalization problem on Overlap
Added translation file for the Settings screen
Fixed the three dot menu icon (for both size and color - purple is most certainly the wrong color)
Added a YAML library for getting authorities data (though didn't get it working properly)

Still to do:

Connect the UI to the appropriate internet source, and connect the screen's state to app state for the Overlap screen and elsewhere
Add the ability to enter a custom URL data source (button is present in a menu but only opens an alert right now)

EDIT: Added ability to enter custom URLs and now pulls the authorities list from a hosted YAML file, as requested. Am not familiar with current function of the Overlap screen so I might leave that for someone more familiar

Added ability to enter custom URLs and now pulls the authorities list from a hosted YAML file, as requested. Am not familiar with current function of the Overlap screen - should I connect the settings screen to Overlap as part of this PR? @penrods @rparet

Also, looks like this is on safe-paths now - should I be rebasing against develop or safe-paths?

The Settings screen now stores user settings in async storage.

Looks like this update has been merged with #326 - am closing this PR.


[FLINK-9720] [Scheduler] Add ResourceAttribute and MesosResourceAttribute.

What is the purpose of the change
*This pull request is one of PRs for adding tag support to flink scheduler. *
Brief change log

Add ResourceAttribute interface.
Add MesosResourceAttribute class.

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? no

@tillrohrmann Can you help to review this?

Hi @liurenjie1024, thanks for opening this PR. The Flink community is currently preparing the Flink 1.6 release and, thus, it might take a bit longer for the review to happen. Please bear with us until then.

Hi @tillrohrmann Flink 1.6 has released, could you please help to review this?

Closing for inactivity.


Generalization of the Repo

Hi, Thank you for your research, it is quite an interesting one.
Btw, could I know, is this repo generalizable to other CNN model/is it already PnP to other model?
TIA :)

Hi, thank you for your interest!
I would recommend checking out the README. It should contain all the info to add your own CNN models. :)


Caching data best practice?

I'm currently making my own implementation of a gaussian process, and I'd like to cache certain results like the correlation matrix (K) and the inverse of the correlation matrix multiplied by the training output (K^-1 @ y). As I understand it, JAX JIT requires everything to be nicely packaged into one function without any operations done on variables outside the function scope. This is likely what's causing my error; example code is pasted below (let me know if you want something runnable).
class GP:
    def __init__(self, alpha: float = 1e-8, kernel: Kernel = RBF(), debug: bool = True):
        """
        Constructor for base Gaussian process class.

        :param alpha: (float) nugget parameter, increase if matrix inverses fail due to ill-conditioning. Default: 1e-8
        :param kernel: (Kernel)
        :param debug: (bool) if False, JIT compiles `self.predict_mu` and `self.predict_var`
        TODO: figure out why you can't JIT `self.fit`
        """
        self.alpha = alpha
        self.kernel = kernel
        self.x = None
        self.y = None
        self.K = None
        self.U = None
        self.predict_mu = vmap(self.predict_)
        self.predict_var = vmap(self.predict_var_)

        if debug is False:
            self.fit = jit(self.fit, static_argnums=0)  # JITing this results in a tracer error
            self.predict_mu = jit(self.predict_mu, static_argnums=0)
            self.predict_var = jit(self.predict_var, static_argnums=0)

    def fit(self, x: np.ndarray, y: np.ndarray, *args):
        """
        Pre-calculates the correlation matrix K and K^-1 @ y (denoted here as U)

        :param x: array shape (Nxd), independent variables
        :param y: array shape (Nx1), dependent variable
        :return:
        """
        self.x = x
        self.y = y
        self.K = self.kernel(x, x)
        self.K = self.K + self.alpha * np.eye(len(self.K))
        self.U = solve(self.K, self.y)

    def predict_(self, x: np.ndarray) -> float:
        """
        Returns prediction of a *single sample* `x`. See `self.predict_mu` for the corresponding vectorized function

        :param x: vector of shape (d,), where d is the dimensionality of the input
        :return: float
        """
        return self.kernel(x, self.x) @ self.U

    def predict_var_(self, x: np.ndarray) -> float:
        """
        Returns covariance of a *single sample* `x`. See `self.predict_var` for the corresponding vectorized function

        :param x: vector of shape (d,), where d is the dimensionality of the input
        :return: float
        """
        K_train = self.kernel(x, self.x)
        return self.kernel(x, x) - K_train.T @ solve(self.K, K_train)

    def predict(self, x: np.ndarray) -> Tuple[np.ndarray, np.ndarray]:
        """
        Returns prediction and variance of the GP given inputs `x`. Simple wrapper calling `self.predict_mu` and `self.predict_var`

        :param x: vector of shape(N, d) inputs
        :return:
        """
        return self.predict_mu(x), self.predict_var(x)

Setting debug=True (in other words, not JITing self.fit or self.predict_* functions), this works as expected. JITing self.fit, however, results in the following error:
Traceback (most recent call last):
  File "/Users/erictaw/gpgrad/mvp.py", line 170, in <module>
    mu, var = gp.predict(x)
  File "/Users/erictaw/gpgrad/mvp.py", line 131, in predict
    return self.predict_mu(x), self.predict_var(x)
  File "/Users/erictaw/gpgrad/mvp.py", line 112, in predict_
    return self.kernel(x, self.x) @ self.U
  File "/Users/erictaw/miniconda3/envs/gpgrad/lib/python3.8/site-packages/jax/_src/numpy/lax_numpy.py", line 4960, in deferring_binary_op
    return binary_op(self, other)
  File "/Users/erictaw/miniconda3/envs/gpgrad/lib/python3.8/site-packages/jax/_src/numpy/lax_numpy.py", line 3423, in matmul
    out = lax.dot_general(
  File "/Users/erictaw/miniconda3/envs/gpgrad/lib/python3.8/site-packages/jax/_src/lax/lax.py", line 665, in dot_general
    return dot_general_p.bind(lhs, rhs,
jax._src.traceback_util.FilteredStackTrace: jax.core.UnexpectedTracerError: Encountered an unexpected tracer. Perhaps this tracer escaped through global state from a previously traced function.
The functions being transformed should not save traced values to global state. Detail: tracer created on line /Users/erictaw/gpgrad/mvp.py:103 (fit).
...

My question is: what's the best way to cache something like self.U so I don't have to potentially compute it multiple times?

https://jax.readthedocs.io/en/latest/jax.html#jax.jit
jax.jit requires function to be pure, but your fit and predict modifies self, and is thus not a pure function. That should explain the error message "The functions being transformed should not save traced values to global state"
On first look, you can change your fit function to return the values you want to save and cache them however you want. Just don't update states inside a function you want to jit.

https://jax.readthedocs.io/en/latest/jax.html#jax.jit
jax.jit requires function to be pure, but your fit and predict modifies self, and is thus not a pure function. That should explain the error message "The functions being transformed should not save traced values to global state"
On first look, you can change your fit function to return the values you want to save and cache them however you want. Just don't update states inside a function you want to jit.

Probably the best approach would be to pass the cached values around explicitly, e.g something like this (leaving object-oriented stuff aside for simplicity):
def fit(data, cache=None):
  if cache is None:
    cache = _compute_cached_quantites(data)
  ...
  return outputs, cache

Then you can do something like this:
cache, results1 = fit(data)
results2 = fit(data, cache)

Wouldn't that

retrace the whole function (so when caching we will always have two traces?)
break the gradient?

and therefore need quite a lot of additional thoughts?

The second version would not lead to retracing (which is why I mentioned it).
The gradient is fine as long as you're explicit about which arguments you want the gradient to be taken with respect to (via closures or partials)/

I encountered this old issue now by chance. I had practically the same problem (object-oriented caching of the matrix decomposition for Gaussian process regression) and I patched something which mostly works, though there are still some rough corners. Code, in case it might be useful: https://github.com/Gattocrucco/lsqfitgp/blob/a40240388dc8ea436f31fd8aabda7ec9417aeb3a/lsqfitgp/_linalg/_decomp.py#L193

About the internals: in the last commits I removed a bit of the messing (it's a work in progress). By "messing" I mean taking jax.stop_gradient in the custom JVPs, now that's gone and they are honest custom JVPs.
Anyway, the code maybe seems a bit complicated at first sight because there are various things implemented, but the core idea is simple. JAX actually does not care that all functions it traverses be pure, it cares only about the functions it is told to do something about. So if I do something like
class Decomp:
    ...

@jax.jit
@jax.grad
def gp_marginal_likelihood(params, residuals):
    covmat = ... # some function of `params`
    decomp = Decomp(covmat) # computes and caches decomposition of `covmat`
    logdet = decomp.logdet() # log(det(M))
    chi2 = decomp.quad(residuals) # r.T @ M^-1 @ r
    return -1/2 * logdet - 1/2 * chi2

from the point of view of JAX it is equivalent to something like
@jax.jit
@jax.grad
def gp_marginal_likelihood(params, residuals):
    covmat = ... # some function of `params`
    L = cholesky(covmat)
    logdet = 2 * sum(log(diag(L)))
    lr = solve_triangular(L, residuals)
    chi2 = lr.T @ lr
    return -1/2 * logdet - 1/2 * chi2

which is traceable.
The complications come from the fact that I also want to define custom derivatives for the methods of Decomp, logdet and quad. I do this by:

Applying stop_gradient to the matrix that I feed into the decomposition routine in Decomp.__init__, and saving the unstopped matrix as an object attribute
Wrapping each method with a function where the matrix appears explicitly as argument, such that I can define custom derivatives w.r.t. the matrix
Wrapping again such function into a method that passes to the function the matrix saved in self.
Mind that this is not working perfectly, there are some problems with reverse derivatives (which mostly work, still). This code was originally written for autograd, and instead of stop_gradient I used to hard-strip all the autograd tracers. I stopped doing that with JAX out of fear of breaking vmap, jit, etc., but I suspect using stop_gradient is not equivalent because JAX will see the products of the decomposition as involved in the derivatives somehow when going in reverse and do a mess because they popped out "impurely" in the innermost method.

Now that I have written it down, it comes to my mind that maybe the remaining problems would be solved as well by mock-passing all the decomposition products as variadic arguments to the intermediate wrapper.

Another solution: declare the class to be a jax pytree, such that self can pass across jit and derivative boundaries:
import jax
import functools
import jax.test_util

@jax.tree_util.register_pytree_node_class
class Decomp:

    def tree_flatten(self):
        return (self.l, self.a), None

    @classmethod
    def tree_unflatten(cls, aux_data, children):
        self = super().__new__(cls)
        self.l, self.a = children
        return self

    # use __new__ instead of __init__ because __init__ does not return anything
    @functools.partial(jax.jit, static_argnums=0)
    def __new__(cls, a):
        self = super().__new__(cls)
        # stops a's gradient now since we are going to define custom gradients
        # w.r.t. a anyway
        self.l = jax.scipy.linalg.cholesky(jax.lax.stop_gradient(a), lower=True)
        self.a = a
        return self

    def solve(self, b):
        return self._solve(self, b)

    @jax.custom_jvp
    @staticmethod # staticmethod otherwise custom_jvp won't see self
    @jax.jit
    def _solve(self, b):
        lb = jax.scipy.linalg.solve_triangular(self.l, b, lower=True)
        llb = jax.scipy.linalg.solve_triangular(self.l.T, lb, lower=False)
        return llb

    @_solve.defjvp
    @jax.jit
    def _solve_jvp(primals, tangents):
        self, b = primals
        self_dot, b_dot = tangents
        a_dot = self_dot.a
        primal = self.solve(b)
        tangent_a = -self.solve(a_dot) @ primal # -a^-1 ∂a a^-1 b
        tangent_b = self.solve(b_dot)
        return primal, tangent_a + tangent_b

key = jax.random.PRNGKey(0)
m = jax.random.normal(key, (5, 5))
_, key = jax.random.split(key)
b = jax.random.normal(key, (5,))
a = m @ m.T
dec = Decomp(a)
x = dec.solve(b)
print(jax.numpy.linalg.norm(a @ x - b, 2)) # -> 3.095427e-06

# rev mode does not work, dunno why
jax.test_util.check_grads(lambda b: dec.solve(b), (b,), order=2, modes='fwd')
jax.test_util.check_grads(lambda m: Decomp(m @ m.T).solve(b), (m,), order=2, modes='fwd')

Does initializing the intermediate array in ajax.ensure_compile_time_eval scope cache the intermediate array?
Somewhat more concretely:
If I have something like
@jax.jit def foo(x):     with jax.ensure_compile_time_eval():          intermediate_array = jnp.arange(-len(x)+2,1)     ...
Can I assume that the intermediate_array is shared across calls of foo where len(x) is the same?


Created base README.md and History.md

To start documenting what is this about. #4

May be covered by f4bdd20b760c704b3217b05875ab0d0404e9c87e.


Drag CursorShape isn't shown

Godot version:

3.2.3
OS/device including version:

Windows 10
Issue description:

Drag cursor just looks the same as the normal cursor, the documentation says it's supposed to look like a hand or cross.
https://user-images.githubusercontent.com/50304111/112741422-f66ec480-8f42-11eb-8244-a22980b048b5.mp4
Steps to reproduce:
Minimal reproduction project:

It show the system's drag mouse cursor.
Under windows, it's a normal arrow.
You can set it to CursorShape.MOVE instead and you''ll get a crossed arrow.

It shows the system's drag mouse cursor (as described in the doc).
Under windows, it's a normal arrow.
You can set it to CursorShape.MOVE instead and you''ll get a crossed arrow.

We should probably use a #ifdef WINDOWS_ENABLED block to change this in the editor code. Not getting any visual feedback is quite bad.


Performance improvements?

Hi Ilya,
Did you make some performance improvements? I wonder if you can provide a new version :-)
kind regards
Johannes

Hello Johannes,
At the moment the performance differs only by about 11% from the fio benchmarks
fio t/one-core-peak.sh:
IOPS=333.36K, BW=162MiB/s, IOS/call=31/31
IOPS=335.61K, BW=163MiB/s, IOS/call=31/31

jasyncfio with almost the same configuration:
IOPS=288864, BW=141MiB/s, IOS/call=32/31
IOPS=299296, BW=146MiB/s, IOS/call=32/31

one-core-peak.sh is a fio script that generates the optimal configuration to achieve peak IOPS. For my system, it generates:
taskset -c 0,1 t/io_uring -b512 -d128 -c32 -s32 -p1 -F1 -B1 -n2

where:
-b Block size, default 4096
-d IO Depth, default 128
-s Batch submit, default 32
-c Batch complete, default 32
-p Polled IO, default 1
-F Register files, default 1
-B Fixed buffers, default 1
-n Number of threads, default 1

jasyncfio only does not support the register files feature.
It's on Samsung SSD 970 EVO Plus 500GB with the poll queue disabled.
However I did some optimizations not performance but anyway, it may be useful, I will release them :)

@JohannesLichtenberger updated to 0.0.8


Add support for Azure, OpenAI, Palm, Anthropic, Cohere, Replicate Models - using litellm

This PR adds support for models from all the above mentioned providers using litellm https://github.com/BerriAI/litellm
TLDR: langstream gets:

more models out of the box, everything litellm integrates with: https://litellm.readthedocs.io/en/latest/supported/
instant integration of new models by modifying the model param (Easy to add models in the future, just change the model param)

Here's a sample of how it's used:
from litellm import completion

## set ENV variables
# ENV variables can be set in .env file, too. Example in .env.example
os.environ["OPENAI_API_KEY"] = "openai key"
os.environ["COHERE_API_KEY"] = "cohere key"

messages = [{ "content": "Hello, how are you?","role": "user"}]

# openai call
response = completion(model="gpt-3.5-turbo", messages=messages)

# cohere call
response = completion("command-nightly", messages)

# anthropic call
response = completion(model="claude-instant-1", messages=messages)

addressing https://github.com/rogeriochaves/langstream/issues/5

@rogeriochaves can you please take a look at this PR ? If this initial commit looks good happy to add more docs/tests too😊

hey! Sorry for the delay, gotta fix my notifications. Great work! Thanks for the contribution, will test it more carefully and merge in a bit. Would you mind writing docs for it as well?

I got an error when running the integration tests:
TypeError: completion() got an unexpected keyword argument 'timeout'

seems like the API is not 100% compatible with OpenAI, and thinking about that, I don't want to merge this under OpenAI, specially because the API can diverge anytime, however I like the idea of having LiteLLM being supported
could you instead of replacing the OpenAI call, simply copy and pasting and having another module for LiteLLM? I don't mind the code duplication, but I mind users not being able to trust that using the OpenAI module really uses the official OpenAI under the hood with no further wrappers. However, with the right words in documentation we can point users that this is a great way to use Azure, OpenAI, Palm, Anthropic, Cohere, Replicate Models etc all at the same time, and I really like this concept

@ishaan-jaff I've implemented it in #10, take a look at what you think, and please add improvements if you can think of. Closing this one


Inconsistent horizontal line spacing

The following rules are the same, except with different names. Notice how name: none is not rendered the same as name: [], and how using a zero width space as the name is necessary to get the same spacing as a rule with a normal name for a rule without a name.

Yes indeed I measure the size of the title. Is it actually not wanted behaviour ?
The typeset of the rule should take into account the size of the title, no matter what is display. It is more of a Typst issue than one of the package in my opinion.
This behaviour could be changed using is statement, I don't know if it's the right way to think about it however.
You can of course propose a fix, if you have an idea.

I think the spacing here should be at least the one of the last two rules in the examples I gave (so a max of the current spacing and something like 1em, although this would have to be determined). Therefore, you don't get misalignment when some rules in a tree have a name, and others don't, but rules with higher names still get spaced properly when you have such rules.
I will try to implement a fix before next week.


unable to run back end

I tried to run the external api but getting the following error
E:\karthi\workspace\react\meter-data-analytics-master\external-api>npm run start

<EMAIL_ADDRESS>start
nodemon --exec ts-node --require tsconfig-paths/register src/server.ts

[nodemon] 2.0.15
[nodemon] to restart at any time, enter rs
[nodemon] watching path(s): .
[nodemon] watching extensions: ts,json
[nodemon] starting ts-node --require tsconfig-paths/register src/server.ts
E:\karthi\workspace\react\meter-data-analytics-master\external-api\src\server.ts:8
throw new Error(no PORT found in process.env);
^
Error: no PORT found in process.env
at Object. (E:\karthi\workspace\react\meter-data-analytics-master\external-api\src\server.ts:8:9)
at Module._compile (node:internal/modules/cjs/loader:1103:14)
at Module.m._compile (C:\Users\Asus\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:1455:23)
at Module._extensions..js (node:internal/modules/cjs/loader:1157:10)
at Object.require.extensions. [as .ts] (C:\Users\Asus\AppData\Roaming\npm\node_modules\ts-node\src\index.ts:1458:12)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)
at phase4 (C:\Users\Asus\AppData\Roaming\npm\node_modules\ts-node\src\bin.ts:567:12)
at bootstrap (C:\Users\Asus\AppData\Roaming\npm\node_modules\ts-node\src\bin.ts:85:10)
[nodemon] app crashed - waiting for file changes before starting...

It looks like you have not created your .env file under the external-api directory. If that's the case, you can create one by copying file ".env.example" in the external-api directory to file ".env" .
The same applies to the back-end directory.

Yes, I have created .env file and execute perfectly now. thanks for your valuable inputs.

Glad to know you can run it now.


Standardize exception handling for base_agent

Type of Issue
We catch exceptions in a myriad of ways

catching but raising another exception anyway with a generic message (for eg https://github.com/facebookresearch/droidlet/blob/main/base_agent/dialogue_objects/get_memory_handler.py#L165)
silently consuming it (for eg https://github.com/facebookresearch/droidlet/blob/main/base_agent/base_util.py#L89)
print the error (https://github.com/facebookresearch/droidlet/blob/main/base_agent/save_and_fetch_commands.py#L19)

Standardize how to do exception handling. Do we want to just print a message to the log? Do we want to send the error message and maybe even the stack trace back to the dashboard?
Scoping this to base_agent for a limited scope.
Select the type of issue:

[ ] Bug report (to report a bug)
[x] Feature request (to request an additional feature)
[ ] Tracker (I am just using this as a tracker)
[ ] Documentation Ask

looks like I already gated re-raising immediately via DEVMODE=1: https://github.com/facebookresearch/droidlet/blob/0a59e13123e185466ae6879c98730eccdb84bc5e/base_agent/core.py#L21-L23
I'm going to just raise by default, and we can do more targeted catching as needed.

looks like I already gated re-raising immediately via DEVMODE=1: https://github.com/facebookresearch/droidlet/blob/0a59e13123e185466ae6879c98730eccdb84bc5e/base_agent/core.py#L21-L23
I'm going to just raise by default, and we can do more targeted catching as needed.


Workmanager

Will https://developer.android.com/topic/libraries/architecture/workmanager replace firebase-jobdispatcher-android? It looks like it's made for the exact same use case.

Workmanager encapsulates many previous background apis that Android had, including job dispatcher (since job scheduler is only api 21+). So my guess is, I doubt it. But who knows.

See updated readme


Unable to use multiline secrets

https://api3workspace.slack.com/archives/C02AYRX8D89/p1655307769484259

Hi @Siegrift, what kind of a private key can I use for this? Is gcp.json okay for that, provided that I insert some line breaks into the key?

Hi, @Siegrift, so I've tested this issue as we've discussed in the call, but for reference purposes, let me just outline it here:

I created a mock API with Beeceptor that would accept a multiline string from the secrets file
I then introduced a new secret in secrets.env, called SECRET_MESSAGE, which I had contain some Lorem ipsum with a couple linebreaks, wrapped in quotes.
In config.json, I passed this as a request parameter.
The deployment went just fine, no complaints from the validator.
Beeceptor showed the message that was passed as the parameter just fine as well.

This is thus good to go, I'm moving the issue :)


Brazilian Portuguese translation

Added Brazilian Portuguese translations.

Thanks for the translation! I'll be merging shortly but the app isn't translation ready yet so you may not see all fields translated.


Add consumer proguard rules to all plugins

Closes https://github.com/mapbox/mapbox-plugins-android/issues/369
Adds proguard rules for plugins, as well as, adds a step to the CI build to attempt to check if proguard rules work.

Will fix https://github.com/mapbox/mapbox-android-demo/issues/650


Cluster upgrades

We've got to implement cluster upgrades which will allow us to go from one release to another of Kubernetes, we will be relying on Cluster API cluster upgrade to get this done.
README.md

[x] Upgrade to include instructions to create both 1.24 and 1.25 images and cluster templates

upgrade_cluster driver function

[ ] Recreate all of the MachineTemplates with the new values (see steps 1-3)
[ ] Update the version value after recreating the MachineTemplate so it forces a rollout for control plane
[ ] Update the cluster.x-k8s.io/restartedAt annotation to force a rollout after updating MachineTemplate (see "How to schedule a machine rollout")
[ ] Validate that the cluster ends up in UPDATE_COMPLETE
[ ] Validate that the cluster is now fully upgraded.

The above can be tested upgrading from 1.24 to 1.25, we assume that Cluster API can take care of upgrades cleanly and we're just focused on making sure the Magnum/Cluster API interaction is working properly.

this is done using cluster class!


Shared libraries from "pip install pin" with Bazel

Using Pinocchio as a Python dependency via the pip_install rule of Bazel's rules_python does not work.
I haven't figured out a working solution yet. Here are some ongoing notes, all suggestions welcome :slightly_smiling_face:
Symptom
The pip_install rule itself does not fail at build time, but trying to import Pinocchio then fails at run time:
Traceback (most recent call last):
  File [redacted], line 24, in <module>
    import pinocchio
  File "[runfiles]/pip_upkie_locomotion/pypi__pin/pinocchio/__init__.py", line 6, in <module>
    from .pinocchio_pywrap import *
ImportError: libboost_python38.so.1.76.0: cannot open shared object file: No such file or directory

Diagnosis
Installing Pinocchio as a PyPI package creates not only a pinocchio module to the library folder, but also openrobots.libs which is shared with other Pinocchio dependencies like eigenpy. The idea is that site-packages will look like this:
$ ls lib/python3.8/site-packages
_distutils_hack/          pin-2.6.4.dist-info/          wheel-0.37.1.dist-info/
eigenpy/                  pinocchio/                    distutils-precedence.pth
eigenpy-2.6.9.dist-info/  pip/                          pip-22.1.2.virtualenv
hppfcl/                   pip-22.1.2.dist-info/         setuptools-62.4.0.virtualenv
hpp_fcl-1.7.8.dist-info/  pkg_resources/                _virtualenv.pth
numpy/                    __pycache__/                  _virtualenv.py
numpy-1.23.1.dist-info/   setuptools/                   wheel-0.37.1.virtualenv
numpy.libs/               setuptools-62.4.0.dist-info/
openrobots.libs/          wheel/

But Bazel is strict about isolation, so it will actually produce something like this:
$ tree -L 2 -d /path/to/pip/runfiles
/path/to/pip/runfiles
├── ...
├── pypi__eigenpy
│   ├── ...
│   └── openrobots.libs
│       ├── __init__.py
│       ├── libboost_python38.so.1.76.0
│       └── libeigenpy.so
├── pypi__hpp_fcl
│   ├── ...
│   └── openrobots.libs
│       ├── __init__.py
│       ├── libassimp.so.3
│       ├── libboost_chrono.so.1.76.0
│       ├── libboost_serialization.so.1.76.0
│       ├── libboost_system.so.1.76.0
│       ├── libhpp-fcl.so
│       ├── liboctomap.so.1.9
│       └── liboctomath.so.1.9
├── pypi__pin
│   ├── ...
│   ├── openrobots.libs
│   │   ├── __init__.py
│   │   ├── libboost_filesystem.so.1.76.0
│   │   ├── libconsole_bridge.so.0.4
│   │   ├── libpinocchio.so
│   │   ├── libtinyxml.so.2
│   │   ├── liburdfdom_model.so.1.0
│   │   ├── liburdfdom_model_state.so.1.0
│   │   ├── liburdfdom_sensor.so.1.0
│   │   └── liburdfdom_world.so.1.0
│   ├── ...
├── ...

When importing pinocchio, the shared libs in pypi__pin/openrobots.libs are found, but libboost_python38.so.1.76.0 is not found since it is in pypi_eigenpy.
Leads / Not tried yet

Try splitting openrobots.libs into separate libraries to avoid a name clash?

Sounds good, I'll keep an eye on https://pypi.org/project/pin/#history and try again when the new version comes out.

@stephane-caron Should we keep it open?

It can be tested again now that Pinocchio 2.6.10 is on PyPI https://github.com/stack-of-tasks/pinocchio/issues/1745#issuecomment-1288679235. I will take a look at it next week.

OK, so I've tried and getting it to work with Bazel may be a low-hanging fruit. Although, I don't understand what's happening with cmeel and cmeel.prefix, so it may also not be, you tell me :wink:
Here is a reproduction repo: bazel_pinocchio. This should run the overview Python example from Pinocchio:
$ bazel run //examples/python:overview-simple

Currently it results in:
  File "/.../examples/python/overview-simple.py", line 13, in <module>
    import pinocchio
ModuleNotFoundError: No module named 'pinocchio'

As far as I can tell, the reason for it is that Bazel populates sys.path as follows:
sys.path = [
    ...
    "bazel-out/k8-fastbuild/bin/examples/python/overview-simple.runfiles/pip_bazel_pinocchio/pypi__cmeel/cmeel.prefix/lib/python3.8/site-packages",
    ...
]

The problem is that the cmeel.prefix that contains pinocchio is located in pypi__pin rather than in pypi__cmeel, so the sys.path is incomplete.
@nim65s how is cmeel.prefix added to sys.path?

@nim65s how is cmeel.prefix added to sys.path in CMake Wheels?

through cmeel.pth.
Thanks for the example, I'll have a look

OK sounds good :smiley: I've added bazelisk to the repo so that you can test it without installing anything: from the cloned working directory, just run
./tools/bazelisk run //examples/python:overview-simple

@stephane-caron May we close this issue?

Well the issue is still open, but Bazel is not officially supported by Pinocchio so I suggest we move it to https://github.com/stephane-caron/bazel_pinocchio/issues/1 and close it here.


Some Safari Bookmarks not showing up in Catalog

I have a Safari bookmark 3 folders down: Interests -> Film -> Local Theaters -> Kendall Square Landmark.
It was named something else, and I renamed it. I refreshed the Quicksilver catalog and if I look in the Safari Bookmarks catalog source info pane, I see the updated name (and it's checked indicating it's enabled). However, when I activate QS and type "Kendall Square" this bookmark does not appear in the results list at all. Some (but not all) bookmarks in the same folder appear when I type to select them.
If I select Safari Bookmarks (catalog) and right-arrow into it, I can find the "Kendall Square Landmark" bookmark!
QS 1.2.0 (400E) Safari Plugin 2.1.6, OS X 10.9.4, 3.4 GHz i7 iMac, 8GB RAM
I'm using the built-in string ranker though the textmate one is installed
My results list is set to Filter Catalog and I see the same results using the other settings.

I don’t have many bookmarks, so it might not be a valid test, but I tried creating a bookmark with an identical folder structure. Changes appear in the catalog pref instantly (we must be watching that one with FSEvents or something), and I can search the new name in the main interface.
Have you been able to discover any more about this bug?
The fact that the catalog prefs update, but you can’t search it is somewhat worrisome. Are you using the default string ranker or TextStart?

The problem as described still exists for me. I haven't found more instances but I haven't been looking. I did have TextStart installed but the default string ranker was selected in Handlers. I unchecked the TextStart plugin and restarted QS and got the same behavior. If there's other debugging info I can give or run just let me know.