Transport headers being set for unencrypted connections

Hello there,
Hope you're doing well. I wanted to chat about a little hiccup I've run into while trying to establish a connection with a non-SSL server. Specifically, in wind/client.ex:76, I noticed that the option http_opts.transport_opts.verify is set, and it seems like this might be causing an argument error.
To help you get a better grasp of what's going on, I've attached the snippet of code needed to recreate the issue. It's pretty similar to the example given in the README. Also, I've tossed in some snippets from the log to give you the full picture.
I'm definitely planning to roll up my sleeves and look into the MatchError a bit later, but before I dive in, I thought it would be a good idea to touch base with you. Your insights would be super valuable as I think about putting together a pull request to sort this out.
Appreciate your time and any thoughts you might have!
Code for reproduction
defmodule PulseRail.Client do
  use Wind.Client, ping_timer: 30_000

  def start_link(_args) do
    Wind.Client.start_link(__MODULE__,
      uri: URI.new!("ws://echo.websocket.events/.ws")
	  # uncomment the next line for some success:
      # http_opts: [protocols: [:http1], transport_opts: []]
    )
  end

  @impl true
  def handle_connect(state) do
    message = Jason.encode!(%{method: "SUBSCRIBE", params: ["btcusdt@aggTrade"], id: 1})
    {:reply, {:text, message}, state}
  end

  @impl true
  def handle_frame({:text, message}, state) do
    data = Jason.decode!(message)
    IO.inspect(data)

    {:noreply, state}
  end
end

With verify: :verify_none
06:42:49.863 [debug] Connecting to ws://echo.websocket.events/.ws

06:42:50.052 [error] GenServer #PID<0.191.0> terminating
** (ArgumentError) argument error
    (kernel <IP_ADDRESS>) gen_tcp.erl:221: :gen_tcp.connect/4
    (mint 1.5.1) lib/mint/core/transport/tcp.ex:41: Mint.Core.Transport.TCP.connect/3
    (mint 1.5.1) lib/mint/http1.ex:133: Mint.HTTP1.connect/4
    (wind 0.2.4) lib/wind.ex:40: Wind.connect/3
    (pulserail 0.1.0) deps/wind/lib/wind/client.ex:81: PulseRail.Client.handle_continue/2
    (stdlib <IP_ADDRESS>) gen_server.erl:1123: :gen_server.try_dispatch/4
    (stdlib <IP_ADDRESS>) gen_server.erl:865: :gen_server.loop/7
    (stdlib <IP_ADDRESS>) proc_lib.erl:240: :proc_lib.init_p_do_apply/3
Last message: {:continue, :connect}
State: %{conn_info: nil, opts: [uri: %URI{scheme: "ws", userinfo: nil, host: "echo.websocket.events", port: 80, path: "/.ws", query: nil, fragment: nil}]}

When we override http_opts and remove verify: :verify_none
06:42:13.865 [debug] Connecting to ws://echo.websocket.events/.ws
06:42:13.956 [debug] Connected
06:42:14.050 [debug] Upgrading to websocket

06:42:14.050 [error] GenServer #PID<0.197.0> terminating
** (MatchError) no match of right hand side value: {:ok, %Mint.HTTP1{host: "echo.websocket.events", port: 80, request: nil, streaming_request: nil, socket: #Port<0.7>, transport: Mint.Core.Transport.TCP, mode: :active, scheme_as_string: "http", requests: {[], []}, state: :open, buffer: "", proxy_headers: [], private: %{extensions: [], scheme: :ws, sec_websocket_key: "gixABUrnEbPVK8oPcdBhwQ=="}, log: false}, [{:status, #Reference<0.1996560276.1166278659.107749>, 101}, {:headers, #Reference<0.1996560276.1166278659.107749>, [{"connection", "Upgrade"}, {"upgrade", "websocket"}, {"sec-websocket-accept", "B3lATybhy/kB+Qc+SG3BUqXSgyg="}, {"via", "1.1 vegur"}]}, {:data, #Reference<0.1996560276.1166278659.107749>, <<129, 42, 101, 99, 104, 111, 46, 119, 101, 98, 115, 111, 99, 107, 101, 116, 46, 101, 118, 101, 110, 116, 115, 32, 115, 112, 111, 110, 115, 111, 114, 101, 100, 32, 98, 121, 32, 76, 111, 98, 46, ...>>}, {:done, #Reference<0.1996560276.1166278659.107749>}]}
    (pulserail 0.1.0) lib/pulse_rail/client.ex:143: PulseRail.Client.handle_info/2
    (stdlib <IP_ADDRESS>) gen_server.erl:1123: :gen_server.try_dispatch/4
    (stdlib <IP_ADDRESS>) gen_server.erl:1200: :gen_server.handle_msg/6
    (stdlib <IP_ADDRESS>) proc_lib.erl:240: :proc_lib.init_p_do_apply/3
Last message: {:tcp, #Port<0.7>, <<72, 84, 84, 80, 47, 49, 46, 49, 32, 49, 48, 49, 32, 83, 119, 105, 116, 99, 104, 105, 110, 103, 32, 80, 114, 111, 116, 111, 99, 111, 108, 115, 13, 10, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 58, 32, 85, ...>>}
State: %{conn_info: {%Mint.HTTP1{host: "echo.websocket.events", port: 80, request: %{body: nil, connection: [], content_length: nil, data_buffer: [], headers_buffer: [], method: "GET", ref: #Reference<0.1996560276.1166278659.107749>, state: :status, status: nil, transfer_encoding: [], version: nil}, streaming_request: nil, socket: #Port<0.7>, transport: Mint.Core.Transport.TCP, mode: :active, scheme_as_string: "http", requests: {[], []}, state: :open, buffer: "", proxy_headers: [], private: %{extensions: [], scheme: :ws, sec_websocket_key: "gixABUrnEbPVK8oPcdBhwQ=="}, log: false}, #Reference<0.1996560276.1166278659.107749>, nil}, opts: [uri: %URI{scheme: "ws", userinfo: nil, host: "echo.websocket.events", port: 80, path: "/.ws", query: nil, fragment: nil}, http_opts: [protocols: [:http1], transport_opts: []]]}

Hi @xanderificnl - it looks like Mint.WebSocket.stream/2 is failing to match there where clause in Wind.setup/3, which then falls through and passes the failed match.  It looks like in this case the first stream request sends a {:data, ...} tuple in addition to the final {:done, ...}, which it doesn't expect.  I'll need to look into this a bit more to see what the best way to handle this is.  A quick patch would be to match on both and just discard the {:data, ...}, but of course that wouldn't be ideal in the long term given that the data message contains information we would want to pass along to the caller.

Hi @xanderificnl - it looks like Mint.WebSocket.stream/2 is failing to match the with clause in Wind.setup/3, which then falls through and passes the failed match. It looks like in this case the first stream request sends a {:data, ...} tuple in addition to the final {:done, ...}, which it doesn't expect. I'll need to look into this a bit more to see what the best way to handle this is. A quick patch would be to match on both and just discard the {:data, ...}, but of course that wouldn't be ideal in the long term given that the data message contains information we would want to pass along to the caller.

That issue may be specific to the implementation of echo.websocket.events since I wasn't able to replicate it with the Websocket endpoint of my local OpenHAB instance. What did you think about the no_verify option causing non-SSL connections to raise as bad arguments?

Ok, interesting.  I'll make a patch for this case at least and continue investigating.  It looks like it's sending a control character and then "*echo.websocket.events sponsored by Lob.com".

I can't seem to repro the issue above anymore now on master so I think the underlying issue may have been the one from here (https://github.com/bfolkens/wind/issues/2#issuecomment-1693390744), especially since the failing match in the error included that extra frame.  Can you try your test case again and see if it still fails?  I tried again with your repro code and it seems to work now with that patch.

Oh nevermind, I see what you're saying - the first error 🤦🏻

After some further investigation, I was able to reduce this down to the following failing code:
Mint.HTTP.connect(:http, "echo.websocket.events", 80, protocols: [:http1], transport_opts: [verify: :verify_none])

Which seems related to elixir-mint/mint#315. Based on how the Finch team handled it in sneako/finch#134, it seems we should drop the default TLS options when :http is used. Will prepare a patch shortly.

Yes, that's correct. I was going to send a PR, but it wasn't clear to me what the purpose was of the transport options. I assumed it was meant to skip SSL certificate validation, but the argument error seemingly came from gen_tcp and I wasn't able to find any reference to the verify option in Erlang's documentation.
Would you welcome extra test cases? I'm preparing them for my own project, but since they're so generic they could easily be ported to wind. One thing I noticed is that the test included with Wind passed because it was using connect() directly, thus bypassing the transport_opts.

Yes that would be fantastic, thanks!

I just noticed that you already added extra tests, and Mint's test suite is also very comprehensive, if I happen to encounter something or think of another test case, I'll send a PR!


Container color is wrong on Dell Precision laptops

Steps to Reproduce

Obtain a Dell Precision laptop.  I've reproduced this issue on both a Dell Precision 7730 (i7-8750H with 16GB of RAM) and a Dell Precision 5750 (i7-10750H with 32 GB of RAM)
Run flutter create bug
In main.dart, update the build method so that it immediately returns an amber Container as shown below:

class MyApp extends StatelessWidget {
  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return Container(color: Colors.amber);

Run the application in Chrome
As expected, Chrome will appear with an entirely amber screen.
Change the size of the Chrome window by grabbing the left edge with the mouse and resizing.  You'll see the amber window is replaced by mostly white with random pixels of amber.

Expected results:
The screen should've remained amber, like this.
Actual results:
The screen is mostly white with random amber pixels, like this.

Launching lib\main.dart on Chrome in debug mode...
lib\main.dart:1
This app is linked to the debug service: ws://<IP_ADDRESS>:61150/g5jE3oa1uko%3D/ws
Debug service listening on ws://<IP_ADDRESS>:61150/g5jE3oa1uko=/ws
 Running with sound null safety
Connecting to VM Service at ws://<IP_ADDRESS>:61150/g5jE3oa1uko=/ws

PS C:\temp\FlutterBug\bug> flutter run --verbose
[  +66 ms] executing: [C:\flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[ +126 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[   +1 ms] f4abaa0735eba4dfd8f33f73363911d63931fe03
[        ] executing: [C:\flutter/] git tag --points-at f4abaa0735eba4dfd8f33f73363911d63931fe03
[  +60 ms] Exit code 0 from: git tag --points-at f4abaa0735eba4dfd8f33f73363911d63931fe03
[        ] 2.2.3
[   +5 ms] executing: [C:\flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +50 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [C:\flutter/] git ls-remote --get-url origin
[  +46 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[ +115 ms] executing: [C:\flutter/] git rev-parse --abbrev-ref HEAD
[  +50 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +73 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +47 ms] executing: C:\Users\terence.darwen\AppData\Local\Android\sdk\platform-tools\adb.exe devices -l
[  +39 ms] List of devices attached
[   +4 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +2 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +60 ms] Multiple devices found:
[  +25 ms] Chrome (web) • chrome • web-javascript • Google Chrome 92.0.4515.159
[   +1 ms] Edge (web)   • edge   • web-javascript • Microsoft Edge 92.0.902.67
[   +1 ms] [1]: Chrome (chrome)
[        ] [2]: Edge (edge)
[   +1 ms] Please choose one (To quit, press "q/Q")
[        ] :
[+7791 ms] 1
[  +11 ms] Skipping pub get: version match.
[ +101 ms] Generating C:\temp\FlutterBug\bug\android\app\src\main\java\io\flutter\plugins\GeneratedPluginRegistrant.java
[  +83 ms] Launching lib\main.dart on Chrome in debug mode...
[ +104 ms] Updating assets
[  +65 ms] Waiting for connection from debug service on Chrome...
[  +91 ms] <- reset
[   +5 ms] C:\flutter\bin\cache\dart-sdk\bin\dart.exe --disable-dart-dev C:\flutter\bin\cache\artifacts\engine\windows-x64\frontend_server.dart.snapshot
--sdk-root C:\flutter\bin\cache\flutter_web_sdk/ --incremental --target=dartdevc --debugger-module-names --experimental-emit-debug-metadata
-DFLUTTER_WEB_AUTO_DETECT=true --output-dill C:\Users\TERENC~1.DAR\AppData\Local\Temp\flutter_tools.4b738a80\flutter_tool.4da15a22\app.dill --libraries-spec
file:///C:/flutter/bin/cache/flutter_web_sdk/libraries.json --packages C:\temp\FlutterBug\bug\.dart_tool\package_config.json -Ddart.vm.profile=false
-Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-root
C:\Users\TERENC~1.DAR\AppData\Local\Temp\flutter_tools.4b738a80\flutter_tools.b782e3cf --filesystem-scheme org-dartlang-app --initialize-from-dill
build\b1b715402d823b7fd5c2b68d2edcb2ce.cache.dill.track.dill --platform file:///C:/flutter/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk_sound.dill
--sound-null-safety
[  +13 ms] <- compile org-dartlang-app:/web_entrypoint.dart
[+13311 ms] Waiting for connection from debug service on Chrome... (completed in 13.4s)
[   +1 ms] Synced 28.2MB.
[   +1 ms] <- accept
[        ] Caching compiled dill
[ +612 ms] [CHROME]:
[   +1 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:64606/devtools/browser/d47c20ef-b809-4490-83a5-3d9b908a25eb
[ +225 ms] DwdsInjector: Received request for entrypoint at http://localhost:64594/main_module.bootstrap.js
[   +5 ms] MetadataProvider: Loading debug metadata...
[  +10 ms] MetadataProvider: Loaded debug metadata (sound null safety)
[   +5 ms] DwdsInjector: Injected debugging metadata for entrypoint at http://localhost:64594/main_module.bootstrap.js
[+1250 ms] ChromeProxyService: Initializing expression compiler for main_module.bootstrap.js with sound null safety: true
[  +58 ms] DevHandler: Debug service listening on ws://<IP_ADDRESS>:56423/geyFs4fWc6E=/ws

[  +21 ms] This app is linked to the debug service: ws://<IP_ADDRESS>:56423/geyFs4fWc6E=/ws
[   +7 ms] Debug service listening on ws://<IP_ADDRESS>:56423/geyFs4fWc6E=/ws
[        ]  Running with sound null safety
[   +3 ms]   To hot restart changes while running, press "r" or "R".
[        ] For a more detailed help message, press "h". To quit, press "q".

PS C:\temp\FlutterBug\bug> flutter analyze
Analyzing bug...

   info - Dead code - lib\main.dart:12:5 - dead_code

1 issue found. (ran in 1.9s)

PS C:\temp\FlutterBug\bug> flutter doctor -v
[√] Flutter (Channel stable, 2.2.3, on Microsoft Windows [Version 10.0.19043.1165], locale en-US)
    • Flutter version 2.2.3 at C:\flutter
    • Framework revision f4abaa0735 (8 weeks ago), 2021-07-01 12:46:11 -0700
    • Engine revision 241c87ad80
    • Dart version 2.13.4

[√] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at C:\Users\terence.darwen\AppData\Local\Android\sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Android Studio
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • android-studio-dir = C:\Program Files\Android\Android Studio
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)

[√] VS Code, 64-bit edition (version 1.59.1)
    • VS Code at C:\Program Files\Microsoft VS Code
    • Flutter extension version 3.25.0

[√] Connected device (2 available)
    • Chrome (web) • chrome • web-javascript • Google Chrome 92.0.4515.159
    • Edge (web)   • edge   • web-javascript • Microsoft Edge 92.0.902.67

• No issues found!

@tmdarwen Thanks for the details,

The issue does NOT happen on master. It works fine in Chrome, Edge, and Windows Desktop when on the master channel.

Since you are no longer experiencing the issue on the latest master channel this indicates the fix has landed on the master channel and should be available on the stable channel in the upcoming releases. You can read more about the flutter channels here
So I feel it's safe to close the issue, If you disagree feel free to write in the comments and I will reopen it.
Thank you.


Avoid spurious posix.df test failures when docker daemon running.

On Debian wheezy, the unit tests (and thus opam install) run by a non-root user fail because df exits with error 1 as it cannot access
/var/lib/docker/aufs.
From BROKEN Thu Dec  3 12:11:53 2015
Test-Case: posix.df
Test-Expected: WEXITED(0)
Test-Got: WEXITED(1)
Test-Outcome-Brief: ~
Test-Outcome: failed

$ df > /dev/null
df: `/var/lib/docker/aufs': Permission denied
$ echo $?
1

AFAICS the CI failure is not caused by this trivial patch, but by yojson 1.2.3 not being installable because https://opam.ocaml.org/archives/yojson.1.2.3+opam.tar.gz is missing.

Great, thanks!


couldn't parse the color string

<Shadow distance={10} radius={8} startColor={'#eb9066d8'} finalColor={'#ff00ff10'}>

Strange. Any error thrown?

Closing due to the lack of informations about this. You may send them here and I will reopen this issue.


gromacs parser

i am a beginner, can you guide me about this error, how should i fix it.
Traceback (most recent call last):
File "alchemical_analysis.py", line 1076, in
import parsers.parser_gromacs
ImportError: No module named parsers.parser_gromacs

dear Sir David L.Mobleyyes i installed setup.py (pymbar). this is my pythonpath:    /share/RDKit:/share/anaconda/bin
On Friday, January 1, 2016 6:21 AM, David L. Mobley<EMAIL_ADDRESS>wrote:

@sanasaeed : What platform was this on, and how did you install? Did you run the "python setup.py install", and what are the contents of your PYTHONPATH environment variable? It looks like you might just be trying to run alchemical_analysis.py without actually installing.—
Reply to this email directly or view it on GitHub.

Wait,  you installed pymbar? Or alchemical analysis AND pymbar? (These are
two different packages).
Also, the text you've quoted looks peculiar, in that there are missing
periods. Can you confirm that the below is exactly the error message you
get?

Traceback (most recent call last):

File "alchemical_analysispy", line 1076, in
import parsersparser_gromacs
ImportError: No module named parsersparser_gromacs
And, again, what platform is this on?

This has worked fine (and currently works fine!) for many of us under Linux
and OS X, so something is peculiar on your end and it's not immediately
obvious to me what it could be. I'm suspecting either an issue with what or
how you've installed, or with your environment (paths, etc). It doesn't
seem to be a problem with the package itself, unless it's a problem with
your platform (i.e. if you're in Windows, it's possible we may need to find
a Windows computer to test on...).
Thanks.
On Sun, Jan 3, 2016 at 4:01 PM, Sana Saeed<EMAIL_ADDRESS>wrote:

dear Sir David L.Mobleyyes i installed setup.py (pymbar). this is my
pythonpath:    /share/RDKit:/share/anaconda/bin
On Friday, January 1, 2016 6:21 AM, David L. Mobley <
<EMAIL_ADDRESS>wrote:
@sanasaeed : What platform was this on, and how did you install? Did you
run the "python setup.py install", and what are the contents of your
PYTHONPATH environment variable? It looks like you might just be trying to
run alchemical_analysis.py without actually installing.—
Reply to this email directly or view it on GitHub.
—
Reply to this email directly or view it on GitHub
https://github.com/MobleyLab/alchemical-analysis/issues/58#issuecomment-168556564
.

--
David Mobley
<EMAIL_ADDRESS>949-385-2436

oh sorry i just installed pymbar. and i am using alchemical-analysis.py without installing.
On Monday, January 4, 2016 9:23 AM, David L. Mobley<EMAIL_ADDRESS>wrote:

Wait, you installed pymbar? Or alchemical analysis AND pymbar? (These are
two different packages).
Also, the text you've quoted looks peculiar, in that there are missing
periods. Can you confirm that the below is exactly the error message you
get?

Traceback (most recent call last):

File "alchemical_analysispy", line 1076, in
import parsersparser_gromacs
ImportError: No module named parsersparser_gromacs
And, again, what platform is this on?

This has worked fine (and currently works fine!) for many of us under Linux
and OS X, so something is peculiar on your end and it's not immediately
obvious to me what it could be. I'm suspecting either an issue with what or
how you've installed, or with your environment (paths, etc). It doesn't
seem to be a problem with the package itself, unless it's a problem with
your platform (i.e. if you're in Windows, it's possible we may need to find
a Windows computer to test on...).
Thanks.
On Sun, Jan 3, 2016 at 4:01 PM, Sana Saeed<EMAIL_ADDRESS>wrote:

dear Sir David L.Mobleyyes i installed setup.py (pymbar). this is my
pythonpath: /share/RDKit:/share/anaconda/bin
On Friday, January 1, 2016 6:21 AM, David L. Mobley <
<EMAIL_ADDRESS>wrote:
@sanasaeed : What platform was this on, and how did you install? Did you
run the "python setup.py install", and what are the contents of your
PYTHONPATH environment variable? It looks like you might just be trying to
run alchemical_analysis.py without actually installing.—
Reply to this email directly or view it on GitHub.
—
Reply to this email directly or view it on GitHub
https://github.com/MobleyLab/alchemical-analysis/issues/58#issuecomment-168556564
.

--
David Mobley
<EMAIL_ADDRESS>949-385-2436
—
Reply to this email directly or view it on GitHub.

Thank you
i installed alchemical_analysis and it worked perfectly
Regards


RM3 expanded queries

Hi,
Could you please let me know if there is a way to get the expanded queries using Anserini RM3 implementation.
I managed to retrieve passages of the MSmacro dataset by setting -rm3 as a parameter but what I need is the expanded queries themselves.

See: https://github.com/castorini/anserini/blob/master/src/main/java/io/anserini/rerank/lib/Rm3Reranker.java#L62
There's a outputQuery flag to print out queries.

Thanks.
Since I am using searchMsmacro I modifed the 'false' parameter to 'true' in the below part of code and I did not get any output

Then I modifed the file you mentioned above where I set the outputQuery to 'true' still did not work

am I supposed to get the outputs in logs folder ?

Thanks. Solved by updating Rm3Reranker.java

Currently, the default option is set to false, how to change it true in command line ? (command line argument is true/false or 1/0)

Never mind, I just realized providing -rm3.outputQuery argument enables it.


Crashes and nipype.workflow ERROR

What happened?
Hi, after I finished running conf_plot I encountered the following errors
2024-11-14 15:06:00,862 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.dvars
241114-15:06:00,872 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.tcompcor
2024-11-14 15:06:00,872 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.tcompcor
241114-15:06:00,875 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.crowncompcor
2024-11-14 15:06:00,875 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.crowncompcor
241114-15:06:00,878 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.acompcor
2024-11-14 15:06:00,878 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.acompcor

Node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.dvars
Working directory: /scratch/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_confounds_wf/dvars

Node inputs:

figdpi = 100
figformat = png
figsize = (11.7, 2.3)
in_file = <undefined>
in_mask = <undefined>
intensity_normalization = 1000.0
remove_zerovariance = True
save_all = False
save_nstd = True
save_plot = False
save_std = True
save_vxstd = False
series_tr = <undefined>
variance_tol = 1e-07

Traceback (most recent call last):
  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/pipeline/plugins/multiproc.py", line 67, in run_node
    result["result"] = node.run(updatehash=updatehash)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 527, in run
    result = self._run_interface(execute=True)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 645, in _run_interface
    return self._run_command(execute)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/pipeline/engine/nodes.py", line 771, in _run_command
    raise NodeExecutionError(msg)
nipype.pipeline.engine.nodes.NodeExecutionError: Exception raised while executing Node dvars.

Traceback:
	Traceback (most recent call last):
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/interfaces/base/core.py", line 397, in run
	    runtime = self._run_interface(runtime)
	              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/algorithms/confounds.py", line 171, in _run_interface
	    dvars = compute_dvars(
	            ^^^^^^^^^^^^^^
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nipype/algorithms/confounds.py", line 1049, in compute_dvars
	    func = np.float32(nb.load(in_file).dataobj)
	           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nibabel/arrayproxy.py", line 457, in __array__
	    arr = self._get_scaled(dtype=dtype, slicer=())
	          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nibabel/arrayproxy.py", line 424, in _get_scaled
	    scaled = apply_read_scaling(self._get_unscaled(slicer=slicer), scl_slope, scl_inter)
	                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nibabel/arrayproxy.py", line 394, in _get_unscaled
	    return array_from_file(
	           ^^^^^^^^^^^^^^^^
	  File "/opt/conda/envs/fmriprep/lib/python3.11/site-packages/nibabel/volumeutils.py", line 465, in array_from_file
	    n_read = infile.readinto(data_bytes)
	             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
	  File "indexed_gzip/indexed_gzip.pyx", line 804, in indexed_gzip.indexed_gzip._IndexedGzipFile.readinto
	indexed_gzip.indexed_gzip.ZranError: zran_read returned error: ZRAN_READ_FAIL (file: /scratch/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_native_wf/boldref_bold/sub-01_task-read_run-1_bold_tshift_xformresampled.nii.gz)

What command did you use?
fmriprep-docker L1Data /Volumes/Elements/L1Data_output participant -w /Volumes/Elements/L1Data_processing --participant-label 01 --fs-license-file /Users/qiyu/FREESURFER_HOME/license.txt --mem 12 --nthreads 4 --fs-no-reconall --output-space MNI152NLin2009cAsym
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
RUNNING: docker run --rm -e DOCKER_VERSION_8395080871=27.3.1 -it -v /Users/qiyu/FREESURFER_HOME/license.txt:/opt/freesurfer/license.txt:ro -v /Users/qiyu/L1Data:/data:ro -v /Volumes/Elements/L1Data_output:/out -v /Volumes/Elements/L1Data_processing:/scratch nipreps/fmriprep:24.1.1 /data /out participant --participant-label 01 --mem 12 --nthreads 4 --fs-no-reconall -w /scratch --output-spaces MNI152NLin2009cAsym

What version of fMRIPrep are you running?
24.1.1
How are you running fMRIPrep?
Docker
Is your data BIDS valid?
Yes
Are you reusing any previously computed results?
No
Please copy and paste any relevant log output.
241114-15:05:58,336 nipype.workflow INFO:
	 [Node] Finished "conf_plot", elapsed time 2.8613150000000003s.
2024-11-14 15:05:58,336 [    INFO] [Node] Finished "conf_plot", elapsed time 2.8613150000000003s.
241114-15:06:00,862 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.dvars
2024-11-14 15:06:00,862 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.dvars
241114-15:06:00,872 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.tcompcor
2024-11-14 15:06:00,872 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.tcompcor
241114-15:06:00,875 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.crowncompcor
2024-11-14 15:06:00,875 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.crowncompcor
241114-15:06:00,878 nipype.workflow ERROR:
	 could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.acompcor
2024-11-14 15:06:00,878 [   ERROR] could not run node: fmriprep_24_1_wf.sub_01_wf.bold_task_read_run_1_wf.bold_confounds_wf.acompcor
2024-11-14 15:06:01,080 [ WARNING] WARNING: sentry_sdk.push_scope is deprecated and will be removed in the next major version. Please consult our migration guide to learn how to migrate to the new API: https://docs.sentry.io/platforms/python/migration/1.x-to-2.x#scope-pushing
2024-11-14 15:06:01,104 [ WARNING] WARNING: sentry_sdk.push_scope is deprecated and will be removed in the next major version. Please consult our migration guide to learn how to migrate to the new API: https://docs.sentry.io/platforms/python/migration/1.x-to-2.x#scope-pushing
2024-11-14 15:06:01,130 [ WARNING] WARNING: sentry_sdk.push_scope is deprecated and will be removed in the next major version. Please consult our migration guide to learn how to migrate to the new API: https://docs.sentry.io/platforms/python/migration/1.x-to-2.x#scope-pushing
2024-11-14 15:06:01,151 [ WARNING] WARNING: sentry_sdk.push_scope is deprecated and will be removed in the next major version. Please consult our migration guide to learn how to migrate to the new API: https://docs.sentry.io/platforms/python/migration/1.x-to-2.x#scope-pushing
241114-15:06:01,168 nipype.workflow CRITICAL:
	 fMRIPrep failed: 4 raised. Re-raising first.
2024-11-14 15:06:01,168 [CRITICAL] fMRIPrep failed: 4 raised. Re-raising first.

Additional information / screenshots
No response

I'm also curious about how to resume the preprocessing if it hangs, and I would like to run it in a new terminal. I referred to this guide: https://fmriprep.org/en/stable/faq.html#can-fmriprep-continue-to-run-after-encountering-an-error
To try this, I ran the following command that included the path to my working directory:
fmriprep-docker L1Data /Volumes/Elements/L1Data_output participant -w /Volumes/Elements/L1Data_processing --participant-label 01 --fs-license-file /Users/qiyu/FREESURFER_HOME/license.txt --mem 12 --nthreads 4 --fs-no-reconall --output-space MNI152NLin2009cAsym
But it ended up fetching old files from a previous run and reported a StopIteration error

I would guess that you're running out of space in your scratch directory so you have a truncated file. Can you try reading the whole file /Volumes/Elements/L1Data_processing/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_native_wf/boldref_bold/sub-01_task-read_run-1_bold_tshift_xformresampled.nii.gz?
You can use miniqc:
uvx miniqc /Volumes/Elements/L1Data_processing/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_native_wf/boldref_bold/sub-01_task-read_run-1_bold_tshift_xformresampled.nii.gz

Thank you, @effigies
I got a ZranError
(base) qiyu@transfinite ~ % miniqc /Volumes/Elements/L1Data_processing/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_native_wf/boldref_bold/sub-01_task-read_run-1_bold_tshift_xformresampled.nii.gz
[
  [
    "/Volumes/Elements/L1Data_processing/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_native_wf/boldref_bold/sub-01_task-read_run-1_bold_tshift_xformresampled.nii.gz",
    "ZranError",
    "zran_seek returned error: ZRAN_SEEK_FAIL (file: /Volumes/Elements/L1Data_processing/fmriprep_24_1_wf/sub_01_wf/bold_task_read_run_1_wf/bold_native_wf/boldref_bold/sub-01_task-read_run-1_bold_tshift_xformresampled.nii.gz)"
  ]
]

Try using an environment that does not have indexed_gzip installed. If you use pipx or uvx, it will install into a one-off environment.

Thank you! The issue is fixed.
I have one more question

I'm also curious about how to resume the preprocessing if it hangs, and I would like to run it in a new terminal. I referred to this guide: https://fmriprep.org/en/stable/faq.html#can-fmriprep-continue-to-run-after-encountering-an-error
To try this, I ran the following command that included the path to my working directory:
fmriprep-docker L1Data /Volumes/Elements/L1Data_output participant -w /Volumes/Elements/L1Data_processing --participant-label 01 --fs-license-file /Users/qiyu/FREESURFER_HOME/license.txt --mem 12 --nthreads 4 --fs-no-reconall --output-space MNI152NLin2009cAsym
But it ended up fetching file (named such as "20241114-125020_41f8fe77-2ff2-4ec7-8720-0a66cf0605e3") from the initial run, and reported a StopIteration error
Thank you for your help


openInbox methods not working in android devices

Latest version not opening the openInbox methods ?
any reason. most of samsung devices

Same issue here!

Updated version from 1.8.2 to the latest one - seems to have done the job!


localized-openstreetmap example broken

http://openlayers.org/en/v3.13.0/examples/localized-openstreetmap.html
zoom in and out

Could this be related to https://github.com/openlayers/ol3/issues/4763?

Yes, maybe. They both uses a ol.source.OSM with a custom url

That's because the OpenSeaMap tiles are transparent but the ol.source.OSM is always opaque


Add link to repo from demo

Google took me to http://joernweissenborn.github.io/lcars/, but it doesn't have a link to https://github.com/joernweissenborn/lcars

Also I'd love to show you how I used this to make something cool. I couldn't find a twitter or any way to contact you.

Hi, Sorry for the late reply. I would really love to see what you did with it!
Thanks for the hint with the link, I will add one.

Here it is!


[Autocomplete] Add popperDisablePortal to classes

Resolves #18305

[x] I have followed (at least) the PR section of the contributing guide.

Much appreciated, thanks!


[Bug?]: Vite always re-optimises all dependencies when launching dev server

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Current behavior 😯
Running vinxi dev will cause Vite to re-optimise all dependencies, even those that it has previously optimised.
Expected behavior 🤔
Dependencies that were previously optimised shouldn't be re-optimised
Steps to reproduce 🕹
Steps:

Clone https://github.com/brendonovich/macrograph
pnpm install
pnpm web dev and go to http://localhost:4321
Kill pnpm web dev
Repeat steps 3 & 4 a few times
Notice that vite re-optimised deps such as @solid-primitives/* and @koblate/core every time, ignoring caching

Context 🔦
My project has quite a few dependencies to optimise, so this bug makes the dev server's startup time pretty large.
I think this may be a bug in Vinxi, as there's a couple of places (1, 2) where opimtizeDeps is forced.
Your environment 🌎
No response

those are applied during build. yeah ill have to see whats happening.

I think this may be a bug in Vinxi, as there's a couple of places (1, 2) where opimtizeDeps is forced.

Comments force: true Not helpful

@nksaraf Is it possible to raise the priority of this issue?   I'm using ark-ui and every time I change the browser it shows a 30M js file loaded 😅

Yeah I spent some time looking at this and wasn't at first pass able to find where the optimizeDeps is happening again. Ill look again this weekend

It seems that all solid libraries have this problem, they all haves source/**/*.jsx in their dist, and for the time being I can only prebuild packages like lucide-solid into a single file, and set the resolve.alias in the vite, otherwise every reload is DDoS'ing the disk! and I have to wait tens of seconds.

It seems that all solid libraries have this problem, they all haves source/**/*.jsx in their dist, and for the time being I can only prebuild packages like lucide-solid into a single file, and set the resolve.alias in the vite, otherwise every reload is DDoS'ing the disk! and I have to wait tens of seconds.

Not necessarily related to this issue but the whole package being loaded has more to do with how vite loads kobalte and ark, see this kobalte issue

@Brendonovich , the repro is now quite far behind the latest versions of solid-start / vinxi / solid-router. Would you be able to update it?

In my experiments, full overloads are rarely (if ever) triggered in 0.6.0, and have little or no impact on the development experience.

@birkskyum I've updated all those deps and I'm not getting the optimize deps log anymore, might be fixed now.

Excellent, thanks, I'll try the repro again later today and see if I get the same outcome.

Awesome


runtime: sysmon doesn't force GC after two minutes

At latest tip, runtime.sysmon doesn't successfully force a GC every two minutes. It prints a "GC forced" line to the log (when running with GODEBUG=gctrace=1), but it does not cause a GC to occur.
I expected several GCs near 0 seconds, a single "GC forced" line followed by a GC near 120 seconds, and then more GCs near 125 seconds.
@aclements
$ go version
go version devel +e019767 Wed Aug 5 00:52:00 2015 +0000 darwin/amd64

package main

import (
	"log"
	"time"
)

var global []byte

func main() {
	log.SetFlags(0)
	log.Printf("begin")

	for i := 0; i < 20; i++ {
		global = make([]byte, 1<<20)
	}

	time.Sleep(2*time.Minute + 5*time.Second)

	for i := 0; i < 20; i++ {
		global = make([]byte, 1<<20)
	}

	log.Printf("end")
}

$ GODEBUG=gctrace=1 ./sleep
begin
gc 1 @0.007s 2%: 0.18+0.11+0+0.33+0.25 ms clock, 0.55+0.11+0+0.007/0.033/0.027+0.77 ms cpu, 6->9->4 MB, 4 MB goal, 8 P
gc 2 @0.008s 3%: 0.036+0.43+0.031+0.040+0.063 ms clock, 0.21+0.43+0+0.042/0/0.002+0.38 ms cpu, 5->6->2 MB, 4 MB goal, 8 P
gc 3 @0.010s 3%: 0.006+0.40+0.39+0.39+0.092 ms clock, 0.053+0.40+0+0/0.019/0.050+0.73 ms cpu, 4->7->4 MB, 6 MB goal, 8 P
gc 4 @0.012s 4%: 0.017+0.096+0.028+0.058+0.093 ms clock, 0.13+0.096+0+0.019/0/0.030+0.75 ms cpu, 5->6->3 MB, 2 MB goal, 8 P
gc 5 @0.012s 5%: 0.017+0.095+0.12+0.049+0.083 ms clock, 0.13+0.095+0+0/0/0.046+0.66 ms cpu, 4->5->3 MB, 4 MB goal, 8 P
GC forced
GC forced
GC forced
GC forced
GC forced
GC forced
gc 6 @125.014s 0%: 0.93+0.37+0.002+0.051+0.11 ms clock, 7.4+0.37+0+0.16/0.002/0.001+0.94 ms cpu, 4->4->2 MB, 4 MB goal, 8 P
gc 7 @125.017s 0%: 0.014+0.85+0.001+0.059+0.11 ms clock, 0.11+0.85+0+0.005/0.016/0.078+0.88 ms cpu, 4->5->2 MB, 4 MB goal, 8 P
gc 8 @125.019s 0%: 0.009+0.13+0.005+0.041+0.086 ms clock, 0.072+0.13+0+0.005/0/0.053+0.68 ms cpu, 4->5->2 MB, 4 MB goal, 8 P
gc 9 @125.020s 0%: 0.007+0.13+0.001+0.043+0.12 ms clock, 0.059+0.13+0+0/0.002/0.074+0.98 ms cpu, 4->5->3 MB, 4 MB goal, 8 P
gc 10 @125.021s 0%: 0.017+0.11+0.005+0.044+0.079 ms clock, 0.13+0.11+0+0/0.001/0.058+0.63 ms cpu, 4->5->3 MB, 4 MB goal, 8 P
gc 11 @125.021s 0%: 0.008+0.098+0.005+0.043+0.11 ms clock, 0.064+0.098+0+0/0.001/0.076+0.94 ms cpu, 4->5->3 MB, 4 MB goal, 8 P
gc 12 @125.022s 0%: 0.006+0.096+0.006+0.041+0.070 ms clock, 0.053+0.096+0+0/0/0.044+0.56 ms cpu, 4->5->3 MB, 4 MB goal, 8 P
gc 13 @125.022s 0%: 0.006+0.080+0.016+0.037+0.071 ms clock, 0.054+0.080+0+0.019/0/0.029+0.57 ms cpu, 4->5->2 MB, 4 MB goal, 8 P
end

Darn. I broke sysmon GC with 88e945f. Working on an alternate fix (and seeing if I can construct a test).

Thanks for finding this. I've posted a fix plus a test that should ensure we don't break periodic GC in such an obvious way again: https://go-review.googlesource.com/13168.


3D rendering debug view

3D view for debugging the output of an L-system rendered into a 3D object using SceneKitRenderer.

enable control that shows, and allows for, stepping through the entire state sequence to add in the nodes into 3D under user control, rather than all at once.

as a baseline, maybe a stepper, but the L-system state size gets pretty darn huge (1000's -> 1,000,000's pretty quick) - so something where you can drag an interactive slider - or use held-down-key controls to indicate rapid movement as well as fine grained control would be useful.

enable some coloring or highlighting options that can show the generation of a given state element (what iteration revolution is was created upon)
allow the visualization, and then selection, of the state sequence and which that corresponds to within the tree.
given a static element that doesn't change with further generations, allow a means of showing the difference of the "new growth" segment that can appear right after with a sort of highly localized "diff state" view between two evolutions.
consider creating, and embedding, a unique ID with each state element so that the 3D object can be queried and manipulated after generation for highlighting based on the index of the original state array.
enable a 3D component that shows the current "state" direction and heading
look into how hard it would be to show rotation operations as animated updates to the current state 3D indicator, so you can see what rotation is actually happening
enable the evolution to be controlled in this view so that you can selectively move forward (and backward) in iterations.
enable parameter value application prior to evolution, and resetting or controlling the RND seed element from the master debug view.

So idea of capturing the generation of the module is neat, as I've learned (the hard way) doesn't work with Module being an existential value type. There isn't a way within swift to both use a Value type and have "basic inherited values and functions" - that's when you'd generally choose to use a subclass.
I think it's more useful to keep it as a value type that's copied or moved around when needed, and no switch it up to a reference type with mutable state, just to enable this capability.
If the rules were Generic types and not just existentials (in how LSystems use them), that could work - but it adds a lot more mental overhead for someone just using the LSystems.
I could track iteration numbers within the L-system (ends up copying values around as they evolve, since it's an explicit value type as well) and make those numbers available to specific produce closures that a developer writes so that they can include the detail, but that also seems intrusive and minimally valuable.
What is perhaps more interesting is "what didn't get touched" and "what's new" from the last iteration, which is something that an L-system might be able to track independent of the detail in the modules - an array of booleans, same length as the state - that's generated during the evolve function and stored alongside the current state.

WIP on the view (iPad)

:

In action: https://youtu.be/qmtbgPZzJtc


ARTEMIS-2029 Fixing wire checks after reconnects

It's good now.. I found a change I added by mistake

Looks like compatibility tests are failing.

Yeah.  I will fix it later today.

It’s a simple fix. I will have to adjust counts.
As for everything else. Do u think this is ok ?

Seems OK.  I would have thought that the channelVersion would get set when the session was re-created on the backup (e.g. in org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQPacketHandler#handleCreateSession), but I guess that's not being called?

@jbertram it's not.. there's a different packet on reconnect sessions. So that's not called.


make getter functions for qpos / qvel return copies

Description
Fixes #133 where getter functions for qpos / qvel return views instead of copies of the simulator data structure. If a user modifies these views, they will modify the simulator data as well, which is likely unintentional.
Note: I did not see a CONTRIBUTING.md in the main branch, so I was unable to do the checklist below. Please let me know how to proceed there.
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist:

[x] I have run the pre-commit checks with pre-commit run --all-files (see CONTRIBUTING.md instructions to set it up)
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

This repo uses the Gymansium CONTRIBUTING.md

Also use pytest to see if anything breaks

Ran pytest, things seem fine aside from warnings.

The Warnings are fine.
@rodrigodelazcano merge?


Seamless authentication in Azure AD IdP

What is missing from the application?
When using SFDC and Tableau with Azure AD IdP, the user login SFDC will get a pop up to authenticate with Tableau.
Describe the solution you'd like
We would like a seamless authentication for end user to not have to login in both SFDc and Tableau pop-up.
Describe alternatives you've considered
Can you enable Trusted ticket authentication maybe ? or any other solution.
Additional context
We are seriously considering moving away from Tableau.

Tableau Viz LWC is being Archived
All outstanding PRs and Issues are being addressed and closed. Please migrate to the new Tableau View LWC.
For more information, please see the README

@mbossanwest  Good news! The new Tableau View LWC supports token authentication to Tableau, eliminating the need to sign into Tableau once you've authenticated to Salesforce.


[Feature Request] Simple scene as a loading screen / boot splash

Now there is only and option to load a simple picture as a splash screen. How about using some fair simple scene - with some lightweight animations and so on. Do you think that this is to much?

Actually you can disable splash screen and set you intro scene as main scene and it will play automatically.

As the splash screen is shown during startup, before the engine is set up, I think it's impossible to use a scene for it.

yes this is a non-issue


unable to connect to ssl://gateway.push.apple.com:2195

Hi, i have followed all the steps properly and added everything as said in docs. But when i try to send notification from my backend i got this error, unable to connect to ssl://gateway.push.apple.com:2195  I have searched this but didn't get resolved. Can u please guide why is this so?

Hi @hasyapanchasara  i have followed your steps and created pem file and than added on my server side but when i try to send notification it shows the above error, i have check the validation of pem file through this link, http://apns-gcm.bryantan.info which shows me that pem file is successfully valid. But i'm getting same error.


MVP: Display full access keys in dashboard

Fixes https://github.com/nearprotocol/near-wallet/issues/146 as well

I think we should move the Full Access Key list to /profile. It's not something user's will need to deal with very often, and we'll need to make it clear that creating and deleting full access keys has important consequences. Thoughts @jakestutzman?

I think we should move the Full Access Key list to /profile. It's not something user's will need to deal with very often, and we'll need to make it clear that creating and deleting full access keys has important consequences. Thoughts @jakestutzman?

the whole thing needs a lot of work before it's decent UX. It's not even really following mockups from Jake, as most info needed for this is still not available.
for now I want to have some quick MVP to allow me plug in Ledger into the system, I'll work on UX more deeply separately from that

I think we should move the Full Access Key list to /profile. It's not something user's will need to deal with very often, and we'll need to make it clear that creating and deleting full access keys has important consequences. Thoughts @jakestutzman?

the whole thing needs a lot of work before it's decent UX. It's not even really following mockups from Jake, as most info needed for this is still not available.
for now I want to have some quick MVP to allow me plug in Ledger into the system, I'll work on UX more deeply separately from that

Fair enough. Looks good to me then

Let’s sync up on this when I’m in the office next week
Sent via Mobile

From: Kendall Cole<EMAIL_ADDRESS>Sent: Friday, September 27, 2019 6:07 PM
To: nearprotocol/near-wallet
Cc: Jake Stutzman; Mention
Subject: Re: [nearprotocol/near-wallet] MVP: Display full access keys in dashboard (#151)
@kcole16 approved this pull request.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/nearprotocol/near-wallet/pull/151?email_source=notifications&email_token=AAALOBVRWZ463TMCLDA4SR3QL2G2VA5CNFSM4I2W5HAKYY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCGHTMEY#pullrequestreview-294598163, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAALOBS2XJ4XYZS3NYUOM5LQL2G2VANCNFSM4I2W5HAA.


Add support for Azure Blob storage service

I have refactored the bcbio.distributed.objectstore in order to ease the future adding of one storage service.
For each storage service will be required one StorageManager and one FileHandle.
The StorageManager is an interface which can ease the interaction with the storage service and is  exposing the following methods:

    def check_resource(self, resource):
        """Check if the received resource can be processed by
        the current storage manager.
        """
        pass

    def parse_remote(self, filename):
        """Parse a remote filename in order to obtain information
        related to received resource.
        """
        pass

    def connect(self, resource):
        """Return a connection object pointing to the endpoint
        associated to the received resource.
        """
        pass

    def download(self, filename, input_dir, dl_dir=None):
        """Download the resource from the storage."""
        pass

    def list(self, path):
        """Return a list containing the names of the entries in the directory
        given by path. The list is in arbitrary order.
        """
        pass

    def open(self, filename):
        """Provide a handle-like object for streaming."""
        pass

And the FileHandle is a handle-like object which facilitates interaction with the remote file.
This patch contains the StorageManager and the FileHandle for:

Amazon Simple Storage Service (Amazon S3)
Azure Blob storage service

Thanks,
Alex

Alex -- thanks much for this. We're hoping to roll out a new release in the next couple of days, and then we can pull this in and test for the following release. Much appreciated -- this is great work.

Alex, thanks again for this and the other cloud generalization work.


Intel Killer 2.5G LAN wired network doesn’t work after 44.1 update

Hello, after updating to 44.1 wired network card stopped working. It’s Killer 2.5G LAN card (B650E PG-ITX WiFi). WIFI and bluetooth still works. I can see only „Virtual” connection…

I stopped using this distro, so can’t tell if it’s still the issue. Sorry.


Program has more than one entry point defined. Compile with /main to specify the type that contains the entry point.

Hi, I'm new to VSC and C#. I have created two test scripts that go like this:
First One:
using System;
namespace ForIteratioin
{
class ForIteratioin
{
static void Main5(string[] args)
{
Console.WriteLine("Hi");
Console.ReadLine();
}
}

}
Second One:
using System;
namespace C
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hi");
Console.WriteLine("Input your name here: ");
string FIRSTNAME;
FIRSTNAME = Console.ReadLine();
Console.WriteLine("Your name is " + FIRSTNAME + "!");
Console.ReadLine();
}
}
}
When I try to compile it shows me this: Program has more than one entry point defined. Compile with /main to specify the type that contains the entry point. How can I fix?

@BrokeBoy123 while creating test projects for dotnet core, we implicitly add main functions to them. There is an inherit requirement for the test projects to be compiled as OutputType = "exe", to generate all the required dependencies, else the platform can fail to run the test.
In your sample code I don't see that you are using any test framework to actually write the test, if you use mstest, you can simply move your code in Main, to other methods.

@BrokeBoy123 please try what Mayank suggested. I will go ahead and close the issue now. if you have more question do open another issue


Setting FLOAT_PRECISION properly

I'm new to CMake so I'm not entirely sure if this is the best solution, I was running into issues with real_t not being set correctly on my project.
I fixed it by putting this in the main CMakeLists.txt  and then using the following env when using cmake -B:
-DFLOAT_PRECISION=double
if ("${FLOAT_PRECISION}" STREQUAL "double")
	add_definitions(-DREAL_T_IS_DOUBLE)
endif()

Thanks so much for this project, it's been massively helpful.

Thanks Brian! Good catch - I've never used the doubles version of Godot, so it hadn't occurred to me.
I'll take a look and add something for this in my next release.

I submitted a fix to godot-cpp to resolve this.
https://github.com/godotengine/godot-cpp/pull/1145
The correct solution is to add the define to the godot-cpp target using public target_compile_definitions. Then when that target is used, the define will come along for the ride...


fix Wrong last glucose level mmol/l #62

fixed conversion from mgdl to mmol

Nice, you just beated me to it.


Change favicon to POOPS branding

Basic Information

[ ] Change favicon to POOPS branding

POOPS branding can be found here
you can generate your own from here then replace the whole /public/favicon folder
Other Information
Potential scopes:

you can generate your own from here then replace the whole /public/favicon folder


Allow an optional start_day argument for Time#at_beginning_of_week

Closes https://github.com/crystal-lang/crystal/issues/13447
Currently when using Time#at_beginning_of_week it assumes the start of the week to be Monday. This works great for many use cases but sometimes we may want to assume the beginning of the week as another day (e.g. Sunday is also commonly considered to be "the beginning of the week")
~I've opted to allow this in 2 forms: With a Time::DayOfWeek which is type safe and for convenience, a String or Symbol that raises an ArgumentError if an invalid value is passed~
EDIT: @Blacksmoke16 pointed out here that we can leverage Symbol autocasting for enum members and avoid the overload altogether
Time.local.at_beginning_of_week # => 2023-05-08 00:00:00 +00:00
Time.local.at_beginning_of_week(Time::DayOfWeek::Sunday) # => 2023-05-07 00:00:00 +00:00
Time.local.at_beginning_of_week(:sunday) # => 2023-05-07 00:00:00 +00:00

This kind of functionality is provided by Rails which is where I got the inspiration from https://api.rubyonrails.org/classes/DateAndTime/Calculations.html#method-i-beginning_of_week
If we decide this is worth having in the standard library I'd also be more than happy to implement it for Time#at_end_of_week in this PR or a separate one as well :)
Docs
Current

After this PR

Thanks!

Due to https://crystal-lang.org/reference/1.8/syntax_and_semantics/autocasting.html#symbol-autocasting, I' probably be in favor of dropping support for String and just leverage the Eum + Symbol autocasting. Then wouldn't even need the extra overload.

Due to crystal-lang.org/reference/1.8/syntax_and_semantics/autocasting.html#symbol-autocasting, I'd probably be in favor of dropping support for String and just leverage the Enum plus Symbol autocasting. Then wouldn't even need the extra overload.

That's awesome! Thanks for pointing that out. I'll put a commit together now

Thanks for your contribution, @DanielGilchrist. 🙇
It's very appreciated that you take the initiative. Experience tells that discussions about feature enhancements are better discussed independently of a concrete implementation. Because of this, the contribution guide asks to open an issue before sending a pull request.
Now we already have PR and that's great. I'd still ask you to open an issue to propose this change (you can basically take the PR description for that), so we can discuss the feature there.
So long this PR can stay open (ideally in draft mode) and we'll get back here when the feature addition is agreed upon.

Thanks for your contribution, @DanielGilchrist. 🙇 It's very appreciated that you take the initiative. Experience tells that feature enhancements are better discussed independently of a concrete implementation. Because of this, the contribution guide asks to open an issue before sending a pull request.
Now we already have PR and that's great. I'd still ask you to open an issue to propose this change (you can basically take the PR description for that), so we can discuss the feature there. So long this PR can stay open (ideally in draft mode) and we'll get back here when the feature addition is agreed upon.

Thank you for your response and apologies for not reading the contribution guide thoroughly enough 😅 I'll make sure to give it a good read for future contributions
I'll put this PR into draft mode and make an issue now :)
Thanks!

https://github.com/crystal-lang/crystal/pull/13446 has had a couple of upvotes (including from two Core Team members), so I think we're good to move on. Sorry for the inconvenience and thanks for following along🙇
This was luckily an uneventful proposal process =)
Simplifying the documentation as suggested in https://github.com/crystal-lang/crystal/pull/13446#discussion_r1187927855 would be good. Then this should be ready to roll.

#13446 has had a couple of upvotes (including from two Core Team members), so I think we're good to move on. Sorry for the inconvenience and thanks for following along🙇 This was luckily an uneventful proposal process =)

No worries and thank you for your time!

Simplifying the documentation as suggested in #13446 (comment) would be good. Then this should be ready to roll.

I've addressed the remaining comments and relevant specs are passing locally let me know if there are any other changes required before merge :~)


Check webhooks

Please ignore this, I am just using the repo for testing on my forked and did the pr here by accident.


[FX-6025] Fix micromatch vulneralility

FX-6025
Description
I used resolutions because investigating yarn.lock I found out that it<EMAIL_ADDRESS>in the end was the reason for having micromatch of version 3.1.10. Installed version of @storybook/react was already the highest possible - 6.5.16. The next highest is version 7, and we can't update to this version right now. Attempts to reinstall the chain of parents leading from mistatch to @storybook/react also did not work.
But I cant be 100% sure that some other way can be used instead of resolution.
How to test

Temploy

Development checks

~Add changeset according to guidelines (if needed)~
~Double check if picasso-tailwind-merge requires major update (check its README.md)~
~Read CONTRIBUTING.md and Component API principles~
~Make sure that additions and changes on the design follow Toptal's BASE design, and it's been already discussed with designers at #-base-core~
~Annotate all props in component with documentation~
~Create examples for component~
~Ensure that deployed demo has expected results and good examples~
~Ensure the changed/created components have not caused accessibility issues. How to use accessibility plugin in storybook.~
[x] Self reviewed
~Covered with tests (visual tests included)~

Breaking change

~codemod is created and showcased in the changeset~
~test alpha package of Picasso in StaffPortal~

All development checks should be done and set checked to pass the
GitHub Bot: TODOLess action

PR commands

List of available commands:

@toptal-bot run package:alpha-release - Release alpha version
@toptal-anvil ping reviewers - Ping FX team for review

PR Review Guidelines

When to approve? ✅
You are OK with merging this PR and

You have no extra requests.
You have optional requests.

Add nit: to your comment. (ex. nit: I'd rename this variable from makeCircle to getCircle)

When to request changes? ❌
You are not OK with merging this PR because

Something is broken after the changes.
Acceptance criteria is not reached.
Code is dirty.

When to comment (neither ✅ nor ❌)
You want your comments to be addressed before merging this PR in cases like:

There are leftovers like unnecessary logs, comments, etc.
You have an opinionated comment regarding the code that requires a discussion.
You have questions.

How to handle the comments?

An owner of a comment is the only one who can resolve it.
An owner of a comment must resolve it when it's addressed.
A PR owner must reply with ✅ when a comment is addressed.

@toptal-anvil ping reviewers


Cannot borrow *req as a mutable

Hello folks,
I'm trying to use a middleware that I wrote and the params crate, but if I try to use req more than once the compiler complains:
cargo run
   Compiling rustbr v0.1.0 (file:///Users/alanhoff/Projects/rustbr)
src/resources/user.rs:16:23: 16:26 error: cannot borrow `*req` as mutable because `req.extensions` is also borrowed as immutable [E0502]
src/resources/user.rs:16     let mut payload = req.get_ref::<Params>();
                                               ^~~
src/resources/user.rs:15:26: 15:40 note: immutable borrow occurs here
src/resources/user.rs:15     let mut connection = req.extensions.get::<db::Database>().unwrap();
                                                  ^~~~~~~~~~~~~~
src/resources/user.rs:21:1: 21:2 note: immutable borrow ends here
src/resources/user.rs:21 }
                         ^
src/resources/user.rs:16:23: 16:26 help: run `rustc --explain E0502` to see a detailed explanation
error: aborting due to previous error
error: Could not compile `rustbr`.

This is what my handle looks like:
fn create (req: &mut Request) -> IronResult<Response> {
    let mut connection = req.extensions.get::<db::Database>().unwrap();
    let mut payload = req.get_ref::<Params>();

    println!("{:?}", payload);

    Ok(Response::with((status::Ok)))
}

All that my Database middleware does is to put a r2d2 connection pool into each request. This looks like I'm having problems to understand the concept of the language so I would appreciate if someone have the patience to help me sort this out.
Thanks!

Hi!
req.extensions.get captures &self, so req itself is immutably borrowed for the rest of the scope (in this case, the rest of the function). req.get_ref tries to capture &mut self, but req cannot be mutably borrowed while any other borrows (mutable or mutable) are active.
Pluggable, through which params::Map is accessed, requires &mut self. For Iron's sake, this is nice because it allows plugins to "mutate" the request (in this case, reading from the request body stream to extract parameters).
Anyway, a simple fix would be to reverse the order of the let connection and let payload lines; payload itself doesn't hold on to a reference of req, but connection does.
Or, you may be interested in dropping usage of the extensions TypeMap altogether and using a Plugin to access the database. Here's one example that uses Iron's persistent crate, which uses Arc internally to help you avoid these borrow/lifetime ergonomics issues.
I'm not 100% sure if it's the intentional semantics of Iron, but req.extensions seems to be used for storing pre-calculated data specifically for communication between middleware (such as with Iron's router middleware). Plugins are suited for lazy evaluation, and can also provide caching for the resultant data. params is a plugin because not all requests need to access request parameters, so they should only be deserialized when requested. In many ways, I think it's semantically correct for database access to be through plugins.
Sorry, I think I'm babbling. :smile: Hopefully this shed some light on your situation.

That was supper informative! Many thanks :-)

@SkylerLipthay I stumbled across the same issue and your comment was super helpful! Thank you!


Sqlite

🐛 Describe the bug
I don't know why but I have this bug that persists .
Traceback (most recent call last):
File "/home/user/app/app.py", line 5, in
app = App.from_config(yaml_path="config.yaml")
File "/home/user/.local/lib/python3.10/site-packages/embedchain/pipeline.py", line 381, in from_config
llm = LlmFactory.create(llm_provider, llm_config_data.get("config", {}))
File "/home/user/.local/lib/python3.10/site-packages/embedchain/factory.py", line 37, in create
return llm_class(config=llm_config_class(**config_data))
File "/home/user/.local/lib/python3.10/site-packages/embedchain/llm/huggingface.py", line 26, in init
super().init(config=config)
File "/home/user/.local/lib/python3.10/site-packages/embedchain/llm/base.py", line 27, in init
self.memory = ECChatMemory()
File "/home/user/.local/lib/python3.10/site-packages/embedchain/memory/base.py", line 26, in init
with sqlite3.connect(SQLITE_PATH) as self.connection:
sqlite3.OperationalError: unable to open database file
Here's the app.py:
from embedchain import Pipeline as App
load embedding model configuration from config.yaml file
app = App.from_config(yaml_path="config.yaml")
config.yaml :
llm:
provider: huggingface
config:
model: 'google/flan-t5-xxl'
temperature: 0.5
max_tokens: 1000
top_p: 0.5
stream: false
embedder:
provider: huggingface
config:
model: 'sentence-transformers/all-mpnet-base-v2'
vectordb:
provider: chroma
config:
collection_name: 'my-collection'
dir: db
allow_reset: true
Here's the app.py

Hey @Yusufibin what is the version of Embedchain that you're using? This issue was recently fixed, if you're using an older version can you try the latest one? Please let me know if you have this issue. Thanks!

I'm using embedchain v0.1.17 within docker compose environment. I'm experiencing the same issue.
celery_worker_1  | Traceback (most recent call last):
celery_worker_1  |   File "/usr/local/lib/python3.11/site-packages/celery/app/trace.py", line 477, in trace_task
celery_worker_1  |     R = retval = fun(*args, **kwargs)
celery_worker_1  |                  ^^^^^^^^^^^^^^^^^^^^
celery_worker_1  |   File "/usr/local/lib/python3.11/site-packages/celery/app/trace.py", line 760, in __protected_call__
celery_worker_1  |     return self.run(*args, **kwargs)
celery_worker_1  |            ^^^^^^^^^^^^^^^^^^^^^^^^^
celery_worker_1  |   File "/app/project/tasks.py", line 26, in add_article
celery_worker_1  |     app = create_embedchain_app(collection_name)
celery_worker_1  |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
celery_worker_1  |   File "/app/embedchain_app/__init__.py", line 53, in create_embedchain_app
celery_worker_1  |     llm = OpenAILlm(
celery_worker_1  |           ^^^^^^^^^^
celery_worker_1  |   File "/usr/local/lib/python3.11/site-packages/embedchain/llm/openai.py", line 14, in __init__
celery_worker_1  |     super().__init__(config=config)
celery_worker_1  |   File "/usr/local/lib/python3.11/site-packages/embedchain/llm/base.py", line 27, in __init__
celery_worker_1  |     self.memory = ECChatMemory()
celery_worker_1  |                   ^^^^^^^^^^^^^^
celery_worker_1  |   File "/usr/local/lib/python3.11/site-packages/embedchain/memory/base.py", line 26, in __init__
celery_worker_1  |     with sqlite3.connect(SQLITE_PATH) as self.connection:
celery_worker_1  |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
celery_worker_1  | sqlite3.OperationalError: unable to open database file

@Yusufibin looks like you are not using the latest version of Embedchain package. Can you please update and try again?


example Errata

def predict(params, inputs):
for W, b in params:
outputs = np.dot(inputs, W) + b
inputs = np.tanh(outputs)
return outputs
inputs = np.tanh(outputs)
should be
outputs = np.tanh(outputs)
?

Hey, thanks for checking over things! Actually it’s meant to be written this way; inputs refers to the inputs to the next layer at every loop iteration, and that’s what the subsequent loop iteration depends on, thus building a chain of layers. The bit that might be surprising is that the final tanh is dead code. We wrote it this way just for concision, and under jit that dead code is eliminated.
That said, while this form is nice and concise for the readme, maybe we should write it more conventionally in the example file, where space isn’t as much of an issue.


Auto increment a release for major, minor and patch?

Based on :
https://github.com/jgitver/jgitver#release
I create a new release using something like:
git tag -a -m "release 4.1.1, additional reason" 4.1.1
But I don't really care about specifying exact versions through an annotated tag each time I want to make a release.
Ideally I just want to specify major or minor and patch and then jgitver should automatically compute the next version number based on a previous tag.
As an example, assume the latest tag is: 4.1.1 then I just want to specify ./gradlew releasePatch and as a result a new tag is created with version 4.1.2. Similar if I instead run ./gradlew releaseMinor a tag with version 4.2.0 is created,
Is that possible?
Or is it necessary to specify the full version each time a new release needs to be created?

https://github.com/jgitver/jgitver#release paragraph describes only the way jgitver itself is released.

But I don't really care about specifying exact versions through an annotated tag each time I want to make a release.

It is unfortunate because jgitver is fully based on analyzing tags...

Ideally I just want to specify major or minor and patch and then jgitver should automatically compute the next version number based on a previous tag.

jgitver exposes the computed next Major, MInor and Patch versions as metadatas. You could use that to automatically tag your code base if you want inside your own tasks like releaseMinor or releasePatch.

Sorry for now being clear, I am fan of jgitver being tag based! Its just that 9/10 times I just need a new release with the patch version being incremented and it would be easier to just fire off some utils task: releasePatch instead of looking up the previous tag and typing in the correct x.y.z+1 each time.
I think its actually the same that is being discussed here: https://github.com/jgitver/jgitver/issues/39#issuecomment-747155778
Regarding
https://github.com/jgitver/jgitver/blob/f02ab852cb8409fd01eb47e9cdd6b3655fde1fb7/src/main/java/fr/brouillard/oss/jgitver/metadata/Metadatas.java#L127-L138
that's really cool! I am not quite sure how to use those variables in e.g. a separate task. In my build.gradle I  currently have:
...

jgitver {
    strategy 'PATTERN'
    versionPattern '${v}${<meta.COMMIT_DISTANCE}'
}

task releaseMajor() {
    doLast {

        //println "${jgitver.NEXT_MAJOR_VERSION}"
        //println "${jgitver.meta.NEXT_MAJOR_VERSION}"
        //println("${jgitver.meta.NEXT_MAJOR_VERSION}")

        jgitver {
            println("hello")
            println meta.NEXT_MAJOR_VERSION
            //println "${jgitver.NEXT_MAJOR_VERSION}"
            //println "${jgitver.meta.NEXT_MAJOR_VERSION}"
            //println("${jgitver.meta.NEXT_MAJOR_VERSION}")
            //println "${jgitver.next_major_version}"

        }

    }
}

But when I run:
./gradlew releaseMajor -i
I get:
* What went wrong:
Execution failed for task ':releaseMajor'.
> Could not get unknown property 'meta' for extension 'jgitver' of type fr.brouillard.oss.gradle.plugins.JGitverPluginExtension.

I am surely missing something basic here but any input is appreciated!

glad you found what you needed


sketch_depth and sketch_dimension problem

sorry about my limited english.
I am tring to learn how to use EMDM but have some issues
I have two problems about sketch_depth and sketch_dimension
I expected "codes.shape" is N*sketch_dim but  got N*sketch_depth?  Is it right?

In paper it seems like if you set sketch_dim=256 and sketch_depth=40, you will get embedding shape N * (40*256)?

they have generated the DLSH codes "N" times, and then when yous tackt he codes, you get a "N" * 256 dims sketches. Here N was 40.


volume size display does not conform to the actual situation

Question
volume size display does not conform to the actual situation
Environment:

Longhorn version: 1.0.2
Kubernetes version:1.18.8
Node config

OS type and version

Underlying Infrastructure (e.g. on AWS/GCE, EKS/GKE, VMWare/KVM, Baremetal):Baremetal

Additional context
I ran Kafka and used Longhorn storage

This is what the kuboard shows

The actual size includes snapshots as well as data that might have existed on the filesystem but has now been deleted. Since Longhorn operates on the block level and not the filesystem level.
More information here.

But will baremetal use more and more storage space?

Longhorn volumes use sparse files to store data. You can log into the node host, access the data directory of the replica on the node (the directory path is already shown on the UI), check the apparent size and actual size of the volume. e.g.:
root@shuo-cluster-0-worker-1:/var/lib/longhorn/replicas/vol-837f28f3# ls -alh
total 101M
drwx------ 2 root root 4.0K Dec 17 12:22 .
drwxr-xr-x 3 root root 4.0K Dec 17 12:22 ..
-rw------- 1 root root 4.0K Dec 17 12:26 revision.counter
-rw-r--r-- 1 root root 2.0G Dec 17 12:26 volume-head-002.img
-rw-r--r-- 1 root root  178 Dec 17 12:22 volume-head-002.img.meta
-rw-r--r-- 1 root root  194 Dec 17 12:22 volume.meta
-rw-r--r-- 1 root root 2.0G Dec 17 12:22 volume-snap-2aeee8a5-9abd-4a04-9eaf-4830a30386a9.img
-rw-r--r-- 1 root root  125 Dec 17 12:22 volume-snap-2aeee8a5-9abd-4a04-9eaf-4830a30386a9.img.meta
-rw-r--r-- 1 root root 2.0G Dec 17 12:22 volume-snap-d463e434-000f-48fb-b08d-ac889de98619.img
-rw-r--r-- 1 root root  177 Dec 17 12:22 volume-snap-d463e434-000f-48fb-b08d-ac889de98619.img.meta
root@shuo-cluster-0-worker-1:/var/lib/longhorn/replicas/vol-837f28f3# du -h
101M	.
root@shuo-cluster-0-worker-1:/var/lib/longhorn/replicas/vol-837f28f3# du -h --apparent-size
6.1G	.

Can you follow the above instructions to check the size manually? If the actual size shown in Longhorn UI is wrong, we can dig deep into that then.

@2690522020 Longhorn volume itself will use to the maximum size of the allocated volume size. It might use more due to the snapshot which contains historical data. You can always delete the snapshots to release the extra space taken by it.
Once a block is been written, it will be recorded, no matter if the filesystem thinks it's free or not. Filesystem might write a block then mark it as free later, but it looks the same from the block level since it has been written. That's why you saw the difference between the space reported by the filesystem and the space reported by Longhorn.

What happens when the actual used size of the volume reaches the allocated size? Can't write? However, when the file system doesn't use that much space

Longhorn volumes use sparse files to store data. You can log into the node host, access the data directory of the replica on the node (the directory path is already shown on the UI), check the apparent size and actual size of the volume. e.g.:
root@shuo-cluster-0-worker-1:/var/lib/longhorn/replicas/vol-837f28f3# ls -alh
total 101M
drwx------ 2 root root 4.0K Dec 17 12:22 .
drwxr-xr-x 3 root root 4.0K Dec 17 12:22 ..
-rw------- 1 root root 4.0K Dec 17 12:26 revision.counter
-rw-r--r-- 1 root root 2.0G Dec 17 12:26 volume-head-002.img
-rw-r--r-- 1 root root  178 Dec 17 12:22 volume-head-002.img.meta
-rw-r--r-- 1 root root  194 Dec 17 12:22 volume.meta
-rw-r--r-- 1 root root 2.0G Dec 17 12:22 volume-snap-2aeee8a5-9abd-4a04-9eaf-4830a30386a9.img
-rw-r--r-- 1 root root  125 Dec 17 12:22 volume-snap-2aeee8a5-9abd-4a04-9eaf-4830a30386a9.img.meta
-rw-r--r-- 1 root root 2.0G Dec 17 12:22 volume-snap-d463e434-000f-48fb-b08d-ac889de98619.img
-rw-r--r-- 1 root root  177 Dec 17 12:22 volume-snap-d463e434-000f-48fb-b08d-ac889de98619.img.meta
root@shuo-cluster-0-worker-1:/var/lib/longhorn/replicas/vol-837f28f3# du -h
101M	.
root@shuo-cluster-0-worker-1:/var/lib/longhorn/replicas/vol-837f28f3# du -h --apparent-size
6.1G	.

Can you follow the above instructions to check the size manually? If the actual size shown in Longhorn UI is wrong, we can dig deep into that then.

My situation seems to be the same as what you described, but I'm worried that the file system will not be able to write in the future when there is still space in the file system

If the actual used size of the volume reaches the allocated size but the file system doesn't use that much space, the application using the file system can still read/write as normal.

If the actual used size of the volume reaches the allocated size but the file system doesn't use that much space, the application using the file system can still read/write as normal.

So I can use it with ease

@2690522020
Once a block is been written, it will be recorded, no matter if the filesystem thinks it's free or not. Filesystem might write a block then mark it as free later, but it looks the same from the block level since it has been written. That's why you saw the difference between the space reported by the filesystem and the space reported by Longhorn.

Thanks for the explanation. So there is no way to "recalculate" blocks to reclaim space on a longhorn node ?
The only solution I see now is to manually recreate a volume from scratch.

@auricom Since the user has created the volume size of xxxGB, Longhorn would expect to use that much of space eventually.  There were some discussions about implementing trim e.g. https://github.com/longhorn/longhorn/issues/836 but in the end, it's very tricky to implement and we decide to put it on hold.


Added server and admin ports

Describe your changes :

I worked on this to add server and admin ports in docker-compose files ...

Type of change :

[x] Bug fix

@akash-jain-10 @Vj-L I don't think we need to support the change of internal ports with env variables in docker compose. Can you please explain why we will need this?

Yes
Even I was thinking if some users want to change with other ports then accordingly they have to update locally in the docker-compose file.
Thanks @vivekratnavel
Will close this PR

We will add the port forwarding section in the docker docs. Hope this works?

Yes, we should only add to the docs, and no code change is required from our end.

Yes
Thanks will close this PR


Training ticket throwing false error

Your Vatsim CID
1560689
Description
When trying to submit a training ticket the error: https://prnt.sc/lbbjFH0hN4iU occurs.
All fields are filled out correctly and the ticket is saved to the website and VATUSA.
Seems to be a false error
Minimal Reproduction
Submit a training ticket
Additional info
No response
Validation

[X] I have searched open/closed issues and did not find any similar bugs

Error not fixed as unreproduceable in dev environment. Changed error handling so if the ticket is posted to VATUSA it appears as a success


ff2mpv-rust: 1.1.1 -> 1.1.3 + support for Chromium based browsers

Description of changes
Updated ff2mpv-rust to 1.1.2, also added support for Chromium based browsers as the new build supports generating manifests for them.
Changelog
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

I think the last 3 commits can be squashed as the update.

I think the last 3 commits can be squashed as the update.

I wanted the support for Chromium manifests to be the separate commit since it actually changes what files are in the output, unlike the update commits.

@ryze312 please update the PR description to match the correct version and the newer changes.


musikcube can't to find boost-libs 1.80.0

➜  musikcube
./musikcube: error while loading shared libraries: libboost_filesystem.so.1.79.0: cannot open shared object file: No such file or directory
➜  yay -Qs libboost_filesystem
local/boost-libs 1.80.0-2
Free peer-reviewed portable C++ source libraries (runtime libraries)

Yeah, boost is the largest thorn in our side -- every time a new version drops and distros upgrade to it, musikcube breaks and needs to be recompiled/reinstalled. This is one of the main reasons we have started distributing binaries in our release page; the binaries we provide ship with their own version of boost and are not subject to operating system / distribution upgrades.
So, you can recompile to work around the issue, but if you don't want to mess with it I suggest installing the latest release binaries from here: https://github.com/clangen/musikcube/releases
Hopefully in the future we can get rid of boost entirely, but it'll be a non-trivial amount of work.


Docs

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

[ ] Make sure to open an issue as a bug/issue before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
[ ] Ensure the tests and linter pass
[ ] Code coverage does not decrease (if any source code was changed)
[ ] Appropriate docs were updated (if necessary)

I didn't open an issue , I just want to see if the documentation could be improve using Furo, a more modern theme for single sidebar documentation.

Hi @12rambau,
Thanks for opening a PR! We've migrated the docs to https://cloud.google.com and change will not impact the published docs there. Please open a new issue if you have a feature request, comment or issue with the docs at https://cloud.google.com/python/docs/reference/cloudresourcemanager/latest .


OSX Build and Deployment problems

On Mac OSX Mojave, sam build and sam package don't work for me.
sam build
2019-03-14 09:13:58 Building resource 'MyLambda'
2019-03-14 09:13:58 Running PythonPipBuilder:ResolveDependencies
Build Failed
Error: PythonPipBuilder:ResolveDependencies - {cffi==1.12.2(wheel), pyyaml==5.1(sdist)}

Adding --use-container works, however.
Those dependencies do exist.  I've tried uninstalling and reinstalling them.
sam package --output-template-file .aws-sam/deploy/my-app.yml --s3-bucket my-lambda-repository
Error: Unable to find AWS CLI installation under following names: ['aws']
make: *** [deploy] Error 1

Using aws cloudformation instead of sam works.
I remember when I tried to install sam it wouldn't install through brew and I had to use pip.  (Cant remember what the exact problem was now.).  I also have to activate a venv beforehand otherwise sam can't find python.  (On OSX 'python' is 2.7, but I have an alias to point it to 3.7 in my .bashprofile)

@johnc44 Looks like you might have some native bindings for your function. Which would mean --use-container is what you should do to build.
On the package part, it looks like SAM CLI can't find your installation of AWS CLI. This is mostly likely due to how you have installed. I recommend uninstalling with pipe and venv, and instead go to brew. By the sounds of it, you might have run into this issue with brew. If you find it's not, feel free to cut us an issue on that or reach out in the #samdev channel on slack.

Thanks for the reply - I'll have a look at the issue you mention over the weekend and see if I can get brew to work.
We do have a few problems with "sam build" vs "sam build --use-container".  I've been meaning to raise them on here but haven't; had a chance to gather enough info.  But briefly:

"sam build" on OSX doesn't seem to work (as above)
"sam build --use-container" doesn't work if the repo has symlinks.
"sam build --use-container" doesn't seem to work in Ubuntu WSL.  (Although I can use sam local to test the API from here)  I get Error: PythonPipBuilder:ResolveDependencies - Requirements file not found: /tmp/samcli/source/requirements.txt
"sam build" doesn't work in Ubuntu WSL if using a Windows drive (i.e. if I'm in /mnt/c/....).  But if I copy/git clone the code elsewhere (e.g. /home/me...) then it's fine.  Error it gives is Error: PythonPipBuilder:CopySource - name 'WindowsError' is not defined
Obviously some dependencies may require "--use-container" to work, although we currently don't use any that I'm aware of.

We have one project containing multiple lambdas that use some shared code currently imported in using symlinks.  Although considering using git links in requirements.txt to bring them in at some point - although I'm not sure that's going to work well with --use-container either.
We're trying to define a makefile that allows us to build regardless of platform, but haven't yet managed to get something that works for everyone.

I've fixed the problem... I found that I had awscli installed in 3 different places.  Once I removed it from everywhere and reinstalled it with the package installer, then everything started to work.  Even "sam build" works now.
One weird thing... and not sure if this is a bash thing or an OSX thing, but I was doing "which aws" and getting nothing back, but "aws --version" still showed up a version.  I found it by "command -v aws".  (This was after I'd found 2 instances which did come back from which).
Also my version of the CLI was 1.15.x not 1.16.x so that might have something to do with it perhaps.


add sanshokudohjun resolver

close #44

Current coverage is 78.96%

Merging #106 into master will increase coverage by +2.98% as of 24a0722

@@            master    #106   diff @@
======================================
  Files           45      45
  Stmts         1062    1041    -21
  Branches       264     258     -6
  Methods          0       0
======================================
+ Hit            807     822    +15
- Partial         55      57     +2
+ Missed         200     162    -38

Review entire Coverage Diff as of 24a0722

Powered by Codecov. Updated on successful CI builds.


Zendesk webhook doesn't work when content is localized

The value of the status field is unfortunately translated when it is pushed to the collector making it fail during validation.
error: instance value ("Løst") not found in enum (possible values: ["New","Open","Pending","On-hold","Solved","Closed"]) level: "error" schema: {"loadingURI":"#","pointer":"/properties/status"} instance: {"pointer":"/status"} domain: "validation" keyword: "enum" value: "Løst" enum: ["New","Open","Pending","On-hold","Solved","Closed"]

See here for additional details.

Thanks for flagging - what a terrible implementation decision by Zendesk...

@razius Could you list all the fields you've seen that are subject to the translation issue and I'll patch and update them?

status for which you can get the translations from here and ticketType for which I couldn't find the translations so I've just set it to null.
Do you want to do the language mapping or drop the validation?

Good Q @razius - adding @ihortom to the ticket who built the webhook integration on our side...

@alexanderdean, looks like we do not have much choice as to drop enum:
    . . .
    "priority": {
        "type": ["string", "null"]
    },
    "status": {
        "type": ["string"]
    },
    "tags": {
        "type": ["string", "null"]
    },
    "ticketType": {
        "type": ["string", "null"]
    },
    . . .

That also means amending the table com_zendesk_snowplow_ticket_updated_1 with the extended length of the corresponding VARCHAR fields to cater for longer (non-English) values.

I think you are probably right... It's probably safest to fix this in @stdfalse's data model...

Migrated to https://github.com/snowplow/enrich/issues/238


Add integration tests for official plugins

Right now the official abell plugins are not tested at all and it would be great if we can add some integration tests there so that we can build more confidence when we change the renderer code.
I also found that they also lack unit tests per plugin which should also be added but I will value these tests more for now.
Official plugin repo: https://github.com/abelljs/official-plugins
More context: https://github.com/abelljs/abell/issues/77#issuecomment-701266336

We can add tests for afterBuild first in https://github.com/abelljs/abell/blob/main/examples/with-plugin/with-plugin.spec.js and test integrations in this same repository.
Later we can unit test the official-plugins repo for the plugin-specific functions.

https://github.com/abelljs/abell/issues/77#issuecomment-701271795
Yup this makes sense. Always better to have more tests. Moving this issue to official-plugins repository.


[INLONG-7926][TubeMQ] Add "Register2Master" method for GO SDK

Add "Register2Master" method for GO Producer SDK
Fixes #7926
Parent issue is: #4968

@woofyzhao Hi woofy, do you have time to review this PR?

I don't know the specific logic of producer. Maybe @gosonzhang should have a look.


specializer operator

this PR is providing the operator to deploy the specializer.

this is part of a bigger PR that I reviewed earlier, so
/lgtm

/approve


User unable to register under allowed domain. / That email domain does not have access to this application

Describe the bug
User unable to register under allowed domain.
[2019-03-11 10:01:18] production.ERROR: That email domain does not have access to this application {"exception":"[object] (BookStack\Exceptions\UserRegistrationException(code: 0): That email domain does not have access to this application at /var/www/html/wiki/app/Http/Controllers/Auth/RegisterController.php:147)
[stacktrace]
Steps To Reproduce
Steps to reproduce the behavior:

Register
Social (with Google)
Login with allowed domain account
Redirected back with error

Expected behavior
Successful registration (as it worked before)
Screenshots
n/a
Your Configuration (please complete the following information):

Exact BookStack Version (Found in settings): BookStack v0.24.3
PHP Version: 7.3
Hosting Method (Nginx/Apache/Docker):  apache

Used to work fine until recently (I see January as the last month when somebody registered under same domain)

Alright, after updating to
BookStack v0.25.2
registration works.
Maybe this should be mentioned in the changelog.


Update image ghcr.io/tarampampam/error-pages to v3.1.0

This PR contains the following updates:

Package
Update
Change

ghcr.io/tarampampam/error-pages
minor
3.0.1 -> 3.1.0

Release Notes

tarampampam/error-pages (ghcr.io/tarampampam/error-pages)
v3.1.0
Compare Source

What's Changed
🚀 Features

Added HTML/CSS/JS minification on the fly in https://github.com/tarampampam/error-pages/pull/293 (the HTML output size was reduced by ~25%, with performance decreasing by ~4% - from 196k RPS to 188k)

Before | After
---|---
 |
Full Changelog: https://github.com/tarampampam/error-pages/compare/v3.0.1...v3.1.0

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

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

This PR has been generated by Renovate Bot.

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.


Add Georgian translation line

One of the lines in validation.php wasn't translated before.

Hello,
thanks. Can you translate "in_array" too ?

I'll try. Do you want me to put it into a separate commit or squash into this one?

same commit ;)

For georgian, we need :

distinct
present

sorry had been busy so far.
On Thu, Mar 10, 2016 at 7:25 PM, Fred Delrieu<EMAIL_ADDRESS>wrote:

For georgian, we need :

distinct
present

—
Reply to this email directly or view it on GitHub
https://github.com/caouecs/Laravel-lang/pull/517#issuecomment-194903540.

No problem ;)


Handle both Old & New github layouts!

Apparently that's a thing now.

Tested using a different GitHub account, and everything seems to be working correctly.


Beam Sync download speedups

Generally, we want to make the urgent nodes resolve as quickly as possible, and keep preview nodes out of the way. So this code splits the two scenarios to make sure we run predictive nodes in a separate thread, and urgent nodes in the event loop.
Also, it was expensive to wake up all those coros every time some new data came in. So now when urgent data comes in, it only wakes up the urgent coros. When predictive data comes in, it only wakes up the relevant predictive coros.
To-Do

[ ] Clean up commit history

[ ] Add entry to the release notes

Cute Animal Picture

Yup, fine to wait till morning.


Form not From

Other information
https://redux-form.com/6.7.0/examples/initializefromstate/
Small typo in the main h1 tag. Should be 'Form' not 'From'

@yabdabs if you look at the page where you found this 'typo', you will see these 'typos' everywhere. Even in the link itself. It's not a typo.


Fixed removing outdated readers from cache

Bug-fix for dangling readers in cache left by consolidation. Issue results in errors 32 in cleanup procedure on windows. Also old segments is not freed until server reboot leading to disk space consumption on all platforms.
Fixes internal issue #656 and ticket ES-483
Fix is verified by upstream project tests
https://jenkins.arangodb.biz/view/PR/job/arangodb-matrix-pr/7814/

https://jenkins.arangodb.biz/view/PR/job/arangodb-matrix-pr/7815/

Tests blue.

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/7856/

Tests blue.


Eureka client permanently down after refresh

Issue most likely related to several, but I want emphasize the root problem here (IMHO).
The very last issue that I've found is https://github.com/spring-cloud/spring-cloud-netflix/issues/1857 .
Pre-requirements:
cloud version - Edgware.SR3

setup simplest eureka server
setup simplest boot app only with eureka-client dep
with properties eureka.instance.initialStatus=DOWN and eureka.client.healthcheck.enabled=true

Steps to reproduce:

Start service

Service registers in eureka with DOWN status, since it is initial status.
InstanceInfoReplicator updates status to UP as it now uses EurekaHealthCheckHandler which was registered by EurekaAutoServiceRegistration, but not going to InstanceInfo object to get current DOWN state

Calling /refresh endpoint

CloudEurekaClient bean recreated and re-registers instance in Eureka with initial status DOWN
InstanceInfoReplicator keeping re-registering instance with DOWN status as it uses empty HealthCheckCallbackToHandlerBridge which gets current DOWN state from  InstanceInfo, but not from EurekaAutoServiceRegistration, from which it should.

Root cause:
EurekaHealthCheckHandler uses EurekaRegistration bean as provider for EurekaClient object.
Since it's not being recreated it stores old CloudEurekaClient and EurekaHealthCheckHandler sets to inactive bean (which was dropped of spring context due to refresh scope) instead of newly created one.
It can be easily seen in debug mode, it shows different objects hashcodes in spring context and in EurekaRegistration bean.
It actually was the root cause of https://github.com/Netflix/eureka/issues/1025 since it tried to call onDemandUpdate on shut down client.
Possible solutions:

Make EurekaRegistration bean refresh scoped and use bean Provider in EurekaAutoServiceRegistration to retrieve bean from context after refresh
Rewrite EurekaRegistration.getEurekaClient() to get CloudEurekaClient bean from context, not cached one.

Why does it actually that matter?
This issue was possible to find only using eureka.instance.initialStatus=DOWN property, but in case of default UP you won't be able to see, that after refresh (manual/bus) service won't be DOWN anymore, even if some health indicators will go DOWN.

@tdanylchuk interested in submitting a PR?

yes, I'm just trying to pick right approach, so I posted issue firstly.
I'm inclined to 1st and solution - making EurekaRegistration refresh-scoped and use Provider instead of direct link to bean.
What do you think?

Seems like the most strait forward solution

Closed via c181163