How to  save credentials on server

Hi,
currently i am trying to migrate my authentication server from u2f to fido.
I found examples/credential.py which works on my test setup. With u2f there was the key handle to be saved on server side. How does this work with fido? What part must be saved on server side after token registration?
Thanks a lot for any help.

Hi,
currently i am trying to migrate my authentication server from u2f to fido.
I found examples/credential.py which works on my test setup. With u2f there was the key handle to be saved on server side. How does this work with fido? What part must be saved on server side after token registration?
Thanks a lot for any help.

Okay after some investigation was able to export credential data as hex:
hex_dump = auth_data.credential_data.hex()
and load it with:
credential_data = AttestedCredentialData(bytes.fromhex(hex_dump))

Many of the data types used in WebAuthn are binary types (bytes in Python) and can be stored either as blobs in a database, or serialized to string in some way, like hex for instance as you are doing. Either of these approaches are fine, and depend on what is convenient for your purposes. I'm glad you found a solution that works!


Use internal bytes16 storage, no external API change

Pull request type
Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?
The Account contract stores the bytecode of the contract as an array of felt, one byte per felt.
Issue Number: #239
What is the new behavior?
I have used bytes16 internal felt packing.
Other information
Is 16 better than 31? I've used this because of the unsigned_div_rem but maybe better to use bytes31 and Uint256 div.
May also be better to accept the packed bytecode in the constructor to avoid the cost of doing it in the contract.
Maybe to return packed felt as well and update the other functions accordingly.
This was a fast (and furious 🏁) quick look at the question to have a first estimate of potential gains.

Re the discussion (maybe for future PRs), I think we want 31 and get and return in packed representation.
Wdyt?

Another note: currently the memory is also packed in 128b chunks, and I think we are deserializing to bytes and serializing back to 128b.
If the chunks are aligned, maybe we could avoid this altogether.
And another note: the packing can be a bit more optimized low level, I think, by doing aligned chunks at once (kind of loop unrolling). Checkout the memory implementation.

Re the discussion (maybe for future PRs), I think we want 31 and get in packed representation. When loading in preparation for execution, it makes sense to keep it in bytes though Wdyt?

indeed, we could store and return the packed representation, and update the call context usage to handle a packed representation. Seems reasonable

Another note: currently the memory is also packed in 128b chunks, and I think we are deserializing to bytes and serializing back to 128b. If the chunks are aligned, maybe we could avoid this altogether.
And another note: the packing can be a bit more optimized low level, I think, by doing aligned chunks at once (kind of loop unrolling). Checkout the memory implementation.

this would help the CODECOPY opcode only right?
you mean that writing 16 lines like packed_felt = bytecode[i] * 2**(120 - 8*i) + ... is more efficient?

codecov  fails because cairo-coverage doesn't recognize that the array:
    pow_:
    dw 0;
    dw 1;
    dw 2 ** 8;
    dw 2 ** 16;
    dw 2 ** 24;
    dw 2 ** 32;
    dw 2 ** 40;
    dw 2 ** 48;
    dw 2 ** 56;
    dw 2 ** 64;
    dw 2 ** 72;
    dw 2 ** 80;
    dw 2 ** 88;
    dw 2 ** 96;
    dw 2 ** 104;
    dw 2 ** 112;
    dw 2 ** 120;

is used

codecov fails because cairo-coverage doesn't recognize that the array:
    pow_:
    dw 0;
    dw 1;
    dw 2 ** 8;
    dw 2 ** 16;
    dw 2 ** 24;
    dw 2 ** 32;
    dw 2 ** 40;
    dw 2 ** 48;
    dw 2 ** 56;
    dw 2 ** 64;
    dw 2 ** 72;
    dw 2 ** 80;
    dw 2 ** 88;
    dw 2 ** 96;
    dw 2 ** 104;
    dw 2 ** 112;
    dw 2 ** 120;

is used

@spapinistarkware Are dw transformed at compile time so they are not instructions at runtime ?


License question

I am intending to write a Java port of dataloader. It will be Apache 2.0 licensed.
The code will be in Java and using Vert.x.
I want to rewrite the test in Java. It will match the js as close as possible. This should be no problem licensing-wise I assume, but just asking anyway.

No, there should be no problem with the license as far as I understand.


Kong failed to start on OCP4.3

Summary
SUMMARY_GOES_HERE
Steps To Reproduce

Install OCP 4.3
Install kong from operator hub with 0.1.0 operator

0.1.0 operator is using registry.connect.redhat.com/kong/kong-operator1:v0.1.0-2
0.1.0 operator using 1.1 kong operand

After operator was running, install default CR
found one pod failed to start.

[root@ocp43-inf ~]# oc get pods
NAME                                                              READY   STATUS             RESTARTS   AGE
etcd-operator-d7bb7f4cc-sqkkl                                     3/3     Running            336        37d
example-kong-9wm7zr9o6bojfylesx5u4kqf5-kong-6769b9649c-284s7      0/1     CrashLoopBackOff   6          22h
example-kong-9wm7zr9o6bojfylesx5u4kqf5-kong-init-migrationp64pt   0/1     Completed          0          22h
example-kong-9wm7zr9o6bojfylesx5u4kqf5-postgresql-0               1/1     Running            0          8m44s

[root@ocp43-inf ~]# oc logs -f example-kong-9wm7zr9o6bojfylesx5u4kqf5-kong-6769b9649c-284s7
chmod: /proc/self/fd/1: Permission denied
chmod: /proc/self/fd/2: Permission denied
nginx: [emerg] open() "/dev/stderr" failed (13: Permission denied)

I upgrade kong to docker.io/library/kong:1.3, still does not work.
I found there is a similar issue at https://github.com/Kong/kong/issues/4638#issuecomment-495302778 , but there is no solution and closed.
Additional Details & Logs

Kong version ($ kong version)
Kong debug-level startup logs ($ kong start --vv)
Kong error logs (<KONG_PREFIX>/logs/error.log)
Kong configuration (the output of a GET request to Kong's Admin port - see
https://docs.konghq.com/latest/admin-api/#retrieve-node-information)
Operating system

I think this is an issue with specific configurations of OpenShift. As noted in the similar issue you linked using manage.openshift.com I was unable to reproduce.
I have a theory that it's related to add-scc-to-group.
Could I get you to try with hutchic/kong:issue-5708 which is an image I built based on Kong:1.5.1 https://github.com/Kong/docker-kong/tree/fix/ocp

Thanks @hutchic , I did some test and it failed again with some other errors:
[root@hchenxa-inf ~]# oc get pods -n default
NAME                                                              READY   STATUS             RESTARTS   AGE
example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-96d46cb78-2b6k9       0/1     CrashLoopBackOff   2          16m
example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-init-migrationjmgxw   0/1     Completed          0          16m
example-kong-cc4qx7zb2n8jbzvthc84oddxl-postgresql-0               1/1     Running            0          2m33s

[root@hchenxa-inf ~]# oc describe pods -n default example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-96d46cb78-2b6k9
Name:         example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-96d46cb78-2b6k9
Namespace:    default
Priority:     0
Node:         worker0.hchenxa.os.fyre.ibm.com/<IP_ADDRESS>
Start Time:   Sun, 22 Mar 2020 20:40:59 -0700
Labels:       app=kong
              component=app
              pod-template-hash=96d46cb78
              release=example-kong-cc4qx7zb2n8jbzvthc84oddxl
Annotations:  k8s.v1.cni.cncf.io/networks-status:
                [{
                    "name": "openshift-sdn",
                    "interface": "eth0",
                    "ips": [
                        "<IP_ADDRESS>"
                    ],
                    "dns": {},
                    "default-route": [
                        "<IP_ADDRESS>"
                    ]
                }]
Status:       Running
IP:           <IP_ADDRESS>
IPs:
  IP:           <IP_ADDRESS>
Controlled By:  ReplicaSet/example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-96d46cb78
Init Containers:
  wait-for-db:
    Container ID:  cri-o://f914af3388faf55db6e5b7000a305ecfda99496c7bae98e6173e809903552496
    Image:         hutchic/kong:issue-5708
    Image ID:      docker.io/hutchic/kong@sha256:79dd2cfb2b1faf98e1d3a92178952b84bd3814ecfef1e88c4feecd79e77637a5
    Port:          <none>
    Host Port:     <none>
    Command:
      /bin/sh
      -c
      until kong start; do echo 'waiting for db'; sleep 1; done; kong stop
    State:          Terminated
      Reason:       Completed
      Exit Code:    0
      Started:      Sun, 22 Mar 2020 20:41:18 -0700
      Finished:     Sun, 22 Mar 2020 20:56:53 -0700
    Ready:          True
    Restart Count:  0
    Environment:
      KONG_PROXY_ACCESS_LOG:  /dev/stdout
      KONG_ADMIN_ACCESS_LOG:  /dev/stdout
      KONG_PROXY_ERROR_LOG:   /dev/stderr
      KONG_ADMIN_ERROR_LOG:   /dev/stderr
      KONG_PG_HOST:           example-kong-cc4qx7zb2n8jbzvthc84oddxl-postgresql
      KONG_PG_PORT:           5432
      KONG_PG_PASSWORD:       <set to the key 'postgresql-password' in secret 'example-kong-cc4qx7zb2n8jbzvthc84oddxl-postgresql'>  Optional: false
      KONG_DATABASE:          postgres
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-n2gmd (ro)
Containers:
  kong:
    Container ID:   cri-o://60da2c40c2cef949e5fd7f5a93311799f3fe29a65a7761f38df20d620371b2a2
    Image:          hutchic/kong:issue-5708
    Image ID:       docker.io/hutchic/kong@sha256:79dd2cfb2b1faf98e1d3a92178952b84bd3814ecfef1e88c4feecd79e77637a5
    Ports:          8444/TCP, 8000/TCP, 8443/TCP
    Host Ports:     0/TCP, 0/TCP, 0/TCP
    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Error
      Exit Code:    2
      Started:      Sun, 22 Mar 2020 20:57:38 -0700
      Finished:     Sun, 22 Mar 2020 20:57:38 -0700
    Ready:          False
    Restart Count:  3
    Liveness:       http-get https://:admin/status delay=30s timeout=5s period=30s #success=1 #failure=5
    Readiness:      http-get https://:admin/status delay=30s timeout=1s period=10s #success=1 #failure=5
    Environment:
      KONG_ADMIN_LISTEN:      <IP_ADDRESS>:8444 ssl
      KONG_PROXY_LISTEN:      <IP_ADDRESS>:8000,<IP_ADDRESS>:8443 ssl
      KONG_NGINX_DAEMON:      off
      KONG_PROXY_ACCESS_LOG:  /dev/stdout
      KONG_ADMIN_ACCESS_LOG:  /dev/stdout
      KONG_PROXY_ERROR_LOG:   /dev/stderr
      KONG_ADMIN_ERROR_LOG:   /dev/stderr
      KONG_DATABASE:          postgres
      KONG_PG_HOST:           example-kong-cc4qx7zb2n8jbzvthc84oddxl-postgresql
      KONG_PG_PORT:           5432
      KONG_PG_PASSWORD:       <set to the key 'postgresql-password' in secret 'example-kong-cc4qx7zb2n8jbzvthc84oddxl-postgresql'>  Optional: false
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-n2gmd (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  default-token-n2gmd:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  default-token-n2gmd
    Optional:    false
QoS Class:       BestEffort
Node-Selectors:  <none>
Tolerations:     node.kubernetes.io/not-ready:NoExecute for 300s
                 node.kubernetes.io/unreachable:NoExecute for 300s
Events:
  Type     Reason     Age               From                                      Message
  ----     ------     ----              ----                                      -------
  Normal   Scheduled  <unknown>         default-scheduler                         Successfully assigned default/example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-96d46cb78-2b6k9 to worker0.hchenxa.os.fyre.ibm.com
  Normal   Pulling    16m               kubelet, worker0.hchenxa.os.fyre.ibm.com  Pulling image "hutchic/kong:issue-5708"
  Normal   Pulled     16m               kubelet, worker0.hchenxa.os.fyre.ibm.com  Successfully pulled image "hutchic/kong:issue-5708"
  Normal   Created    16m               kubelet, worker0.hchenxa.os.fyre.ibm.com  Created container wait-for-db
  Normal   Started    16m               kubelet, worker0.hchenxa.os.fyre.ibm.com  Started container wait-for-db
  Normal   Pulled     3s (x4 over 46s)  kubelet, worker0.hchenxa.os.fyre.ibm.com  Container image "hutchic/kong:issue-5708" already present on machine
  Normal   Created    2s (x4 over 46s)  kubelet, worker0.hchenxa.os.fyre.ibm.com  Created container kong
  Normal   Started    2s (x4 over 45s)  kubelet, worker0.hchenxa.os.fyre.ibm.com  Started container kong
  Warning  BackOff    1s (x6 over 44s)  kubelet, worker0.hchenxa.os.fyre.ibm.com  Back-off restarting failed container

[root@hchenxa-inf ~]# oc logs -f example-kong-cc4qx7zb2n8jbzvthc84oddxl-kong-96d46cb78-2b6k9 -n default
/bin/sh: can't open '/docker-entrypoint.sh': Permission denied

@gyliu513 sorry that's my fault needed to chmod the entrypoint. I re-pushed hutchic/kong:issue-5708

Thanks @hutchic , it works!
Can you help fix https://github.com/operator-framework/community-operators/issues/1400 as well? I think we need a new version operator for Kong.

Yup I wanted to validate the docker fix here first

@hutchic Has it been officially fixed? I am seeing you've updated the git commit hash for 1.5.1, does it mean I should use 1.5.1 instead of 1.1 when install kong?

Based on the tests @gyliu513 ran in this thread and the subsequent re-build of Kong 1.5.1 yes 1.5.1 should work in all openshift environments / setups

Encountered same issue.
Updating image tag to 1.5.1 fixed the issue.


Add Member Henry

hi Henry, you can take a look at the Cookbook first, there is a lot of Starcoin knowledge in it, if you have any questions, you can ask on telegram or discord

Since the PR is not updated for too long, it is temporarily closed. If you want to continue to participate in Startrek, please apply again.


Custom Company/GameName folder for OS.get_data_dir() instead of just "Godot" on Desktop?

Currently Godot is using a "Godot" master path in Appdata directory for user data.
However it'd be better if we could change the path so it would be either something like,
%appdata%/<CompanyName>/<GameName> or
%appdata%/<GameName>

So instead of:
C:/Users/Alex/AppData/Roaming/Godot/app_userdata/TestGame
on Windows, it would be,
C:/Users/Alex/AppData/Roaming/My Company/My Game/
So you could organize your games' data under a Company or a custom branded directory etc.
I propose a field in the Project Settings that would allow for a path like [ My Company/My Game  ] that'd be always parented to the %appdata% directory.
Tested on Windows. Mac & Linux possibly have this issue as well. Especially Linux since I know files are most likely stored under~/.config/, and it probably needs to be ~/.config/<CompanyName>/<GameName>. On Mac it should be in the Library/Application Support folder like ~/Library/Application Support/<CompanyName>/<GameName>
Using Godot 2.0.2

By reading the code, this feature is already partly implemented:

Unix: https://github.com/godotengine/godot/blob/1ea4b8e2dc61b39e78fb1691f738a03091ee2138/drivers/unix/os_unix.cpp#L465
Windows: https://github.com/godotengine/godot/blob/a895e2e372c9df2a9972f38134ae0ea9c8bf45a8/platform/windows/os_windows.cpp#L2112

There should be application/use_shared_user_dir in the project settings that you can toggle off so that it uses:

On Unix: $(HOME)/.<GameName>
On Windows: %appdata%/<GameName>

If someone wants to make a PR to allow defining a custom path instead of <GameName>, it should be relatively easy to do. It's also partly related to #3513, but the latter won't be fixed before 3.0 as it breaks compatibility for existing games.

Adding that on Mac it should be under the Application Support folder:
~/Library/Application Support/<GameName>

Using SYSTEM_DATA_PATH/Game Name was already supported for a while, and I've added proper support for XDG paths in #12988, so this is fixed.
I'll open another issue for the only point that could still be addressed, i.e. allow to use something like SYSTEM_DATA_PATH/Company Name/Game Name instead of just SYSTEM_DATA_PATH/Game Name.


Implement Search API Endpoints

This PR will close #266, closes #267, closes #268
Description
This PR implements all of the endpoints required for the search API. This is fairly simple code, it just utilises all of the stuff we've been working on - queries, filters, putting the data into a format ready to be given as a response. I've added docstrings where needed, which resolves some of the TODOs in search_api_endpoints.py.
I have also added some tests for the new endpoints. As of the date of PR creation (14/01), these tests are fairly basic, but more tests will be added before this PR gets to be ready for review.
Testing Instructions
Manually send requests to the endpoints and see if you can break them. As of the date of PR creation, they're fairly fragile because of bugs that need to be fixed elsewhere (which we know about already) but hopefully the endpoints should be robust by the time they're merged (or we have plans to fix bugs).
This branch will cause a feature version bump.

[ ] Review code
[ ] Check GitHub Actions build
[ ] If icatdb Generator Script Consistency Test CI job fails, is this because of a deliberate change made to the script to change generated data (which isn't actually a problem) or is here an underlying issue with the changes made?
[ ] Review changes to test coverage
[ ] Does this change mean a new patch, minor or major version should be made? If so, does one of the commit messages feature fix:, feat: or BREAKING CHANGE: so a release is automatically made via GitHub Actions upon merge?

@VKTB I've marked this for re-review as all the code is ready for review but I just need to figure out the CI issue as the endpoint tests fail on CI right now (but pass locally). Going to investigate this now.

I am not sure why my other comment is not showing up but please bare with me while I re-type it..


Share CI cache across jobs

This should reduce our cache storage and thus hopefully prevent cache overflows, which makes the CI very slow.

Unfortunately this doesn't work as intended because the different jobs build different parts of the code. Reusing the cache from other jobs is still better than compiling from scratch of course, but the problem is that the cache is not updated with the other compilation results in that case (since the environment didn't change). So by sharing the same cache entry, some jobs need to do their work over and over again without it being cached.
I think a better solution to our cache eviction problem is to combine the jobs if possible, i.e. not run the examples separately. I'll open a new PR for that.

New PR: https://github.com/dora-rs/dora/pull/219


Add to get host-ip as well?

So in linux hostname command can also show the local ip via hostname -I
Looking at libc code, you can clearly see the used gethostname function, but I couldn't intuitively find the function for getting the local-ip only.
I'm aware that there is local-ip crate, but it's more of a hack using regex on ifconfig and I doubt it's cross platform, it differs output with hostname -I too.  Is it appropriate to add the host-ip functionality here as well?

Could this be the crate you're after? https://docs.rs/get_if_addrs/0.5.3/get_if_addrs/struct.Ifv4Addr.html

I feel like this is out of scope of the hostname routines, so I'm going to close this issue.
Thank you, @willstott101, for providing possible alternative for the host ip stuff.


MovableListView not responding on some iPhones : Solved?

Hello,
I've recently integrated this MovableListView into my Xamarin Forms project.
iPhone 5 with the model type of NE496LL/A do not have an issue with the MLV and respond properly.
However, newer models of iPhone do not seem to be responding.
My guess is that there is an issue with how the UILongTouchGesture is interpreted.
Is this a common issue? If so, has there been a remedy that others are using?
If I find the answer myself I will reply to this thread with the code.
Thank you again for this otherwise wonderful solution!

I think I found the answer,
Importing the files directly rather than using the compiled .dll files seems to have fixed the issues I was having.

Hello. Are you slove problem?

Maybe you forgot about  [assembly: ExportRenderer(typeof(MovableViewCell), typeof(MovableViewCellRenderer))] ?


configures the context paths before the application.run()

https://github.com/dropwizard/dropwizard/pull/1503 including a build fix

Coverage decreased (-0.0007%) to 80.873% when pulling d6dfbcbf821fd1b7f3aab881c34302095f3a3cfc on qinfchen:qchen/init into 9f06476cc59a99b9de7aed0f46b2d81da4f7d2b8 on dropwizard:master.

hmm. There is no coverage for EnvironmentCommand run method. Since i added a line in there, the coverage went down... :(.

Thanks for the contribution!


Compiler bug on dll call

The code here throws a compiler bug.

Good catch. I reduced it to this:
lib LibC
  fun foo(...)
end

LibC.foo(out x)

Basically, the use of out with variadic parameters. That shouldn't compile (because there's no way the compiler can figure out the type of x). As a workaround, you can use, in your case:
  def self.get_terminal_size
    screen_size = uninitialized Int32
    C.ioctl(0, tIOCGWINSZ, pointerof(screen_size))
  end


Support CheckoutPlatform

Hi,
Do you have any plan to support CheckoutPlatform and Transfer apis ?

I created a PR for this

Hey @ehsannm
We just released a new version which includes tons of new functionalities.
Please let us know if you have any issue, sorry if your issue and your PR was not attended at the right time, we are just jumping on the ownership of GO SDK right now.
I'm going to close this issue, but feel free to reopen if needed


[P9] Playnite is having problems with the bulk import of metadata from IGDB for games from Origin and Uplay, at least

Describe the bug
Whenever I bulk import metadata for games from Origin or Uplay, it just doesn't get anything from IGDB. When I search for each game individually, directly from the edit menu, it does finds the game entry in IGDB.
Since I had already corrected manually the games I had with issues, I just imported the metadata from the game "Anthem" with CTRL + D before sending the diagnostics package.
To Reproduce
You just need to bulk import metadata from IGDB, if the game is from Origin or Uplay, the problem occurs.
Diagnostics ID
2ef55708-76c8-409a-b129-a5150c6dfa3b
EDIT: Forgot to include, but games imported from Amazon, Steam, itch.io and manually seems to work alright.

Fixed in master.


Method Syntax Example

Fixes #6204

Closing and reopening to begin a new internal build.

Thanks, @matt-p-hansen, for making the additional change, as well as for contributing to the dotnet/docs repo. We'll merge your PR now. Your example should be live on docs.microsoft.com in the next day or two.


Table aggregation: Token expires while running long aggregations

Repro Steps

Comment from Ove on devops US
Seems to happen at exactly 12 hours which I assume is the token duration. Need to either split into more jobs or refresh the token somehow

https://github.com/equinor/sumo-fmu-aggregation-service/pull/136 closes


Gtag changed versions, 2019.x.x-2022.3.2f1 (i forgot the 2019 version they used.)

The mod itself is working, but not on steamvr, its because oculus pc and steamvr have different inputs.

Gonna update here if its fixed! - 🔴 not fixed


#requires -ExecutionPolicy ....

Hi Guys !!
add new pragma Executionpolicy to enable control execution of script

#requires -Executionpolicy bypass
echo hello

this pragma support enum [Microsoft.PowerShell.ExecutionPolicy]

More details are needed, please specify what you expect this would do.

@SeeminglyScience
thanks,
this feature make coder to control the script execution policy in this script file for exemple instead of execute her script
PS> powershell -file ./script.ps1 -executionpolicy bypass
it can use simply
PS> ./script.ps1
and include in her script pragma#requires -Executionpolicy bypass
the values of -Executionpolicy is [Microsoft.PowerShell.ExecutionPolicy]

But if the file controls the execution policy, what's the point of execution policy? Granted I often ask the latter half of that question anyway, but that's a separate issue.

@SeeminglyScience  but this is the same of:
PS> powershell -file ./script.ps1 -executionpolicy bypass
with this we can be bypass the execution policy and put the script in schedule task for example

It's still up to the caller to specify -ExecutionPolicy Bypass and not the script. Granted this could be made as a lower priority than the process level so that it doesn't override any other defined policies but I just don't see why.

Yeah if this were added every script would just add that. After all, why would a script want to disable it's own execution? It would be almost the same as just removing the concept of execution policy entirely.

with this we can be bypass the execution policy and put the script in schedule task for example

FYI you can add use a PowerShell script as a scheduled task just fine, you just need to define it like this:

Field
Value

Target
powershell.exe

Arguments
-ExecutionPolicy Bypass -NoProfile -NonInteractive -File path

I also fail to see the improvements this should bring. ExecutionPolicy is defined by the caller, not the script author. It defeats the entire reason ExecutionPolicy exists in the first place. If you need to circumvent it, let the caller circumvent it, not the script author.

I agree that the execution policy should be defined by the caller, not the script. Thanks all for the discussion!


Optimization of dynamic_k_matching and bboxes_iou

COCO train time:
Before: 1 day, 22:00:54
After:    1 day, 17:50:37
(64 CPUs, 8GPUs, 64 batch_size, fp16, no cache)

@WayneMao Looks good to me. Please also report your training result for yolox-s here.

Gentle ping @WayneMao

@WayneMao Looks good to me. Please also report your training result for yolox-s here.

LGTM. Well done @WayneMao


[React Native][iOS] Scrolling Fails on iOS in RN Apps in 1.26.1 - 1.27.0

Hi, I have this in slack, but wanted to put an issue here in case anyone else is running into this -
Scrolling was / continues to be fine on earlier versions of maestro (e.g 1.24) but now is failing in 1.26.1 / 1.27.0 for our app.
Using the scroll command in maestro studio or cloud, for example, shows a success, but the screen is not actually moved, so later commands will fail if relying on the new scroll position.
Our app is built with React Native and uses React Navigation / Expo, which is pretty typical.

Our tests rely on scroll and scrollUntilVisible which continue to work fine on earlier versions, but in the current versions.

2023-05-02_131304.zip
2023-05-02_131423.zip
2023-05-02_131645.zip

I'm having the same issue

I'm having the same issue

@KrisLau We ended up refactoring our navigation to remove one of our nested navigators (react-navigation) - which surprisingly fixed this issue for us.
We had a drawer -> tabs -> stack levels of nav. It consistently failed on these versions with that whereas it didn't previously, but after removing the drawer level, it works again 🤷

@nicholascm In my case I have a feeling it might be because I have the test focused on an input then it tries to scroll without closing the keyboard. I tried closing the keyboard using the hideKeyboard command but it didn't seem to work

@nicholascm In my case I have a feeling it might be because I have the test focused on an input then it tries to scroll without closing the keyboard. I tried closing the keyboard using the hideKeyboard command but it didn't seem to work

You can also try tapping something else that is visible on screen outside of the input, and then executing the scroll which should accomplish the same thing.

Closing this out as this was fixed by updating the app architecture. If there are more issues with this, please file a new bug report. Thanks!


Reduce garbage generation with smarter IDList merge

Arising from #266 (but not claiming to fix it).
The previous implementation, when adding M elements to N, would do O(M * NlogN) compare operations, O(M * N) copies to move the data around and M*2 heap allocations.
This merge implementation should do O(M+N) compares, M+N copies and 1 allocation.
A couple of ancillary things were required to keep tests passing: the use of MakeIDList in TestMergeAdjacency created an IDList that broke its own invariant, so I made MakeIDList enforce it.  It is not clear whether this feature is required for the real code or just an artefact of the test.  Also the early-out on empty IDList - otherwise DeepEquals complains that an empty slice is not the same as a nil slice.
The third commit, 35f9dc6, is very low-impact compared to the above, but provides minor reduction in allocation.

One small comment, other a very nice change.  Thanks!

You've reminded me that that MakeIDList implementation is rather inefficient if the supplied list has a lot of duplicates.  It appears that, outside of tests, it is only called with 0 or 1 argument.

Modified MakeIDList as suggested, rebased and push -f'd

Oops, sorry, my push had actually stalled.  Shall I do another PR?

Whoops.  My bad.  Yes please.


[BIOMAGE-1222] Implement the marker heatmap page in plots and tables

Background
Link to issue
https://biomage.atlassian.net/secure/RapidBoard.jspa?rapidView=1&projectKey=BIOMAGE&modal=detail&selectedIssue=BIOMAGE-1222
Link to staging deployment URL
https://ui-stefan-ui429-api198.scp-staging.biomage.net/
Links to any Pull Requests related to this
https://github.com/biomage-ltd/api/pull/198
Anything else the reviewers should know about the changes here
Changes
Code changes
Definition of DONE
Your changes will be ready for merging after each of the steps below have been completed:
Testing

[ ] Unit tests written
[ ] Tested locally with Inframock (with latest production data downloaded with biomage experiment pull)
[ ] Deployed to staging

To set up easy local testing with inframock, follow the instructions here: https://github.com/biomage-ltd/inframock
To deploy to the staging environment, follow the instructions here: https://github.com/biomage-ltd/biomage-utils
Documentation updates
Is all relevant documentation updated to reflect the proposed changes in this PR?

[ ] Relevant Github READMEs updated
[ ] Relevant wiki pages created/updated

Approvers

[ ] Approved by a member of the core engineering team
[ ] (UX changes) Approved by vickymorrison (this is her username, tag her if you need approval)

Just before merging:

[ ] After the PR is approved, the unstage script in here: https://github.com/biomage-ltd/biomage-utils is executed. This script cleans up your deployment to staging

Optional

[ ] Photo of a cute animal attached to this PR

Sorry Stefan - I can't review this from the user's perspective because every time I change something it becomes unresponsive.
https://user-images.githubusercontent.com/74908153/129191107-a1dd8e4a-3c65-49e7-8f9c-bbdb30bb7081.mov

Does it re-run the 'findmarkers' for the custom cell sets when this option is selected? Or is it still showing markers for the Louvain clusters?

Metadata track bug - menu says Louvain track is shown but it does not appear on the plot.

The re-loading has a lag: I make a change and the heatmap disappears but then the OLD version reappears for a few seconds before the NEW version appears. Video example below of changing the number of genes per custer.
https://user-images.githubusercontent.com/74908153/129368438-ccb657cd-acac-415c-bc7d-34f4165c6c6a.mov

When scratchpad is selected in the menu I would expect the marker heatmap to update to show me markers for the custom cell sets. This does not happen.

Following a Slack chat this likely needs bioinformatics input - happy for you to merge this ticket and create a new one for this issue.

The re-loading has a lag: I make a change and the heatmap disappears but then the OLD version reappears for a few seconds before the NEW version appears. Video example below of changing the number of genes per custer. This lag is 10 seconds.
https://user-images.githubusercontent.com/74908153/129368438-ccb657cd-acac-415c-bc7d-34f4165c6c6a.mov
I'm pretty sure this is how rendering vega plots works - shows the previous state of the plot and when its rendered shows the new one

The re-loading has a lag: I make a change and the heatmap disappears but then the OLD version reappears for a few seconds before the NEW version appears. Video example below of changing the number of genes per custer. This lag is 10 seconds.
https://user-images.githubusercontent.com/74908153/129368438-ccb657cd-acac-415c-bc7d-34f4165c6c6a.mov
I'm pretty sure this is how rendering vega plots works - shows the previous state of the plot and when its rendered shows the new one - we should work on improving the rendering time in a future ticket (downsampling possibly)

But the issue is that the heatmap disappears while it is being rendered (with "we're loading your data" message), but then the OLD one appears for 5-10secs before the NEW one eventually loads. It would be better if there was simply a longer time of "we're loading your data" as it is confusing to the user that the OLD version reappears.


How to use Room database across Instant App feature modules?

Actually I'm preparing for Instant App. Consider I've the following feature modules. And each module has its own data layer with Entity and Dao classes.
->feature-base
->feature-profile
->feature-payment
->feature-dashboard
Where should I place my "RoomDatabase" class?
I want to keep all my app data in single database. I can't place my "RoomDatabase" it in base module or at each feature!
Kindly suggest the right way of using "Room Database" in Instant App feature modules.

I'm looking for some insight into this as well.

I feel like there are three possible solutions here and each probably has their own pros and cons. Interest to hear what others come up with too.
Option 1 (Database per feature module):
Each feature module has a database and data layer that it exclusive to that module. The Database, DAOs, Entities, etc. are all contained within the feature module. The obviously results in a cleaner separation of modules, and integrity of data between instant apps and the full app (as there is no change in data architecture). On the other hand it may affect performance and it definitely affects the way relationships can be formed and prevents data relationships being formed between modules.
Option 2 (Database per app module):
Each feature module defines its own DAOs and Entities, but databases are defined by the various app modules (e.g. 1 for installed, 1 for Feature A instant, 1 for Feature B instant, etc...). Each of these app module databases defines only the DAOs required for that version of the app (so installed will pull in all of them, but Feature A will only pull in the DAOs and Entities relevant for Feature A). The benefit of this is having a single database allowing relationships to be more easily formed. However this is also a double edged sword as depending on how dense your relationships are you may need to pull in the whole database anyway even if the feature only uses one Entity. Another potential issue is data integrity, I'm not entirely certain how it will work having multiple databases across different versions of the app. A user moving from instant to installed may end up losing data because the underlying database is different.
Option 3 (Single Database):
In this scenario you have a single database and collect all your entities and DAOs into a single data layer that is shared between all modules. This obviously isn't as ideal in code separation and means that feature A is required to include code that's only used in feature B. But it would ensure the integrity of data and wouldn't restrict entity relationships in any way.

To anyone who still has this issue, including me at the moment, I have come across this Medium article and would like to reference it here. Hope it helps a little.

Thanks for linking my blog. Yes, I contacted Yigit after opening this issue, and went ahead with multiple databases for each module. Have not run into any problems as of now.

Create a base-db module and put your entire database into it. Share that instance across all feature modules

@karntrehan could you provide more info about declaring a module for just database ... or are you mentioning the data layer (local + remote entities and data sources) ??

We ended up creating a separate library module containing the database and models. This  was then implemented in all the individual modules.

We ended up creating a separate library module containing the database and models. This was then implemented in all the individual modules.

@karntrehan Could you please tell us more about the issues that made you make one module containing database and entities and not using a separate database from each module?


Visualization Optimization and Interpretation of Topic Labels and Color Zones

Hello,
First of all, thank you for developing the DataMapPlot library. I'm currently using it and encountered a couple of issues that I hope you can assist me with.

Label placement optimization: In the current visualization, each topic label is connected to the corresponding document region by a line. However, this makes the plot look a bit cluttered. I would like to move all the topic labels to the top-right corner of the plot, similar to how a legend would appear, rather than labeling them directly on the chart. Is there a way to achieve this? If so, how can I implement it?
Interpretation of color zones: In my visualizations, the color zones for each topic appear like "tree rings," forming concentric layers. Could you explain what this effect represents? Is it related to the relevance of documents to the topic, or is it visualizing another dimension of the data?
Thank you again for your help, and I look forward to your response!
Best regards,

There are some options in label placement. See here and here for some of them. None are quite what you are after I believe. In that case you are best just placing labels yourself via matplotlib.
The colour zones are KDEs based on the points in the cluster. You can turn them off entirely (add_glow=False) or control them more directly with glow_keywords . See the end of this documentation for some more details.


TypeError: Cannot read properties of undefined (reading 'stylelint') at updateDependencies

nx g nx-stylelint:init fails when package.json doesn't contains a dependencies: {} entry with following error:
TypeError: Cannot read properties of undefined (reading 'stylelint')
    at updateDependencies (<project-path>/node_modules/nx-stylelint/src/generators/init/generator.js:30:35)
    at initGenerator (<project-path>/node_modules/nx-stylelint/src/generators/init/generator.js:9:25)
    at Object.<anonymous> (<project-path>/node_modules/nx/src/command-line/generate.js:249:36)
    at Generator.next (<anonymous>)
    at fulfilled (<project-path>/node_modules/tslib/tslib.js:164:62)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

nx: v16.0.0
nx-stylelint: v15.0.0

Resolved by ee6e452c05f037c391228e4dc659975aafdccff7


re-api returns error 503

re-api.adsb.lol 503 Service Temporarily Unavailable

related to https://github.com/alpinelinux/docker-alpine/issues/383

@jor70 should be solved now, in the future IRC will probably get a quicker look.

Awesome, thanks El 27/3/24, 18:43 Katia Esposito @.***> escribió:
@jor70 should be solved now, in the future IRC will probably get a quicker look.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

503 error happening again
should be solved now, in the future IRC will probably get a quicker look.


The column should be announced as “sortable” when screen reader is running, e.g., “Amount button – sortable”

Please include suffix "sortable" for screen reader only user (don't need to be visible) when column is set to sortable.

Thanks for the quick respond. Our accessibility team suggested an example at https://assets.cms.gov/resources/framework/2.0/Pages/datatables.html
When we have voice over on it will announce for example. “First name, sortable column. Activate to sort column ascending link”.
The way they implement this is simply adding the alt text to the image. You can see from the code below.
First Name
Would this be something that possible to implement as well?
Thanks again.

Still trying to get a handle on the exact issue. Since we do have aria-sort once the sort for a header has been engaged, I'm guessing that the issue is when no sorting has yet been engaged, there is no signal that the header is sortable. In the example you show, there are always-present icons for sorting which allow you to use alt tags to present the information to a screen reader.
This table is following material ui, which doesn't have such a thing as always-present sortable icons at the moment. However, there is a tooltip with the title="Sort". Is this not being read by your screen reader?

Yes, that is not being read by the screen reader. You can try to use VoiceOver that comes with macOS (CMD+F5) and use keyboard to navigate to the column header. It is currently only announce the Header text.

I use Chrome on a PC, and I just went looking for good accessibility tools, but it seems Chrome is not widely used by vision impaired folks.
In the mean time, do you think it would be sufficient to add aria-sort="none" on a sortable header prior to having a sort direction chosen? After choosing, it sets "descending" or "ascending" accordingly.

@supakitk @gabrielliwerant I may be able to help as I use a Mac. I just tried VoiceOver (I've never used it before but it's pretty cool that it exists). In the current MUI setup, this is what VoiceOver reads to me when I tab over to the first column header in the "customize-search" example:

Modified Title Label, button
Sort, you are currently on a button, inside of a cell. To click this button press Control+Option+Space.

The second part occurs because the tooltip pops up automatically because the field has focus. So for me, it's reading the tooltip. If I change the Tooltip's title from "Sort" to "Sort by Title", it reads me this:

Sort by Title, you are currently on a button, inside of a cell. To click this button press Control+Option+Space.

I wonder if this is a browser issue. @supakitk what browser/version are you using?
Also, it looks like @Avd6977's PR https://github.com/gregnb/mui-datatables/pull/888 is related to this, but due to the # in the branch name it can't easily be checked with codesandbox. I tried it out on my Mac and it's setup to only give the "Sort by {label}" title if I change the textLabels.body.toolTip to be empty. I think the general idea is a pretty good, but it may make more sense to make textLabels.body.toolTip a template string with the Sort by ${label} value as a default.

@patorjk The title is apparently non-standard for a lot of tags, so it's reasonable that certain browsers/screen readers would skip it.
The table is mostly material-ui underneath, so we handle sortable headers the way they do, and they do not have any sortable indication when there is no active sort. As far as I can tell, there is no accessibility requirement to announce that a table header is sortable or not. Seems reasonable to me to provide it, but I can't find any standard around it.

I'm not positive of the requirement, but it turns out it's partly linked to the #878 issue with using merge. For me, the titles were all blank because textLabels["body"]["toolTIp"] was undefined. However, just having it be sort does get flagged by our customers who run ADA checks because all of the titles are the same. Like I said, not sure of a requirement, but making them different/more clear I think would help.

Doing a "grep -R toolTip src/*", it looks like that tooltip is only used in 1 place in the code (the column headers). One solution may be to create a textLabels.body.columnHeaderTooltip property which is a function. Ex:
columnHeaderTooltip: (label) => {
    return "Sort by " + label;
}

Then change:
<Tooltip
    title={options.textLabels.body.toolTip}

To:
<Tooltip
    title={options.textLabels.body.columnHeaderTooltip ?
        options.textLabels.body.columnHeaderTooltip(label) : options.textLabels.body.toolTip}

That would be backward compatible (though the label passing functionality from PR https://github.com/gregnb/mui-datatables/pull/888/ would also need to be brought in).

@patorjk Sorry for the delay. I see the issue on both Safari version 13.0.1 and Chrome version 76 on macOS 10.14.6

Does the problem still happen with version 2.10.1 of this library? I'm using macOS Mojave 10.14.6 and it reads the "Sort" tooltip text for me on Chrome 76 and Safari 12.1.2.
Also, when I tab over to the header, as soon as the header has the focus, the tooltip pops up.

Sort is back after the 2.10.1 patch, but I would love to see it customizable like you'd listed above. This would now be a feature, though, not a bug.

Hi @patorjk, Thanks! I can see it reads the "Sort" tooltip text after upgraded to version 2.10.1.

Looks like the sort issue might have been related to the textLabel, though I'm not sure how! Glad it's fixed though.
@Avd6977 if you want to modify https://github.com/gregnb/mui-datatables/pull/888 to implement @patorjk's suggestion, I would accept it!

Updated it to reflect @patorjk's suggestion but I changed it to return column so someone could use name, id label, or whatever other property of column they want.

Should be fixed as of 2.11.0.


Integration of echo-cancelling

Do you think you can integrate an echo-cancelling option for hfp ofono?
There is already a very well working speexdsp example for mono raw audio files:
https://github.com/xiph/speexdsp/blob/master/libspeexdsp/testecho.c
The example
./testecho ~/local_mic_recording.raw ~/incomming_bluealsa.raw ~/outgoing_to_bluealsa.raw
is working pretty good:
incomming_bluealsa is completely removed from the recording mixture. However, smaller stream-frames for real-time-processing will not allow to remove all incomming_bluealsa  if not in sync - but should be possible at all.
I used https://github.com/voice-engine/ec.git and https://github.com/voice-engine/alsa_plugin_fifo.git to write out the necessary files (playing audio incomming_bluealsa and recording local_mic_recording - all with 16000 kHz sampling-rate and recording at the same time). The ec tool is somehow working but there are some problems - maybe mixing up stereo and mono. And the used alsa configuration is not very practical because ec is closing after stopping the recording and the LOOPBACK device is blocked. After stereo to mono conversion of all output of ~/ec/ec -i plughw:1 -o plughw:1 -d 200 -s  and running testecho the resulting audio is much better than using ec directly.

To be honest I'm not sure whether AEC should be a part of bluealsa itself. The case is that the BlueALSA service should be treated as a sound card with many PCM devices (playback and capture). It is not a telephony application. One can build a telephony-like application on top of bluealsa - using it as an audio backend for mic and speaker (in the same way a standard audio card would be used). Do you know of any sound card which has build-in echo cancelation? If there are sound cards like that, maybe we can try to mimic such solution in BlueALSA service. But for now, I'm not sure how it should work from the user point of view - BlueALSA service might have many capture PCMs and many playback PCMs...

I think echo cancellation is a function that is applied to the stream from the local microphone, not the remote bluetooth one.

It all depends how BlueALSA is used - what kind of setup we are talking about. Because remote Bluetooth device might be a local device, e.g. BT speaker. So, echo cancelation will be done on a "local" BT device, and audio from the BT speaker mic will be transferred over VoIP. Anyway, I do agree that it's not a BlueALSA job to perform echo cancelation, but rather an application which is using PCM audio device.

Hi again, and sorry for my late answer.
Of course AEC is a local sound problem. And you are totally right that it is not directly related to bluez-alsa. However, I have now managed to hack in a little prove of concept tool - and it hasn't been showing so much effort to build. So may be an option for you to include such a small tool?
/*
** A straight forward AEC proove of concept based on speexdsp
** MIT License Copyright (c) 2022 U. Niethammer
*/
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif

#include "speex/speex_echo.h"
#include "speex/speex_preprocess.h"
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>

#define MONO_FRAME_SIZE 256
#define STEREO_FRAME_SIZE 512
#define FILTER_SIZE 1024

int main(int argc, char **argv) {

  short input[STEREO_FRAME_SIZE];
  short output[MONO_FRAME_SIZE];
  short rec[MONO_FRAME_SIZE];
  short ref[MONO_FRAME_SIZE];

  size_t input_size = 0;
  size_t output_size = 0;
  int counter = 0;

  SpeexEchoState *st;
  SpeexPreprocessState *den;
  int sampleRate = 16000;

  // init speexdsp
  st = speex_echo_state_init(MONO_FRAME_SIZE, FILTER_SIZE);
  den = speex_preprocess_state_init(MONO_FRAME_SIZE, sampleRate);
  speex_echo_ctl(st, SPEEX_ECHO_SET_SAMPLING_RATE, &sampleRate);
  speex_preprocess_ctl(den, SPEEX_PREPROCESS_SET_ECHO_STATE, st);

  // read the first frame...
  memset(input, 0, sizeof(input));
  memset(output, 0, sizeof(output));
  input_size = fread(input, 1, sizeof(input), stdin);
  do {
    // extract interleaved stereo frame S16_LE to separated mono frames
    // rec and ref
    for (counter = 0; counter < STEREO_FRAME_SIZE; counter += 2) {
      rec[counter / 2] = input[counter];
      ref[counter / 2] = input[counter + 1];
    }

    // do the echo-cancelling
    speex_echo_cancellation(st, rec, ref, output);
    speex_preprocess_run(den, output);

    //output the processed frame
    output_size = fwrite(output, 1, sizeof(output), stdout);
    if (!output_size) {
      fprintf(stderr, "\nError writing frame\n");
      break;
      // no data writable
    }
    if (input_size < sizeof(input)) {
      break;
      // no data readable
    }
    // Put the next frame in buffer
    memset(input, 0, sizeof(input));
    input_size = fread(input, 1, sizeof(input), stdin);
  } while (input_size == sizeof(input));

  // all done
  speex_echo_state_destroy(st);
  speex_preprocess_state_destroy(den);
  return 0;
}

Such tool canbe easily be used for files:
aec_cmdline_chain_tool < infile.raw > outfile.raw
or in combination with arecord and aplay:
arecord -f s16_le -D bluealsa | aplay -D mloopplay -f S16_LE -r 16000
and
arecord -D aec_internal -f S16_LE -c 2 -r 16000 | aec_cmdline_chain_tool | aplay -D bluealsa
The tool is reading a stereo track with the local recording on left and the parasitic reference signal (here bluealsa remote) on the right.
This stereo track is beeing supplied from a Loopback device as described in:
https://github.com/SaneBow/alsa-aec.git

Update:
Now for 8000 Hz mono_mloopplay and stereo_mloopplay support (prior 16 kHz stereo mloopplay only, see my new 50-aec.conf)
So
arecord -f S16_LE -D bluealsa | aplay -D mono_mloopplay -f S16_LE -r 8000
and
arecord -D aec_internal -f S16_LE -c 2 -r 8000 | aec_cmdline | aplay -D bluealsa
should now be working with ofono


Edit Get User Creator Function

Default in loop get messages very query get creator executed. I want that only executed once.

Thank you @kenzouno1!


Firebase auth properties are not updated on user profile change

Description
Firebase auth properties are not updated when user data are changed following a call to this.user.updateProfile, this.user.updateEmail, etc.

Expected outcome
Firebase auth properties value reflect the last changes.

Actual outcome
Firebase auth properties value remains the same as before an update. A full page reload is required to get fresh values.
Steps to reproduce

Make use of firebase-auth custom element:

<firebase-auth id="auth" user="{{user}}"></firebase-auth>

In your custom element template, include the user display name data binding:

Username: [[user.displayName]]

Create an action (triggered for instance upon a tap on a button) that changes the current user display name as follows:

this.user.updateProfile({displayName: 'What a fail!'});

When the button is tapped, your page should display Username: What a fail! but it does not. The old value remains.
I was thinking about something related to how dirty checking is working with Polymer. As a consequence, I tried to force the update manually:
this.set('user.displayName', newFullName);

Unfortunately, this fails with the following error:

Cannot assign to read only property 'displayName' of object...

Indeed, if I look at the implementation of firebase-auth.html, the property user is defined as readOnly.
I am still looking for a solution or a temporary workaround.
Browsers Affected

[x] Chrome
[x] Firefox
[x] Safari 9
[x] Safari 8
[x] Safari 7
[x] Edge
[x] IE 11
[x] IE 10

@e111077 @mbleigh Do you know if it is an expected behavior or a bug? do you know a workaround that does not require to reload the full page?

Have you checked the new value of this.user.displayName. If it did changed then I guess you just need to propagate the change?

@tjmonsi If I look at the value after the change has been performed using the debug mode or by printing with console.log, I see the new content. However, the content is not updated where the data binding [[user.displayName]] is used. I tried to use notifyPath, etc. with no success.

@tjmonsi What is your suggestion to propagate the change?

This is expected. Firebase Auth data is not synced in real time. There may
be a way to force it to fetch, but I'm not sure off of the top of my head.
On Sun, Jul 9, 2017, 5:20 AM Laurent Pellegrino<EMAIL_ADDRESS>wrote:

@tjmonsi https://github.com/tjmonsi What is your suggestion to
propagate the change?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/firebase/polymerfire/issues/246#issuecomment-313916688,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAD_mHt--CFuvS3JaFvDAXimmTQ4Gjoks5sMMWIgaJpZM4OOBI6
.

@lpellegr would it be better to do this?
<firebase-auth id="auth" user="{{user}}"></firebase-auth>

this.$.auth.user.updateProfile({displayName: 'What a fail!'});

then see if this.$.auth.user changes

@tjmonsi I tried but I have the same issue as when I use this.user.
@mbleigh Do you know where I can find the information to force a fetch?
I have tried reload with no success.

@tjmonsi @mbleigh I have created a minimal example that reproduces the issue:
You can try by using<EMAIL_ADDRESS>as email and testing as password.
The source code is available below:
https://github.com/lpellegr/polymerfire-issue-246

I'll try check this in a bit. Thanks for the repo.

I have tried doing a notifyPath and it works. Please check my fork at https://github.com/tjmonsi/polymerfire-issue-246

@tjmonsi Thanks a lot, this is a solution.
However, it looks like against the encapsulation of web components. You need to bind the same property with all components that need the information for something that firebase-auth component has the hand on. Don't you think firebase-auth should trigger a notifyPath on its own?

Well that can be done, that is if firebase-auth has a method that allows updateProfile, then do a notifyPath to displayName and photoUrl. The only problem is when you have two firebase-auth elements. If you do an updateProfile on one element, the other will not be able to see that the displayName has been changed

Since virtually every application has a user profile, wouldn't it make sense for a developer to be able to configure the database to point to a user profile?  Imagine if you had a getProfile, and setProfile methods, and a way within the config to say "pathToUserProfile="/user/{{user.uid}}" is where the profile is located.  This could give you a consistent approach to getting and setting user profile information, and would take care of automatically creating a profile, whenever the user logs in the first time.  This would give developers the ability to focus more of their time on their app, and less on the "busy work" required for most user-centric apps.

@phidias51 I would encourage you to explore building your own elements to do something along those lines. For PolymerFire, the goal is to expose the primitives of the Firebase SDKs in a friendly-to-consume format for Polymer developers. Getting opinionated about app structure is beyond the scope of this library.

Any solution yet?

I believe this is still an issue.
I have authenticated using Google Play Games. I have a message in my game that says, "Welcome <FirebaseAuth.CurrentUser.DisplayName>!" (essentially that). When I change the name of this user in their Google Play Games profile, subsequent plays of the game (it has now been over a week) still display the user's old display name.
I have tried using "FirebaseAuth.CurrentUser.ReloadAsync()" and that doesn't seem to have "refreshed" the user's details as it is documented to do.
I will try some more playing around and edit my post here if I find anything.

Does is happening when you use Firebase with Flutter, im having this problema right now. I update the user number profile, and I need a full reload to get it into the app, THIS IS REALLY ANNOYING.
Its over ONE year and nothing yet?????

I'm having this issue when checking is user email verified or not using redux saga and react (I didn't use observer method). Any updates?

Is there a final solution for this issue ?

We are also having this problem on our product. Users who create an account are directed to a name change screen, which goes through fine. We can see when exporting our firebase users that this display name goes through correctly.
However the display name change doesn't reflect in the FirebaseAuth.DefaultInstance.CurrentUser.DisplayName until the app is restarted. Using CurrentUser.ReloadAsync() does not update the display name either.

Holy moly dude, this bug still exists in Jan 19, 2021, unbelievable.

Holy moly dude, this bug still exists in Jan 19, 2021, unbelievable.

Indeed, can confirm. On Jan 21, 2021, still an issue. Wowza!

Indeed, can confirm. On Jan 21, 2021, still an issue. Wowza!

@ChARCOOL @ashcrok unfortunately this will be an issue in 2022 as well ... to quote the README

This library is no longer actively maintained. We do not recommend using this library in production.
If you maintain a fork of this library that you believe is healthier than the official version, we may consider recommending your fork. Please open a Pull Request if you believe that is the case.

I don't mean to come off as harsh but I want to set your expectations properly. You should not use polymerfire and you should not expect it to improve. There are likely other good Firebase+Polymer libraries out there but this isn't one of them.

You are completely right. I missed that info in the README. Thanks for the prompt response.

@ChARCOOL @ashcrok unfortunately this will be an issue in 2022 as well ... to quote the README

This library is no longer actively maintained. We do not recommend using this library in production.
If you maintain a fork of this library that you believe is healthier than the official version, we may consider recommending your fork. Please open a Pull Request if you believe that is the case.

I don't mean to come off as harsh but I want to set your expectations properly. You should not use polymerfire and you should not expect it to improve. There are likely other good Firebase+Polymer libraries out there but this isn't one of them.

You are completely right. I missed that info in the README. Thanks for the prompt response.


Distrobox and GUI apps

It seems that distrobox is failing to get access to the host's display
k1mbl3@main:~$ steam
steam.sh[214411]: Running Steam on fedora 36 64-bit
steam.sh[214411]: STEAM_RUNTIME is enabled automatically
setup.sh[214484]: Updating Steam runtime environment...
No protocol specified

(zenity:214492): Gtk-WARNING **: 19:04:43.013: cannot open display: :0.0

k1mbl3@main:~$ xterm
No protocol specified
xterm: Xt error: Can't open display: :0.0

k1mbl3@distrobox-LKzkeccip8:~$ dolphin
No protocol specified
qt.qpa.xcb: could not connect to display :0.0
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb.

Aborted (core dumped)

k1mbl3@distrobox-UINYSTzj7R:~$ gnome-terminal
No protocol specified
# Failed to parse arguments: Cannot open display:

Versions:
k1mbl3@nixos:~$ docker --version
Docker version 20.10.21, build v20.10.21
k1mbl3@nixos:~$ distrobox --version
distrobox: 1.4.1
k1mbl3@nixos:~$ nix-info -m
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.83, NixOS, 22.11 (Raccoon), 22.11.1105.9898811c658`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.11.1`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

I hit this too, in my case the issue was X blocking access from the container.
distrobox suggests using xhost +si:localuser:$USER on the host to grant access. I'm not sure if this is the best way to grant access to the container, but it seems to work for me.

Nice! Is there any way to run it on the configuration.nix?

I'm not sure, it probably depends on what desktop environment you use if any, and how you manage your dotfiles.
I think the important thing is that it runs as your user after you log in & start a graphical x session.

I'm new to nix. It would be nice to have this preconfigured during installation, otherwise other newcomers could become completely lost like i was

I hit this too, in my case the issue was X blocking access from the container.
distrobox suggests using xhost +si:localuser:$USER on the host to grant access. I'm not sure if this is the best way to grant access to the container, but it seems to work for me.

Thanks, fixed the issue for me.


Translations not being loaded when running development build (NextJS 14.1.4)

What version of this package are you using?
2.6.2
What operating system, Node.js, and npm version?
Windows 11
node 18.19.1
npm 10.0.0
yarn 4.1.1
What happened?
I have been trying to get the package working. I am using the pages router.
I am using the useTranslation hook to get the t function. The problem is that the values do not load properly when in the development environment. When running next build and then starting the compiled version it works fine, the problem only exists in the development environment.
While it does not break the application, it is quite annoying to develop an app without knowing if any of the translations are going to work before compiling the application.
I have also noticed that the lang coming from the useTranslation hook seems to be an empty string, but I am not sure if that is the cause of the translations not being loaded.
i18n.js
/**
 * @type {import('next-translate').I18nConfig}
 */
const config = {
  locales: ['default', 'en', 'da'],
  defaultLocale: 'default',
  localeDetection: false,
  pages: {
    '*': ['common', 'header', 'footer', 'tutorial'],
    'rgx:/auth/*': ['auth'],
    'rgx:/settings/*': ['settings'],
  },
  logBuild: true,
}
module.exports = config

middleware.ts
// middleware.ts
import type { NextRequest } from 'next/server'
import { NextResponse } from 'next/server'

/** Regex to check if current path equals to a public file */
const PUBLIC_FILE = /\.(.*)$/

/** Ignore non-page paths */
const shouldProceed = (pathname: string) => {
  if (
    pathname.startsWith('/_next') ||
    pathname.includes('/api/') ||
    PUBLIC_FILE.test(pathname)
  ) {
    return false
  }
  return true
}

export async function middleware(request: NextRequest) {
  const { locale, pathname } = request.nextUrl

  /** Ignore non-page paths */
  if (!shouldProceed(pathname)) return

  if (locale === 'default') {
    /** Get user's locale */
    const storedLocale = request.cookies.get('NEXT_LOCALE')?.value
    const response = NextResponse.redirect(
      new URL(`/${storedLocale || 'en'}/${pathname}`, request.url),
    )

    /** Store default locale in user's cookies */
    if (!storedLocale) {
      response.cookies.set('NEXT_LOCALE', 'en', {
        path: '/',
      })
    }

    /** Redirect user to default locale */
    return response
  }
  /** Adds ?lang={locale} for next-translate package */

  request.nextUrl.searchParams.set('lang', locale)

  return NextResponse.rewrite(request.nextUrl)
}

next.config.mjs
// @ts-check

import withNextBundleAnalyzer from '@next/bundle-analyzer'
import withMDX from '@next/mdx'
import nextTranslate from 'next-translate-plugin'

const mdx = withMDX({
  options: {
    providerImportSource: '@mdx-js/react',
  },
})

/** @type {import('next').NextConfig} */
let config = mdx({
  reactStrictMode: true,
  distDir: 'build',
  output: 'standalone',
  pageExtensions: ['ts', 'tsx', 'mdx'],
  transpilePackages: [
    '@mui/system',
    '@mui/material',
    '@mui/icons-material',
    '@mui/x-charts',
  ],
  modularizeImports: {
    '@mui/icons-material/?(((\\w*)?/?)*)': {
      transform: '@mui/icons-material/{{ matches.[1] }}/{{member}}',
    },
  },
  compiler: {
    styledComponents: true,
  },
  images: {
    remotePatterns: [
      {
        hostname: 'flagcdn.com',
      },
    ],
  },
})

config = withNextBundleAnalyzer({
  enabled: process.env.ANALYZE?.toString() === 'true',
})(config)

export default nextTranslate(config)

What did you expect to happen?
The t function should get the translation from the locale file and provide the correct translation.
Are you willing to submit a pull request to fix this bug?
Not currently, as I am very unsure what the problem is. If I find a suitable solution, sure.

1

+1


[12] Deploy to Paas via terraform

Context
configure github action to use terraform and deploy to pass
Changes proposed in this pull request
Guidance to review

 Add deploy to GitHub workflow


Cherrypick - configurable ttl Cache for current blockNumber (#1063)

Adding a configurable TTL cache for current blockNumber to eth.ts
Description:
Cherry pick for https://github.com/hashgraph/hedera-json-rpc-relay/pull/1063

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.11 :tada:

Comparison is base (72212d7) 74.63% compared to head (2a5bdf3) 74.74%.

:exclamation: Current head 2a5bdf3 differs from pull request most recent head fe27a40. Consider uploading reports for the commit fe27a40 to get more accurate results

Additional details and impacted files
@@               Coverage Diff                @@
##           release/0.21    #1072      +/-   ##
================================================
+ Coverage         74.63%   74.74%   +0.11%
================================================
  Files                30       30
  Lines              2030     2039       +9
  Branches            386      388       +2
================================================
+ Hits               1515     1524       +9
  Misses              410      410
  Partials            105      105

Impacted Files
Coverage Δ

packages/relay/src/lib/constants.ts
100.00% <100.00%> (ø)

packages/relay/src/lib/eth.ts
84.45% <100.00%> (+0.18%)
:arrow_up:

... and 1 file with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


sha256 circuit dprove

[x] Closes #31

[ ] Closes #14

I'm going to merge this PR for now, and I will open a new PR for the final proof construction.


中文有很多地方把“Skype for business”翻译成了“ for Business 的 Skype”

中文有很多地方把“Skype for business”翻译成了“ for Business 的 Skype”

文档详细信息
⚠ 请勿编辑此部分。 docs.microsoft.com ➟ GitHub 问题链接必须具有此部分。

ID: 56ab9d91-d5c4-be13-660e-10b1fdacadec
Version Independent ID: efdd6696-1415-26ae-ab56-5e758a34311c
Content: 升级的基本任务清单-Microsoft 团队
Content Source: Teams/upgrade-basic.md
Service: msteams
GitHub Login: @dearbeen
Microsoft Alias: dearbeen

@tony-xia Thank you for pointing this out
I will get this translation information over to the Teams writing team for investigation.
Thank you for reporting and making the docs better. Much appreciated.
I made a note to request the team to update this when the work is complete.

@tony-xia this is fixed


get Input from the spinner list

get Input from the spinner list
to print out

Get country code , it seems I cant get it , any idea ?

Hi!
Actually you can do this like this
      onInputChanged: (number) {
        phoneValue = number;
        print('dial code: ${phoneValue.dialCode}, counrty code: ${phoneValue.isoCode}');
      },

Hi!
Actually you can do this like this
      onInputChanged: (number) {
        phoneValue = number;
        print('dial code: ${phoneValue.dialCode}, counrty code: ${phoneValue.isoCode}');
      },

thank you


Cilium pods fail on worker nodes RKE2 after enabling host firewall

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
I have RKE2-cilium deployed in a RKE2 downstream cluster. But the moment I enable host firewalling the worker nodes will be unavailable.
It happens after appling the helmchart config and redeploying the operator and cilium daemonset.
apiVersion: helm.cattle.io/v1 kind: HelmChartConfig metadata:   name: rke2-cilium   namespace: kube-system spec:   valuesContent: |-       ipv4:         enabled: true       ipv6:         enabled: false       kubeProxyReplacement: "strict"       k8sServiceHost: <IP_ADDRESS>       k8sServicePort: 6443       hostFirewall:         enabled: true
The moment I set hostFirewall to false, the cilium daemonset and cilium-operator deployment run fine.
It seems like that it cannot connect to the api server:
Last state: Terminated with 1: Error (Running time="2024-06-20T12:42:57Z" level=info msg=Invoked duration="577.548µs" function="github.com/cilium/cilium/cilium-dbg/cmd.glob..func39 (cmd/build-config.go:32)" subsys=hive time="2024-06-20T12:42:57Z" level=info msg=Starting subsys=hive time="2024-06-20T12:42:57Z" level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s-client time="2024-06-20T12:43:12Z" level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s-client time="2024-06-20T12:43:27Z" level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s-client time="2024-06-20T12:43:42Z" level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s-client time="2024-06-20T12:43:57Z" level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s-client time="2024-06-20T12:44:07Z" level=error msg="Unable to contact k8s api-server" error="Get \"https://<IP_ADDRESS>:6443/api/v1/namespaces/kube-system\": net/http: TLS handshake timeout" ipAddr="https://<IP_ADDRESS>:6443" subsys=k8s-client time="2024-06-20T12:44:07Z" level=error msg="Start hook failed" error="Get \"https://<IP_ADDRESS>:6443/api/v1/namespaces/kube-system\": net/http: TLS handshake timeout" function="client.(*compositeClientset).onStart" subsys=hive time="2024-06-20T12:44:07Z" level=info msg=Stopping subsys=hive Error: Build config failed: failed to start: Get "https://<IP_ADDRESS>:6443/api/v1/namespaces/kube-system": net/http: TLS ), started: Thu, Jun 20 2024 2:42:57 pm, finished: Thu, Jun 20 2024 2:44:07 pm
I also tried the address of the upstream cluster: rancher.domain.com
Does anyone has experience setting up Cilium for host firewalling on RKE2? Tips are welcome!
Cilium Version
v1.15.4
Kernel Version
5.14.21-150500.55.62-default
Kubernetes Version
Client Version: v1.29.3
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.28.9+rke2r1
Regression
No response
Sysdump
No response
Relevant log output
No response
Anything else?
No response
Cilium Users Document

[ ] Are you a user of Cilium? Please add yourself to the Users doc

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi, could you please format your error message correctly using a multiline code block? It contains a bunch of \" that makes it really hard to read. Thank you.


Add dongle mode connection strategy

Android Auto has native support to connecting Wireless AA via dongles.

With the dongle mode, we don't need to fake the HSP profile for connection. This results in better call audio routing.
The connection waits for headunit's bluetooth to connect. This might help in cars where power to the dongle is started much before the headunit is ready.

Add config AAWG_CONNECTION_STRATEGY to choose other connection sequences.

Connection to dongle mode requires the following steps:

Clear "Previously connected cars" from Android Auto. Clearing app cache might also be required.
"Forget" old bluetooth dongle from phone.
Connect phone to headunit using a wire. Make sure wired Android Auto starts.
Remove the cable from phone, plug in the dongle.
Pair with the "AndroidAuto-Dongle" via bluetooth.

Is call audio sent via TCP in this case?

Is call audio sent via TCP in this case?

No, the call audio goes directly to the headunit via bluetooth.

Dongle Mode still seems super inconsistent to me. I ran a build of my own with the new change to keep BT on and I had to power cycle the dongle like 3 times before it would actually work for some reason.

Yeah, the bluetooth changes are not working great. Haven't had a chance to debug properly.
The idea was that, with dongle mode, we don't really need to disconnect/reconnect bluetooth as well, as the phone should anyway try to reconnect. And the delay we have between restarting the tcp server might hinder with the reconnection from phone. Will have another look later.

@admiralspeedy would you be able to help out with logs where the dongle mode doesn't work? This has been working well for me, and I think this would help with some of the other issues as well. I'd like to learn more about issues and fix and merge this if possible.
@hkfuertes, @Ioniq3 do let me know how it works you. I've reverted the commit with always on bluetooth, will debug that one later.

Hi, for me works perfectly, the dongle  mode is a huge upgrade in the first connection. It is important for the people that they hace to clear cache and memory of the android auto app. The bluetooth have to poweroff to increase battery life having in mind that wireless lan drains the battery too.

@nisargjhaveri I can, the problem is that most of the time when I have issues I am not going somewhere where I can easily keep my car on and connect to the Pi to retrieve logs. I can do it when my destination is home because I can pull in my driveway and connect to the Pi from my computer in the house. We really need persistent logs.
I think most of my issues happen due to the disconnection handling, because part of the issue is that I regularly remote start my car (Canada, it's winter) and my phone connects to the dongle sometimes for 15 minutes before I get in the car. When you do this, the head unit does not actually fully boot until you get in the car and press the start button on any Ford with a Sync 3 APIM. This seems to confuse it and for some reason and the dongle sometimes (not always) gets stuck in a limbo state. I have checked the logs before when this happens but I never see anything of note that would explain why the dongle is stuck.
I've also had a number of times where my phone just repeatedly connects and instantly disconnects from the dongle over and over until I reboot the dongle and again, the one time I checked the logs, there were no errors or anything.
@Ioniq3 I think we have different definitions of perfect, because handling disconnection/re-connection is still not handled correctly and even with my own not-so-great fixes it still has problems for me.

@admiralspeedy I understand some of your issues. I have a personal workaround in my reconnect-external branch (use of a signal to external program "myscript" to restart S92_usbgadget and S93_aawgd to recover the AA) if you want to investigate it, I don' t make a PR because is part of a very particular adaptation because I use the raspberry for android auto and usb music stick simulation by means of external buttons.
Making persistent logs may destroy the microsd in a few months, in my experience with a lot of raspberry it is better not to write on it and only read from the operating systems, all the rest in ramfs. If @nisargjhaveri want to implement persistent logs I recommend in a special debug mode, activate by another enviroment variable and not in the main mode.

@admiralspeedy, yes the disconnections are still not fixed with this PR. This is only supposed to improve the speed and reliability of connection process, and improve call audio routing on some phones by removing the fake headset profile. The reconnection issues should stay similar to the other modes. If we can focus on connection issues, it would be great for this PR.
For the persistent logs, I agree with @Ioniq3. I'm okay having a new variable to persist logs, but it comes with high risk of sd card corruption when enabled. We might also need to reduce verbosity of the logs, especially when we log every read/write. Will see if I can work on this or happy to take in a PR.

@nisargjhaveri The problem is that most of the connection issues myself and others are having are probably almost all related to the re-connection/disconnections not being handled properly.
I know for a fact I almost always have an issue with it if I have remote started my car and the dongle doesn't make a connection to the head unit (since the head unit doesn't fully boot until you actually get in the car and press the ignition button, as I mentioned above) but has connected to the phone for a bit already (because the Bluetooth is strong enough to reach my phone in my house when I remote start my car).
The other main time I have issues connecting are when I shut my car off, walk away and then come back after a short amount of time because my car and many others do not fully power everything down the USB ports right away (sometimes mine stay on for 10-15 minutes, but some cars don't power them down at all actually), so the dongle loses connection to AA over USB, get stuck waiting for a read and when you come back the dongle is just forever stuck until you reboot it.
As for the logs, I was never suggesting it be permanent, it should definitely be a debug setting and I am personally more than willing to sacrifice SD cards for it, I have a whole bin full lol. Without persistent logs, a lot of these bugs are never going to get figured out because based on most of our discussions, you, me, and @Ioniq3 are probably the only people here who even know how to SSH into a Pi and pull the logs so most users are never going to be able to submit them if they have to keep the dongle alive long enough to save them.

Jumping in on this.
I have a Kia eNiro, currently it is not connecting but I do know how to SSH in ☺ so I'll take a look at the logs, see if I can fix anything, and pass on any findings.
Will report back.

Do the other changes play nice with dongle mode?

Do the other changes play nice with dongle mode?

I had to update some things from the original changes. But yes, the latest changes work well along with the other connection recovery mechanisms, at least for me. Not sure if there might be something better we can do for dongle mode, especially for initial connection. Nit a lot of info is available on how dongle mode is supposed to work.


extension no longer available in chrome store

I had the extension installed for Microsoft chromium-based Edge.  Now it is turned off with this warning.

Searching "Atomic Chrome" no longer yield a result for the extension.
Alternative: I am glad that GhostText still work. https://github.com/fregante/GhostText

View of this issue in Google Chrome:

same as but using https://github.com/fregante/GhostText instead.

Hi, thanks for the report!
Do you have any idea why this became unavailable? I haven't followed what happened much these days.

@danhper maybe publisher of the extension would have more information from google about the violation?

Hey everyone, and a huge shoutout to @danhper for the fantastic work on Atomic Chrome.
I really missed the extension after it disappeared from the Chrome Store, so I got to work on a similar project called Chrome Emacs. It's all updated to be in line with the latest Chrome guidelines (think service workers, manifest V3, etc.) and I've thrown in some extra features like Monaco Editor support. 🎉
You can find it in the Chrome Store here and the source code is available here. I'd really appreciate your feedback or any advice, especially from @danhper.
Hope it can be a worthy alternative for the community here!


Added follow_target_changed signal

Also updated the behavior of set_follow_target_node to emit follow_target_changed if actually changed and to match erase_follow_target_node behavior with a null input

Also added a get_follow_target_node_or_null method, the same idea as Node.get_node_or_null

Okay. I made the same changes to PhantomCamera2D, but I don't have any premade 2D scenes to test with.


Regrid fix circular extend

Addresses a reported problem whereby regridded data came out with large values instead of the expected masked points.
There was already a longstanding workaround for this, related to a known problem with numpy 'append', but it had a bug in its own logic.
I replaced the earlier fix with one using either np.concatenate or np.ma.concatenate, as required.  This seemed necessary to ensure the required result type, i.e. masked-for-masked-input and also unmasked-for-unmasked-input.

Note
No whatsnew
Will add that ...

the change looks good to me; the implementation is simpler and easier to understand, as well as fixing the reported bug
the new tests look good to me as well

great, I am happy now
@pp-mo please rebase/squish prior to a merge
thank you


So how this jetpack sample makes our life easier?

The Sunflower demo app uses many different Jetpack components to demonstrate Android development best practices

Great but the result app is quite simple, though its source code..
I'm trying to learn about Jetpack/AndroidX but at first glance this project looks quite difficult to me. Many classes, quite unreadable for such simple app. Is this really makes our projects smaller? Also using this technology seems we have to use more different annotations in the code
If I was a total newbie in Android but knew Java or Kotlin quite enough it would be much easier to understand implementation of this app without Jetpack but using standard Android API and MVC model, old RecyclerView and so on

uses many different Jetpack components

Mb I'll try to learn each component separately (some tutorials from the internet) and mb then it will become easier

@anonym24 you can also see the Kotlin version of the codelabs: https://codelabs.developers.google.com/codelabs/android-room-with-a-view-kotlin/#0


Add with_group_context_extensions method to group builders

Currently, only two kinds of extensions can be set for the initial group context, and they both have their own method on the builder to set them. In order to be able to add arbitrary extensions, this PR adds a method with_group_context_extensions to the group builders, that sets an arbitrary set of extensions. The set is of type Extensions, so we know that each extension is only set once.
Any RequiredCapability extension mentioned in that set will be overwritten, and if ExternalSenders is specified using the dedicated method, that one is preferred and the one provided using with_group_context_extensions is dropped.

@kkohbrok Good points, I added everything.


C3 s 511 v2 mpqb include hist res

@bascrezee
I try to use the branch, but can't get it to run.
There is "mask_glaciated" missing ( I updated from the development branch, but no) and somehow I cannot make the taylordiagramm executable (though I used the noted command: chmod -x [...]/esmvaltool/diag_scripts/mpqb/taylordiagram.py).
So implementation has to wait till Monday ;(

@bascrezee
I try to use the branch, but can't get it to run.
There is "mask_glaciated" missing ( I updated from the development branch, but no)
I implemented some new functionality, please try the branch https://github.com/ESMValGroup/ESMValCore/tree/mask_glaciated

and somehow I cannot make the taylordiagramm executable (though I used the noted command: chmod -x [...]/esmvaltool/diag_scripts/mpqb/taylordiagram.py).

Should be chmod +x, right?

@bascrezee
I try to use the branch, but can't get it to run.
There is "mask_glaciated" missing ( I updated from the development branch, but no)

I implemented some new functionality, please try the branch https://github.com/ESMValGroup/ESMValCore/tree/mask_glaciated

I try to join this in. Should work without that preprocessing anyways. So for testing purposes, it should be fine.

and somehow I cannot make the taylordiagramm executable (though I used the noted command: chmod -x [...]/esmvaltool/diag_scripts/mpqb/taylordiagram.py).

Should be chmod +x, right?

yes and it is missing the python headline #!/usr/bin/env python.
Now I end up with the following error:
Traceback (most recent call last):
  File "/media/bmueller/Work/GIT/ESMValTool_V2_c3s511/esmvaltool/diag_scripts/mpqb/taylordiagram.py", line 8, in <module>
    import skill_metrics
ModuleNotFoundError: No module named 'skill_metrics'

@bascrezee
I try to use the branch, but can't get it to run.
There is "mask_glaciated" missing ( I updated from the development branch, but no)

I implemented some new functionality, please try the branch https://github.com/ESMValGroup/ESMValCore/tree/mask_glaciated

I try to join this in. Should work without that preprocessing anyways. So for testing purposes, it should be fine.

and somehow I cannot make the taylordiagramm executable (though I used the noted command: chmod -x [...]/esmvaltool/diag_scripts/mpqb/taylordiagram.py).

Should be chmod +x, right?

yes and it is missing the python headline #!/usr/bin/env python.
Now I end up with the following error:
Traceback (most recent call last):
  File "/media/bmueller/Work/GIT/ESMValTool_V2_c3s511/esmvaltool/diag_scripts/mpqb/taylordiagram.py", line 8, in <module>
    import skill_metrics
ModuleNotFoundError: No module named 'skill_metrics'

-->  pip install SkillMetrics

Added the package to setup.py.
Now I end up with:
Traceback (most recent call last):
  File "/media/bmueller/Work/GIT/ESMValTool_V2_c3s511/esmvaltool/diag_scripts/mpqb/taylordiagram.py", line 15, in <module>
    from diag1d import rmsd1d
ModuleNotFoundError: No module named 'diag1d'

Is this the one in your trend analysis? So I'd put this into a meta dictionary that can be accessed from multiple codes?

Added the package to setup.py.
Now I end up with:
Traceback (most recent call last):
  File "/media/bmueller/Work/GIT/ESMValTool_V2_c3s511/esmvaltool/diag_scripts/mpqb/taylordiagram.py", line 15, in <module>
    from diag1d import rmsd1d
ModuleNotFoundError: No module named 'diag1d'

Is this the one in your trend analysis? So I'd put this into a meta dictionary that can be accessed from multiple codes?

Yes, exactly, it is that one :)

So do you want to share this as trend framework or do you want to share the minimum overlap?Do you want the trend framework to be installed with the tool?
Your code, you decide.

So do you want to share this as trend framework or do you want to share the minimum overlap?Do you want the trend framework to be installed with the tool?
Your code, you decide.

Ideally, I wanted to get the trend framework fully into the ESMValTool. But I think this is not the right moment, there are several PRs still open, that have priority over inclusion of this trend framework. However, in the end, it would be nice to have it in, including a proper review of all the code.
For now, please use your local copy of the trend framework which can be accessed from ESMValTool if is included in your $PYTHONPATH.

another preprocessor issue:
ValueError: Invalid argument(s): standardize encountered for preprocessor function anomalies.
Valid arguments are: [period]

This functionality is not in the development version.

Are you using  the right branch of ESMValCore? see above, both features
should be in there.
On Tue, 3 Dec 2019, 07:14 Benjamin Müller<EMAIL_ADDRESS>wrote:

another preprocessor issue:
ValueError: Invalid argument(s): standardize encountered for preprocessor function anomalies.
Valid arguments are: [period]
This functionality is not in the development version.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ESMValGroup/ESMValTool/pull/1456?email_source=notifications&email_token=AGTSE5A53LEAKWSRD3VO77LQWX2NPA5CNFSM4JTA4SZ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFYHJZQ#issuecomment-561018086,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AGTSE5GMRRGB7JXAOQJOAPDQWX2NPANCNFSM4JTA4SZQ
.

I updated the tool not the core... my bad.

I also updated the basic tool from the version2 development branch, so it is easier to check missing functionalities.
Maybe we have to cherry-pick, though, for the final PR.

I also updated the basic tool from the version2 development branch, so it is easier to check missing functionalities.
Maybe we have to cherry-pick, though, for the final PR.

I think at the moment this PR is way too large, there seem to be a lot of files coming along with your PR that should not be there (e.g. a .gitignore script that is different, many NCL scripts). It would be nice to keep the branch clean, having only the MPQB diagnostics such that it can be easily merged into version2_development at a later stage.

Yes, I'll clean the branch and prepare a cleaner one once I added missing code.
I updated from the development branch, this is where all the differences came from, to add the functionality I was missing.

Example for histogram: (see recipe)

Very nice! I did like the opaque histograms as well actually. Maybe we can include both?

I realized that, with more than 5 histograms, colors are lost. This way, we also keep the same color for both histograms and line plots.

I realized that, with more than 5 datasets, colors are lost. This way, we also keep the same color for both histograms and line plots.

We can still do that, but with a different type of histogram. Using histtype='step' should produce something like this:
https://i.stack.imgur.com/FemR3.png (just a random plot from the internet, showing what it looks like)

Not that easy in the current realization. If you want to have lazy histograms you have to calculate the height and bins first and then plot them as bars.
I'm not sure if bars has a similar functionality.

Not that easy in the current realization. If you want to have lazy histograms you have to calculate the height and bins first and then plot them as bars.
I'm not sure if bars has a similar functionality.

Ok, I thought it would be straightforward to implement, then leave it for now. I might give it a try later on.

Not that easy in the current realization. If you want to have lazy histograms you have to calculate the height and bins first and then plot them as bars.
I'm not sure if bars has a similar functionality.

Ok, I thought it would be straightforward to implement, then leave it for now. I might give it a try later on.

Example for resolution plot: (see recipe)

I would clean this up now and re-request a draft pull

@BenMGeo Just for info. I found out what is creating the grey shading east of the meridian, I have the same problem, working on it.


Fixed #30083 -- Added model state before signals are fired

https://code.djangoproject.com/ticket/30083

Sorry, I don't feel confident that I understand all the details involved to make an informed review.

Thanks anyhow. Perhaps @charettes or someone else could review it.

Hi @charettes Thanks for reviewing. I've created simpler tests as per your suggestions.
I agree.

As for the implementation through Model.__new__ I'm not a big fan but I can't think of a simpler solution that is backward compatible.

Can you please review it again?
Many Thanks!

Hi @felixxm @charettes Request you to review it, Thanks!

@nasirhjafri Thanks for this patch :+1:, however we have many doubts about this ticket. I'm going to add short notes to the signal documentation about instance state initialization.


Not Allowed To Place Exporter

When I try to place the little 3D exporter it says "you are not allowed to place something with alpha below 255".  Also, the LT3D Exporter disappears when I try to place it.
what other information do you need to help me solve this? I have quite a few mods loaded along with this.

Hi, sorry for late response. This is caused by the fact that the LT 3D Exporter contains blocks with alpha below 255 (translucent blocks) and your config/server config doesn't allow placing tiles with alpha below 255. You can change this setting in littletiles.json config file under build/survival/minimumTransparency option by setting it to 0. This is set by default to 255 to prevent players in survival mode to place translucent tiles as it can heavily impact client performance on servers.
However I will replace the translucent tiles I use for the Exporter to a different block as this makes it impossible to use it on servers that have the option for minimumTransparency set to 255. I will mark this issue as a bug till then.


Change the type of rule value

Because the type of value is  'TypeList',  terraform recognize reordering as a change.
See also  #32 , which is almost same to this PR
Example.
  ~ resource "onelogin_app_rules" "rule" {
        # (4 unchanged attributes hidden)

      ~ actions {
          ~ value  = [
              - "arn:aws:iam::xxxxx:role/admin",   # <- same
                "arn:aws:iam::yyyyy:role/test1",
              + "arn:aws:iam::xxxxx:role/admin",  # <- same
                "arn:aws:iam::yyyyy:role/test2",
            ]
            # (1 unchanged attribute hidden)
        }

I think theres something wrong with the go.sum but this change has 0 impact on that. I'm going to merge this and make sure this is fixed for the next release. Thanks @at-k 🎉


make size, make size-components, make size-files doesn't seem to work with tip.

Captured result from an attempt to use...

FEarl@ENG110 MINGW32 /d/PetProjects/esp32/esp-idf/examples/bluetooth/ble_adv
$ make size
Traceback (most recent call last):
File "D:/PetProjects/esp32/esp-idf/tools/idf_size.py", line 229, in
main()
File "D:/PetProjects/esp32/esp-idf/tools/idf_size.py", line 153, in main
memory_config, sections = load_map_data(args.map_file)
File "D:/PetProjects/esp32/esp-idf/tools/idf_size.py", line 47, in load_map_data
sections  = load_sections(map_file)
File "D:/PetProjects/esp32/esp-idf/tools/idf_size.py", line 82, in load_sections
scan_to_header(map_file, "Linker script and memory map")
File "D:/PetProjects/esp32/esp-idf/tools/idf_size.py", line 43, in scan_to_header
raise RuntimeError("Didn't find line '%s' in file" % header_line)
RuntimeError: Didn't find line 'Linker script and memory map' in file
make: *** [/d/PetProjects/esp32/esp-idf/make/project.mk:395: size] Error 1

Here's a grep for the landmark in the .map file:

FEarl@ENG110 MINGW32 /d/PetProjects/esp32/esp-idf/examples/bluetooth/ble_adv/build
$ grep Linker *.map
Linker script and memory map

For some unknown reason, it seems like Python's clipping off the map file out of the example build - the map file has the landmark section sought for the processor code.  I'm looking for causes right now.  Will update the issue and indicate in notes as soon as I see what gives.

Looks like the Regex for the memory configuration section processor doesn't work as expected.  It skims to that header for the section, can't find any lines because it's not a valid regex to parse the line, and since the code always has "result" as empty...it inhales the rest of the file.  Oops.

I'll tinker a bit with it and see if I can't help out with a fix here.

Thanks @madscientist42 . Maybe this is something line ending related?

Thanks again for reporting this, and sorry for the hassle. It was exactly like you said, and is fixed now (plus a sanity check to get a better error if scan_for_header() inhales the entire file.)
Fix will be merged shortly, but the change is here if you're interested:
-    RE_MEMORY_SECTION = r"(?P<name>[^ ]+) +0x(?P<origin>[\da-f]+) 0x(?P<length>[\da-f]+)"
+    RE_MEMORY_SECTION = r"(?P<name>[^ ]+) +0x(?P<origin>[\da-f]+) +0x(?P<length>[\da-f]+)"

Thanks- didn't have time yesterday like I'd thought I would with the project they had me on at work combined with getting ready to a SF convention that many of the major SF authors use as a get-to-gather on this weekend.  Greatly appreciated and I'll apply the patch locally because I'm trying to find an answer for the associated project that uses an ESP32.


[Bug] trigger slash menu, search result has not active style

Describe the bug
https://www.loom.com/share/2c7944fdf4914c83bbaf7c5281d426d9
To Reproduce

fill '/sub'
the first search result has not active style

Expected behavior
No response
Additional context
No response
Logs/tracebacks
No response

fix in https://github.com/mashcard/mashcard/pull/210 @Darmody


TSLint should be less aggressive (part 2)

This extension bugs you until you install TSLint (globally or for each project) only to then annoy you with more errors about missing configuration.

This hasn't been the behavior in recent versions. But the lack of bugging is causing a lot of people to not understand why tslint is not loading or enabled.
The new behavior i'm adding is: report errors about loading tslint if there is a tslint.json in your workspace


Traceback (most recent call last) Error Show me

try v1.0

closed for inactivity, likely a bug from using old version