Puma Heroku Read error: #<NoMethodError: undefined method `each' for #String:0x007ff1d9e733a8>

When I submit a post request, heroku errors out. This happens locally too.
Live: https://arcane-headland-8567.herokuapp.com/admin/login
Relevant controller:
https://github.com/codyeatworld/codyeatworld/blob/master/apps/admin/controllers/sessions/create.rb
Relevant form:
https://github.com/codyeatworld/codyeatworld/blob/master/apps/admin/templates/sessions/new.html.erb
Puma conifg:
https://github.com/codyeatworld/codyeatworld/blob/master/config/puma.rb
I ran into this article, not sure if this is the same issue: https://proctorit.wordpress.com/2013/05/29/ruby-and-puma-read-error-nomethoderror/
heroku logs:
heroku[router]: http_error="Bad chunk" at=error code=H17 desc="Poorly formatted HTTP response" method=POST path="/
admin/sessions" host=arcane-headland-8567.herokuapp.com request_id=ad1b3118-f7cd-47c7-9fdf-06241435cdd5 fwd="<IP_ADDRESS>" dyno=web.1 connect=1ms service=181ms status=503 bytes=129
app[web.1]: 2015-05-25 05:22:01 +0000: Read error: #<NoMethodError: undefined method `each' for #<String:0x007ff1d9ebe358>>
app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/puma-2.11.2/lib/puma/server.rb:634:in `handle_request'
app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/puma-2.11.2/lib/puma/server.rb:262:in `block in run'
app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/puma-2.11.2/lib/puma/thread_pool.rb:104:in `call'
app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/puma-2.11.2/lib/puma/server.rb:375:in `process_client'
app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/puma-2.11.2/lib/puma/thread_pool.rb:104:in `block in spawn_thread'

@codyeatworld Thanks for opening this ticket. Can't really reproduce it locally. It works fine both with good and bad credentials.
From your stack trace, there is an odd detail: the path is /, not /admin/sessions.
Because I cannot reproduce, can you please remove the line related to Warden and check if it still fails? It could be a matter of integrating Lotus with Warden.

@jodosha It was related to Wardens failure app, response[2] must be enumerable. I wrapped response[2]  in [ ] and it worked!
https://github.com/codyeatworld/codyeatworld/commit/739c97419a3884ea66e5c79df740b18df5a3e308
class FailureApp
  def call(env)
    action      = Admin::Controllers::Sessions::New.new
    response    = action.call(env)
    response[2] = [Admin::Views::Sessions::New.render(action.exposures.merge(format: :html,
                        flash: { alert: env["warden"].message }))]
    response
  end
end

Thanks again!
Also, the stack trace path was /admin/sessions with a weird line break from the terminal.

@codyeatworld I'm happy that you found the culprit. :+1:


Update to 1.15.4

sha256 changed
param pinned to 1.8.2 in host requirements
build already 0

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_9a5tztmqg1/clone/recipe/meta.yaml:24: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
Errors were found

I'm not aware of any reason param needs to be pinned to 1.8.2 here. Would removing that fix the lint error?

@akabanovs Looks good to me if the linter error isn't an issue!

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_b1fzq1ap74/clone/recipe/meta.yaml:24: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
Errors were found

@jlstevens linter error seems not to cause any issues. It is just suggesting to pin packages in the host file, but not all of them require pinning.  I am new to packaging but I have learned that it is good practice to pin those packages in the host which also appear under run requirements, to the lowest version.

@jlstevens It actually works either way. Both will be interpreted as exact version pining.

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_f45qnhwaod/clone/recipe/meta.yaml:24: host_section_needs_exact_pinnings: Packages in host must have exact version pinnings, except python build tools.
Errors were found


Not working with Cortex V2.0

Hello,
Great work !! Unfortunately, it's not working with Cortex V2 !

This will only work with Cortex V1 as it was developed before V2 was released. I will not be intending to update it in the foreseeable future, but feel free to fork it for the new version. Thank you for the comment anyway.


BQPlot 0.12.12 Stacked bar opacities set on a group level and not individual bars

Hi team,
There's a change in behaviour between bqplot 0.11.6 and 0.12.12 where setting opacities for a stacked bar plot applies the opacities on the entire bar group (all layers) in version 0.12.12, as opposed to each individual bar layer in 0.11.6. The expected behaviour is that of 0.11.6. See the code below to reproduce:
from bqplot import OrdinalScale, LinearScale, Bars, Axis, Figure

x_ord = OrdinalScale()
y_sc = LinearScale()

bar = Bars(x=[0, 1], y=[[1.5, 1.5], [2.5, 2.5], [3.5, 3.5]],
           scales={'x': x_ord, 'y': y_sc},
           labels=['Dim 1', 'Dim 2', 'Dim 3'], display_legend=True, opacities=[1, 0.7, 0.1, 0.1, 0.7, 1])
ax_x = Axis(scale=x_ord)
ax_y = Axis(scale=y_sc, orientation='vertical')

Figure(marks=[bar], axes=[ax_x, ax_y])

This is a screenshot from version 0.11.6, with the expected behaviour:

That is a screenshot from 0.12.12, where opacities are applied group-wise:

Many thanks

@SylvainCorlay for awareness

Assigning myself. I'll have a look.

What should be the behavior actually? I assumed the behavior should be the same with colors, so I tried the following:
from bqplot import OrdinalScale, LinearScale, Bars, Axis, Figure

x_ord = OrdinalScale()
y_sc = LinearScale()

bar = Bars(x=[0, 1], y=[[1.5, 1.5], [2.5, 2.5], [3.5, 3.5]],
           scales={'x': x_ord, 'y': y_sc},
           labels=['Dim 1', 'Dim 2', 'Dim 3'], display_legend=True, opacities=[1, 0.7, 0.1, 0.1, 0.7, 1],
           colors=['red', 'orange', 'yellow', 'yellow', 'orange', 'green'])
ax_x = Axis(scale=x_ord)
ax_y = Axis(scale=y_sc, orientation='vertical')

Figure(marks=[bar], axes=[ax_x, ax_y])

And this is what I get with bqplot 0.11.6:

And with master:

So it looks like with 0.11:

We cycle through opacities for all the layers
We cycle through colors stack-wise

And with 0.12:

We cycle through opacities stack-wise
We cycle through colors stack-wise

0.12 is more homogeneous, but I am wondering what should be the actual behavior? The approach you were expecting gives more freedom, but I also feel like it's less natural.

Hey, thanks for taking a look!
I guess one way to answer that question is how would these be coloured if they were grouped rather than stacked? I would expect them to still have varying opacities rather than have a single opacity group-wise. What do you think?

Actually I just found there is a color_mode attribute, that allow you to colorize the bars per-group, or per-element.
Grouped + color_mode group

Grouped + color_mode element

Stacked + color_mode group

Stacked + color_mode element

So what about introducing a new opacity_mode attribute?

Even better, we could revert to the 0.11.x behavior now, and later on introduce an opacity_mode attribute. What do you think?

Awesome, yeah, I agree it would make sense to align the behavior of the color and opacity traits. I also tested the color mode before, and what I observed, which is consistent with your observation, is that one color is used per bar - the opacities will vary, but for the same color.
So in the example above, we have the "red" and "orange" colors applied. Their application depends on whether color_mode is set to "group" or "element", but effectively we have two colors for two bar groups. That's probably also something to consider if we want to align the behavior of the two :)
Your assessment of how to handle this makes sense, I think! "group" should apply colors/opacities on a group basis. So we have have a particular bar group with n bars, one color will be applied to all n bars in that group. The opacities could then be also applied on a group basis, so the same opacity for all bars or, if on an element basis, different opacity for each bar in that group. The same logic would apply to "element" option with colors, we should be able to apply a different color so each bar when setting the color_mode to "element". Here is a more concrete example:
If we have 3 bar groups, with 2 bars on each group, setting "color_mode:element" and passing a list of 6 unique colors should result in all bars having unique colors. With "color_mode:group", only the first 2 colors from the color list will be used - 1 per group, and all bars in that group will have the same color. The exact same logic could then apply to the opacities.
Is this what you had in mind, or would consider? And many thanks for the work you already put in to this with the PR!

I think my description of "element" is your proposal with "real_element" above. I think having all three options does make sense!

Cool! I don't like the "real_element" name though. And we might want to keep the "element" name as it currently behaves for the color_mode for backwards compatibility, what do you think?

Yeah, agreed on keeping the "element" name. As for a name for the new mode, maybe "cycle" or something like it? Trying to avoid using the "element" keyword here, although "cycle_elements" could also work. I'm not strongly opinionated on the naming, anything that you think makes sense!

I don't really like "cycle", as other modes are also cycling, but not on the same entities. What do you think about "mark"? My idea is that "group" refers to a group of element, "element" refers to group elements, and "mark" would refer to all the marks?

I think that makes sense. We can also use "no_group" to say we're not applying any sort of grouping logic. I'm okay with either! Feel free to make the call :)

Good idea, I prefer "no_group" :) I'll update my PR then.

I updated my PR. Please tell me what you think :)


User is not able to see the workitem content to estimate in the created session

After session creation, user is facing issue to view the workitem(user story) details in main pane to estimate the story points. It is impacting the sprint planning. Sometimes it loads but take time of 2-3 mins for one click .
Please prioritize and do the needful.

Hi Team,
Any update?

HI, I was unable to reproduce the issues you're encountering. Could you please check if there are any relevant errors or warnings in the console log or network log? This information could help identify the problem

will check and share you the network logs

Hi, if you're still experiencing the issue, please share the console and network logs with us so we can assist you in the best way possible


Bluewallet API failure

Copy of https://github.com/lnbits/lnbits/issues/1172
Updated to lnbits 0.10.
I'm no longer able to import an LNbits wallet into Bluewallet by scanning the LNDhub admin QR or invoice QR.
After scanning the QR Bluewallet reports: "import error, undefined is not a function".
Trying to sync or generate an invoice for the same wallet that was previously imported into Bluewallet under LNbits 0.9.7 throws an error in the LNbits log:
Mar 05 21:05:09 NUC uvicorn[675860]: Traceback (most recent call last):
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/middleware/errors.py", line 162, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, _send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "./lnbits/middleware.py", line 73, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "./lnbits/middleware.py", line 52, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/middleware/gzip.py", line 24, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await responder(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/middleware/gzip.py", line 43, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, self.send_with_gzip)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/middleware/cors.py", line 84, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/exceptions.py", line 93, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     raise exc
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/exceptions.py", line 82, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, sender)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     raise e
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/routing.py", line 670, in __call__
Mar 05 21:05:09 NUC uvicorn[675860]:     await route.handle(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/routing.py", line 266, in handle
Mar 05 21:05:09 NUC uvicorn[675860]:     await self.app(scope, receive, send)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/starlette/routing.py", line 65, in app
Mar 05 21:05:09 NUC uvicorn[675860]:     response = await func(request)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/fastapi/routing.py", line 231, in app
Mar 05 21:05:09 NUC uvicorn[675860]:     raw_response = await run_endpoint_function(
Mar 05 21:05:09 NUC uvicorn[675860]:   File "/bitcoin/lnbits/venv/lib/python3.9/site-packages/fastapi/routing.py", line 160, in run_endpoint_function
Mar 05 21:05:09 NUC uvicorn[675860]:     return await dependant.call(**values)
Mar 05 21:05:09 NUC uvicorn[675860]:   File "./lnbits/extensions/lndhub/views_api.py", line 181, in lndhub_getuserinvoices
Mar 05 21:05:09 NUC uvicorn[675860]:     return [
Mar 05 21:05:09 NUC uvicorn[675860]:   File "./lnbits/extensions/lndhub/views_api.py", line 183, in <listcomp>
Mar 05 21:05:09 NUC uvicorn[675860]:     "r_hash": to_buffer(invoice.payment_hash),
Mar 05 21:05:09 NUC uvicorn[675860]:   File "./lnbits/extensions/lndhub/utils.py", line 5, in to_buffer
Mar 05 21:05:09 NUC uvicorn[675860]:     return {"type": "Buffer", "data": [b for b in bytes.fromhex(payment_hash)]}
Mar 05 21:05:09 NUC uvicorn[675860]: ValueError: non-hexadecimal number found in fromhex() arg at position 2
Mar 05 21:05:09 NUC uvicorn[675860]: 2023-03-05 21:05:09.56 | ERROR | Exception: non-hexadecimal number found in fromhex() arg at position 2
Mar 05 21:05:09 NUC uvicorn[675860]: 2023-03-05 21:05:09.56 | INFO | <IP_ADDRESS>:0 - "GET /lndhub/ext/getuserinvoices?limit=20 HTTP/1.0" 500
Mar 05 21:05:09 NUC uvicorn[675860]: 2023-03-05 21:05:09.56 | ERROR | Exception in ASGI application

Importing the same LNbits wallet into Zeus mobile and generating an invoice works with no problem.

I'm having similar problem but different error: when I scan the admin or invoice qr code on BlueWallet I get "import error Network request failed", nothing is logged on lnbits so I'm unsure if it's a BlueWallet or LndHub issue.
The same qr code works for Zeus

i think this PR should fix the issue: https://github.com/lnbits/lnbits/pull/1588

I'm having similar problem but different error: when I scan the admin or invoice qr code on BlueWallet I get "import error Network request failed", nothing is logged on lnbits so I'm unsure if it's a BlueWallet or LndHub issue. The same qr code works for Zeus

hm, i think this one is unrelated to the orignal issue

I use a self signed certificate, maybe that's the problem? I'm looking for an option to disable the certificate verification like in zeus but I'm not finding it

Updated to LNbits 0.10.4, the error has changed but is not resolved.
I tried adding an LNbits wallet to Bluewallet by scanning the LNDhub admin QR.
LNbits log:
Apr 23 17:18:27 NUC poetry[252134]: 2023-04-23 17:18:27.68 | INFO | <IP_ADDRESS>:0 - "POST /lndhub/ext/auth?type=auth HTTP/1.0" 200
Apr 23 17:18:27 NUC poetry[252134]: Traceback (most recent call last):
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/middleware/errors.py", line 162, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, _send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/bitcoin/lnbits/lnbits/middleware.py", line 131, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/bitcoin/lnbits/lnbits/middleware.py", line 63, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/middleware/gzip.py", line 24, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await responder(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/middleware/gzip.py", line 43, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, self.send_with_gzip)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/middleware/cors.py", line 84, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/exceptions.py", line 93, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     raise exc
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/exceptions.py", line 82, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, sender)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 21, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     raise e
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/routing.py", line 670, in __call__
Apr 23 17:18:27 NUC poetry[252134]:     await route.handle(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/routing.py", line 266, in handle
Apr 23 17:18:27 NUC poetry[252134]:     await self.app(scope, receive, send)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/starlette/routing.py", line 65, in app
Apr 23 17:18:27 NUC poetry[252134]:     response = await func(request)
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/fastapi/routing.py", line 231, in app
Apr 23 17:18:27 NUC poetry[252134]:     raw_response = await run_endpoint_function(
Apr 23 17:18:27 NUC poetry[252134]:   File "/home/lnbits/.cache/pypoetry/virtualenvs/lnbits-N2LfHUJp-py3.9/lib/python3.9/site-packages/fastapi/routing.py", line 160, in run_endpoint_function
Apr 23 17:18:27 NUC poetry[252134]:     return await dependant.call(**values)
Apr 23 17:18:27 NUC poetry[252134]:   File "/bitcoin/lnbits/lnbits/extensions/lndhub/views_api.py", line 121, in lndhub_gettxs
Apr 23 17:18:27 NUC poetry[252134]:     for payment in await get_payments(
Apr 23 17:18:27 NUC poetry[252134]: TypeError: get_payments() got an unexpected keyword argument 'limit'
Apr 23 17:18:27 NUC poetry[252134]: 2023-04-23 17:18:27.71 | ERROR | Exception: get_payments() got an unexpected keyword argument 'limit'
Apr 23 17:18:27 NUC poetry[252134]: 2023-04-23 17:18:27.71 | INFO | <IP_ADDRESS>:0 - "GET /lndhub/ext/gettxs?limit=10&offset=0 HTTP/1.0" 500
Apr 23 17:18:27 NUC poetry[252134]: 2023-04-23 17:18:27.71 | ERROR | Exception in ASGI application

The error displayed in Bluewallet:

Fixed with lnbits/lnbits#1613

I'm still experiencing this issue with my admin wallet after updating to 0.10.8.
I open the LNDhub extension as the admin/superuser, use the Bluewallet import function to scan the admin QR, Bluewallet throws an error:
"Import error"
"undefined is not a function"
The relevant LNbits log lines are below.
My admin/superuser has one wallet, the wallet has had several topups over the last few months, it has done boltcard payments, received some sats and paid some invoices, it has done a total of 20 transactions.
Wallets from other users don't have this problem and can be imported into Bluewallet just fine.


Update mrtk-porting-guide.md

OPS Build status updates of commit 065e169:
:clock10: Preparing: average preparing time is 50 sec(s)

OPS Build status updates of commit 065e169:
:clock10: Incremental building: average incremental building time is 26 sec(s)

OPS Build status updates of commit 065e169:
:warning: Validation status: warnings

File
Status
Preview URL
Details

mixed-reality-docs/mrtk-porting-guide.md
:warning:Warning
View
Details

mixed-reality-docs/mrtk-porting-guide.md

[Warning] Author author:grbury cannot be recognized in GitHub.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Complex locales are not supported

Describe the bug
Complex locales, like "sr-Latn-RS" / "sr-Cyrl-RS" or "zh-Latn-TW-pinyin" cannot be set.
Environment
The setup in which the bug is reproducible:

Device or Emulator: Any
API level: Any
AndroidUiTestingUtils version: 1.1.2
Affected Components: FragmentScenarioConfigurator.setlocale(), ActivityScenarioConfigurator.setLocale(), SystemLocaleTestRule, LocaleTestRule, ActivityScenarioForActivityRule(systemLocale = "my_locale"), fragmentScenarioConfiguratorRule(locale = "my_locale")

Expected behavior
The locale should also be set correctly for those languages
Additional context
All the methods/components to set the Locale use the same methods as fastlane/Screengrab for converting strings into Locales. It means, they do not use Locale.forLanguageTag(), which supports such complex locales, but its own Localeutil method.
It is worth noticing that Locale.forLanguageTag() only supports IETF locale strings e.g. "en-US" but not ISO locale strings e.g. "en_US".
Moreover, the pseudolocales "en_XA" and "ar_XB" only exist as ISO locale Strings.
That is important to add support for complex locales, while still supporting ISO locales (at least as good as till AndroidUiTestingUtils 1.2.1) as well as pseudolocales

Fix in 1.2.2


Fixed crash when moduleCalss init calls enqueueJSCall

Fixes #1116 (it contains more detailed explanation)
In short RCTBridge.setUp calls [[moduleClass alloc] init] which can call bridge.enqueueJSCall and create a crash because bridge.setUp not yet finished

@tadeuzagallo is this fix included in your bridge changes already, or is it a new issue?

It's included, we talked about it on the issue instead of in the PR, but I believe it can be closed.


Document AsyncNotifier

I did some experimenting with AsyncNotifier. Here are some of the resources I used to get to this point:
The API page: https://pub.dev/documentation/riverpod/latest/riverpod/AsyncNotifier-class.html
The implementation with comments that are private (and useful) https://github.com/rrousselGit/riverpod/blob/master/packages/riverpod/lib/src/async_notifier/base.dart
The unit tests: https://github.com/rrousselGit/riverpod/blob/master/packages/riverpod/test/providers/async_notifier/async_notifier_test.dart
Some comments that are relevant:
https://github.com/rrousselGit/riverpod/issues/57#issuecomment-1273293066
https://github.com/rrousselGit/riverpod/issues/1032#issuecomment-1205554145
https://github.com/rrousselGit/riverpod/issues/875#issuecomment-1272536326
https://github.com/rrousselGit/riverpod/issues/1404#issuecomment-1250355335
And my working example of using the new ref.watch inside build in order to combine two provider states:
https://github.com/h-unterp/async_notifier_test/blob/main/lib/async_notifier_test.dart
AsyncNotifier is a new provider type.
The expected solution now is to use the new AsyncNotifier instead of StateNotifier. That's basically the fusion of FutureProvider & StateNotifier from
https://github.com/rrousselGit/riverpod/issues/875#issuecomment-1272536326

@FXschwartz asks:

What's the recommended approach to accessing state inside of an AsyncNotifier?

@rrousselGit replies

You can directly read this.state.when
You can read this.future (equivalent of ref.read(provider.future))
Or you can use this.update((T data) => data + 1)

Updating State
@FXschwartz asks:

Very cool!
So calling update((state) => state.copyWith(myValue: newValue)); should work just fine and trigger the rebuild?

@rrousselGit replies:

update is equivalent to:

final data = await this.future;
final newState = cb(data);
state = AsyncValue.data(newState);
return newState;

So it'll await build
And if build throws, your update will throw too.

Update
This is a working example of update: https://github.com/h-unterp/async_notifier_test/blob/041b0dc2a43fef222744860736366d1956fd29f3/lib/async_notifier_test.dart#L13

how to do listen AsyncNotifier  in another StateNotifierProvider for update StateNotifierProvider's State?

You can call ref.listen inside AsyncNotifier.build

Thank you for your great work, I want to avoid state having AsyncValue and splitting API response data into many small, independent StateNotifierProviders, I don't understand how to do it

You can call ref.listen inside AsyncNotifier.build

Is there a problem with calling ref.listen presumably over and over again on the same providers, every time build is called after a watched variable changed?

Hello isLoading is not getting true when i call my api call in build method override in my AsyncNotifier.
state is updating with new data but isLoading or loading property in when() does not get update.
is this expected behavior? is there any other way isLoading gets Update?
final leaveListNotifier =
    AsyncNotifierProvider<LeaveViewModel, LeaveStateModel>(
        () => LeaveViewModel());

class LeaveViewModel extends AsyncNotifier<LeaveStateModel> {

  Future<void> getLeaves() async {
    state = const AsyncLoading();
    apiService.getLeaves().then((value) {
      final leaveList = (value.response.data['data']['leave'] as List)
          .map((e) => LeaveModel.fromJson(e))
          .toList();
      final grantLeaveList =
          (value.response.data['data']['getGrantLeave'] as List)
              .map((e) => GrantLeaveModel.fromJson(e))
              .toList();
      state = AsyncData(LeaveStateModel(
          leaveList: leaveList, grantLeaveList: grantLeaveList));
    }).catchError((e) {
      if (e is DioError && e.response?.data == null) {
        showCenterDialog().then((value) {
          getLeaves();
        });
      }
    });
  }

  @override
  FutureOr<LeaveStateModel> build() {
    getLeaves();
    return state.value!;
  }
}

so currently i am calling my function call in initState like this that way it getsUpdate
SchedulerBinding.instance.addPostFrameCallback((timeStamp) {
      ref.read(leaveListNotifier.notifier).getLeaves();
    });

Tracking for documentation work moved to https://github.com/rrousselGit/riverpod/issues/2625 and https://github.com/rrousselGit/riverpod/issues/2630


Question: Why change to non-exhaustive language model?

Why move from whoami::lang() which returned a Vec to whoami::langs() which returns Vec if the enum Language isn't using close to an exhaustive list? Having only English, Spanish and __ to represent other's seems like it would further complicate language matching downstream.

The plan is to eventually make the enum include all ISO 639-1 language codes, but has not been prioritized

It is just an internal detail at the moment, usage should be fine using .to_string() for any language / country combination


Separate functions that are not related to the issuer

1. Change to store issuer-related and unrelated APIs in separate directories
app > routers > issuer | misc
2. Add environment variables

FREEZE_LOG_FEATURE_ENABLED: Set if you want to use FRREZE-LOG features.
DVP_AGENT_FEATURE_ENABLED: Set if you want to use DVP Paying Agent features.

3. Change to DVP-related APIs

The API used by the paying agent was extracted and redefined.

For issuer: app.routers.issuer.settlement_issuer.py
For paying agent: app.routers.misc.settlement_agent.py

Change the specifications for issuer-related APIs to force the issuer address to be set in the header. Data between issuers is now safely separated.

GET: /settlement/dvp/{exchange_address}/deliveries
GET: /settlement/dvp/{exchange_address}/delivery/{delivery_id}

From the Agent's perspective, there was a problem with referencing the delivery list, so a new API was added.
https://github.com/BoostryJP/ibet-Prime/pull/664/commits/17a38ff5dacaf31b224d559bb356930eb51e61ff


Add running unit tests to CI pipeline

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 66.73%. Comparing base (4d0ce83) to head (b94383a).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #835      +/-   ##
==========================================
- Coverage   69.98%   66.73%   -3.26%
==========================================
  Files         277      277
  Lines        8700     8700
  Branches     1014     1014
==========================================
- Hits         6089     5806     -283
- Misses       2091     2382     +291
+ Partials      520      512       -8

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


0.4.0 breaks functionality

   Script Error                    Panasonic Aus.py: invalid syntax
   Script Error                    around line 477 - ""HOST": f"{self._host}:{self._port}","

If I revert back to 0.3.6 it works again. I use the script in Indigo 7.4.

do you more information on this issue? what is software is indigo 7.4? how does it make use of this python module? where does the file Panasonic Aus.py come from? can i have a look at it?

You're right, it's f-strings added in the PR that got merged in. Which Python version are you running? As far as I know Indigo uses the builtin Python on Mac systems: https://forums.indigodomo.com/viewtopic.php?f=75&t=22942
F-strings were added to Python 3.6. Any version older than that won't be able to run the code.

Yes, you are right. Indigo uses Python 2, I can't change that to 3.
`app_id = str(indigo.variables[1578171917].value)
encryption_key = str(indigo.variables[490143362].value)
ip = str(indigo.variables[859126059].value)
host= 55000
import panasonic_viera
rc = panasonic_viera.RemoteControl(ip, host, app_id, encryption_key)
rc.turn_off()`


Process doesn't terminate when there is no error on startup

If there is no error in the startup() function, then there is nothing in the exitCode channel and the process never terminates as it waits for a value to be pushed into this channel

The PR title is misleading, it's not only an issue with exit codes but much more importantly that it doesn't terminate at all

OK, looks good :+1:


[feature request] Integrate with ipywidgets

I just discovered ipyflow, it's really cool !
I see a huge potential for an integration with ipywidgets. Indeed, if one could simply do:
import ipywidgets as w
from magic import widget

slider = w.IntSlider()
a = 10

b = a + widget(slider, "value")

And then b would update when the widget value changes, it would be awesome !

Hi there! Thanks for the kind words. We actually already have some integration with ipywidgets, but I'll have to check to see if I can get it working using the above approach as well.
The way I usually do it is
b = a + slider.value

and if that line is in another cell, it should auto-rerun when the slider changes (provided reactivity is enabled with %flow mode reactive). Of course you can also do
b = a + slider.$value

and it will update even if reactivity is not enabled, as well as
b = a + slider.$$value

and then stuff that depends on b will also get reactively executed.
I haven't documented this yet in the readme since I usually wait until new features are extensively dogfooded before doing so, but this one is probably ready for primetime.
In case you're interested, another one is alt mode execute in JupyterLab -- when reactivity is disabled, cmd+shift+enter / ctrl+shift+enter on windows will trigger a reactive execution -- this allows you to see what will get reactively executed thanks to the highlights, and you don't have to commit to it until later. Sorry for going off topic but I'm really excited about that one :)

This feature is not documented and fully integrated, so going to go ahead and close out this issue :)


Spring Boot Native Boot Up Problems

Hello, colleagues,
I faced a problem of booting up the native image.
It has no logs at all.
Could you please help me to find a workaround?
Hardware Overview:
Model Name:	MacBook Pro
Model Identifier:	MacBookPro16,2
Processor Name:	Quad-Core Intel Core i7
Processor Speed:	2,3 GHz
Number of Processors:	1
Total Number of Cores:	4
L2 Cache (per Core):	512 KB
L3 Cache:	8 MB
Hyper-Threading Technology:	Enabled
Memory:	32 GB
OS: v 12.4 Monterey
The Sample:
https://github.com/fragaLY/performance-researches/tree/master/spring-boot-web-native
Steps to reproduce
Firstly run from "docker" directory:
docker-compose up
Then
./gradlew bootBuildImage
 docker run -p 8080:8080 spring-boot-web-native:0.0.1-SNAPSHOT
The process is killed.
Thank you in advance.

Hi! Do you happen to have any logs?

@mhalbritter , as I said "It has no logs at all."
Unfortunately, the only thing is to try to find the way on the sys level. Nevertheless, all the tools I've used had no any option to help me in research.

Hi! Do you happen to have any logs?

If you need any help from my side, I am opened for contribution.

gdb says:

Thank you for advice, @kharkevich.

Okay, I can reproduce it locally. The generated native image doesn't log anything and exits with exit code 1.
The problem seems to be the logback-spring.xml file, which prevents logging. As soon this is removed, you can see this:
org.springframework.context.ApplicationContextException: Unable to start web server; nested exception is java.lang.NoSuchMethodError: io.undertow.util.FastConcurrentDirectDeque.<init>()
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:165) ~[spring-boot-web-native:2.7.1]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:577) ~[spring-boot-web-native:5.3.21]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:147) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:734) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:408) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-web-native:2.7.1]
        at by.vk.springbootwebnative.SpringBootWebNativeApplication.main(SpringBootWebNativeApplication.java:10) ~[spring-boot-web-native:na]
Caused by: java.lang.NoSuchMethodError: io.undertow.util.FastConcurrentDirectDeque.<init>()
        at io.undertow.util.ConcurrentDirectDeque.<clinit>(ConcurrentDirectDeque.java:45) ~[spring-boot-web-native:2.2.18.Final]
        at io.undertow.server.handlers.cache.LRUCache.<init>(LRUCache.java:67) ~[na:na]
        at io.undertow.servlet.handlers.ServletPathMatches.<init>(ServletPathMatches.java:82) ~[spring-boot-web-native:2.2.18.Final]
        at io.undertow.servlet.core.DeploymentImpl.<init>(DeploymentImpl.java:95) ~[na:na]
        at io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:151) ~[na:na]
        at org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory.createManager(UndertowServletWebServerFactory.java:330) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.web.embedded.undertow.UndertowServletWebServerFactory.getWebServer(UndertowServletWebServerFactory.java:299) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:184) ~[spring-boot-web-native:2.7.1]
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:162) ~[spring-boot-web-native:2.7.1]
        ... 8 common frames omitted

You are using Undertow, for which spring-native has no support for. Please see the list of supported starters for more details.

Thank you, @mhalbritter
Have a nice day.

 Have a nice day, too!


feature idea - particle update - should also work OTA

if you specify a device name / id, it could send the system updates over the air?

Nice idea.  I imagine this triggers the auto-updater to start the update process and the appropriate binaries if the device is out of date. Managing the update from the cloud would be simpler in the long run since the cloud sees the current installed state of the device.
Have to be very careful we don't inadvertently downgrade the modules on a device until that is supported in the auto-updater since that must be done in reverse order.

If we are updating system parts, can't we do part1 and then part2?

Yep, when updating that is the correct order, but when downgrading it should be in the reverse order, so that dependencies are always met. (part1 is a dependency of part2.)


WIP support: Improve both Cloud and remote support view formatting.

Updates:

Cleans up how Realm plan_type and org_type form options are generated in Cloud support view.
Fixes spacing around scheduled next plan offer in remote support view.
Makes approve sponsorship button more visible in both support views (color).
Updates labels of search objects (realms, users, servers, etc) to be more clear between Cloud and remote support views (color, size, include "Cloud" or "Remote" in label text).
Adds latest sponsorship request information to the Cloud support view.

Screenshots and screen captures:

Remote realm example with configured fixed price plan offer

Before
After

Cloud realm example with pending sponsorship request

Before
After

Cloud realm example with current plan

Before
After

Remote server example with pending sponsorship request

Before
After

Self-review checklist

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

Communicate decisions, questions, and potential concerns.

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

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

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

Completed manual review and testing of the following:

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

Nice! Maybe we can make the tag colors even more distinct, like changing the cloud ones to purple?

Updates:

Cloud labels are now purple, see updated screenshots.
Remote server audit log data is now formatted to indicate if it is stale or current, see updated screenshots.

Updated screenshots:

Cloud support view - realm with sponsorship request

Before
After

Cloud support view - user and realm with current plan

Before
After

Remote support view - Server with realms and current audit log data

Before
After

Remote support view - Server with stale audit log data

Before
After


Empty directory missing in imported Docker image

While attempting to import & run a Selenium image from Docker, I was greeted with a message about a missing directory:
$ enroot import -o selenium_standalone-chrome_120.0.sqsh docker://selenium/standalone-chrome:120.0
$ enroot create -n selenium -- selenium_standalone-chrome_120.0.sqsh
[INFO] Extracting squashfs filesystem...
Parallel unsquashfs: Using 40 processors
31909 inodes (32611 blocks) to write

created 24013 files
created 3477 directories
created 7875 symlinks
created 0 devices
created 0 fifos
created 0 sockets
$ enroot start selenium
Error: The directory named as part of the path /var/run/supervisor/supervisord.pid does not exist
For help, use /usr/bin/supervisord -h

Verifying inside the container, the directory is indeed missing:
$ enroot start test bash
# ls -l /var/run/supervisor
ls: cannot access '/var/run/supervisor': No such file or directory

Using podman to start a container, the directory exists:
$ podman run --rm -it docker://selenium/standalone-chrome:120.0 bash
$ ls -l /var/run/supervisor
total 0

This is our enroot.conf:
ENROOT_CONFIG_PATH ${HOME}/.config/enroot
ENROOT_SQUASH_OPTIONS -b 1048576 -comp zstd -Xcompression-level 2
ENROOT_MOUNT_HOME n
ENROOT_RESTRICT_DEV y
ENROOT_REMAP_ROOT y
ENROOT_ROOTFS_WRITABLE y
ENROOT_RUNTIME_PATH /run/enroot-runtime/user-$(id -u)
ENROOT_CACHE_PATH /var/cache/enroot-cache/group-$(id -g)
ENROOT_DATA_PATH /run/enroot-data/user-$(id -u)

enroot mounts a tmpfs on /var/run by default, to be similar to a bare-metal system. Thus hiding what the container image stores in these folders. Container images writers should probably avoid creating files/directories in folders like /var/run or /tmp.

Note that if you don't want this behavior you can always edit the enroot mount configuration.
Alternatively you can mount a tmpfs when you start the container, or create the directory in your entrypoint:
enroot start -m tmpfs:/run/supervisor:x-create=dir,mode=0600 selenium

@flx42 Interesting. I wasn't aware of this, but I understand the reasoning. I suppose bare metal these folders are created by tmpfiles.d or some similar mechanism, which isn't effective in a container. In this case, mkdir /var/run/supervisor fixes the issue, which is simple enough. TBH, this is the first time we've encountered such an issue in 3+ years, so I don't know whether it's even worth looking into it much. My only concern is confused users coming to me with this type of issue ;)

Happy new year! We decided to install Podman alongside Enroot on compute nodes. This not only allows users to build images on-site (and then enroot import them), but we can also point people in that direction if something like this crops up. Given the rarity and existing workaround, I'm closing this issue.


Failed to start packt: container(s) failed to become healthy before their configured timeout

On Mac, cloned the repo, cd into the directory, and ran ddev start
Starting packt...
Network ddev-packt_default created
Building project images...
Project images built in 0s.
 Container ddev-packt-selenium-chrome  Created
 Container ddev-packt-storybook  Created
 Container ddev-packt-db  Created
 Container ddev-packt-next  Created
 Container ddev-packt-web  Created
 Container ddev-packt-selenium-chrome  Started
 Container ddev-packt-next  Started
 Container ddev-packt-db  Started
 Container ddev-packt-storybook  Started
 Container ddev-packt-web  Started
Starting Mutagen sync process...
Mutagen sync flush completed in 2s.
For details on sync status 'ddev mutagen st packt -l'
Waiting for web/db containers to become ready: [web db]
Starting ddev-router if necessary...
 Container ddev-router  Created
 Container ddev-router  Started
Waiting for additional project containers to become ready...
Failed to start packt: container(s) failed to become healthy before their configured timeout or in 120 seconds. This might be a problem with the healthcheck and not a functional problem. (container 'next' exited, please use 'ddev logs -s next' to find out why it failed)

Ran:
$ ddev logs -s next
yarn install v1.22.19
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/next/-/next-13.5.0.tgz: Request failed \"404 Not Found\"".
info If you think this is a bug, please open a bug report with the information provided in "/app/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
yarn run v1.22.19
$ next dev -p 4000
/bin/sh: 1: next: not found
error Command failed with exit code 127.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Any suggestions how to proceed.  Googling that error didn't show anything really actionable.

It seems that next 13.5.0 is no longer available on the yarn registry 🤔
Can you please try to delete next/yarn.lock file and then run ddev restart ?

That got it.  Thanks!


Light Mode / Dark Mode Toggle

It might be nice to include a toggle to let users choose light / dark mode.  This would be an opt in variable that would then render the toggle

What about getting the information about the preferred color scheme from the user's OS/browser?


Reorganize solvaholic/solvaholic.github.io

Proposed new organization:
:doc         <- Branch for the solvaholic.github.io Pages site
                (Includes `_layout`, `_posts`, `assets`, and so on)
/bin         <- Re-usable scripts and tools
                (For example: scripts to manage AWS, and to stub Git projects)
/dotfiles    <- @solvaholic's dotfile backup
/script      <- Scripts for using and maintaining the contents of this repo
                (Includes script/lib, with supporting scripts/tools)
/templates   <- Various templates, ready for copy-and-pasting

To do:

[ ] Move solvaholic.github.io Pages site into :doc branch
[ ] Stub new dir's in solvaholic/solvaholic.github.io
[ ] Organize solvaholic/solvaholic.github.io content

Here's the /script reference I was looking for:
https://github.com/github/scripts-to-rule-them-all/blob/master/README.md

Slow start:

User pages must be built from the master branch.

And it'd be :gh-pages rather than :docs.

👍


Add Contributing and Security guidelines

This is done to make progress on Community Standards insight.

lgtm, merging. Thanks!


Disable eval button when waiting for response

Fixed!

Will try to deploy this tonight but I am going to see first if I can deployment and testing this a bit easier.


Setup deployment on GitHub packages

Every commit is built and the Maven artifacts are deployed to GitHub packages (See the 'packages' icon in the 'Code' tab on GitHub) where the version is set to the git commit hash. The 'Actions' tab on GitHub shows the build jobs. The builds do not contain the ready-to-use fat jars for the GraphHopper server and are only meant to be used for development purposes.

Another gotcha: While the packages can be downloaded from github even without signing up using them via maven requires authentication with any github account. So you might have to create a personal access token and modify your local ~/.m2/settings.xml file as described here: https://help.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-apache-maven-for-use-with-github-packages#authenticating-to-github-packages


The way to save the disparity into image

Hi,
I follow the demo code and try to save the depth image by using test_kitti_depth.py
Images I saved are not what I expected.......
The original input image:

The predicted depth:

The resized predicted depth:

those predictions I saved don't look like a proper depth map. Is there anything that I misunderstood?
Here is my code:

pred = sfm.inference(inputs, sess, mode='depth')
pred_disp = normalize_depth_for_display(pred['depth'][0,:,:,0])
cv2.imwrite('data/kitti/raw_disp.png', pred_disp)
fh_disp = open('data/kitti/raw_disp.png', 'r')
raw_disp = pil.open(fh_disp)
img_disp = raw_disp.resize((1242, 375), pil.ANTIALIAS)
img_disp.save('data/kitti/disp_resize.png')

Thanks

@keishatsai
Hello,
I also have this problem,and I use plt.savefig() instead of using imwrite(),but I found plt.savefig() save image same as using imshow().Actually,I want get depth map and use it in other program and I want to know how to do it,can you give me some suggests?
Thank you.


cargo-clippy passes wrong arguments to rustc

See https://travis-ci.org/untitaker/mysteryshack/jobs/96356699#L519

extra arguments to rustc can only be passed to one target, consider filtering the package by passing e.g. --lib or --bin NAME to specify a single target

rust nightly version: 2015-12-11
Just run cargo clippy on https://github.com/untitaker/mysteryshack

cargo clippy --lib works fine. You have to specify what you want to run clippy on when it's ambiguous, just as the error message says.


ISPN-7229 Marshalling arrays throws exception

Replace ArrayExternalizers with array support in GlobalMarshaller
If all the elements of array use the same externalizer, pack it only once
Use ClassIdentifiers to efficiently encode array component type
Change medium array boundary to cover maximum range

https://issues.jboss.org/browse/ISPN-7229

Any quantifiable improvements of this new array encoding?

@galderz

Any quantifiable improvements of this new array encoding?

My use case (and the place where I've spotted the NPE) was being able to marshall InternalCacheValue[] with instances with AdvancedExternalizer efficiently. Currently only certain array types were handled, and the externalizer would be looked up & encoded again and again. The least I have shortened the encoding of the externalizer identifiers.

And thanks for the pointers to class leaks, I haven't realized that.

Needs rebasing

And thanks for the pointers to class leaks, I haven't realized that.

I might have been to strong in my statement. The danger is particularly present when user classes are involved. Your current code might be fine, but I'd avoid the static part.

The least I have shortened the encoding of the externalizer identifiers.

^ Can you give us some numbers if possible?

The least I have shortened the encoding of the externalizer identifiers.

^ Can you give us some numbers if possible?

You mean pre-PR and after? pre-PR the custom arrays could not be serialized at all. For Object[] with 100 elements containing PojoWithExternalizer, pre-PR is:
all-null: 104 bytes
all-set: 1004 bytes
99 set: 995 bytes
98 set: 986 bytes
With PR, this is (as expected):
all-null: 4 bytes
all-set: 509 bytes
99 set: 995 bytes
98 set: 986 bytes
Note that this uses external externalizer (4 bytes), not internal (1 byte).

@galderz Rebased && updated - mainly the classloader potential leaks, and replaced HashMap with perfect hash map implementation. I considered replacing ClassToExternalizerMap with it, too, or extracting the map functions in that class with LinearProbingHashMap (that would extend ArrayMap), but there are two differences that you could object:
a) you compare classes with == while this is not suitable for general purpose implementation
b) general purpose map uses Object[] array, because Java does not permit generic new K[capacity] and therefore the code needs to contains some casts.
Therefore, I'll leave replacing linear probing hashmap at your (later) discretion.

Integrated, thx @rvansa


Update data-store-variables-and-jms-queues-when-to-use-which-option-6…

Hi SAP Team,
In general this documentation doesn't mention the Data Store Sender adapter. I don't remember, but I think this adapter is relatively new - so I guess that's the reason. With the availability of the DS Sender adapter, in my opinion, most of the disadvantages compared to the JMS adapter are eliminated. Or am I missing something?
In respect of this, also the Async decoupling usecases explained here: https://help.sap.com/docs/cloud-integration/sap-cloud-integration/use-cases-for-data-store-and-variables need to be adjusted as no (timer based) polling is needed anymore.
Kinds regards,
Philippe

@AnnikaGonnermann This page and its two child pages: https://help.sap.com/docs/cloud-integration/sap-cloud-integration/data-store-variables-and-jms-queues-when-to-use-which-option
E.g. the first table on that page mentions the JMS sender adapter, but not the DS sender adapter (only the DS operations).

Many thanks for your feedback!
We have now updated the documentation at the following topics:
Use Cases for Data Store and Variables
Data Store, Variables, and JMS Queues: When to Use Which Option
Apply the Retry Pattern
Please let us know if you have further comments.
Many thanks!


feat: Add decoration handler for handling fragment decoration

Description
The fragment decoration needs more logic on handling decorations.
We leveraged Eventlistener, at the same time introduce decoration handler on index.js to handle the logic of redecorating.

Related Issue

Motivation and Context

How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[ ] 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 change)

Checklist:

[ ] I have signed the Adobe Open Source CLA.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

@ramboz I appreciate if you could let me know what's your thoughts on this :) I could improve accordingly and also add tests in. Thank you!


Extract Binary Cache refactoring changes from microsoft/vcpkg-tool#908

Merging without additional review because this is a subset of #908.


Pass thru LDW_02 distance and time to lane crossing

We are probably impairing Side Assist/Lane Change Assist when we don't supply DLC and TLC values. OP doesn't calculate these today, that I'm aware of, so we'll have to pass through what we receive from the car's camera.

New DBC/doc info is available for LDW_02, to be integrated into OpenDBC first, and then follow-up will be needed to do the pass-thru depending on whether the LKAS camera is detected as present.

Completed and upstreamed!


Sort elements along an axis to allow for transparent shaders

When using transparent shaders we will need to sort elements in some way to ensure that they are represented correctly.  The Unity GUI way of doing things is to have the hierarchy traversal specify the draw order, but that ends up biting us a whole lot if people move their head around since gui elements end up overlapping each other in ways they should not.
This should be a checkbox so that we don't waste time sorting things when using an opaque shader.  We should use some sort of sorting algorithm that performs well on already-sorted data.  Since the view of the user isn't going to be changing drastically from frame to frame, the elements will probably stay in almost sorted order frame-to-frame.

Not really a thing we need since we can't upload the mesh every frame anyway....


Support for cuSPARSE/spmm_blockedell in cupy v11

Description
From cuda 11.2, cusparse SpMM can be used for performing sparse matrix - dense matrix multiplication, where the sparse matrix is represented in Blocked-ELL format (see https://github.com/NVIDIA/CUDALibrarySamples/blob/master/cuSPARSE/spmm_blockedell/spmm_blockedell_example.cpp).
This feature does not seem to be included in cupy v11.xx.
Am I missing something or was this particular functionality of cusparse spMM not linked to cupy yet? Is there a plan to do so ?
Thanks in advance.
Additional Information
I have looked into including spmm_blockedell and related routines by modifying the cupy_backends (cusparse.pyx, cusparse.cpp, cupy_cusparse.h) but, with minimum knowledge of the cupy source code, I am not sure if what I am trying will get me anywhere. The biggest hurdle seems to be the addition of the needed Python wrapper for cusparseCreateBlockedEll, etc.
Is there a simpler way to get this spmm_blockedell work within cupy?
If modifying the cupy_backends is the way to go, how to understand the way to generate the Python wrappers?
Some references:
https://github.com/NVIDIA/CUDALibrarySamples/blob/master/cuSPARSE/spmm_blockedell/spmm_blockedell_example.cpp
https://github.com/NVIDIA/CUDALibrarySamples/blob/master/cuSPARSE/dense2sparse_blockedell/dense2sparse_blockedell_example.c
https://docs.nvidia.com/cuda/cusparse/index.html#cusparse-generic-function-spmm

Hi, thanks for the request.

Am I missing something or was this particular functionality of cusparse spMM not linked to cupy yet? Is there a plan to do so ?

AFAIK SciPy does not support ELL format, this is not on a roadmap.

The biggest hurdle seems to be the addition of the needed Python wrapper for cusparseCreateBlockedEll, etc.

#6511 is a good example of adding a new Python binding to cupy_backends.


WIP: feat: better splashscreen

[ ] Make it reactive

Deployed at: https://alva-issues-713.surge.sh


SQLite: Reverse Engineer

Implement all the things required to do
Scaffold-DbContextTemplate EntityFramework.Sqlite
Scaffold-DbContext 'Data Source=Chinook.sqlite' EntityFramework.Sqlite

@natemcmaster - I would wait til https://github.com/aspnet/EntityFramework/pull/2741 is in before you start.


Model text editor and parser

With highlighting and autocomplete.
Heavyweight version of #14.

moved to wishlist


Capitalization updates

Changed spelling of classes and methods to use Swift Standards, i.e. HTTPServer instead of HttpServer
Motivation and Context

Fixes https://github.com/IBM-Swift/Kitura/issues/132
How Has This Been Tested?
Tests were updated and all pass.
Checklist:

[ ] I have submitted a CLA form
[ ] If applicable, I have updated the documentation accordingly.
[ ] If applicable, I have added tests to cover my changes.

Opening PR against develop instead


Phillips Curve isn't in the right place for period 5 of inflation shock

doesn't seem like pc is in the right place, could be wrong but the economy is never at any point on that line
on that note i think POIs are wrong too

fixed


Side effects of setting numpy.random.seed

Information
Some qiskit functions still call numpy.random.seed to set a given (integer) seed. This sets the seed globally, influencing also user's code.
Example: https://github.com/Qiskit/qiskit-terra/blob/master/qiskit/quantum_info/random/utils.py#L54

Qiskit Terra version: master
Python version: 3.7.4
Operating system: macOS 10.14

What is the current behavior?
Using numpy.random.seed sets a seed globally which also impacts code on the user side. It makes it harder for the user to derandomize only specific sections of their code.
Steps to reproduce the problem
One can run the following to seed that the seed is indeed global.
>>> random_unitary(4,seed=3)
Operator([[ 0.65770066-0.20053555j -0.26006836-0.3826572j   0.36309952+0.38527141j
  -0.08189584+0.16177457j]
 [-0.10199905-0.43575616j  0.09482339+0.23352842j -0.1152966 +0.43890564j
  -0.5449333 -0.48301344j]
 [-0.01611248-0.37645837j -0.07949969-0.06578792j -0.69457921+0.11270693j
  -0.02579361+0.5929273j ]
 [ 0.32407147-0.28271057j  0.79667728+0.27761121j  0.13524564-0.01893929j
   0.25499839+0.14005532j]], input_dims=(2, 2), output_dims=(2, 2))
>>> np.random.randint(10)
1
>>> np.random.randint(10)
1
>>> np.random.randint(10)
1
>>> np.random.randint(10)
5
>>> random_unitary(4,seed=3)
Operator([[ 0.65770066-0.20053555j -0.26006836-0.3826572j   0.36309952+0.38527141j
  -0.08189584+0.16177457j]
 [-0.10199905-0.43575616j  0.09482339+0.23352842j -0.1152966 +0.43890564j
  -0.5449333 -0.48301344j]
 [-0.01611248-0.37645837j -0.07949969-0.06578792j -0.69457921+0.11270693j
  -0.02579361+0.5929273j ]
 [ 0.32407147-0.28271057j  0.79667728+0.27761121j  0.13524564-0.01893929j
   0.25499839+0.14005532j]], input_dims=(2, 2), output_dims=(2, 2))
>>> np.random.randint(10)
1
>>> np.random.randint(10)
1
>>> np.random.randint(10)
1
>>> np.random.randint(10)
5

What is the expected behavior?
The seed should be scoped to the function call.
Suggested solutions
Either use a numpy.random.RandomState generated from the given (integer) seed internally or accept it as argument. I would suggest something along the lines of what SciPy does: https://github.com/scipy/scipy/blob/7651d17041dfa0bd7df045bd7b418d693178e0fe/scipy/_lib/_util.py#L174

This is already done in places like the StochasticSwap transpiler pass using:
rng = np.random.RandomState(seed)

and the like should be done elsewhere.


Reorganize Ingest directory

PUMS and HVS should each live in their own folder

Replacing with more ambitious file reorganization


better error handling in devices.rs

use failure for error handling in devices.rs as indicated by the FIXME's in the code
we could do this together for the first time if you want to, so we can both get acquainted with the failure-module

learn-duel took too much time last week so there was no time left to dive into this issue together.
Just mentioned #4 in the commit but it is also relevant for this issue here: https://github.com/DonatJR/adbackup/commit/c30191a6fe4b9be9eeda1131476c6497877d665e
What do you think about that strategy?

looks good to me and you are more familiar with the error_chain concepts, so 👍


Solved Issue #397

Change clear icon of GameOfLife activity as mentioned in issue #397

Good job. Thanks.


json config file exposes password

Hi, I don't know if this was intended (I doubt it), but apparently this package uses the same json to store both user credentials (email and password) and preconfigured words/answers pairs. This means that if someone writes a sentence to you that contains the word "password", the bot will kindly return your hangouts (i.e. google) account password. Also, but this is way less severe of course, the json stores the password in cleartext.

"This means that if someone writes a sentence to you that contains the word "password", the bot will kindly return your hangouts (i.e. google) account password." This was already patched.


Omnisharp-vim not working with Ultisnips on Completion snippets

Hi. I'm struggling with how to config to use the Completion snippets.
Currently I'm using OmniSharp-vim, Ultisnips and coc.nvim.
Here are some configs that I use in init.vim file:
let g:OmniSharp_want_snippet=1
let g:OmniSharp_server_stdio = 1
let g:OmniSharp_server_use_mono = 0
let g:OmniSharp_server_use_net6 = 1
let NERDTreeShowHidden=1
let g:NERDTreeWinPos = "left"
let g:UltiSnipsSnippetDirectories=[$HOME.'/.vim/plugged/ultisnips']
let g:UltiSnipsEditSplit="vertical"
let g:UltiSnipsRemoveSelectModeMappings = 0
let g:UltiSnipsExpandTrigger = '<Tab>'
let g:UltiSnipsJumpForwardTrigger = '<Tab>'
let g:UltiSnipsJumpBackwardTrigger = '<S-Tab>'
let g:UltiSnipsListSnippets="<C-Tab>"

Whenever I use a method (e.g. Console.WriteLine(long value)), the popup suggestion's ok.

But when I enter, omnisharp only show the  it will jump out of the parameter. I have to remove long value and continue to code.

It happens with all the methods and functions that has parameter snippets.
Currently I'm not sure the error comes from conflict between coc.nvim and omnisharp-vim or not.

But when I enter
What do you mean by this? Do you mean hit the enter key <cr>? You've configured ultisnips to use <Tab>.

This config works fine for me:

Hi @nickspoons,
Sorry for late reply. I found out in my init.vim file there is another completion snippet plugin so the error occurred. I'd fixed that and the completion snippets is working now.
But still there is the snippet for generic template like Action<T> or Func<T> that the completion snippet is not worked.
However with Action<T>(object @object, IntPtr method) liked delegate, the snippet is still functioning OK.
I tagged the video about this problem in the comment. Can you check again?

Thank you very much. Issue closed.

@huyHA9597 I've re-opened as I think we can do this better. I've just created PR #796 which seems to work pretty well for me with various completion providers, including coc.
Are you able to try it out and see if it works for you?

Hi @nickspoons. Sorry for late reply.
Since the last time when I closed the issue, I manually added some snippets for Action<T> liked type on vim-snippets plugin so I didn't notice your notification. Really sorry about that. :((
Anyway, I've just pulled your PR #796 code and tested on my environment. It works really well. I don't have to use my custom snippets anymore.
Thank you very much!

Thanks for testing, @huyHA9597. I've been using this for a few days too and it seems like a good fix, I'll merge it.


add imaging metadata

It worked, thanks @weiglszonja ! example here: https://catalystneuro-processing.s3.us-east-2.amazonaws.com/adesnik-lab-to-nwb/5stim.nwb