Immediate crash (segfault) upon starting from LightDM (AMD CPU+GPU)

Hi team, I've got Hyprland up and running on my Laptop (intel i7 + iGPU), but am having truoble doing the same on my Desktop.
When attempting to login via LightDM, it immediately crashes and spits me back out to the greeter. Below are the logs and segfault details
hyprland.log
[LOG] Instance Signature: 16d05a5c8bf06c1e945f90c8bae4131dea54c290_1681140176
[LOG] Hyprland PID: 33447
[LOG] ===== SYSTEM INFO: =====
[LOG] System name: Linux
[LOG] Node name: ndo4
[LOG] Release: 6.2.10-arch1-1
[LOG] Version: #1 SMP PREEMPT_DYNAMIC Fri, 07 Apr 2023 02:10:43 +0000

[LOG] GPU information:
2d:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] [1002:731f] (rev ca) (prog-if 00 [VGA controller])

[LOG] os-release:
NAME=EndeavourOS
PRETTY_NAME=EndeavourOS
ID=endeavouros
ID_LIKE=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL='https://endeavouros.com'
DOCUMENTATION_URL='https://discovery.endeavouros.com'
SUPPORT_URL='https://forum.endeavouros.com'
BUG_REPORT_URL='https://forum.endeavouros.com/c/arch-based-related-questions/bug-reports'
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=endeavouros

[LOG] ========================

[INFO] If you are crashing, or encounter any bugs, please consult https://wiki.hyprland.org/Crashes-and-Bugs/

[LOG]
Current splash: "I use Arch, btw" - John Cena

[LOG] Creating the HookSystem!
[LOG] Creating the KeybindManager!
[LOG] Creating the AnimationManager!
[LOG] Created a bezier curve, baked 255 points, mem usage: 4.08kB, time to bake: 18.39µs. Estimated average calc time: 0.04µs.
[LOG] Creating the ConfigManager!
[LOG] Creating the CHyprError!
[LOG]  [hookSystem] New hook event registered: focusedMon
[LOG]  [hookSystem] New hook event registered: preRender
[LOG] Creating the LayoutManager!
[LOG] Reloading the config!
[LOG] Created a bezier curve, baked 255 points, mem usage: 4.08kB, time to bake: 10.69µs. Estimated average calc time: 0.04µs.
[LOG] Registered dynamic var "$mainMod" -> SUPER
[LOG] Created a bezier curve, baked 255 points, mem usage: 4.08kB, time to bake: 10.72µs. Estimated average calc time: 0.04µs.

journalctl segfault
Apr 10 17:07:16 ndo4 lightdm[18126]: pam_unix(lightdm:session): session opened for user ndo(uid=1000) by (uid=0)
Apr 10 17:07:16 ndo4 systemd-logind[870]: New session 11 of user ndo.
Apr 10 17:07:16 ndo4 systemd[1]: Started Session 11 of User ndo.
Apr 10 17:07:16 ndo4 lightdm[18126]: gkr-pam: unlocked login keyring
Apr 10 17:07:16 ndo4 kernel: Hyprland[18138]: segfault at 10 ip 00005559f6f1ef4c sp 00007fffff9f8b50 error 4 in Hyprland[5559f6de1000+16d000] likely on CPU 7 (core 1, socket 0)
Apr 10 17:07:16 ndo4 kernel: Code: 1f 80 00 00 00 00 31 d2 48 89 d0 c3 66 90 f3 0f 1e fa 48 b9 f8 ff ff ff ff ff ff 7f 41 57 41 56 41 55 41 54 55 53 48 83 ec 08 <48> 8b 46 10 48 8b 56 08 49 89 c5 49 29 d5 4d 89 ef 49 c1 ff 03 4c
Apr 10 17:07:16 ndo4 systemd[1]: Started Process Core Dump (PID 18153/UID 0).
Apr 10 17:07:16 ndo4 systemd-coredump[18154]: [🡕] Process 18138 (Hyprland) of user 1000 dumped core.

                                              Stack trace of thread 18138:
                                              #0  0x00005559f6f1ef4c _ZN13CPluginSystem13getAllPluginsEv (Hyprland + 0x19cf4c)
                                              #1  0x00005559f6e825ce _ZN13CrashReporter18createAndSaveCrashEi (Hyprland + 0x1005ce)
                                              #2  0x00005559f6e19f74 _Z25handleUnrecoverableSignali (Hyprland + 0x97f74)
                                              #3  0x00007fc04c431f50 n/a (libc.so.6 + 0x38f50)
                                              #4  0x00005559f6edb294 _Z6wlTickPv (Hyprland + 0x159294)
                                              #5  0x00007fc04cbefd27 wl_event_loop_dispatch (libwayland-server.so.0 + 0xbd27)
                                              #6  0x00007fc04cd16d23 n/a (libwlroots.so.12032 + 0x44d23)
                                              #7  0x00007fc04cd17592 wlr_backend_autocreate (libwlroots.so.12032 + 0x45592)
                                              #8  0x00005559f6e2a9ff _ZN11CCompositor10initServerEv (Hyprland + 0xa89ff)
                                              #9  0x00005559f6e0afe8 main (Hyprland + 0x88fe8)
                                              #10 0x00007fc04c41c790 n/a (libc.so.6 + 0x23790)
                                              #11 0x00007fc04c41c84a __libc_start_main (libc.so.6 + 0x2384a)
                                              #12 0x00005559f6e19e15 _start (Hyprland + 0x97e15)
                                              ELF object binary architecture: AMD x86-64
Apr 10 17:07:16 ndo4 systemd[1]<EMAIL_ADDRESS>Deactivated successfully.
Apr 10 17:07:16 ndo4 lightdm[18126]: pam_unix(lightdm:session): session closed for user ndo
Apr 10 17:07:16 ndo4 systemd[1]: session-11.scope: Deactivated successfully.
Apr 10 17:07:16 ndo4 systemd-logind[870]: Session 11 logged out. Waiting for processes to exit.
Apr 10 17:07:16 ndo4 systemd-logind[870]: Removed session 11.
Apr 10 17:07:16 ndo4 systemd[1]: Stopping Session c5 of User lightdm...
Apr 10 17:07:16 ndo4 lightdm[18050]: Error activating login1 session: GDBus.Error:org.freedesktop.login1.NoSuchSession: No session '11' known
Apr 10 17:07:16 ndo4 lightdm[18070]: pam_unix(lightdm-greeter:session): session closed for user lightdm
Apr 10 17:07:16 ndo4 systemd[1]: session-c5.scope: Deactivated successfully.
Apr 10 17:07:16 ndo4 systemd[1]: Stopped Session c5 of User lightdm.
Apr 10 17:07:16 ndo4 systemd-logind[870]: Removed session c5.

installed packages
/tmp/hypr  2m39s
▼ yay -Q | grep amd
amd-ucode 20230210.bf4115c-1
amdgpu-pro-oglp 22.40_1538781-1
amdvlk 2022.Q4.4-3
vulkan-amdgpu-pro 22.40_1538781-1
xf86-video-amdgpu 23.0.0-1

/tmp/hypr
▲ yay -Q | grep hypr
hyprland-hidpi-xprop-git r2731.16d05a5c-1
hyprland-hidpi-xprop-git-debug r2729.a1b1480c-1
waybar-hyprland 0.9.16-1
xdg-desktop-portal-hyprland-git 1:r272.04f5793-1

/tmp/hypr
▲ yay -Q | grep xdg-desktop
xdg-desktop-portal 1.16.0-1
xdg-desktop-portal-gtk 1.14.1-1
xdg-desktop-portal-hyprland-git 1:r272.04f5793-1

However, I can successfully start it from a terminal inside i3, my previous wm. At which point the only error message is:
[types/wlr_drm_lease_v1.c:715] No DRM backend supplied, failed to create wlr_drm_lease_v1_manager

Config: https://github.com/ndom91/dotfiles/tree/main/.config/hypr
Anything else I can provide? I'm a bit lost as to further debugging here..
Is there a debug flag I can set to get Hyprland to log with some more detail?

have you tried launching from a tty? We do not support login managers officially.

have you tried launching from a tty? We do not support login managers officially.

So it works with the same config from lightdm on my laptop.
But I haven't tried from a tty directly, I saw in the docs sddm has good support though. Is that what you would recommend for someone without gnome/kde login manager?
Also the segfault stack doesn't ring any bells to you? Point to any potentially missing packages or anything like that?
I couldn't find any docs regarding a recommended setup for amd gpus. Got any tips or docs or example configs for that by chance? I'm still a bit confused as to which packages I need exactly. New to wayland generally and Hyprland specifically 😊

I couldn't find any docs regarding a recommended setup for amd gpus.

you shouldnt need anything other than mesa.
SDDM-git is recommended (-git because release has a bug with 90s shutdowns) if any dm is to be used

So starting it from a tty actually worked perfectly :joy:

not a hl issue then

@vaxerski however, when doing that, none of the WAYLAND_DISPLAY or HYPRLAND_INSTANCE_SIGNATURE or other env vars are set. Am I missing something?

something's up with your system

After a few reboots, env vars are there :crossed_fingers: So far so good.


@matechs/node extensions wishlist

There's been talk about a NodeJS library for @matechs.
Using this issue to document some feature ideas:
Ideas

[ ] File streams; reading and writing streams like in ZIO streams. ZStream.fromFile https://youtu.be/OiuKbpMOKsc 18:50
[ ] S.fromObjectReadStream mentioned in Slack.

It would be nice to see fs methods wrapped into effects

@qlonik stream based fs methods? can you produce a list of the ones you think are a fit?

Sorry, I misunderstood that we were talking about stream based fs methods only. For things like move/copy/delete/writeFile/readFile I'm not sure that stream based api is needed. I was thinking that even providing sync/async effect wrappers would be nice. Since effectify doesn't handle overloads very well, and often manual wrappers need to be written.
But about stream based fs wrappers, I agree that in some cases it would be convenient to have stream based api. For example there is a handful of functions which either return or accept Node Streams, so those could probably be a good candidate to try how can we implement the support. Things like createReadStream and createWriteStream. There are also methods which return Buffer, which could potentially be a stream of buffer chunks (I dont know zio, but it seems like this is similar to their fs streams? Correct me if I'm wrong here).
What do you think @patroza ?

Well actually the node extension could be both effect & stream, the idea was initially stream to bring back some of the utils but it would make sense having more

I had another idea: node.js has worker_threads module available, so it would be interesting to see if it is possible to provide driver which only works in node and can use those threads.

@qlonik worker_threads are still separated processes and use different memory segments, it is impossible to leverage those for a driver.
To update on this, I am holding off from the streams based node interop because the encoding of streams will change slightly, at the moment we are not allowing any form of batching at the source and this makes streams not extremely performant in tasks like reading chunked files.
When next version will be ready I will port over the encoding used in ZIO that allows for that

Sorry, I misunderstood that we were talking about stream based fs methods only. For things like move/copy/delete/writeFile/readFile I'm not sure that stream based api is needed. I was thinking that even providing sync/async effect wrappers would be nice. Since effectify doesn't handle overloads very well, and often manual wrappers need to be written.
But about stream based fs wrappers, I agree that in some cases it would be convenient to have stream based api. For example there is a handful of functions which either return or accept Node Streams, so those could probably be a good candidate to try how can we implement the support. Things like createReadStream and createWriteStream. There are also methods which return Buffer, which could potentially be a stream of buffer chunks (I dont know zio, but it seems like this is similar to their fs streams? Correct me if I'm wrong here).
What do you think @patroza ?

I’m totally for Effect and maybe even Sync wrappers. I keep repeating them over and over in my projects. Maybe good we start somewhere and extend as we find more usages?


Decide what are the minimum desired features

Current proposal:
? extend Cucumber runtime (similar to CucumberWithSerenity)
mimic serenity’s RequestSpecification class (maybe? maybe not needed - users could simply use restassured)
mimic “setting environment variables” like Serenity
support cucumber reports
return html reports (with clear request, response and curl requests) similar to the ones of serenity (simple ones, plain html, no javascript clutter, maybe tacit css for making it less bland than normal html)
option to log requests in curl format (in case of rest assured flavour) during test execution
suport gradle and maven projects

cc @jmromanos

cc @jmromanos

Closing this issue as it was an initial idea issue. Picking up from it on issue #7 .


Enable Solaris Sparc packages for Chef-16

Signed-off-by: Jaymala Sinha<EMAIL_ADDRESS>Enable Solaris Sparc packages for Chef-16
Description
Enable Solaris Sparc packages for Chef-16
Related Issue

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] Chore (non-breaking change that does not add functionality or fix an issue)

Checklist:

[ ] I have read the CONTRIBUTING document.
[ ] I have run the pre-merge tests locally and they pass.
[ ] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.
[x] All commits have been signed-off for the Developer Certificate of Origin.

Test build https://buildkite.com/chef/chef-chef-master-omnibus-adhoc/builds/362

The following shell command exited with status 1:
--
  |
  | $ pkgdepend resolve -m /tmp/chef20201002-12264-ajyhy9/chef.p5m.4
  |
  | Output:
  |
  | (nothing)
  |
  | Error:
  |
  | /tmp/chef20201002-12264-ajyhy9/chef.p5m.4 has unresolved dependency '
  | depend type=require fmri=__TBD pkg.debug.depend.file=env \
  | pkg.debug.depend.path=usr/local/bin \
  | pkg.debug.depend.reason=opt/chef/embedded/lib/ruby/gems/2.7.0/gems/racc-1.4.16/bin/racc2y \
  | pkg.debug.depend.type=script'.
  | /tmp/chef20201002-12264-ajyhy9/chef.p5m.4 has unresolved dependency '
  | depend type=require fmri=__TBD pkg.debug.depend.file=env \
  | pkg.debug.depend.path=usr/local/bin \
  | pkg.debug.depend.reason=opt/chef/embedded/lib/ruby/gems/2.7.0/gems/racc-1.4.16/bin/y2racc \
  | pkg.debug.depend.type=script'.

https://buildkite.com/chef/chef-chef-master-omnibus-adhoc/builds/363 build in progress after omnibus IPS fix

Enabled Solaris x86 chef-16 builds after upgrade to gcc-5.  Test build https://buildkite.com/chef/chef-chef-master-omnibus-adhoc/builds/365 in progress

Adhoc https://buildkite.com/chef/chef-chef-master-omnibus-adhoc/builds/375#55dddff2-58af-4d24-b5c2-605c83dd6f0c

This was done and shipped in 16.8.9. Thanks for all the help on the backend @jaymalasinha


Can't create managed secret for a project's root config

Logs say:
ERROR    controllers.DopplerSecret    Unable to update dopplersecret    {"dopplersecret": "namespace/dopplersecret-root", "error": "Cannot change existing managed secret type from Opaque to . Delete the managed secret and re-apply the DopplerSecret."}
DopplerSecret manifest:
apiVersion: secrets.doppler.com/v1alpha1
kind: DopplerSecret
metadata:
annotations:
helm.sh/hook: pre-install,pre-upgrade
helm.sh/resource-policy: keep
meta.helm.sh/release-name: namespace
labels:
app.kubernetes.io/name: app
name: dopplersecret-root
namespace: namespace
spec:
config: root
managedSecret:
name: dopplersecrets-root
namespace: namespace
project: project
tokenSecret:
name: dopplertoken-root
Status of DopplerSecret object:
status:
conditions:

lastTransitionTime: "2024-02-27T21:24:09Z"
message: 'Secret update failed: Cannot change existing managed secret type from
Opaque to . Delete the managed secret and re-apply the DopplerSecret.'
reason: Error
status: "False"
type: secrets.doppler.com/SecretSyncReady
lastTransitionTime: "2024-02-27T21:24:09Z"
message: Deployment reload has been stopped due to secrets sync failure
reason: Stopped
status: "False"
type: secrets.doppler.com/DeploymentReloadReady

I am not sure why it states that the managed secret exists, as it is the DopplerSecret itself that is creating it and then complaining about an incorrect secret type (which is not being expanded correctly since it says 'from Opaque to .').
I tried recreating the DopplerSecret multiple times, but it did not help.

@jv4n5e It sounds like you need to update your CRDs. Another user ran into this in #51. Essentially, what you need to do is this:
# Update doppler Helm repo
helm repo update

# Update the dopplersecrets CRD, which is not automatically upgraded by Helm
helm pull doppler/doppler-kubernetes-operator --untar
kubectl apply -f doppler-kubernetes-operator/crds/all.yaml

# Update the chart
helm upgrade <release_name> doppler/doppler-kubernetes-operator


Expose dbsql.connOption type

Fixes: https://github.com/databricks/databricks-sql-go/issues/201
That way we can programmatically add arguments to the NewConnector function instead of copy/pasting all of them across conditionals.

Just did a force push to add the sign-off message

@kravets-levko could i get a review now? i added the sign off message :)

Hi @shelldandy! The code on its own looks good, but can you please explain the use case for this change? Maybe some examples how it may be useful? Thank you!

@kravets-levko please review again, so an use case for example is if we're programatically creating a connector so if in this case we sometimes need to have a connector withtransport but because the type is not exposed currently we're unable to just add arguments before doing the NewConnector call:

Having this PR merged can help us DRY the code a whole lot.


NullPointerException in Spinner

Here's the stacktrace:
java.lang.NullPointerException:
  at android.graphics.Canvas.drawArc (Canvas.java:1197)
  at com.github.xinthink.rnmk.widget.MKSpinner.onDraw (MKSpinner.java:321)

This is happening when (I think, I'm really not sure of what's happening) the Spinner mounts and unmounts too quickly.
For the time being, I have a workaroung; I just make sure the Spinner unmount at least 500ms after it mounted, but I would be glad to hear your point of view on this issue.

@bishop-CA Hi, I also have this issue. Could you help point me to the correct code to do this? Thanks!


Have API in jib-core to control base image caching

#1840 introduced the optimization to skip downloading base image layers that exist in a target registry. The only way to disable it is through a system property jib.alwaysCacheBaseImage. Add an API to jib-core to control this behavior.

@chanseokoh Is this API still needed since we already have jib.alwaysCacheBaseImage?
If yes, as you have mentioned in https://github.com/GoogleContainerTools/jib/pull/1840/files/4d35db603797445a7eac029317456a7b0601ea67#r307533038, should it be created in a different class? And can you also please point me to the steps where this property should be used?

Hi @rajovictor,

Is this API still needed since we already have jib.alwaysCacheBaseImage?

That's a good question. Not sure, but I guess it makes sense to have an API.

And can you also please point me to the steps where this property should be used?

I think you can just set System.setProperty("jib.alwaysCacheBaseImage", "true") before running Jib. Is this what you were asking?

Hi @chanseokoh,
My question was, once the jib.cacheBaseImage API is added, where and how do we use it in the StepsRunner to cache or not the base images?
Or does this issue only cover, adding this API to the JibSystemProperties class?

If jib.alwaysCacheBaseImage is set, Jib will automatically pick up it and do the right thing. The code in StepsRunner reads in this property.
  public StepsRunner registryPushSteps() {
    rootProgressDescription = "building image to registry";
    boolean layersRequiredLocally = JibSystemProperties.alwaysCacheBaseImage();

If the property is not set, Jib (and jib-core) will do the skip-base-image-downloading optimization (for registry pushes) by default. If set, the images will always be downloaded.
And this issue wasn't about adding the API to JibSystemProperties, but adding (for example) .alwaysCacheBaseImage(boolean) to Containerizer.

Ok, using jib.cacheBaseImage and then reverting it to jib.alwaysCacheBaseImage caused the confusion for me - I think I spent too much time reading the comments in https://github.com/GoogleContainerTools/jib/pull/1840.
Now, jib.alwaysCacheBaseImage is used inregistryPushSteps() which is called from to(RegistryImage registryImage). Thats when an instance of  Containerizer is created fro the first time, but the jib.alwaysCacheBaseImage property is not part of the to object to set alwaysCacheBaseImage(boolean) of Containerizer.
Could you please advise me on how to proceed here?

Sorry, I'm still confused too. Maybe we are not on the same page.
I assume

You are writing a Java program that uses jib-core 0.11.0, to build some Docker image and push it to a remote registry.
That said, I believe you are probably doing something like    Containerizer containerizer = Containerizer.to(RegistryImage.named("example.com/my/repository"));
    Jib.from("example.com/my/base/image").containerize(containerizer);

For whatever reason, you want to turn off the base image cache optimization. That is,  (But why?)

So, what you can do (for now, until this issue to add an API is closed) is
    System.setProperty("jib.alwaysCacheBaseImage", "true");
    Containerizer containerizer = Containerizer.to(RegistryImage.named("example.com/my/repository"));
    Jib.from("example.com/my/base/image").containerize(containerizer);

And note that jib.alwaysCacheBaseImage is relevant only for remote registry push; for building to local Docker daemon or building a tar, jib-core will always cache base images.

I understood the above part fine.
The part which is not clear to me is, once the API for this property is added, how do I use it in StepsRunner which currently does not access Containerizer class.
Function<BuildConfiguration, StepsRunner> stepsRunnerFactory =
        buildConfiguration -> StepsRunner.begin(buildConfiguration).registryPushSteps();

Sorry if I am asking basic questions.

StepsRunner and BuildConfiguration aren't considered part of jib-core's formal API, so if you intend on using these classes (which I can't recommend, since we often refactor internals), it'll depend on how we propagate the property internally when we implement it. If I had to guess, it'd likely be accessible through BuildConfiguration or Cache (from buildConfiguration.getBaseImageLayersCache().

@TadCordle Thank you for chipping in. I will be working on the changes and create a PR.

Submitted the PR https://github.com/GoogleContainerTools/jib/pull/2065.

Fixed by #2065.

Will add a CHANGELOG.


[SPARK-10283][ML][PySpark][Docs] Add @since annotation to pyspark.ml.regression

Merged build triggered.

Merged build started.

Test build #42258 has started for   PR 8693 at commit c34dfe7.

Test build #42258 has finished for   PR 8693 at commit c34dfe7.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42258/
Test PASSed.

Replace .. addedversion:: with .. versionadded::.
Merge from master to remove setElasticNetParam and getElasticNetParam functions.

@noel-smith I have merged this PR with master and have fixed them which you reviewed. Could you check it please?

Merged build triggered.

Merged build started.

Test build #42598 has started for   PR 8693 at commit acdc52e.

Test build #42598 has finished for   PR 8693 at commit acdc52e.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/42598/
Test PASSed.

Merged build finished. Test PASSed.

Merged into master. Thanks!


tweak: Increased header title width

Asana task: [Header] "Downtown Crossing" is wrapping
I picked 1040 to give title the illusion of padding-right: 40px. Can't set padding now that one screen uses width of both screens.

[ ] Needs version bump?

Just realized I was not very clear on what I'm asking for here—I think in this PR, the width should be set to 1000px, and in another PR we can fix the logic that's supposed to auto-resize the header text to fit in that space.


[Bug]:  Does Jaeger-all-in-one does not support OpenSearch 2.11?

What happened?
I am running Jaeger-all-in-one with ElasticSearch 7 as the storage backend, recently I just upgraded the ES to OpenSearch 2.11, but it seems not supported yet?
Steps to reproduce
Run Jaeger 1.55 and OpenSearch 2.11.0 with docker-compose
jaeger:
    image: jaegertracing/all-in-one:1.55
    ports:
      - "5775:5775/udp"
      - "6831:6831/udp"
      - "6832:6832/udp"
      - "5778:5778"
      - "16686:16686"
      - "14250:14250"
      - "14268:14268"
      - "14269:14269"
      - "4317:4317"
      - "4318:4318"
      - "9411:9411"
    environment:
      COLLECTOR_OTLP_ENABLED: "true"
      SPAN_STORAGE_TYPE: "elasticsearch"
      ES_SERVER_URLS: http://docker.for.mac.host.internal:9200
      ES_USERNAME: master
      ES_PASSWORD: replace_me
      ES_TLS_SKIP_HOST_VERIFY: "true"
      ES_TLS_ENABLED: "true"
      ES_VERSION: "7"
    networks:
      - my-net

  opensearch:
    image: opensearchproject/opensearch:2.11.0
    ports:
      - "9200:9200"
      - "9300:9300"
    environment:
      - discovery.type=single-node
      - network.host=<IP_ADDRESS>
      - ELASTIC_PASSWORD=replace_me
      - ELASTIC_USERNAME=master
      - plugins.security.disabled=true
    networks:
      - my-net

Then I got error below when I visit the jaeger UI

Expected behavior
Support OpenSearch 2.11
Relevant log output
search services failed: elastic: Error 400 (Bad Request): all shards failed [type=search_phase_execution_exception]: RootCause[Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [traceID] in order to load field data by uninverting the inverted index. Note that this can use significant memory. [type=illegal_argument_exception]]: RootCause[Text fields are not optimised for operations that require per-document field data like aggregations and sorting, so these operations are disabled by default. Please use a keyword field instead. Alternatively, set fielddata=true on [traceID] in order to load field data by uninverting the inverted index. Note that this can use significant memory. [type=illegal_argument_exception]]

Screenshot
No response
Additional context
No response
Jaeger backend version
No response
SDK
No response
Pipeline
No response
Stogage backend
OpenSearch
Operating system
MacOS
Deployment model
docker
Deployment configs
No response

Your YAML seems malformed, can you put the correct YAML here?

I tried to reproduce with the following compose.yaml:
services:
  jaeger:
    image: jaegertracing/all-in-one:1.55
    depends_on:
      opensearch:
        condition: service_healthy
    ports:
      - "5775:5775/udp"
      - "6831:6831/udp"
      - "6832:6832/udp"
      - "5778:5778"
      - "16686:16686"
      - "14250:14250"
      - "14268:14268"
      - "14269:14269"
      - "4317:4317"
      - "4318:4318"
      - "9411:9411"
    environment:
      COLLECTOR_OTLP_ENABLED: "true"
      SPAN_STORAGE_TYPE: "elasticsearch"
      ES_SERVER_URLS: http://opensearch:9200
      ES_USERNAME: master
      ES_PASSWORD: replace_me
      ES_TLS_SKIP_HOST_VERIFY: "true"
      ES_TLS_ENABLED: "true"
      ES_VERSION: "7"
    networks:
      - my-net

  opensearch:
    image: opensearchproject/opensearch:2.11.0
    ports:
      - "9200:9200"
      - "9300:9300"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:9200"]
      interval: 2s
      timeout: 60s
      retries: 20
    environment:
      - discovery.type=single-node
      - network.host=<IP_ADDRESS>
      - ELASTIC_PASSWORD=replace_me
      - ELASTIC_USERNAME=master
      - plugins.security.disabled=true
    networks:
      - my-net

networks:
  my-net:
    driver: bridge

And I can't get any errors. Everything seems to work.

@mong0520 Yeah! Just try with above yaml file. To check it's working, I have also tried with the same and it's working fine.

Seems to be fixed thanks @mong0520


core bundle fails to start in latest version or archetype(32) on AEMasCS SDK

The core bundle generated fails to start after installation with error -
org.apache.sling.api.request,version=[2.5,3) -- Cannot be resolved
org.apache.sling.api.resource,version=[2.13,3) -- Cannot be resolved
Its expecting [2.5,3) and [2.13,3)  versions of the dependencies which are not present in
2021.10.5977.20211021T153528Z-211000
version of AEM SDK

this was resolved by adding SDK version in the parameter. Issue is that when you use archetype version 32 with old SDK without specifying SDK version; it takes latest SDK version for compiling code against latest SDK version jar and the libraries version is also updated to latest. this should be mentioned in the docs to specify SDK version when using latest version of archetype.

Please post a sample solution; was this part of your pom or maven build command?

Please post a sample solution; was this part of your pom or maven build command?

There should be a line in the parent pom.xml like <aem.sdk.api>2022.1.6198.20220113T173638Z-211100</aem.sdk.api>. Ideally this is the same version as the AEM CS version your deploying to but at a minimum needs to be less. If your local AEM SDK is quite old you could run into this issue but should just download the latest from the software distribution portal. What is the reason for using an old version of the SDK?

I am seeing this error in AEM 6.5.13. In this case, what I should do?

Please check my comment here and the corresponding post. I hope this helps.


Question: channel is closed immediately if using takeEvery in the try-block

The code is fairly short:
function* manageSocket()
{
  try {
    var wsChannel = yield call(subscribeWebSocket, eventChannel, eventHandlers);
    yield takeEvery(wsChannel, function*(action) {
      yield put(action);
    });
  }
  finally {
    wsChannel.close();
    console.log('wsChannel closed');
  }
}

With this setup, the try block is finished immediately after takeEvery, so the finally block is executed as well, then there won't be any action sent from the channel, which is not good.
So I have to use this setup:
function* manageSocket()
{
  try {
    var wsChannel = yield call(subscribeWebSocket, eventChannel, eventHandlers);
    while (true) {
      const action = yield take(wsChannel);
      yield put(action);
    }
  }
  finally {
    wsChannel.close();
    console.log('wsChannel closed');
  }
}

i.e. to explicitly write the while loop so that my try block won't finish immediately.
My question is, is this by design? Am I forced to use the while loop structure instead of takeEvery?
Thanks!

It is derivative of the design and how generators work. takeEvery is a non-blocking effect. This means that it will return to  your generator a task descriptor as soon as possible and yielding generator will continue its execution.
Because its kinda last statement in your generator it reaches its end and executes code in the finally block.
Therefore if you want to keep using takeEvery there you need to introduce some blocking effect (thats while inlined while loop worked).
The best I can think of is to:
function* manageSocket()
{
  try {
    var wsChannel = yield call(subscribeWebSocket, eventChannel, eventHandlers);
    var task = yield takeEvery(wsChannel, function*(action) {
      yield put(action);
    });
+   yield join(task)
  }
  finally {
    wsChannel.close();
    console.log('wsChannel closed');
  }
}

Hey Andarist thanks for the reply (again!)
So that it looks like the whole structure of an event channel watcher is fairly fixed; One has to 1. hand write the infinite while loop or provide a block effect like join to make try block work, then 2. provide the corresponding finally block to close the channel.
If the above assumptions are correct, then what do you think about writing a wrapper/creator function that assemble these things together? Like a setupSocket function that accepts a created channel, the body inside try block and the body inside finally block so that people won't bother with hand write the fixed structure, also won't make any mistake? Oh and I mean this wrapper will be written in my project, I don't think this should go into redux-saga.
Or, option 2, any chance the design of channel could get some modification? The goal is to make writing channel codes more easily (or more free), e.g. people could choose to use while (true) or takeEvery without the burden to make the try block blocking. I'm not sure if this is possible, but I think if it's possible and reasonable, this could go into redux-saga.

f the above assumptions are correct, then what do you think about writing a wrapper/creator function that assemble these things together? Like a setupSocket function that accepts a created channel, the body inside try block and the body inside finally block so that people won't bother with hand write the fixed structure, also won't make any mistake? Oh and I mean this wrapper will be written in my project, I don't think this should go into redux-saga.

If this works for you - go ahead! :)

Or, option 2, any chance the design of channel could get some modification? The goal is to make writing channel codes more easily (or more free), e.g. people could choose to use while (true) or takeEvery without the burden to make the try block blocking. I'm not sure if this is possible, but I think if it's possible and reasonable, this could go into redux-saga.

Aint really sure if thats possible. I prefer exposing more primitive/building blocks which you can use to built upon more fine-grained solutions. Including such behaviour in the core library would only limit use cases or we would have to make this configurable which is also a maintenance burden.
Going to close this issue, as it seems solved. Feel free to comment more if you want to. I dont miss any answers in any threads here ;)

@Andarist The answer is clear and reasonable, thanks! If there are any more ideas popping out of my head I would come back ;) Thanks!


PKG-3314 Update to 16.1.1

Changes:

Update to 16.1.1
Add tests

https://github.com/jupyterhub/oauthenticator/tree/16.1.1

Linter check found the following problems:
The following problems have been found:
INFO: clone/recipe/meta.yaml:0: gui_app: This may be a GUI application. It is advised to test the GUI.
All checks OK

Linter check found the following problems:
The following problems have been found:
INFO: clone/recipe/meta.yaml:0: gui_app: This may be a GUI application. It is advised to test the GUI.
All checks OK

Linter check found the following problems:
The following problems have been found:
INFO: clone/recipe/meta.yaml:0: gui_app: This may be a GUI application. It is advised to test the GUI.
All checks OK


Using HTTPS wildcards to find all domains, breaking security through obscurity

1. Which version of Caddy are you using (caddy -version)?
Caddy 0.11.0 (non-commercial use only)
2. What are you trying to do?
I have a DNS record pointed to my server with no entry in my caddyfile. If I then try to connect to that domain over HTTPS I get an error about an invalid certificate, from one of my domain seemingly at random, by reload enough I was able find to what I believed to be hidden domains.
6. What did you expect to see?
I expected to see an error for an invalid SSL cert not tied to one of my websites.
7. What did you see instead (give full error messages and/or log)?
I explained in #2
8. Why is this a bug, and how do you think this should be fixed?
I explained in #2
9. What are you doing to work around the problem in the meantime?
Ive added login methods to all those websites.
Bonus: What do you use Caddy for? Why did you choose Caddy?
I chose Caddy because it simplified my stack and deploying websites

Duplicate of https://github.com/mholt/caddy/issues/1303.
Fixed in https://github.com/mholt/caddy/commit/79810d3d2372a583a81f5200928adb215a197732.
Please update Caddy.

Domains are not hidden, ct logs list all letsencrypt tls certs in publically accessible lists


suggestion: improve readme for cc engine

I've built the TensorRT and TPU engine these days, and I found some commands or
parameters that are needed but not explicitly mentioned in the readme. So I list
them here and hope this can help you guys improve the readme file.
For TRT engine, you need a .uff format weight, and an easy way to convert TF model
into .uff format is using the convert-to-uff tools from TensorRT.
Here is the command I used:
convert-to-uff v15-19x19_models_000990-cormorant.pb

But this may not work for v17 weight now because some layers are not supported
by TensorRT yet.
For TPU engine, except --engine=tpu, you also need to point out the --tpu_name
when you use the engine. And you may also need to change the dual_net.py to fit
the net structure you are using before doing the model conversion.
Although these may be trivial for people who know TRT/TPU well, point
them out in readme explicitly can help people who are not familiar with that, like me ;)

Quick note: the TRT engine was written by a contributor who is no longer active. The rest of us have literally zero experience with TRT and would welcome any contributions to help improve the docs related to it :)

I'm very glad to do that :)

nice job


Subdomain strategy

Will we stick to convention and use url-shortener.canada.ca and it's French cousin to point to the documentation domains and then o.canada.ca for shortened URLs only?
Also document ways we can work with the options Principal Publisher and SSC might come up with if we were to get our subdomain but different ways of managing it.

There are a few things at play here, depending on how things play out:

Subdomains are children of canada.ca.
Subdomains are children of alpha.canada.ca except for o.canada.ca.

1. Subdomains are children of canada.ca.
For this one, we'll need to have multiple DNS records created for us by SSC:
url-shortener.cananda.ca
raccourcisseur-url.canada.ca
o.canada.ca

Depending on how they grant us these records (NS sub domain delegation vs. CNAMEs pointing at our CloudFront distributions) we'll have to adapt the project.  If we only get CNAMEs, we will also need to have a strategy for the AWS ACM certificate validation (we'll need to coordinate the creation of TXT validation records).
2. Subdomains are children of alpha.canada.ca except for o.canada.ca.
We'd only need a DNS record created by SSC for o.canada.ca.  We could manage the *.alpha.canada.ca DNS records ourselves.
There would still be the same question around how SSC grants the DNS records for o.canada.ca and how we manage ACM cert validation.
Technical piece
For each subdomain we support, we'll need one of each:

ACM certificate (requires DNS TXT records for certificate validation)
CloudFront distribution
DNS CNAME or ALIAS record pointing domain to the CloudFront distribution.

ℹ  If we use a different certificate provider (or another way of validating the ACM cert) we could likely get away with a single certificate and CloudFront distribution.


Allow contributors to label issues via rustbot

Now bors suggests contributors label PRs with the status labels, e.g.:
https://github.com/rust-lang/libc/pull/1902#issuecomment-702337160
This allows it, and for issues as well.

@JohnTitor: no appropriate reviewer found, use r? to override

@bors r+

:pushpin: Commit bd128ac194d4285b20b0492c761794ec10a1ce13 has been approved by JohnTitor

:hourglass: Testing commit bd128ac194d4285b20b0492c761794ec10a1ce13 with merge 0d374002b8d4972e97e04b0a7fb1a210e22368ed...

:sunny: Test successful - checks-actions, checks-cirrus-freebsd-10, checks-cirrus-freebsd-11, checks-cirrus-freebsd-12
Approved by: JohnTitor
Pushing 0d374002b8d4972e97e04b0a7fb1a210e22368ed to master...


Text composables: Android Basics with Compose

URL of codelab
https://developer.android.com/codelabs/basic-android-kotlin-compose-classes-and-objects?continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-compose-unit-2-pathway-1%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-compose-classes-and-objects#6
In which task and step of the codelab can this issue be found?
Override superclass methods from subclasses
2. In the SmartLightDevice subclass before the fun keyword of the turnOn() and turnOff() methods, add the override keyword: ...
Describe the problem
The parameters given here in this step 2 do not match the previous SmartLightDevice declaration, from step 7 of the previous task in the same codelab (deviceName instead of name, etc).
AND, the SmartLightDevice class does not yet contain turnOn() and turnOff() functions.
Steps to reproduce?    Nothing to reproduce, this is simply your (excellent) tutorial

Go to...
Click on...
See error...

Versions    Not required, I'm just working through your tutorial
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.
None, I hope my description above is sufficient.   (It seems likely that something got updated, and this bit was missed?)
Congratulations on an excellent tutorial so far (Android Basics with Compose)

Edit: Addendum:  the rest of this activity, Unit 2 Pathway 1 4: Use classes and objects in Kotlin.   From the previously described above point onwards in this activity, the descriptions (of how to continue adding to the Kotlin smart device practice code) do not match what came before.   For example, in the "Visibility modifiers" section, it says: "1. In the SmartDevice superclass's deviceStatus property, add the protected modifier to the set() function:" - but the deviceStatus property in the SmartDevice superclass doesn't have a set() function. That property is instead referenced in the superclass's constructor, however.   This is just one example, there are other places where there is a mismatch.   It looks like part of the code and the text of this activity have been updated, but the rest of it hasn't been?   If it is wished to put this right, I might respectfully suggest that one of the authors could usefully work through this activity, as if learning it for the first time, building up the code as the activity describes, to discover all the places that don't match? (However, these small errors do not detract greatly, the general ideas being explained are still clear enough to learn from, these are not difficult examples.)

Hi @t5181825
Thank you for writing in and bringing these issues to our attention.
The lesson has been updated to address them and the revised lesson will be republished again in the near future.
Hope you are enjoying the course!
Regards.


Add numba and tweak Python benchmarks

Hi, I added numba to the benchmarks, as discussed. I also tweaked the functions so that they return the correct results (same as the Julia version and the original problem).
I'll note that timeit is really clunky to use, and I do not have the time right now to learn it properly. For instance, not sure adding ''µs" to the print statements is appropriate -- feel free to take that out. More importantly though, I did notice that I get somewhat different results when benchmarking in a script vs benchmarking with %timeit in IPython:
# timeit.timeit in script
Numpy Vectorized: 18.308 μs
Python Accumulator: 9.287 μs
Numba Accumulator: 0.451 μs

# %timeit magic in ipython
25 µs ± 145 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)  # Numpy Vectorized
11.8 µs ± 2.68 µs per loop (mean ± std. dev. of 7 runs, 100000 loops each)  # Python Accumulator
336 ns ± 4.28 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)  # Numba Accumulator

The differences are much more pronounced if I use larger array sizes.
Speaking of which, I think benchmarking with such small arrays may be misleading. I may be wrong about the mechanics, but I think calling numpy incurs some overhead, so a tiny array of 10, which is obviously not representative of real-world use cases, understates numpy's performance, especially in comparison to looping in pure Python. For instance, here are some benchmarks with randomly generated arrays of 1200 (12 months * 10 years):
# %timeit magic in ipython
66.8 µs ± 6.26 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)  # Numpy Vectorized
1.09 ms ± 4.8 µs per loop (mean ± std. dev. of 7 runs, 1000 loops each)  # Python Accumulator
1.42 µs ± 1.68 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)  # Numba Accumulator

Thus, you should give some thought to expanding the size of the q and w arrays. Not only is then numpy clearly faster than plain Python, but in certain cases numba is a bit faster than plain Julia. I recently ran some benchmarks on a similar (discounting) function, and numba was indeed slightly faster. Of course, numba is quite finicky and, in my experience, only works on small/clean enough problems. And there is of course also this.
Nevertheless, if we're benchmarking performance, we should be as thorough and fair as possible. I hope this is helpful. Feel free to reach out here or on Slack if you'd like to discuss.

Thanks, great to have this addition.
When using timeit in a script, I think it reports seconds so I removed the μs.
Here's the results I'm getting:
Prior code:
13.979937791 # numpy vectorized
2.370869667000001 # python base

Your commit (dropping the microseconds):
Numpy Vectorized: 14.186
Python Accumulator: 9.876
Numba Accumulator: 0.649

The timing of the second one seemed off... it seems like it's 4x faster to not use numpy arrays, so I went back to that:
Numpy Vectorized: 14.261
Base Python Accumulator: 2.314
Numpy Vectorized: 0.626

you should give some thought to expanding the size of the q and w arrays.

That's a fair point - the samples all stemmed from the original submission that used those values. I opend another issue #3 to discuss. Going to merge and close this to get the Numba benchmarks in.

Also updated the site, should be live in a couple minutes: https://github.com/JuliaActuary/JuliaActuary.org/commit/0ad9163dbbb5c0865a4f7de18fa31396e15e3914


Expose max-pooling paramaters in Convolution layers

The default now is no pooling (1,1) sizes.  This should be exposed in the constructor.

Implementing this as part of the params branch. Also added the pool_type argument.
Thoughts welcome!


Note that this modification breaks the decision tree formulation.

There was a reason for the authors to use the alternating updates.
The modification suggested here breaks the tree formulation, and just renders it as "some" deep-net architecture. With this modification W_{leaf} does not has a probabilistic explanation, and it means that the learned weights might not play nicely as decision nodes.

The proposed method is probabilistic like the original paper. W_{leaf} is represented using a soft-max which is always in a simplex. Could you elaborate why it is not probabilistic?

In the paper W_leaf has the interpretation of Pr(y|leaf, x). And then Pr(y|x) = Expectation_{leaf|x}[Pr(y|leaf, x)].
The modification you suggested discards this notion, and try to approximate Pr(y|x) by softmax(W_leaf.' * leaf|x). However, using softmax does not guarantees that it will learn to produce the true Pr(y|x) with a single layer of W_leaf. And instead, you might need a multi-layer net, just in order to estimate the true Pr(y|x) given (leaf, x).
I can suggest a simple alternative that you can use, if you don't like to use the update rule given by the authors.
You can remove the softmax, and replace the gradient update of W_leaf with:
   # Take a gradient step on W_leaf
   leaf_grad = optimizer(*optimizer_params).compute_gradients(loss, var_list= [W_leaf])[0][0]
    updated = -leaf_grad + W_leaf
    # Projecting to [0,1] (simplex)
    updated = tf.maximum(updated, 0) # clip to >= 0
    # Normalize each row sum to 1
    epsilon = 1e-7
    updated = tf.transpose(tf.div(tf.transpose(updated), epsilon + tf.reduce_sum(updated, axis=1)))
    leaf_update_op = tf.assign(self.kernel, updated)

For your loss, you can instead use: keras.losses.categorical_crossentropy
(instead of the softmax cross entropy)

The implementation I proposed in this repository does not discard the interpretation.
First, I'll define the notations.
In the paper Eq.1, $\pi$ is the leaf node and $W_l$ are the parameters that define a leaf node probability distribution. The leaf node does not take input x directly.  i.e. $\mu_l = softmax(W_l)$ and is not a function of $x$ (input).
What this repository provided is a way to parametrize $\mu$ differently (i.e. using a softmax) and training it simultaneously and thus replacing the alternating optimization step involving the Eq.11 with a gradient steps.
In the original paper, there is no such thing as W_l as it is not parametrized using a variable (Eq.11).
I'm not sure what you are refering to.

The authors notations in the paper are confusing. I will try to clarify
what I meant.
I think I disagree with you about the notations. I'll start with the
notations as I understand them:

\pi{ly} means Pr(Y=y | leaf=l), which is a matrix that its parameters
are learned according to the new update rule. In my previous comment I also
noted it as W_leaf (I will explain why below)

mu_l(x|\theta) is actually, Pr_{\theta}(leaf=l | x). This is the output
of the products of decision-sigmoids

As in Eq (1):  Pr(Y=y|x) = \sum_{l}[ Pr(Y=y | leaf=l) * Pr_{\theta}(leaf=l
| x) ] = \sum_{l}[ \pi{ly}*mu_l(x|\theta) ]  =  dotproduct (\pi,
Pr_{\theta}(leaf=l | x) ).
This notation ensures that the mapping from leaf to Pr(y|x) models the
exact "true" probability of mapping leaves to classes.
Now note the following: Since \mu=Pr_{\theta}(leaf | x) is a vector of the
outputs of the (product of) decision sigmoids then Pr(Y=y|x) is actually an
output of a fully connected layer coming from Pr_{\theta}(leaf=l | x)
through \pi (This is the reason I noted it as W_leaf ). Therefore, you can
take gradient steps directly on \pi, without the need to use the softmax .
The only thing you need to maintain, is projecting \pi to the simplex
([0,1]) and making sure its rows sum to 1.
Now, I'll try to connect it to my previous comment. In the modification you
suggested, Pr(Y=y|x) = softmax( dotproduct (W_leaf, Pr_{\theta}(leaf=l | x)
) ). This does not represents correctly the mapping from leaf to Pr(y|x),
which is Pr(Y=y|x) = \sum_{l}[ Pr(Y=y | leaf=l) * Pr_{\theta}(leaf=l | x) ].
I am not sure why the authors chose to use their special "alternating"
update, instead of taking a gradient step and make a projection of \pi to
the simplex. I will soon test that on my real-data. I will update you if I
will have any conclusion. Currently, both approaches for the update work
for me on a small scale dataset I use.
Cheers
On Wed, Jun 28, 2017 at 2:43 AM, Chris Choy<EMAIL_ADDRESS>wrote:

The implementation I proposed in this repository does not discard the
interpretation.
First, I'll define the notations.
In the paper Eq.1, $\pi$ is the leaf node and $W_l$ are the parameters
that define a leaf node probability distribution. The leaf node does not
take input x directly. i.e. $\mu_l = softmax(W_l)$ and is not a function of
$x$ (input).
What this repository provided is a way to parametrize $\mu$ differently
(i.e. using a softmax) and training it simultaneously and thus replacing
the alternating optimization step involving the Eq.11 with a gradient steps.
In the original paper, there is no such thing as W_l as it is not
parametrized using a variable (Eq.11).
I'm not sure what you are refering to.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/chrischoy/fully-differentiable-deep-ndf-tf/issues/1#issuecomment-311516487,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFo0e-bcV19SSMtxqK1PAb3EiXOOxEyqks5sIZO3gaJpZM4OFLHP
.

Hmm. I'm not sure how you disagree with the notation defined by the authors. To me, the notation is very clear and I don't agree with that  The authors notations in the paper are confusing.

The mathematical notation does not necessarily have to follow the convenience of the implementation. I implemented using a matrix out of convenience, but it is not a necessary condition.

Yes, that is the routing probability.

Yes, Therefore, you can take gradient steps directly on \pi, without the need to use the softmax . The only thing you need to maintain, is projecting \pi to the simplex ([0,1]) and making sure its rows sum to 1. That is the main idea of that I proposed in this repository.
Regarding  In the modification you suggested, Pr(Y=y|x) = softmax( dotproduct (W_leaf, Pr_{\theta}(leaf=l | x)) ).: No I'm not doing that. See the line https://github.com/chrischoy/fully-differentiable-deep-ndf-tf/blob/github/demo_fully_diff_ndf.py#L251. There is not multiplication between the leaf and the routing probability.
I finally understand what you are trying to say and the answer is No, I'm not breaking the original formulation. I am closing the issue for invalid question.

@yuvval  I agree your argument. More extremely, joint optimisation is totally wrong.


What tool have you used to generate the figures from JSON/FASTEN?

The paper contains some figures with arrows and colors, very useful for human (rather than machine) understanding.
However it looks like this project generates output in either JSON or FASTEN format which are machine-friendly but not human friendly and certainly not graphics. How have you generated the figures in the paper and/or what would you recommend people to use to go from JSON (or FASTEN) to an output more suitable for human consumption?

The figures were created manually using the DOT language. Unfortunately, while I looked for it when writing the paper, I did not find a tool that can efficiently convert JSON to a visual representation.


Prevent non-mtls ingress being used to access resources in AM which require mtls

The forgerock (non-mtls) ingress can be used to access AM, there are currently too many AM routes to configure on the ingress so it has a catch all /am rule. There is nothing stopping someone from adjusting the mtls URLs returned by the .well-known and using this ingress to access the token endpoint.
We need to prevent access to the resources which require mtls from using the forgerock ingress.
Note: This is not a problem for RS as all routes must use mtls and therefore, no ingress rules are defined on the forgerock ingress for RS.

The /register endpoint is enforcing the MTLS in the IG route, so will reject requests without a cert or with an invalid cert.
The /accecss_token endpoint is not enforcing MTLS at the moment, if we fix bug: https://github.com/SecureApiGateway/SecureApiGateway/issues/852 then nothing needs to be done in this issue.
Alternatively, we need to add routes which forward the ingress traffic to a default backend (which always responds 404) or we need custom nginx config to do a deny.

Priority is to fix #831
If this is fixed then the client will get an error in both cases saying that their client cert needs to be supplied.

Based on Dan's comments this is not a security issue and the MTLS check is done in all AM MTLS routes, so if a hacker tries to access using the non mtls route they will get an error.


"Warning: Cannot read property 'resolvedReturnType' of undefined"

TypeScript Version:  2.3.0
Running a webpack build with typescript 2.3.0 prints to the console Warning: Cannot read property 'resolvedReturnType' of undefined.
I am unsure of the cause, as there is no stack trace when this happens -- it appears as just a simple console.log line during the build. Searching for "resolvedReturnType" in my node_modules folder only shows results inside typescript itself.
As for third party libraries that do use the typescript API, I am using awesome-typescript-loader and tslint-loader with tslint ^5.0. Is this perhaps an API change in 2.3.0?
EDIT: looks like that is not the only suspicious warning; saw a Warning: Cannot read property 'getStart' of undefined later on. I wonder what's to blame...

I guess that's coming from tslint. Unfortunately it only prints the message of the exception and doesn't show the stack trace

Indeed that's how tslint prints exceptions that occur during lint, so it's likely a TSLint issue. If you can at least narrow it down to the rule + file that produces the exception, we can take a look

I've found the console.warn in tslint's linter.js and edited it to print the file / stack trace.
The stack trace is like:
TypeError: Cannot read property 'resolvedReturnType' of undefined
    at Object.getReturnTypeOfSignature (.../node_modules/typescript/lib/typescript.js:31019:27)
    at getReturnKind (.../node_modules/tslint/lib/rules/returnUndefinedRule.js:120:30)
    at check (.../node_modules/tslint/lib/rules/returnUndefinedRule.js:76:34)

However, the file that triggers it is pretty large so it's hard to isolate the actual cause; I'll investigate it more.
The other error was:
TypeError: Cannot read property 'getStart' of undefined
  at JsxAlignmentWalker.getLineAndCharacter (.../node_modules/tslint-react/rules/jsxAlignmentRule.js:128:61)
  at JsxAlignmentWalker._this.getCharacter (.../node_modules/tslint-react/rules/jsxAlignmentRule.js:52:61)
  at JsxAlignmentWalker.checkElement (.../node_modules/tslint-react/rules/jsxAlignmentRule.js:80:39)

At any rate, it seems that at least the second one is unrelated to typescript itself.

It seems the following snippet triggers the resolvedReturnType crash:
import $ from 'jquery'

$.Deferred()
.done(foo => {
  if (!foo) {
    return
  }
})

I'll report it on tslint.

The getStart error is an actual API change in TS 2.3, which I guess was added by https://github.com/Microsoft/TypeScript/commit/41108dba
https://github.com/palantir/tslint-react/issues/87


Operation failed with status: 'Unauthorized'. Details: Required Header authorization is missing.

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az cosmosdb sql database create
Errors:
Operation failed with status: 'Unauthorized'. Details: Required Header authorization is missing. Ensure a valid Authorization token is passed.
ActivityId: d3f22954-c56e-45ed-bfdd-c6e4d70138df, Microsoft.Azure.Documents.Common/2.9.2

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

az cosmosdb sql database create --account-name {} --name {} --resource-group {} --debug

Expected Behavior
Environment Summary
macOS-10.13.4-x86_64-i386-64bit
Python 3.8.1
Shell: bash

azure-cli 2.0.80

Additional Context

After some continued investigation, it turns out the it may be due to special characters (forward slash) being used in the name of the cosmos database.
I removed those and the error went away.

Hi @jjlauterbach thank you for following up. I am going to close this issue now. If you encounter any other problems, please open another issue.


FIX sorting with datetime from Nextras ORM

Error
Cannot use object of type Nextras\Dbal\Result\Row as array

Can you please add some tests?

@suchoproduction  Could you rebase the branch and add some tests, please? Thanks.

@hrach Could you take a look at it, please?

@suchoproduction Please, rebase.


Stefankracht/dir 595 view old revisions

Just updated the back button from a real button to a link that looks like a button (this button feature was just merged into the redesign branch, so I quickly implemented it here)

When I'm in the "Active Revision" tab and make a revision, then click on the "Open Revision" in the toast, I'm still in the "Active Revision" tab but the editor is read-only. I was surprised by that, intuitively the "Active Revision" tab should always be editable and I should be on the "Revisions" tab when viewing an old revision.

This is a "separate" issue that I track here. Basically the tabs never update their active state when you navigate to one of them without explicitly clicking on them (f.e. when you open a revision with the button on a toast notification). I will solve that separately.

Also in general, I think it would be good to have a more obvious indication when the editor is "read only".

I removed the native readonly hint because it looks ugly but I did not added a cusom one. But now I did (see second screenshot below)
Old

Just added this

I also just made the Button labels shorter because it did not work well on smaller screens. The revision hashes are so long that they linebreak very early.

Not a show stopper, but the tooltip in the read-only editor is a bit annoying, because its visibility is toggled by a mouse click. That means, every time I click in the editor (maybe to select text for copying or so) it appears or vanishes. Or maybe this is good because the tooltip would be easy to miss otherwise?

Thanks! I agree, we could definitely evaluate this behavior in the future but keep it for now.
I just added a class to the tooltip to avoid linebreaks


Port it to Python or NodeJS

Python preferably, 'cause almost all of the people have python installed by default

I can help with it, if you want :)

Why would I install a binary for something I use once to generate a linter? It should be a script I can run easily. Preferably in my own language
Your target audience isn't able to help if you won't write the tool in their language.

Since this generates ES6, it should definitely be written in ES6

@AsaAyers You have my :+1:

Atom has a package generator, and minimap has a set of generators:

If it's not too complex maybe we should do the same thing in linter. What do you think?

Does it have a public API?

¯\(ツ)/¯ I've done seconds if research (i searched for generate in the command list)

I don't think so. For some reason minimap uses a custom element and attaches it to atom and it generates the project. It's probably more effort than it's worth since we don't really need to generate a completely new project.


No time tracked but no errors

Hi,
my wakatime plugin for Visual Studio 2013 (installed on a virtual machine at work) is not tracking anything: .wakatime.log is empty and ActivityLog.xml contains no errors.
.wakatime.cfg contains the api key.
At home, same api key, is working.
Maybe connection issue? This virtual machine is not under proxy for development purpose.
Thank you!

At work you need a proxy to connect to the outside internet?
On Mon, Jun 1, 2015 at 1:55 AM, Francesco Bramato<EMAIL_ADDRESS>wrote:

Hi,
my wakatime plugin for Visual Studio 2013 (installed on a virtual machine
at work) is not tracking anything: .wakatime.log is empty and
ActivityLog.xml contains no errors.
.wakatime.cfg contains the api key.
At home, same api key, is working.
Maybe connection issue? This virtual machine is not under proxy for
development purpose.
Thank you!
—
Reply to this email directly or view it on GitHub
https://github.com/wakatime/wakatime/issues/24.

--
Alan
ahamlett.com

No, or almost, i think. I've asked to my network admins and he told me that the development virtual macchine go out directly

(Ops i closed the issue!)

Hi Alan,
i've debugged the visual studio extension to find out why is not working on my machine.
So, GetPython() returns always null but the extension try to install every time visual studio starts: Python got installed correctly, it is present in c:\pyton34 but when it try to execute it the RunProcess.OK() is always false.
To solve i've added c:\python34 to environment variable PATH and now it works :)

Glad you've solved it.
That's strange the plugin wasn't able to find Python at c:\python34. Was it c:\pyton34 or c:\python34? Maybe I need to add c: before each path location in GetPython().

Sorry, it's c:\python34 .
Why don't make configurable that path with a default? maybe i could have the Python installation in another path :)

wakatime/visualstudio-wakatime#18 uses the Windows registry to find Python, so this should be solved now.


Change default model

Always using gpt-4-turbo these days, so it would be nice to change that to the default (instead of gpt-3.5-turbo). Did a quick search but didn't find out about this, sorry if it's a triplicate :) Will do a PR if I can get mind space.

you can change your own default by running llm models default gpt-4-turbo

Would be nice if that option for setting the default was shown at the top of the llm models output for discoverability, but I guess llm --help also says models        Manage available models instead of "listing available models", so maybe it's on me for overlooking it.


Add 202 response to LinkedServices

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Please ensure to add changelog with this PR by answering the following questions.

What's the purpose of the update?

[ ] new service onboarding
[ ] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[x] Other, please clarify

When you are targeting to deploy new service/feature to public regions? Please provide date, or month to public if date is not available yet.
When you expect to publish swagger? Please provide date, or month to public if date is not available yet.
If it's an update to existing version,  please select SDKs of specific language and CLIs that require refresh after swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[ ] No, no need to refresh for updates in this PR

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of "no breaking changes"
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
[ ] Ensure to copy the existing version into new directory structure for first commit (including refactoring) and then push new changes including version updates in separate commits. This is required to review the changes efficiently.
Adding a new service

[ ] Please ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

Current Swagger does not always match the response in the API. Fixing this so customers using PS won't get an error due to mismatch in response..

This PR needs Breaking Change Review.

@orargaman Please don't use master branch directly. You should create a feature branch.

added breaking change request: @kairu-ms , @orargaman
https://msazure.visualstudio.com/One/_workitems/edit/9872832

@JeffreyRichter ,@orargaman
this is a long-running operation, so it can return both 200 and 202

Hi @orargaman, is this PR fixing S360 issue?   @JeffreyRichter  can this PR be approve?

@akning-ms do you mind approving and merging this?


[yurt tunnel]support proxy https request from cloud to edge through yurt-tunnel

What would you like to be added:
Yurt-tunnel components can proxy https request from cloud to edge nodes, so user from the cloud can access the https service at the edge through yurt-tunnel.
Why is this needed:
Some cloud-native ecosystem components(like Node Exporter) serve https requests at the edge, in order to support prometheus collect metrics of node-exporter, we need to support proxy https requests through yurt-tunnel.
others
/kind feature

@rambohe-ch  what's the form of request, like curl svcname.svcnamespace:port the same as kubernetes service?

@rambohe-ch what's the form of request, like curl svcname.svcnamespace:port the same as kubernetes service?

Like prometheus collects node-exporter metrics requests: https://nodeIP:9100/metrics

ok, does it require cloud access to edgeNodeIP？because edgenode usually don't have public ip

ok, does it require cloud access to edgeNodeIP？because edgenode usually don't have public ip

Edge nodes do not need public ip, but edge nodes are able to access public network for setting up network connection between yurt-tunnel-agent and yurt-tunnel-server, and requests from cloud to edge nodes will go through this connection.


new dashboard for reporting to Dutch tax & matching of Titles/labels now match pie-charts in Charging stats

solves #989 and #814 - sorry for mixing into one PR. Seems that I have to learn more about Git -.-

Should we collaborate to make a new table hold hold a "classification" of drives (personal vs. business), as well as a "note" (could be costumer, if geo-fencing is not applicable in rare cases..??


Ignore zero width glyph

Fixes an issue on Arch linux when rendering the only other zero-width glyph, ASCII character 173 in the extended set. Not thrilled with special case code but there are only two characters in the table that behave like this. 160 is another one that doesn't have any appearance but it's not zero width so... eh.

Maybe we should put code to detect the character width, rather than special casing based on the code index.
Looks like you accidentally based the change on a branch I was working on. Normally I would fix that with a git rebase. Though if it's just one commit you can use git cherry-pick instead. Or if it needs rework, just create a new branch off of master, or use git reset to undo the commits for the current branch. For example, with the branch currently checked out, you can run git reset --hard master to undo all the commits on that branch, resetting it to look like master.

I think I'll just create a new branch since the change would be super simple versus using special case code. Granted it's really only for the ASCII code page and characters 0 and 173, but still. Who knows how it'll behave on other configurations, etc.


Crashing

Can someone explain this error?? Also I have my own menu on osiris and added a lot of pull requests

I just dont know how to fix, any help appreciated:)

Press "Opakovat" and it will show you that line in the source code. Probably you're calling ImVector::pop_back() on an empty vector.

Ok thx

on every windows machine since Vista there is a tool called "Snipping tool". it allows you to take screenshots instead of taking a picture of your monitor.

windows key > type "sni" > press enter

I don't see huge issue that I didn't use the snipping tool. But you guys are cool trying to act smart


replication: add missing VRC name for VGR

we need to have a VRC name to create the VR, this PR adds a new field to the VGR to pass down the VRC name for the VolumeReplication object.

@Madhu-1 , the abbreviations make it really difficult to understand the explanation.
I don't understand why a VolumeGroupReplication needs the VolumeReplicationClassName, why is VolumeGroupReplicationClassName not sufficient?
Or, should the VolumeReplicationClassName not be a member of VolumeGroupReplicationClass?


fix(component): add DateTime component

fix #439

:tada: This issue has been resolved in version 0.15.9 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Thumbnail tag fails with ValueError for some images.

I've got the following trace:
ERROR Thumbnail tag failed:
[...skipped...]
File "/usr/local/lib/python2.7/dist-packages/sorl_thumbnail-11.12-py2.7.egg/sorl/thumbnail/engines/convert_engine.py", line 95, in _orientation
result = int(result)
ValueError: invalid literal for int() with base 10: 'unknown'
I guess sometimes 'unknown' may appear in the result variable (line 95 of convert_engine.py) instead of integer value of rotation angle.

I'm new to github and don't know how to commit and attach, therefore write here. Sorry for inconvenience.
The following change to convert_engine.py (function _orientation) seems to fix the problem:
result = p.stdout.read().strip()
if result:
try:
result = int(result)
options = image['options']
[...skipped...]
except ValueError:
pass


core: prepare introduction of package scopes

For details regarding the design please look at #246 (regularly updated).
Part of #246

/home/runner/work/bait/bait/bait2.js:384
	return v > MAX_I32 ? -v : v
	           ^

ReferenceError: MAX_I32 is not defined
    at i32 (/home/runner/work/bait/bait/bait2.js:384:13)

CI fails because of that 🤔

@StunxFS wow, you are fast!
But I am aware, it's a change breaking the bootstrap process. The "fix" is merged in #250.
It's a little ugly in terms of development workflow but now I can continue with replacing the global scope.

And I deleted the comment because the PR had already been merged XD


Add Maven wrapper for reproducible builds

I kind of disagree. Why should your users have to download and install a specific version of Maven when the wrapper can do it for them? It's just friction that we don't need.. Your choice though.

The concern was reproducible build. Maven wrapper does very little to help with that and adds a monstrous amount of potential security problems. It is a shell script. I know bash but not as nearly as well as Java.
I take the reproducible part very seriously. There are way more reproducible build problems with what JDK is used vs Maven particularly annotation processing even if you use set the class version. I know first hand because they changed how the annotation processor works and generates code in JDK 19 (this project uses several annotation processors).  Should I package a whole script to download the correct JDK so that they get reproducible builds?
Most maven projects do not even know about this: https://maven.apache.org/guides/mini/guide-reproducible-builds.html yet this project does it. Most projects do not have an enforcer check to make sure it is the same maven version. I also have a JDK version check as well but it only happens on release.
Luckily there is a script to download the correct JDK and Maven and whatever else in the Java ecosystem. It is SDK man. Many java devs already know about it but I can include a message on build failure that says to use it when the enforcer plugin fails.
https://sdkman.io/
So if we really want a convenience shell script I can look into having something call SDK man but I don't think it is worth it.

I tell you what. If you can figure out how we can get dependabot to update that maven-wrapper.properties I'll reconsider it.
Also I am biased... the last time I checked in a wrapper was a gradle wrapper... guess what happened... it stopped working. Gradle changed the distribution URL and I couldn't download the correct gradle to have it upgrade. This was like 8 years ago though but it was one of the many reasons I stopped using Gradle. These scripts just get checked in and never updated till they break awfully or have a hidden security flaw.

I don't think dependabot supports that right now (e.g. see https://github.com/dependabot/dependabot-core/issues/2223). It would probably be easy enough to update it via another script (e.g. in a GitHub Action). I'm not sure it matters much if it's automated though - I've been using the wrapper for years now and never had an issue with it. Are there some past CVEs that have you worried?

Also the script uses CURL and wget. Those are dependencies. Sure they are stable and mostly secure but that means technically a build machine or docker image needs that installed instead of just raw maven, a correct JDK, and git.
IMO the maven wrapper should be modernized to just execute a Java class embedded in the shell script since you can now script Java like that which this project actually does in the bin directory.
Anyway if I get more feedback that people want it I will revisit and somehow get it in.

@dsyer After doing some research on it and realizing ubuntu-latest does not have the new maven 3.8.7 I added the maven wrapper. Thank you for being persistent on it (see eventually my mind changes 😄 ).


[Amazon AWS] Secrets Manager command should have a debounce for keystrokes

Extension
https://www.raycast.com/Falcon/aws
Description
Hey,
the secrets manager command should have a debounce function to avoid api requests on each keystroke. I find myself in the situation that i regularly got throttling exceptions because of too many requests.
Also it would be nice to add the keywords property to the list item by splitting the secret name on -,_,/,|,= to make search more user friendly
Who will benefit from this feature?
No response
Anything else?
No response

It already has the throttle defined here:
https://github.com/raycast/extensions/blob/dedf880749545861a71cb0083030441f4eae5c3e/extensions/amazon-aws/src/secrets.tsx#L24-L25
This should slow down the requests, are you still receiving throttles?

yes I face them regularly. Maybe we can increase the throttling time?

Hey @b0lle , since you're a contributor and might have more secrets in your account than I do for testing, can you please try fixing this? I think the problem is coming from the multiple async calls here:
https://github.com/raycast/extensions/blob/d2327f163a4c84b9dd57ef993f0d27474b8776ba/extensions/amazon-aws/src/hooks/use-secrets.ts#L28-L35
Here is the refactoring I would suggest for useSecrets(string):
export const useSecrets = (search: string) => {
  const {
    data: secrets,
    error,
    isLoading,
    revalidate,
    pagination,
  } = useCachedPromise(
    async (query: string) => {
        const { SecretList } = await new SecretsManagerClient({}).send(
          new ListSecretsCommand({
            NextToken: cursor,
            MaxResults: 100,
            ...(query.trim().length > 2 && { Filters: [{ Key: "all", Values: [search] }] }),
          }),
        );

        return secretList;
      },
    [search],
    { execute: isReadyToFetch() },
  );

The reason being we don't need to paginate the result of an already typeahead supported api call. Plus raycast native pagination makes 2 initial calls to the promise for some reason, instead of just one.
Then, we can make corresponding changes to the command List key and metadata (remove resource policy). I think we can add a separate action to display resource policy (as Detail view), just like we do with secret value
https://github.com/raycast/extensions/blob/d2327f163a4c84b9dd57ef993f0d27474b8776ba/extensions/amazon-aws/src/secrets.tsx#L147-L152
That way we can load the resource policy (make the api call) when user triggers the action and not during initial list rendering for all secrets.

@raycastbot assign me

thanks, I would have done it but glad you already implemented something


[NEW ALGORITHM] Earliest Deadline First (EDF):

Issue will be closed if:

You mention more than one algorithm. You can create a separate issue for each algorithm once the current one is completed.
You propose an algorithm that is already present or has been mentioned in a previous issue.
You create a new issue without completing your previous issue.

Note: These actions will be taken seriously. Failure to follow the guidelines may result in the immediate closure of your issue.

Name:
[NEW ALGORITHM]  Earliest Deadline First (EDF):
About:
Propose a new algorithm to be added to the repository
Earliest Deadline First (EDF) is a dynamic real-time scheduling algorithm used primarily in real-time operating systems to manage tasks with specific deadlines. In EDF, the process with the earliest deadline is given the highest priority and is executed first. This approach ensures that processes are completed before their deadlines, making it suitable for systems where tasks must meet strict timing constraints, such as embedded systems and real-time applications.
Labels:
new algorithm, gssoc-ext, hacktoberfest, level1

Assignees:

[x] Contributor in GSSoC-ext
[x] Want to work on it

@this is not done till yet
kindly assign this


Update FAKIconImage.ios.js

Fixes a few changes for React 0.4.3

+1

Also, the same renames needed in SMXTabBarIconItemIOS and SMXTabBarIOS

Just a suggestion to change the var names as well to keep things consistent.
This would require another small change on line 101.

I'll make this additional changes and merge this in shortly
On Thu, May 14, 2015 at 11:54 PM, Christopher Dro
<EMAIL_ADDRESS>wrote:

Just a suggestion to change the var names as well to keep things consistent.
This would require another small change on line 101.
Reply to this email directly or view it on GitHub:
https://github.com/corymsmith/react-native-icons/pull/31#issuecomment-102269605

All merged in and published version 0.0.7


New loader: input from multiple BIDS datasets

This PR enable the new loader pipeline to run with inputs from multiple BIDS datasets.
It supports path_data as string or as a list.
The BidsDataframe is a merge of all files and metadata of the specified paths. If there are duplicates, it only keeps the first encounter (same as the implementation in current loader).

Pull Request Test Coverage Report for Build 572334981

45 of 45 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 75.018%

Totals

Change from base Build 569997045:
0.03%

Covered Lines:
5351

Relevant Lines:
7133

💛  - Coveralls


Server side verification with Keycloak needed

If I understand the process correctly, all communication with Keycloak is performed by the typescript code on the client side.,
Thus, the token and user details received by the server side must be verified against the keycloak realm cert and only then can they be trusted and used for further access. Any additional details about groups or roles assigned to the user must also be collected from the keycloak server.
If someone has a good verification algorithm implemented with the necessary call to the server it would be a useful addition.
This library looks very helpful in this respect though I see no direct verification method. But the user info endpoint might be one way to get the info about the user: https://pypi.org/project/python-keycloak/
/Mats

all the info from auth is passed via JWT token, which you can access on Streamlit python side. If Keycloak is configured to add user info - you'll have JSON populated with roles along with the JWT token. Otherwise you can just parse JWT token to get all the same info.

Thanks!
Yes, the point I wish to make is that the values received cannot be trusted. They must be verified using the public key for the same realm from the keycloak server.
/Mats
Skickat från Outlook för Androidhttps://aka.ms/AAb9ysg

From: Alexander Chernyshev @.>
Sent: Friday, November 3, 2023 7:22:44 PM
To: bleumink/streamlit-keycloak @.>
Cc: Mats Bjerin @.>; Author @.>
Subject: Re: [bleumink/streamlit-keycloak] Server side verification with Keycloak needed (Issue #27)
all the info from auth is passed via JWT token, which you can access on Streamlit python side. If Keycloak is configured to add user info - you'll have JSON populated with roles along with the JWT token. Otherwise you can just parse JWT token to get all the same info.
—
Reply to this email directly, view it on GitHubhttps://github.com/bleumink/streamlit-keycloak/issues/27#issuecomment-1792930218, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATZHR5AX5ZUCHQ3R7CYJJFTYCUY7JAVCNFSM6AAAAAA64S3766VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJSHEZTAMRRHA.
You are receiving this because you authored the thread.Message ID: @.***>

Could you elaborate what exactly you are trying to do or protect from? Client from your frontend (signed and encrypted?) is rerouted to your keycloak web-page, which also should be protected with your signed certificate. The process is quite secure, as I know. But you can always use the same token to recheck again, for example through fixed IP or another network.

Yes, I need to use the token and verify I get the same results on the server side as the user obtained on the browser client side. Since the server side could be tricked into accepting data from the web browser that has a fake token or a valid token but for another user in the user details section.
This is simply because the client side data is open to modification or replacement. While the server side cannot be manipulated.
This is in fact the whole point. That the server side code in python cannot trust the data until it has been checked using the certificate in the bearer token.
Right now there is no such verification in the streamlit-keycloak module built in, as it is all type script code for the client side and just a "template" class that has its parameters filled in by the client side code.
Skickat från Outlook för Androidhttps://aka.ms/AAb9ysg

From: Alexander Chernyshev @.>
Sent: Friday, November 3, 2023 7:39:09 PM
To: bleumink/streamlit-keycloak @.>
Cc: Mats Bjerin @.>; Author @.>
Subject: Re: [bleumink/streamlit-keycloak] Server side verification with Keycloak needed (Issue #27)
Could you elaborate what exactly you are trying to do or protect from? Client from your frontend (signed and encrypted?) is rerouted to your keycloak web-page, which also should be protected with your signed certificate. The process is quite secure, as I know. But you can always use the same token to recheck again, for example through fixed IP or another network.
—
Reply to this email directly, view it on GitHubhttps://github.com/bleumink/streamlit-keycloak/issues/27#issuecomment-1792952033, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATZHR5CJRPVRVN3LDFMXANDYCU243AVCNFSM6AAAAAA64S3766VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJSHE2TEMBTGM.
You are receiving this because you authored the thread.Message ID: @.***>

Well, I didn't do it really, using the service in internal perimeter with somewhat secure setup.
Examples from python-keycloak look to be simple enough. To me it looks like either this:
# Get Access Token With Code
access_token = keycloak_openid.token(
    grant_type='authorization_code',
    code='the_code_you_get_from_auth_url_callback',
    redirect_uri="your_call_back_url")

or this
# Get Userinfo
userinfo = keycloak_openid.userinfo(token['access_token'])

# Refresh token
token = keycloak_openid.refresh_token(token['refresh_token'])

should do what you want. Just rerequesting details through server-side using the same code through explicitly secure connection. It should either return some kind of error, if code is unknown to SSO, or it should return a safe-to-use result with no further verification required (as we'd trust our internal connection). Might need some work with session_state to not do that on each page redraw.

That's perfect!!
Many warm thanks for solving this also. The module is indeed great so with this verification it is also really secure.
Skickat från Outlook för Androidhttps://aka.ms/AAb9ysg

From: Alexander Chernyshev @.>
Sent: Friday, November 3, 2023 8:22:38 PM
To: bleumink/streamlit-keycloak @.>
Cc: Mats Bjerin @.>; Author @.>
Subject: Re: [bleumink/streamlit-keycloak] Server side verification with Keycloak needed (Issue #27)
Well, I didn't do it really, using the service in internal perimeter with somewhat secure setup.
Examples from python-keycloak look to be simple enough. To me it looks like either this:
Get Access Token With Code
access_token = keycloak_openid.token(
grant_type='authorization_code',
code='the_code_you_get_from_auth_url_callback',
redirect_uri="your_call_back_url")
or this
Get Userinfo
userinfo = keycloak_openid.userinfo(token['access_token'])
Refresh token
token = keycloak_openid.refresh_token(token['refresh_token'])
should do what you want. Just rerequesting details through server-side using the same code through explicitly secure connection. It should either return some kind of error, if code is unknown to SSO, or it should return a safe-to-use result with no further verification required (as we'd trust our internal connection). Might need some work with session_state to not do that on each page redraw.
—
Reply to this email directly, view it on GitHubhttps://github.com/bleumink/streamlit-keycloak/issues/27#issuecomment-1792979742, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ATZHR5FMSWHROUJ5UAJIBJDYCU775AVCNFSM6AAAAAA64S3766VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOJSHE3TSNZUGI.
You are receiving this because you authored the thread.Message ID: @.***>

I think something like this should be done:
        self.cached_key= self.keycloak_openid.public_key()
        ...
        options = {"key": self.cached_key, "verify_signature": True,"verify_aud": True, "verify_exp": True}
        result=self.keycloak_openid.decode_token(token, options)

You want to reload the cached key because it will be rotated on the auth server.

Nice one! Thanks @balazsrewe ! :-)

I feel good about the solutions suggested. I decided to close this thread. Thanks all who contributed! /Mats


STDOUT blowing up with messages

When I use listen() on a recognizer it blows up my terminal, it doesn't do this on Windows, but it does on my RPI 4.

I have this same exact problem!!!!  I would love to know how to fix this!!!

I have this same exact problem!!!! I would love to know how to fix this!!!

I figured out a fix, put this before the line containing the microphone class:
devnull = os.open(os.devnull, os.O_WRONLY)
old_stderr = os.dup(2)
sys.stderr.flush()
os.dup2(devnull, 2)
os.close(devnull)

Then put this after the line:
os.dup2(old_stderr, 2)
os.close(old_stderr)

So it should look something like this (example from my code):
devnull = os.open(os.devnull, os.O_WRONLY)
old_stderr = os.dup(2)
sys.stderr.flush()
os.dup2(devnull, 2)
os.close(devnull)
with sr.Microphone(device_index=1) as source:
    os.dup2(old_stderr, 2)
    os.close(old_stderr)


Backticks evaluated twice

See: junegunn/fzf#2
➜  ~  echo $TERM
xterm-256color
➜  ~  rm -f /tmp/doh
➜  ~  echo `echo doh >> /tmp/doh`

➜  ~  cat /tmp/doh
doh
doh

This is still a problem with the most recent oh-my-zsh version, and the fix in-place.
$echo echo doh >> doh
$cat doh
doh
doh
It also occurs with $():
$ rm doh
$(echo doh >> doh)
$ cat doh
doh
doh

That's just not the behavior I see. Please post the output of setopt.


Update submodule

Hi there,
the submodule Kestrel-AMPL-Linux has been updated with support of the current policy server-side. The submodule reference in this repository should be updated to point to HEAD.
I can create a pull request, if needed, but it is such a trivial correction that it's probably not worth it.

Updated. https://github.com/NEOS-Server/Kestrel-AMPL-Windows/commit/49572d4ecd812d879af639cd34dd005b71d2cdf9


avoid timeout errors with high concurrency in api_model

Longer timeout will avoid errors when running tests with high concurrency

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

Thanks v. much for the PR. left a comment. Also cc: @artemorloff, as he had also made the change in #2249.

sorry @dtrawins . Forgot to commit the review message.

I had to fix it this way:
echo "import aiohttp.client
aiohttp.client.DEFAULT_TIMEOUT = aiohttp.ClientTimeout(total=14400)" >> ~/lm-evaluation-harness/lm_eval/__init__.py


bug with " -> not for ..."?

Description:
I have the following query:
from every  e0=mappedStream[  event == 'userLogin'  ]   ->  not mappedStream[  event == 'userMaterial'  and e0.uid == uid  ]   for 600 sec  select  e0.uid as uid, e0.time as time insert into outStream;
I emit the following events into this mappedStream:

{"uid":"173799330","event":"userLogin","time":1541000542290}
{"uid":"174913542","event":"userLogin","time":1541000545515}
{"uid":"174913542","event":"userMaterial","time":1541000875514}
{"uid":"174908761","event":"userLogin","time":1541001152290}
{"uid":"174914544","event":"userLogin","time":1541001575514}

I think the "item 1" - {"uid":"173799330", "time":1541000542290} should be return after item 4 was emitted, but it actually showed off after item 5 was emitted.
Could anyone please explain this phenomenon? And if this is not a bug,  how the query should be written if I want to get the result like what I was expecting?
tested on siddhi version: 4.2.0 & 4.2.27

@gengfangjie, Could u verify if the time you mention here is the system time or was it simulated as a parameter in the mappedStream?
This pattern will only work with the system time, i.e if I send a matching event at 10.30 am, then the not condition will only be passed at 10.40 am system time. It will not recognise the time that is passed as in the attribute.

It is actually the event time as I used playback annotation, the test code was:
`
@Test
public void test() throws InterruptedException {
    String cql1 = "@app:name('test') @app:playback(idle.time = '10 sec', increment = '10 sec') define stream mappedStream (event string,uid string,time object);" +
            "@info(name='test-login') from every e0=mappedStream[ event == 'userLogin' ] -> not mappedStream[ e0.uid == uid and event == 'userMaterial' ] for 600 sec select  e0.uid as uid, e0.event as event0, e0.time as time0 insert into outStream;";

    SiddhiManager siddhiManager = new SiddhiManager();
    SiddhiAppRuntime appRuntime = siddhiManager.createSiddhiAppRuntime(cql1);
    InputHandler inputHandler = appRuntime.getInputHandler("mappedStream");

    appRuntime.addCallback("outStream", new StreamCallback() {
        @Override
        public void receive(Event[] events) {
            for (Event event1 : events) {
                System.out.println(event1);
            }
        }
    });

    inputHandler.send(1541000542290L, new Object[]{"userLogin", "173799330", new Date(1541000542290L)});
    inputHandler.send(1541000545515L, new Object[]{"userLogin", "174913542", new Date(1541000545515L)});
    inputHandler.send(1541000875514L, new Object[]{"userMaterial", "174913542", new Date(1541000875514L)});
    inputHandler.send(1541001152290L, new Object[]{"userLogin", "174908761", new Date(1541001152290L)});
    inputHandler.send(1541001775514L, new Object[]{"userLogin", "174914544", new Date(1541001575514L)});

    TimeUnit.MINUTES.sleep(1);
}

`
The result didn't show up before the 5th event (time:<PHONE_NUMBER>514) was emitted. But the 4th event's time is over 600 sec than the first event.
But it did work like what I thought after the line 55 of org.wso2.siddhi.core.query.input.stream.state.AbsentStreamPostStateProcessor was deleted.
`
public class AbsentStreamPostStateProcessor extends StreamPostStateProcessor {
/**
 * This method just mark the state changed but does not send the stateEvent to the next processors.
 *
 * @param stateEvent        the state event
 * @param complexEventChunk the ComplexEventChunk
 */
protected void process(StateEvent stateEvent, ComplexEventChunk complexEventChunk) {

    // Mark the state changed
    thisStatePreProcessor.stateChanged();

    // Update the timestamp
    StreamEvent streamEvent = stateEvent.getStreamEvent(stateId);
    stateEvent.setTimestamp(streamEvent.getTimestamp());

    // This is the notification to AbsentStreamPreStateProcessor that this event has been processed
    this.isEventReturned = true;

    if (thisStatePreProcessor.isStartState) {
        if (nextEveryStatePreProcessor != null && nextEveryStatePreProcessor == thisStatePreProcessor) {
            // nextEveryStatePreProcessor refers the AbsentStreamPreStateProcessor
            nextEveryStatePreProcessor.addEveryState(stateEvent);
        }
    }

//        ((AbsentPreStateProcessor) thisStatePreProcessor).updateLastArrivalTime(streamEvent.getTimestamp());
}
@Override
public PostStateProcessor cloneProcessor(String key) {
    AbsentStreamPostStateProcessor streamPostStateProcessor = new AbsentStreamPostStateProcessor();
    cloneProperties(streamPostStateProcessor);
    return streamPostStateProcessor;
}

}
`

Thanks for reporting this issue
This is fixed in PR https://github.com/wso2/siddhi/pull/975
Please do let us know if you encounter any other issues.
Feel free to submit a failing test case so it will help us fix the bug much faster.
Thanks


Screenshots for React-Java-MySQL are off

I understand this is a very small issue but the screenshots in the README for the mentioned directory is a bit off and/or outdated, and I only ran into this when my CI build was failing as a result.
I was testing for react-java-mysql_backend when in reality, the container was named react-java-mysql-backend

Might be a coincidence but my lead  posted a relevant article just today which I thought was humorous: https://joshtronic.com/2022/08/21/screenshots-are-not-documentation/
Thank you Docker team for providing this repository! :)

You're right, good eye! A lot of the READMEs appear to show output from compose v1. In compose v2 we're using dashes instead of underscores for image and container names. The format is a bit different as well. Would you mind submitting a PR for those changes? A lot of the samples need updating, but feel free to just update the react-java-mysql one.

Sure thing. I thought they were screenshots initially but I've just submitted a PR