Form validation invalid icon on select only half visible

Operating system and version: Windows 10
Browser and version: Latest firefox
A reduced test case: https://codepen.io/hrueger/pen/bGEYxxJ

The icon which is added to form-control elements with the class is-invalid, looks like this on select fields:

See https://codepen.io/hrueger/pen/bGEYxxJ

I just noticed that the same issue applies for is-valid and the green tick icon.

Confirmed in Firefox 77 and Chrome 83. No problem with .custom-select.
Looks like 5.0.0-alpha1 has a different issue with that, the arrow is not displayed at all, so it looks like an input element.

Hello @XhmikosR  & @alecpl
I have already fixed this issues and also submit the merge request on this ticket #32289
Thanks!

This doesn't apply to v5 I believe because of our .form-select being a completely custom component, so removing that label. Still tbd on if we can fix this reliably for v4 though given the differences in rendering between browsers for the .form-select there (but not .custom-select).

This doesn't apply to v5 I believe because of our .form-select being a completely custom component, so removing that label. Still tbd on if we can fix this reliably for v4 though given the differences in rendering between browsers for the .form-select there (but not .custom-select).

This should be fixed by #33206


Add response classes by Horgh

Based on https://github.com/kushniryb/minfraud-api-v2/pull/16

Coverage decreased (-0.004%) to 98.343% when pulling fb1e4b39dcdba91173a7d9371dfa10c54afc5dbe on enhancement/response-classes into 58a975d09d3179483dfa6ec9e34e814237e04250 on master.


[Input] Fix DirectInput Acquire()

PR Details
Calling joystick.Acquire() concurrently with a direct input device connected will hang threads indefinitely.
Related Issue
It should fix #710, it did fix it on my end but I would still like @jeske to confirm that it works on his end too to be sure.
Motivation and Context
Fix a bug.
Types of changes

[ ] Docs change / refactoring / dependency upgrade
[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 change)

Checklist

[ ] My change requires a change to the documentation.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Thanks!
Merged, we can always revert/improve if it didn't fix the situation for @jeske


Suggested improvements for the "Benchmarking your changes" Wiki page

There's a couple of smaller improvements that could make sense for the https://github.com/mozilla/pdf.js/wiki/Benchmarking-your-changes page:

In the example benchmark.json file, use "rounds": 50, instead since a lower number of rounds often doesn't given sufficient statistical confidence.
In the example benchmark.json file, use "type": "eq" instead since often when benchmarking is done rendering performance is what matters the most (thus giving someone copying that snippet a better starting point).
Change the $ gulp generic commands (two occurrences) to read $ SKIP_BABEL=true gulp generic instead. That way you're actually testing the code as-is, rather than its Babel translated version, which seems much more appropriate here.

I just made the changes to the page. Thank you!


Markdown cells, code cells, and smart cells: taking inspiration from Livebook

Description
Right now, Marimo has essentially two kinds of cell: code cells and Markdown cells. (Although I do appreciate that Markdown cells are secretly just code cells featuring only a mo.md call.) Markdown cells are pretty straightforward, but code cells live a kind of double life: sometimes they're about building a UI application via marimo.ui.* and friends. Sometimes they're about displaying the actual code itself!
Right now we have to make a global choice about which of these two things is most important, across the entire notebook, based on whether we --include-code or not.
I'm proposing to take inspiration from Livebook (from the Elixir/Erlang community), which acknowledges this difference by explicitly having three kinds of cell: Markdown cells, code cells, and 'smart' cells, the last of which are mini programmatic UIs wrapping a code cell -- that is, exactly like what Marimo provides. And most importantly... all three of these cells types can be mix-and-match'd in any way.
i'd love to have that approach in Marimo as well.
(In fact Livebook seems to have quite a lot of nice ideas floating around in it, so I suspect there may be other points worth taking inspiration from it as well.)
Suggested solution

Alternative
No response
Additional context
No response

If the point of having multiple kinds of cells is to alleviate

Right now we have to make a global choice about which of these two things is most important, across the entire notebook, based on whether we --include-code or not.

would you be satisfied if we simply added a "pin" configuration to cells, so that a pinned cell's code is always shown in the app view? As we've discussed in https://github.com/marimo-team/marimo/issues/2038.
I personally enjoy the fact that in marimo, there's only one kind of cell, i.e. Python; that was an intentional decision. Like you've mentioned, markdown "cells" are just UI sugar that we added later on for the basic use case when one would like to write text without interpolation of Python values.
I just downloaded Livebook and played with it, and it seems like "Smart cells" are also just UI sugar? I personally don't see the benefit they provide, but perhaps I haven't used it long enough.

would you be satisfied if we simply added a "pin" configuration to cells, so that a pinned cell's code is always shown in the app view? As we've discussed in #2038.

I think that might be starting to get a little hairy: in the 'code' view we would have:

markdown cells, for which their code is hidden
pinned code cells, for which their code is visible
unpinned code cells, for which their code is visible
smart cells (what does Marimo call cells that use marimo.ui.etc?), fo which their code is visible

whilst in the App --no-include-code view, we would have:

markdown cells, for which their code is hidden
pinned code cells, for which their code is visible
unpinned code cells, for which their code is hidden
smart cells, for which their code is hidden

and in the App --include-code view, we would have:

markdown cells, for which their code is hidden (as of #2286)
pinned code cells, for which their code is visible
unpinned code cells, for which their code is visible
smart cells, for which their code is visible

That's a pretty complicated mish-mash of when something is visible vs when something is hidden! I probably couldn't teach that to a new user very easily.
Perhaps there should be just two kinds of view: code view, in which every kind of cell has their underlying Python code visible (including Markdown cells). Then the App view (remove the existence of the --include-code flag), for which markdown cells display only their markdown, pinned cells display their code, unpinned cells vanish, and smart cells show their UI.

I haven't touch Quarto exports in awhile- trying to build out precomputing values to make them more usable-
However, cell level annotation specific to export are supported by this implementation: https://dmadisetti.github.io/quarto-marimo (not working right now, but the spec we'll start from again)

smart cells (what does Marimo call cells that use marimo.ui.etc?), fo which their code is visible

marimo has just one type of cell: Python. Cells that don't use mo.ui can also have outputs. There's nothing privileged about cells that use marimo.ui.

That's a pretty complicated mish-mash of when something is visible vs when something is hidden!

I think it can be explained simply.
"Code view", i.e. marimo edit:

Each cell's code is visible.

"App view", i.e. marimo run:

Each cell's code is hidden unless it is pinned.

"App view" with --include-code, i.e. marimo run --include-code:

The same as marimo run, except we include a button that toggles between the marimo run view and the marimo edit view.

The last option, --include-code, is useful when deploying notebooks as examples on the public web (example), and you want the reader to be able to see the entire notebook's code for educational purposes.

I just downloaded Livebook and played with it, and it seems like "Smart cells" are also just UI sugar? I personally don't see the benefit they provide, but perhaps I haven't used it long enough.

Just a quick explanation on Smart cells from an Elixir dev. Smart cells are UI sugar for code generation. They are great to get people started on a library they don't know yet. They give you a nice UI to get a working prototype. You can then switch the UI to the generated code and use that in your application.
The following video demonstrates this. explorer is a data exploration library working with dataframes. kino_explorer is the library bringing a nice UI to livebook that lets you create a data processing pipeline. You can then look at the generated code or convert the UI sugar to a code cell.
https://github.com/user-attachments/assets/02283337-75aa-4657-8379-071c25e90210

Thanks for the video! That's a very clear demonstration, thank you. We have a similar component for transforming dataframes, that also supports code generation.
I suppose one difference is that our components are created programmatically instead of via the UI, which lets users display them using custom layouts, build higher-order components, etc.

You're welcome. Just one side note (not sure it was clear in my last comment): kino_explorer is just one example for a smart cell. There are many others (e.g. kino_k8s which lets you generate code for working with the Kubernetes API, kino_db for working with databases, and many more)

Hi @patrick-kidger, @akshayka. In a previous issue 2038, I tried to draw attention to the potential limitations of a crucial lack of flexibility regarding hiding/displaying code in the notebook's App view. To make the argument as simple as possible, I elaborated on what occurs in Hex notebooks, where making the code visible in both the notebook view and the App view is a choice made possible on a cell-by-cell basis. I mentioned the Hex case because it is also a Python notebook and one that gives special attention to the App view as far as I can extrapolate. However, I would like to stress that this functionality is available in all notebooks that the community has widely used: Jupyter, Pluto, and Observable.
Indeed, for the writer of a particular notebook, that choice (hide/display input code in a discretionary manner) is not crucial (possibly irrelevant) because he or she writes and uses the notebook. He/she is the only user of the notebook!  But if the notebook is written for somebody else to use or read, the possibility of choosing which cells have their code visible in the App view (or in the notebook view) and which ones should have their code hidden is critical.
I use notebooks extensively in teaching (Pluto.jl and Julia). If the abovementioned option is not available, it will not be possible for me to consider using marimo for the same task. In teaching/education, the writer needs considerable flexibility about what is displayed/hidden in the notebook and the App view. The point is simple: all available notebooks that are widely used have implemented that functionality because they have it to their advantage. If Mariamo does not implement it, I believe this fantastic piece of software will not achieve its full potential.

Ps. I have just received the marimo's Newsletter 6. It is lovely to see a new functionality in marimo: sandboxed notebooks. As mentioned in the newsletter, this replicates a fundamental characteristic of Pluto notebooks in Julia: a package environment built inside each notebook. I am a Julia and Pluto user and know by experience how important that characteristic is for teaching because the only package students have to install is Pluto ... and notebooks always run smoothly. However strange it may seem, for using notebooks in teaching, the hide/display code is even more important from a practical point of view.

Thanks @VivaldoMendes for explaining so clearly why this feature matters to you.

But if the notebook is written for somebody else to use or read, the possibility of choosing which cells have their code visible in the App view (or in the notebook view) and which ones should have their code hidden is critic

Regarding this point, as you have pointed out, what we are missing today is controlling which cells have their code visible in the app view, and we can definitely design a feature that enables this.
Unless I am misunderstanding something, we do currently allow configuration of which cells have their code visible or hidden in the edit view. For example, in the below screenshot (edit view), we see two cells: one with the code hidden, and one with code visible:

This per-cell hiding is similar to what Pluto.jl and Observable implement (please correct me if I am wrong!), and is configurable in the cell action menu:

Hi @akshayka. Yes, you are right: in the edit view (what I call the notebook view in the note above), we can decide on a discretionary basis which cells have the input code displayed and which do not. And this is indeed extremely relevant.
I may have given a wrong impression in my note, but I wanted to stress that such importance/relevance remains as valid in the App view as in the edit view.  I understand that with so many demands and specific needs that I have seen in this forum, it seems complicated for the dev team to answer or consider all of them. I am a user and pay nothing for the fantastic software marimo's team has developed. I am just trying to help, giving back my two cents. Thanks.

but I wanted to stress that such importance/relevance remains as valid in the App view as in the edit view.

Understood -- we'll get this done. Thanks for your patience!

I know this issue has smart cells in its title, but I think it was really about controlling whether code is shown on a per-cell basis in the presentation view of a marimo notebook. This is now possible via mo.show_code():
See the docs for more information: https://docs.marimo.io/api/outputs.html#display-cell-code-in-marimo-s-app-views
In particular, regarding

I think my only strong opinion is that I'd like to see --include-code be removed entirely, in favour of something at the per-cell level.

with mo.show_code(), you can choose to include code on a per-cell basis without using the --include-code flag.

Wonderful. This small but critically important feature substantially increased the number of potential users of marimo.

Wonderful. This small but critically important feature substantially increased the number of potential users of marimo.

Fantastic! I hope it solves your use case. If it doesn't, let us know.

I played a bit with this new functionality. It increases the flexibility of editing the notebooks and will undoubtedly be a handy tool. However, an aspect of the solution presented deserves some improvement. I will be sharing two images below that show my points.
The first is that, in the edit view, the cells with the input (code) visible in the App view will have their code repeated. In the case of cells with no direct output, overlapping the two sets of code (original code and the code that will be visible in the App view) looks complicated because it reduces the notebook's readability. Please take a look at the first image below.
Second, in the edit view, cells that produce a direct output still have a readability problem because we have a piece of code below the output (that is, the original code input) and the same code above the output (the code that will be visible in the App view). Please see the second image. This may bring up another point that may confuse users: in the edit view, the input code is presented below its output, while it appears above its output in the App view.
I wonder if it is not possible to avoid displaying the code that will appear in the App view ... in the edit view. We do not need to see it in the edit view at all.

For the position of the code relative to the output, we can readily switch it to match edit view (output above, code below). That is no problem.
For the repeated code in edit view, I think that is a small cost to pay for a sensible programmatic solution that works directly within the rules of marimo - the last expression of a cell is its output. We are trying to minimize configuration driven features as much as possible, as these make the implementation substantially more complex while also complicating the notebook UI. So we likely will not change this aspect of the user interface anytime soon.
In the meantime, if there is code that should be shown in the app view, perhaps you can hide it in the edit view to make working with the notebook more ergonomic. After all this is what our users do with markdown already.

I understand. It's OK. As it stands now, it is better than it was without the possibility to choose which code would be visible in the App view. However, for students to use the notebook, I think it will look a little confusing that to avoid the duplication of code in the edit view, we have to hide the "active" code while the "passive" version will be visible.
But as you mentioned, given the overall architecture of marimo, this is the small cost we must bear. For my personal use, marimo is excellent as it stands right now.


Set up HTTP Request to endpoint for sending receipt data

Part of the receipt extraction module that needs to be added later once an endpoint has been set up.
The object to be sent is already a JSON so I just need to configure the sending portion.

Framework for this has already been implemented and tested. Waiting for authentication to add the tokens and user id dynamically somewhere so it isn't hardcoded.


Fixes: position of clear custom status icon

Summary
CSS rules got overruled, and messed the clear input icon's position in custom status modal.
Ticket Link
https://mattermost.atlassian.net/browse/MM-35544
Screenshots

Release Note
NONE

@BenCookie95 This is a candidate for June 2nd Cloud release.

For cherry-picking to cloud branch.

For cherry-picking to cloud branch.

@koox00 Please help cherry-pick this to the cloud branch.


Broken label on bouncing markers

Problem:

Source Code:

I'm using ngMap 1.16.0

This is the problem of Google Map itself. Please report this bug to Google.


Add syslog receiver

Mind adding to the alpha receiver column https://github.com/signalfx/splunk-otel-collector/blob/main/docs/components.md?


apps.py and celery.py to add to his Django application to use celery properly

Due to issue #121 I have to add to the doc that its mandatory to add apps.py and celery.py to his own Django app

7894bfcb494fcdfdad3f1e5de2e920dffce63546


No in-call audio on consecutive calls

Using 2.0.0 b9 SDK, iOS 10.3.2 iPhone6 and a iOS 10.3.1 iPhone6S, Xcode 8.3.2.
3 calls placed consecutively.
Same direction each time.
Sometimes the second, third or forth calls will fail w/ no audio.
(Sometimes I've had 4 in row connect and have audio just fine too; there doesn't seem to be a pattern here).
But the audio in the calls seemingly should not fail this often, with a beta9 sdk (imho).
The connections always seem to connect fine, regardless of audio.
In the logs I'll attach to this ticket, the third call had no audio. The first two were perfect. A little crackly in Audio, but I could hear audio from both sides.
I put the Twilio SDK into verbose mode. I've got similar logging from our own code that manages the twilio SDK. Sorry, you'll have to skim through that as well.
twilio-no-audio-logs.zip

Thanks for the log and detailed description of the issue @lottadot!
I'll take a look at the log and keep you updated once I found anything.
-bobie

Hi @lottadot
I've noticed that in the log your mobile client is using wifi connections and the network seems to be behind the firewall (maybe just some basic firewall config). I don't have the conclusion yet but just would like to see if the no-audio issue still happens in your application if the device is using cellular data connections.
Trying in my environment as well while waiting for the help from the backend service team to see if they see anything wrong with the signaling.

Unfortunately, I don't have two cellular devices that I can use. Just one. Let me see if I can bribe someone hear to let me hack on their phone for a bit.

One, for the incoming call receiver, should be good enough :)

Hi @lottadot
If it's not too much trouble for you, could you also try using the callkit swift quickstart in your original wifi environment? I've run it for about 30 incoming calls with 2 different wifis and cellular data but so far I am always able to hear audio.

Attached is the debug log of the SwiftVoiceCallKitQuickstart
voice-quickstart-swift-Issue-39-VOIP-Outbound-to-cell-no-audio.txt
app:

Using my own server URL
Using my own bundle identifier

Ran in Xcode 8.3.2, on iPhone6 10.3, and dialed to my cell. There was no audio.
Two separate runs were made. This log is one of them. Both calls had no audio.

Here are some more log snippets. Same code, same devices, not on our corporate wifi, instead on a cellular hot spot's wifi. First 4 calls were fine, 5th call, no audio. We were doing voip to voip calls (i.e. resp.dial(callerId=request.form['From']).client("BBB")
voice-quickstart-swift-issue-39-call-logs-cellular-hotspot.zip

Here are some additional log snippets. Same code, same hotspot wifi, but instead of voip to voip, we did voip to cellular (i.e. resp.dial(callerId="+1614XXXYYYY").number("+1614AAABBBB")
voice-quickstart-swift-issue-39-call-logs-cellular-hotspot-to-cellular.zip

Hi @lottadot
Thanks for trying different combinations and providing us the logs 👍
Didn't realize that it was you in the email thread.
While I was trying to figure out #31 I found that, as in my last comment, if the subsequent calls are made before the provider:didDeactivatedAudioSession: callback is called, then the no-audio issue will happen.
While we are figuring out the best way to solve this, it would be great if you and the team can help confirm my theory.
Btw, it doesn't matter if the call is between two wifi devices or one wifi the other cellular - the Twilio Media Server is always in the middle relaying media. The reason I was asking you to try to reproduce cellular is that I want to make sure it's not the private IP address issued by the wifi access-point that is causing the Media Server trouble.
Let me know
-bboie

@bchen-twilio , I believe that your thoughts on ordering of the messages send before/after provider:didDeactivatedAudioSession: are spot-on.
From a successful Inbound call:
2017-06-08 11:06:48.639132 SwiftVoiceCallKitQuickstart[809:546563] provider:performEndCallAction:
2017-06-08 11:06:48.639301 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TwilioVoice] Inside stopAudioDevice, stopping audio device.
2017-06-08 11:06:48.655105 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(5): tsx0x1038dd4a8  Timeout timer event
2017-06-08 11:06:48.690132 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(5): tsx0x1038dd4a8  .State changed from Terminated to Destroyed, event=TIMER
2017-06-08 11:06:48.690601 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(5): tdta0x1038e0c0  ..Destroying txdata Response msg 200/BYE/cseq=1 (tdta0x1038e0c00)
2017-06-08 11:06:48.690685 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(5): tsx0x1038dd4a8  Transaction destroyed!
2017-06-08 11:06:48.951151 SwiftVoiceCallKitQuickstart[809:546692] [DEBUG TVOEventPublisher] TwilioVoiceClient Endpoint-Analytic HTTP response - status: 200, error: (null)
2017-06-08 11:06:48.951421 SwiftVoiceCallKitQuickstart[809:546692] [VERBOSE TVOEventPublisher] Request sent
2017-06-08 11:06:48.958830 SwiftVoiceCallKitQuickstart[809:546809] [DEBUG TVOEventPublisher] TwilioVoiceClient Endpoint-Analytic HTTP response - status: 200, error: (null)
2017-06-08 11:06:48.959004 SwiftVoiceCallKitQuickstart[809:546809] [VERBOSE TVOEventPublisher] Request sent
2017-06-08 11:06:50.230036 SwiftVoiceCallKitQuickstart[809:546563] provider:didDeactivateAudioSession:
2017-06-08 11:06:51.623510 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(4):    pjsua_aud.c  Closing sound device after idle for 3 second(s)
2017-06-08 11:06:51.630412 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(4):    pjsua_aud.c  .Closing iPhone IO device sound playback device and iPhone IO device sound capture device
2017-06-08 11:06:51.632298 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(4): coreaudio_dev.  .core audio stream stopped

From a subsequent successful Inbound call where *the next call attempt has no audio:
2017-06-08 11:09:00.830386 SwiftVoiceCallKitQuickstart[809:546563] provider:performEndCallAction:
2017-06-08 11:09:00.830569 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TwilioVoice] Inside stopAudioDevice, stopping audio device.
2017-06-08 11:09:01.275265 SwiftVoiceCallKitQuickstart[809:548057] [DEBUG TVOEventPublisher] TwilioVoiceClient Endpoint-Analytic HTTP response - status: 200, error: (null)
2017-06-08 11:09:01.275438 SwiftVoiceCallKitQuickstart[809:548057] [VERBOSE TVOEventPublisher] Request sent
2017-06-08 11:09:01.276282 SwiftVoiceCallKitQuickstart[809:547874] [DEBUG TVOEventPublisher] TwilioVoiceClient Endpoint-Analytic HTTP response - status: 200, error: (null)
2017-06-08 11:09:01.276803 SwiftVoiceCallKitQuickstart[809:547874] [VERBOSE TVOEventPublisher] Request sent
2017-06-08 11:09:02.502181 SwiftVoiceCallKitQuickstart[809:546563] provider:didDeactivateAudioSession:
2017-06-08 11:09:03.796989 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(4):    pjsua_aud.c  Closing sound device after idle for 3 second(s)
2017-06-08 11:09:03.803680 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(4):    pjsua_aud.c  .Closing iPhone IO device sound playback device and iPhone IO device sound capture device
2017-06-08 11:09:03.804957 SwiftVoiceCallKitQuickstart[809:546939] PJSIP(4): coreaudio_dev.  .core audio stream stopped
2017-06-08 11:09:06.231101 SwiftVoiceCallKitQuickstart[809:546563] pushRegistry:didReceiveIncomingPushWithPayload:forType:
2017-06-08 11:09:06.233605 SwiftVoiceCallKitQuickstart[809:546563] [INFO TVOCall] Inside publishConenctionEvent:, event type: incoming
2017-06-08 11:09:06.236083 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TVOCall] Inside publisherConnectionEvent:, sending incoming event
2017-06-08 11:09:06.236359 SwiftVoiceCallKitQuickstart[809:546563] [DEBUG TVOEventPublisher] Publishing event to Twilio Endpoint Analytics
2017-06-08 11:09:06.238317 SwiftVoiceCallKitQuickstart[809:546563] callInviteReceived:
2017-06-08 11:09:06.256862 SwiftVoiceCallKitQuickstart[809:546563] Incoming call successfully reported.
2017-06-08 11:09:06.257147 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TwilioVoice] Inside configureAudioSession, preparing audio session.
2017-06-08 11:09:06.753762 SwiftVoiceCallKitQuickstart[809:547973] [DEBUG TVOEventPublisher] TwilioVoiceClient Endpoint-Analytic HTTP response - status: 200, error: (null)
2017-06-08 11:09:06.753890 SwiftVoiceCallKitQuickstart[809:547973] [VERBOSE TVOEventPublisher] Request sent
2017-06-08 11:09:07.854189 SwiftVoiceCallKitQuickstart[809:546563] provider:performEndCallAction:
2017-06-08 11:09:07.854473 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TwilioVoice] Inside stopAudioDevice, stopping audio device.
2017-06-08 11:09:07.855093 SwiftVoiceCallKitQuickstart[809:546563] [DEBUG TVOCall] Inside reject, rejecting call from +16143502448.
2017-06-08 11:09:07.855338 SwiftVoiceCallKitQuickstart[809:546563] [DEBUG TVOCommandHandler] Inside postCommand:, received command of type TVORejectCallCommand
2017-06-08 11:09:07.855454 SwiftVoiceCallKitQuickstart[809:546563] [INFO TVOCall] Inside publishConenctionEvent:, event type: rejected-by-local
2017-06-08 11:09:07.856538 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TVOCall] Inside publisherConnectionEvent:, sending rejected-by-local event
2017-06-08 11:09:07.856658 SwiftVoiceCallKitQuickstart[809:546563] [DEBUG TVOEventPublisher] Publishing event to Twilio Endpoint Analytics
2017-06-08 11:09:07.857316 SwiftVoiceCallKitQuickstart[809:546563] [VERBOSE TVOCall] handlePJSIPInviteStateDisconnected. Error: (null)
2017-06-08 11:09:07.859314 SwiftVoiceCallKitQuickstart[809:548057] [VERBOSE Twilio] Inside constructUri: Registration URL: sip:None@chunderm.gll.twilio.com;transport=tls
2017-06-08 11:09:07.870106 SwiftVoiceCallKitQuickstart[809:546563] [DEBUG TwilioVoice] Inside removeFromActiveCalls:, no matching active call for <TVOCall: 0x1700fde00>
2017-06-08 11:09:07.871073 SwiftVoiceCallKitQuickstart[809:548057] [INFO TVORejectCallCommand] Call URI: sip:None@chunderm.gll.twilio.com;transport=tls
2017-06-08 11:09:07.871216 SwiftVoiceCallKitQuickstart[809:546563] [DEBUG TVORTCMonitorThresholds] No thresholds specified. Default values will be applied.
2017-06-08 11:09:07.871479 SwiftVoiceCallKitQuickstart[809:548057] PJSIP(4):   pjsua_call.c !Making call with acc #0 to sip:None@chunderm.gll.twilio.com;transport=tls

The one difference that I’ve seen a few times is TwilioVoiceClient Endpoint-Analytic HTTP response - status: 200, error: (null). I’m not sure what the means directly, nor the consequences of it?
Still, the second log snippet shows provider:didDeactivateAudioSession before the callInviteReceived:.
For the purposes of just creating a working demo, I did experiment with trying to address it by doing something like this:
	public func provider(_ provider: CXProvider, didDeactivate audioSession: AVAudioSession) {
		NSLog("VoipCoord:provider:didDeactivateAudioSession:")

//		// Sometimes if a call was dialed, and the other end accepts and then quickly ends the call, we'll be told `didDeactivateAudioSession` but we'll never receive a `callDidDisconnect` from Twilio itself.
//		let selector:Selector = #selector(wasCallLostButWeWereNotNotified(_:))
//		self.perform(selector, with: nil, afterDelay: 3.0)
	}

And in wasCallLostButWeWereNotNotified if there was a non-nil call then self.endCall(uuid: call.uuid) or remove or UI.
I’m not sure if such a hack really worked all that well. To be honest, if the CXProviderDelegate CallKit Provider Delegate doesn’t ever send the didDeactivateAudioSession, do we wait for X amount of seconds and then send the AVAudioSession an setActive:false ?

Hi @lottadot
Thanks for the log and experiment/feedback.
We've added a new method in the CallKitIntegration category of the TwilioVoice object. This method should be called on receiving the provider:didDeactivateAudioSession: callback from CallKit. This way it ensures some internal flags of SDK's audio stack are reset correctly so that subsequent calls have good audio.
We are still seeing some bizarre issues around this issue on iOS 11 beta, but once we have the sign-off from the QE team with good validation results we will release the new beta.
Thank

I see 2.0.0-beta11 mentioned in the changeling https://www.twilio.com/docs/api/voice-sdk/ios/changelog It mentions some change per Audio.
@bchen-twilio is this the beta you are referring to in your previous comment?
We haven't tried anything Twilio-related w/ the iOS11 beta's. Though, if the 2.0.0-beta11 is thought to address the audio issue this ticket is about, I may cut a binary build with it generated by Xcode8 and another Xcode9 for our internal QA team here.
Thanks,
Shane

Hi @lottadot
Yes, the fix included in beta11 is to address the no-audio issue for subsequent calls, but mainly for CallKit integration. With the newly added audioSessionDeactivated method, the SDK is able to shutdown and reset the audio device properly to ensure good audio for subsequent calls. Please make sure to use this method on receiving the provider:didDeactivateAudioSession: callback before making/accept subsequent calls.
We will keep improving the logic around this area to make sure the audio stack is bulletproof.
Thanks.
-bobie

Hi @lottadot
I am assuming with the latest beta of the iOS Voice SDK the no-audio issue no longer exists and am closing this ticket. Please feel free to re-open or create a new issue if you run into any trouble using the SDK.
Cheers,
-bobie


Added Docker Compose, Docker Machine, Docker Squash.

Not sure if you'll want this but I thought I'd offer it up nonetheless. :smile:

Thank you very much for the PR :) However, I see that Docker Compose is configured to install a certain hardcoded version via curl, though it is a Python software which can be easily installed via pip install docker-compose, which will always provide the latest version released ;)

@jose-lpa I've fixed it to install via PIP. I assume the other two are OK?


Filemanager 500 Internal Server Error

1. What version of Caddy are you running (caddy -version)?
Caddy 0.9.3
2. What are you trying to do?
Edit /_fileman/README.md
3. What is your entire Caddyfile?
http://*:8080
root init/

markdown /
browse /

filemanager /_fileman {
    show init/
    allow_commands false
    allow_edit true
    allow_new true
}

4.  What did you expect to see?
An editor
6. What did you see instead (give full error messages and/or log)?
500 Internal Server Error
I'd like to know more, but I don't get anything on log. How do I get more verbose logging?
7. How can someone who is starting from scratch reproduce this behavior as minimally as possible?
caddy release + filemanager with included init/ -directory

Hi @ptman , thanks for reporting this. Can you please file this issue at caddy-filemanager? Thanks.

I'll wait for 0.9.4 on this.

What will be in version 0.9.4 that you need?

I have a similar setup where I want to serve pages with markdown, and be able to edit them with filemanager.

And I'm guessing templates also don't work with markdown??

I believe this was fixed in filemanager, not in Caddy.

But the Caddy binary will not incorporate this fix until 0.9.4, or is that not how it works??

No, the plugins can be updated independently. I've updated the build server fairly recently so it might already have the fix.


generating front end, issue

Describe the bug
I just burned 1M token asking 10 times for a basic search result based on cards, with  columns based on breakpoints depending on the display.
It doesn't work at all, I'm trying to get 2 or 3 results per line. I'm frustrated
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-pnudbt
Steps to reproduce
Try to ask for my home page search result to diplay mutiple cards per line, except for mobile.
Expected behavior
I want the results to be displayed the right way ;)
Screen Recording / Screenshot
No response
Platform

OS: macOS
Browser: Arc
Version: up to date

Additional context
No response

Update : 2M tokens, it makes me mad


Compiling errors in Unity 2017.2b9

Not sure if here is the right place to report this, but importing the ScriptableRenderLoop in an empty project (with PostProcess Stack) in Unity 2017.2 latest beta prints ~400 errors in the console, the first one being:
/ScriptableRenderLoop/ScriptableRenderPipeline/HDRenderPipeline/HDRenderPipeline.cs(217,17): error CS1061: Type UnityEngine.Rendering.CommandBuffer' does not contain a definition for SetComputeMatrixParam' and no extension method SetComputeMatrixParam' of type UnityEngine.Rendering.CommandBuffer' could be found.

Anyway to work around this? Or am I doing something wrong?
Cheers!

 The master simply doesn't work at all with any version of Unity, including 2017.3 alpha. Downloading 2017.2 tag now.

Yes, as this repository is use internally as main development repository the master tend to be out of sync with the latest public version of Unity. We regularly create a "Release" of the code so users are able to compile it with available public version.

Hello Sebastien, Can we expect to get updated 2017.2b9 release this week? Latest one is +1 month old and i see that SRP got many new features such as: Volumetric Lighting, Clear Coat shader etc.

Thanks Aras for clearing this up. So should we assume this won't ship until 2018.x ? 😅

We hope to deliver a first "release" for 2018.1

Excuse me, I downloaded the 2017.1 version of SRP. Why did it prompt the project file created by 2017.1.Beta3 when it opened?


[SPARK-27109][SQL] Refactoring of TimestampFormatter and DateFormatter

What changes were proposed in this pull request?
In PR, I propose to refactor the parse() method of Iso8601DateFormatter/Iso8601DateFormatter and toInstantWithZoneId of toInstantWithZoneId to achieve the following:

Avoid unnecessary conversion of parsed input to java.time.Instant before converting it to micros and days. Necessary information exists in ZonedDateTime already, and micros/days can be extracted from the former one.
Avoid additional extraction of LocalTime from parsed object, more precisely, double query of TemporalQueries.localTime from temporalAccessor.
Avoid additional extraction of zone id from parsed object, in particular, double query of TemporalQueries.offset().
Using ZoneOffset.UTC instead of ZoneId.of in DateFormatter. This allows to avoid looking for zone offset by zone id.

How was this patch tested?
By existing test suite DateTimeUtilsSuite, TimestampFormatterSuite and DateFormatterSuite.

Can one of the admins verify this patch?

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8674/
Test PASSed.

Test build #103228 has started for PR 24030 at commit 4e4a86d.

Test build #103228 has finished for PR 24030 at commit 4e4a86d.

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

Merged build finished. Test PASSed.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8704/
Test PASSed.

Test build #103259 has started for PR 24030 at commit 6e6605d.

Test build #103260 has started for PR 24030 at commit a4c5664.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8705/
Test PASSed.

Test build #103259 has finished for PR 24030 at commit 6e6605d.

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

Merged build finished. Test PASSed.

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

Test build #103260 has finished for PR 24030 at commit a4c5664.

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

Merged build finished. Test PASSed.

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

@srowen @cloud-fan Please, take a look at the PR.

It seems OK, but do you need to break these out into a method plus two private helpers? it's OK by me, just adds some indirection, but no big deal

but do you need to break these out into a method plus two private helpers?

I would leave this to JIT. I just hope the private methods will be inlined if it is needed (they are hot). I can mix the methods to parse() if you do believe it makes sense.

OK, it's fine if you think it might make a difference to performance. I always weigh that against the readability of jumping across two methods to understand what is happening, but they're all together, and I suppose it makes the steps a little clearer.

Test build #103266 has started for PR 24030 at commit 1b8865d.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8712/
Test PASSed.

Test build #103266 has finished for PR 24030 at commit 1b8865d.

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

Merged build finished. Test PASSed.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8727/
Test PASSed.

Test build #103281 has started for PR 24030 at commit 63851a8.

Test build #103281 has finished for PR 24030 at commit 63851a8.

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

Merged build finished. Test PASSed.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8752/
Test PASSed.

Test build #103311 has started for PR 24030 at commit a384c2b.

Test build #103311 has finished for PR 24030 at commit a384c2b.

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

Merged build finished. Test PASSed.

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

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/8773/
Test PASSed.

Test build #103336 has started for PR 24030 at commit cfe0354.

Test build #103336 has finished for PR 24030 at commit cfe0354.

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

Merged build finished. Test PASSed.

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

Merged to master


Query: accessing property on a required navigation defined on a derived type produces INNER JOIN

Repro:
    class Program
    {
        static void Main(string[] args)
        {
            using (var ctx = new MyContext())
            {
                ctx.Database.EnsureDeleted();
                ctx.Database.EnsureCreated();

                var school = new School { Name = "S1" };

                var p1 = new Parent { ParentName = "p1" };
                var p2 = new Parent { ParentName = "p2" };
                var s1 = new Student { StudentName = "p1", School = school };
                var s2 = new Student { StudentName = "p1", School = school };

                ctx.Schools.Add(school);
                ctx.People.AddRange(p1, p2, s1, s2);
                ctx.SaveChanges();
            }

            using (var ctx = new MyContext())
            {
                Console.WriteLine(ctx.People.Count()); // 4

                var query = ctx.People.OrderBy(p => ((Student)p).School.Name);
                var result = query.ToList();

                Console.WriteLine(result.Count); // 2
            }
        }
    }

    public class MyContext : DbContext
    {
        public DbSet<Person> People { get; set; }
        public DbSet<School> Schools { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
        {
            optionsBuilder.UseSqlServer(@"Server=.;Database=Repro10988;Trusted_Connection=True;MultipleActiveResultSets=True");
        }
    }

    public class Person
    {
        public int Id { get; set; }
    }

    public class Student : Person
    {
        public string StudentName { get; set; }

        public School School { get; set; }
        public int SchoolId { get; set; }
    }

    public class Parent : Person
    {
        public string ParentName { get; set; }
    }

    public class School
    {
        public int Id { get; set; }

        public string Name { get; set; }

        public List<Student> Students { get; set; }
    }

We generate the following query:
SELECT [p].[Id], [p].[Discriminator], [p].[SchoolId], [p].[StudentName]
FROM [People] AS [p]
INNER JOIN [Schools] AS [p.School] ON CASE
    WHEN [p].[Discriminator] = N'Student'
    THEN [p].[SchoolId] ELSE NULL
END = [p.School].[Id]
WHERE [p].[Discriminator] IN (N'Student', N'Person')
ORDER BY [p.School].[Name]

We should be producing LOJ here, in case not all people are students (such query would throw cast exception in L2O, but we allow it to execute)

Until this will be fixed, i used nullable int to generate a LEFT JOIN
public int? SchoolId { get; set; } in the Student Class

Decision from triage: we should make both the explicit cast and the as cast work in the same way, including null compensation/propagation.

Fixed in 1fcdbeacf8c948f5cbb41967c678587f80217fe9

This is not included in 2.1.0-preview1 but seems important to me. I was happy to have the fix for #3910 but including my derived properties is causing INNER JOIN thus not solving my problem (I'm currently explicitly loading those properties). Is it planned to add this to 2.1?

@iudelsmann as I said in a comment before, changing from int to int? solved my problem, and generates a left join, without the need to explicitly load the properties

@heightpi It does work indeed, but it would also allow someone to save a null value where I wouldn't want one. I can't have the restriction in the database since the parent class doesn't have the property, so I must have the restriction in my code. When someone tries to save value zero the database will throw an error since it violates the foreign key constraint.
I could do this or another workaround, but I prefer waiting for the release since this is already fixed.

@iudelsmann - This is fixed in 2.1.0 milestone so it will be included in RTM release of 2.1.0. It should be included in next release (preview/rc/RTM). The milestone will change accordingly to indicate the exact release number.

@iudelsmann Could you test with out nightly build? The feeds are listed on the repo home: https://github.com/aspnet/EntityFrameworkCore

@ajcvickers Sorry for the delay, had some busy days and some troubles. Tried to test this now but seems to be getting a problem with missing apostrophes surrounding my discriminator values, causing the query to be invalid throwing an exception in postgres. Using ef core 2.1.0-preview2-30301 and npgsql.PostgreSQL 2.1.0-ci-00132.

@iudelsmann Can you file a new issue for this including a runnable project/solution or complete code listing so that we can investigate? /cc @roji

Any missing apostrophes sound more like an issue in the Npgsql provider (and unrelated to the original issue above), can you please post a code sample on Npgsql.EntityFrameworkCore.PostgreSQL?


[Basic] Spanish translation!

What cheatsheet is this about? (if applicable)
Basic cheatsheet
What's your issue or idea?
This is such a valuable resource and React+TypeScript is growing around the world, but many programmers don’t use English as their primary language. I personally, can start translating the Basic Cheatsheet in Spanish and move on from there.
What's the best way to structure the translated file in the repo?

hey Lauro! thank you so much! i dont know, maybe just make a new repo like react-typescript-cheatsheet-es so that you can move at a faster pace than me!

i've set up a new repo for you and made you a maintainer! pls feel free to move fast there. https://github.com/typescript-cheatsheets/react-typescript-cheatsheet-es

once you've done some basic level of translation and are happy to publicise, i'll link to you from this repo. there was a chinese translation too, but it went dormant.

Sounds good, I'll get started! 😄

thanks for volunteering!  i bet a lot of spanish speakers will benefit.

Done ✅🎉 https://twitter.com/laurosilvacom/status/1213981860524482560

awesome, awesome job man


Ignore file-upload meteor-method by ostrio:files [2]

Since the reference to my old repo got lost, this is the completion of #34

Codecov Report

Merging #45 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master      #45   +/-   ##
=======================================
  Coverage   99.48%   99.48%
=======================================
  Files           6        6
  Lines         196      196
  Branches       49       49
=======================================
  Hits          195      195
  Misses          1        1

Impacted Files
Coverage Δ

instrumenting/session.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 97653ae...56ab7ba. Read the comment docs.


Langchain Plugins

⚠ Please check that this feature request hasn't been suggested before.

[X] I searched previous Ideas in Discussions didn't find any similar feature requests.
[X] I searched previous Issues didn't find any similar feature requests.

🔖 Feature description
I propose a feature enhancement for Superagent that involves the integration of AI plugins for retrieval, inspired by Langchain's Plug-and-Plai system. This feature would entail:
Plugin Indexing: Establish a system to load and index plugins from a dedicated directory. This would expand the AI's toolset and allow for more dynamic responses.
Embedding Creation: For each tool description, generate embeddings. These embeddings serve as a numerical representation of the tool's description, enabling efficient similarity searches.
Similarity Search: Implement a similarity search function that uses the embeddings of incoming queries to find relevant tools. This would allow the AI to select the most appropriate tool for handling a specific query.
Dynamic Tool Selection: Introduce a 'tools_getter' function in the prompt template. This function would dynamically select the tools to use based on the input, enhancing the AI's adaptability to different queries.
https://python.langchain.com/docs/use_cases/agents/custom_agent_with_plugin_retrieval_using_plugnplai
📝 Additional Context
No response
Acknowledgements

[X] My issue title is concise and descriptive.
[X] I have searched the existing issues to make sure this feature has not been requested yet.
[X] I have provided enough information for the maintainers to understand and evaluate this request.

@kevinseabourne sounds interesting. Is this something you cwould be able to contribute with?

Did some investigation on Plug-n-plai. Is that service still active. The API returns errors, the Discord seems dead etc. Do you have any insights on this @kevinseabourne


simple tag labels for inst seg

adds simple instance segmentation labels to iglu-style scene generation

also shifts the non-cuberite blocks over as they were shifted in cuberite


[bug] [PiranhaAgent] error thrown after applying the inferred rule to the sample before/after snippet in the doc

successfully installed the playground.
put the before and after code from the doc here: https://github.com/uber/piranha/tree/master/experimental in the relevant boxes
clicked on infer rules from templates. got some rule inferred.
clicked Apply rule to before and got the following error in the code after section

<IP_ADDRESS> - - [24/Jul/2023 16:19:04] "POST /refactor_codebase HTTP/1.1" 400 -
thread '<unnamed>' panicked at 'Could not parse the query : "((method_declaration\n type: (void_type ) @tag2n\n name: (identifier ) @tag3n\n parameters: (formal_parameters \n  (formal_parameter \n   type: (type_identifier ) @tag6n\n   name: (identifier ) @tag7n) @tag5n) @tag4n\n body: (block ) @tag8n) @tag1n\n(#eq? @tag2n \"void\")\n(#eq? @tag3n \"someMethod\")\n(#eq? @tag6n \"String\")\n(#eq? @tag7n \"arg\")\n(#eq? @tag8n \"{\n\n  }\"))" Some(QueryError { row: 12, column: 13, offset: 346, message: "(#eq? @tag8n \"{\n             ^", kind: Syntax })', src/models/language.rs:77:5

seems that the inferred rule has some syntax issues.

strangely enough, even though the code is in java, when i switch the picker in playground to kotlin and try to infer rule again, i can actually apply the inferred rules and get the correct result!
it just says "Produced syntactically incorrect source code" but it is actually corret. @ketkarameya

The problem is the new lines in 15 through 17 (#eq? tag8n …). The static inference algorithm is not that smart, I’ll fix it.
I assume it’s saying incorrect source code because the Kotlin parser is unable to parse the code


Packaging CRAFT text detection under PyPI

Hello amazing developers of the CRAFT text detection apis !
I have used the repo and went on to make it usable directly from pip. I would love to hear your response to this. The current version is minimum viable and I am thinking of stabilising this further in the future.

@DeepakSinghRawat @dogterbox @arj7192 There is already a packaged version that can be installed directly from pip: pypi github


(fix)(invert index) fix match phrase prefix memory leak

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Remove check for address in mailbox

Regarding #134
The ews docu doesn't specify any element of mailbox as mandetory. And
evidently mailboxes without address nor ID do exist.

LGTM


Expose list of packages to remove as an attribute

This follows on from my recent pull request for #90
This exposes the list of packages to be removed by the cookbook as an attribute, with the default value of that attribute preserving the existing behaviour (i.e. creates a customisation point without a breaking change).
My primary reason for exposing this was to allow users of the cookbook to override this list should it be needed (in our specific case, we have an nagios monitoring agent that requires xinetd, which we have then taken further steps to harden) without needing to fork the cookbook.
A secondary reason is that it may make unit testing this functionality (which I am looking at for a subsequent pull request) easier.
I wasn't sure on style for README changes, so welcome any feedback.

@Rockstar04 seemed to agree having this attribute controlled was a sensible next step. Hopefully @chris-rock was vaguely expecting this from my comments on #93 :-)

@mikemoate this is great. I like that this is configurable. Please rebase to the latest master and I will merge it!

@chris-rock rebased and CI is in progress. I'm still looking at testing for this functionality, hopefully I'll find some time at the weekend.
Any thoughts on when a new version of this cookbook might be released to the supermarket?

Great work @mikemoate I am going to release a new version by end of the week.


Licenses - Duplication due to several versions

Some provided licenses are technically duplicated as older and newer versions are provided while there isn't real difference.
Example: https://creativecommons.org/licenses/by-sa/4.0/ vs https://creativecommons.org/licenses/by-sa/3.0/

All CC v3 can be moved
GPL is a license for Software, not for data

World Bank Dataset Terms of Use It is the same as cc by 4.0, but with additional terms to solve disputes, I think it is too much, along with being a license from Bank which feels irrelevant

Reddit API Terms - https://www.reddit.com/wiki/api are for APIS, they have terms like :All API clients must authenticate with OAUTH 2
U.S. Government Works https://www.usa.gov/government-works/ is for U.S. government creative works

EU ODP Legal Notice - https://ec.europa.eu/info/legal-notice_en is cc by 4.0

https://github.com/NFDI4Chem/nmrxiv/discussions/123

We will go with what we have here and may be update later according to the suggestions form users.


(SP: 2) Create pop up after clicking on 'Gift certificate' icon

After clicking on 'Gift certificate' icon pop up window with the mandatory field for recipients email should appear and two buttons ‘Confirm’ and ‘Cancel’. Pop up window should contain 'X' button in right top corner in order to close the window.
Validation for email field should work according to the principles of registration on the website.
Certificate should be attached to entered email, if certificate is allready attached to another email, you should unlink it and attached to entered email.
https://www.figma.com/file/r1buAi0edVZ9SyV9Y6Erax/Horondi_2022?node-id=15135%3A54698

Done


xDS: update GCP auth filter config for compatibility with gRPC

Commit Message: xDS: update GCP auth filter config for compatibility with gRPC
Additional Description: gRPC is implementing support for this filter.  However, most gRPC implementations will delegate to the existing google auth libraries for the actual token functionality, and those libraries do not allow configuring many of the parameters present in this configuration.  This PR updates the config accordingly.
Risk Level: Low
Testing: N/A
Docs Changes: Included in PR
Release Notes: N/A
Platform Specific Features: N/A
CC @tyxia

If we are marking this field deprecated @markdroth, we need the Envoy-side changes to be made IMHO, otherwise we have deprecated and not-ready-yet situation, and people will (and should) be using the non-deprecated option by default.

Agreed.  @tyxia, can you prepare the necessary code changes?  We can put the API change and the code change together into a single PR.

If we are marking this field deprecated @markdroth, we need the Envoy-side changes to be made IMHO, otherwise we have deprecated and not-ready-yet situation, and people will (and should) be using the non-deprecated option by default.

Agreed. @tyxia, can you prepare the necessary code changes? We can put the API change and the code change together into a single PR.

Sure I will do that.

Closing this as I think it is superseded by https://github.com/envoyproxy/envoy/pull/35173. If not the case, lmk and I'll re-open.


Allow memcache and redis to be automatically selected as cache method when present

Although somewhat implemented, the auto select logic of the cache method doesn't select Memcache or Redis if present (see https://github.com/getgrav/grav/blob/develop/system/src/Grav/Common/Cache.php#L139-L148). Obviously, some extension_loaded(...) checks are missing.

Further, both Memcache or Redis can only be configured manually (https://github.com/getgrav/grav/blob/develop/system/src/Grav/Common/Cache.php#L172-187), but not via Admin plugin. I actually don't know, whether this issue should be addressed here; if required I'll open an issue on the Admin plugin tracker instead.

APCu can not be selected as a cache method option.

it's the very need of these two cache providers to require options to be configured, which is why they are not included in the auto selection process.  With invalid settings, this would just cause your site to fail, and you wouldn't really know why.
Better to manually change these settings, and then set the cache to use this provider explicitly.

@rhukster Ok, this addresses point 1.)
My point 2. addresses the configuration options for these two cache providers. In the admin panel they can not be adjusted and not even be selected manually. What I mean is, there are no special cache specific options for both two cache providers:

From the cache driver options there is no possibility to set Redis (my point 2) or APCu (my point 3) manually:

PR #887 addresses this issue. Adds Redis (and memcached) to the list, allows to configure them.

Thanks! :-) Was about to implement it by myself

Give it a try with memcache(d) if you want you use them, will test too

I have Grav running with Redis and one with Memcached under PHP7. It's working like a charm :-)

👍

merged


Question/Feature: Is it possible to add the 10 UCI datasets as well for evaluating these OPEs?

Hello OBP team.
From a quick tour of this Github page, I found that this might be more suitable for my research (testing and adding new ope) than using the massive Vowpal Wabbit! Kudos to maintaining a very good repo! :)
I see that the multiclass type dataset from sklearn has been added.
Is it possible to include the 10 UCI datasets in the examples (with corresponding working hyperparameters) that are used in many papers that you cite (like Su+ 20, Wang+ 17, Dudik+ 14)?

Figured out that we can just use pandas for evaluating those UCI datasets. For eg for reading Glass dataset:
pandas.read_csv("https://archive.ics.uci.edu/ml/machine-learning-databases/glass/glass.data")


AttributeError: 'tensorflow.python.framework.ops.EagerTensor' object has no attribute 'decode'

i ran on Google Colab and saw error at the start of training model.
----> 8     for (batch, (img_tensor, target)) in enumerate(dataset):
--->545   def next(self):  # For Python 3 compatibility
--> 546     return self.next()
--> 575       return self._next_internal()
--> 567             output_shapes=self._flat_output_shapes)
-> 1848       _six.raise_from(_core._status_to_exception(e.code, message), None)
UnknownError: AttributeError: 'tensorflow.python.framework.ops.EagerTensor' object has no attribute 'decode'
Traceback (most recent call last):
File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/script_ops.py", line 205, in call
return func(device, token, args)
File "/usr/local/lib/python3.6/dist-packages/tensorflow/python/ops/script_ops.py", line 107, in call
ret = self._func(*args)
File "", line 2, in map_func
img_tensor = np.load(img_name.decode('utf-8')+'.npy')

@phambao Request you to please fill the template with infrastructure details so that we can suggest you the solution.

Closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!

Closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!

I suppose you encountered this problem while running the Image Captioning tutorial.
https://github.com/tensorflow/docs/blob/master/site/en/r2/tutorials/text/image_captioning.ipynb
I solved this problem by replacing a line in map_func :
replace img_tensor = np.load(img_name.decode('utf-8')+'.npy')
with
img_tensor = np.load(img_name.numpy().decode('utf-8')+'.npy')


Static image resources

Place to store static image resource

Reference: https://www.synthesio.com/products/topic-modeling-trend-analysis/


Modbus TCP stops communicating after a few days

Current behavior
I have a flow reading data from a Modbus TCP client. I am using 4 Modbus-Read nodes two with FC1 and two with FC3 reading different ranges. I also added Modbus queue info watching these 4 nodes.
All are configured with Unit ID 1, all set to 5 second update.
Expected behavior
All works fine, but after a few days or a week no update is read any more. The Modbus nodes show status "active (5sec)" and nothing happens. And in the queue info I see thousands of messages. I added the catch node and used the example to reset the queue on very high, but that does not seem to make a difference either. Btw, in the Modbus Queue Info node the documentation says msg.resetQueue= True, but the example code below uses msg.payload.resetQueue= True;
So this is misleading and I have no idea how it is supposed to work.
I need to redeploy the flow to make it work.
I am sorry, but I did not find any useful information in the Wiki for this scenario.
Minimal reproduction of the problem with instructions
I can give you a demo flow, but I would not post the code here with working Modbus addresses included.
Your Environment
Please tell us about your environment:

(X) I am using just the Node-RED package and got modbus-serial package installed with it
( ) I have installed modbus-serial package global from source (using git clone)
( ) I have installed modbus-serial as a global package (using npm i -g)

Yes, modbus-serial is the name but it does all, TCP and Serial.
The node-modbus package is just for the Modbus Server node.

Device :

( ) macOS: v
() Linux: v
( ) Windows: v
(X) Raspbian: v
( ) Other:

Name:
Version:

Description of the connecting Modbus system:

Name   : Saia PLC
Version:
Vendor : Saia-Burgess
Link   : https://

node-red-contrib-modbus version: v5.13.3

Node: (min. 10.x)
node --version = v10.22.0

Hi, send some log file(s) to my E-Mail with Debug enabled for modbus to see all states until the stop. I'll give it a short check if there was a problem.

Hi Klaus,
I have never done this before. Can I just clarify how it is done? Shall I enable "Queue Logging" and "Log state changes" on the modbus-client configuration? Does it get saved along with the standard debug file in var/log? Is there a way I can separate the log of this component to a separate file?
FYI, the modbus client is on the "open internet", so it could be due to connection problems, but it always seem to recover when I re-deploy the flow.

Hi, that is out of scope here. Please, use Slack to ask the community for more detailed help. If you have access you could try to find your way to get more logs see https://github.com/BiancoRoyal/node-red-contrib-modbus/wiki/DEBUG

I managed to get the log and emailed it to you.

I updated my flow, and changed all my Modbus read nodes, to Modbus Getter. There are 4 getters on a Modbus queue, and I and sending the requests in every 5 seconds. I am not sure when I made the change, probably about 2 weeks ago. I just checked now and it was running fine until yesterday 9pm. So for some reason it appears to be more stable.
Now there are 40K entries in the queue stuck, and again it is not responding to resetQueue messages.

I updated my flow, and changed all my Modbus read nodes, to Modbus Getter. There are 4 getters on a Modbus queue, and I and sending the requests in every 5 seconds. I am not sure when I made the change, probably about 2 weeks ago. I just checked now and it was running fine until yesterday 9pm. So for some reason it appears to be more stable.
Now there are 40K entries in the queue stuck, and again it is not responding to resetQueue messages.

reopen if it still existing with v5.15+


Set metric and exclusionRoute using VPN profile XML config file

Hello,
I configured Always-on VPN using Force-Tunnel but Skype for business doesn't work properly over the VPN. Is it possible to bypass the skype traffic? My idea: Configuring Split-Tunnel -> add a default route <IP_ADDRESS>/0 such as Force-Tunnel sets automatically and add an exclusion for the Servers used for S4B. Is it possible to make these settings through the XML config file?
VPNv2/ProfileName/RouteList/routeRowId/Metric:
Added in Windows 10, version 1607. The route's metric.
Value type is int. Supported operations include Get, Add, Replace, and Delete.
VPNv2/ProfileName/RouteList/routeRowId/ExclusionRoute
Added in Windows 10, version 1607. A boolean value that specifies if the route being added should point to the VPN Interface or the Physical Interface as the Gateway. Valid values:
False (default) - This route will direct traffic over the VPN
True - This route will direct traffic over the physical interface.
Supported operations include Get, Add, Replace, and Delete.
https://docs.microsoft.com/en-us/windows/client-management/mdm/vpnv2-csp

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

ID: 3032f094-c9b7-6f8c-5b66-2ba152d7c326
Version Independent ID: 83047fc5-7020-be72-85d6-85fa0bfbf5b7
Content: ProfileXML XSD
Content Source: windows/client-management/mdm/vpnv2-profile-xsd.md
Product: w10
Technology: windows
GitHub Login: @MariciaAlforque
Microsoft Alias: maricia

@officedocsbot assign @e0i

@emchj
The issues section of this repository is intended for product documentation issues only.
Please consider opening a product support ticket by the following link below for your question so that it gets answered quickly.
Windows 10 Support
Thank you.

@officedocsbot close


Adding UnitTest project and some Converters tests

Description of Change
Created a xUnit Test project.
Added:

BoolToObjectConverter_Tests
DoubleToIntConverter_Tests
EqualConverter_Tests
IndexToArrayItemConverter_Tests

NOTE: I'll continue working with the rest of the tests in another PR.

Very nice ! Thank you very much @Char0394


any plans to replace bootstrap with new spring.config.import functionality in spring-boot 2.4.x

According to Spring Cloud 2020.0 release changes:

Spring Cloud Commons
NOTE: Bootstrap has been disabled by default. The new way of importing configuration is via the new spring.config.import functionality provided by Spring Boot 2.4. Please see the appropriate documentation for Config Client, Consul, Vault, and Zookeeper for details on how to use them with the new config import.

Bootstrap seems being deprecated, and is likely to be removed in future versions, any plans to adapt the Spring Boot 2.4 new spring.config.import functionality?

Spring cloud is based on the concept of bootstrap application context, it is needed in testcontainers-spring-boot to setup resources before your application's context. You can read more about it here: https://cloud.spring.io/spring-cloud-static/spring-cloud.html#_the_bootstrap_application_context


Implement additional filters for ecs.ListTasks

Closes #1785

Coverage decreased (-0.3%) to 94.138% when pulling 0447c84be4b896c37236f850b5fe27129f602648 on bpandola:fix-1785 into db7842653fbc30735e84037a768748c01b203023 on spulec:master.


OLS-6 launch blog

copy from https://github.com/open-life-science/open-life-science.github.io/blob/main/_posts/2022-03-03-ols-5-annoucement.md and tweakto OLS-6

I created the draft of the blog post, just fixing the numbering.
Some tasks have to be done: adding new people and projects

Hello, @bebatut would you like my help on here? Reviewing the blog post or creating new ones?

Hello @bebatut. This is Gimbiya, a content writer and Outreachy applicant. I am available to create new blog posts and rewrite old ones if you assign me the task.

This seems to be outdated now, can we close the issue?


Album tracks are not displayed

I am using v0.8.1 and realized for certain albums in the album view of the "Browse" area not all tracks are displayed (see the following screenshot where tracks 3 and 5 are not listed):

Using the "Default" skin and browsing to the very same album all tracks are being listed:

In addition, when playing such an album via the Material skin also the queue will not show these missing tracks:

Again, when switching to the "Default" Skin all tracks can be seen in the queue:

When the queue in Material Skin reaches the position of a not displayed track the actual missing track is being played, but the skin shows a wrong title (in the screenshot below track 3 is actually being played, but it is shown as track 4):

In addition, the progress bar and time info at the very bottom are not displayed at all for this track while it is being played:

When the playlist advances to the actual song 4 the queue suddenly displays the following:

When the playlist reaches the position of the 7th track it looks as follows (Note that "Don't stop the music" already added some new tracks):

This is the queue that is being displayed by "Default" skin:

When hitting the refresh button of the browser, I get the following (which is also wrong):

Here's the correct information given ny "Default" skin:

Please start material as follows:
http://SERVER:9000/material/desktop?debug=json

This will cause the messages sent to LMS, and responses received to be logged to the console tab in your browser's developer tools. Please do the following:

Open console tab in developer tools
Navigate to the listing of albums
Clear your browser's console (should be a clear icon, or trash icon)
Click on the album to show the track list

Your console should now have the REQ and RESP messages used to ask for and receive the track listing. Please post those here. Thanks.

Here is what asked for, hope it helps.
[08:36:29] JSON REQ: ["aa:aa:93:0a:1b:fa",["tracks",0,25000,"album_id:11821","tags:ACRdts","sort:tracknum","artist_id:12666","library_id:0"]] utils.min.js:26:210
[08:36:29] JSON RESP: {"params":["aa:aa:93:0a:1b:fa",["tracks","0",25000,"album_id:11821","tags:ACRdts","sort:tracknum","artist_id:12666","library_id:0"]],"method":"slim.request","id":1,"result":{"titles_loop":[{"id":136574,"title":"Make It","albumartist":"Aerosmith","trackartist":"Aerosmith","compilation":"0","duration":220.316,"tracknum":1,"artist_id":12666},{"id":136575,"title":"Somebody","albumartist":"Aerosmith","trackartist":"Aerosmith","compilation":"0","duration":225.567,"tracknum":2,"artist_id":12666},{"id":136577,"title":"One Way Street","albumartist":"Aerosmith","trackartist":"Aerosmith","compilation":"0","duration":422.164,"tracknum":4,"artist_id":12666},{"id":136579,"title":"Write Me","albumartist":"Aerosmith","trackartist":"Aerosmith","compilation":"0","duration":252.081,"tracknum":6,"artist_id":12666},{"id":136580,"title":"Movin' Out","albumartist":"Aerosmith","trackartist":"Aerosmith","compilation":"0","duration":302.497,"tracknum":7,"artist_id":12666},{"id":136581,"title":"Walkin' the Dog","albumartist":"Aerosmith","trackartist":"Aerosmith","compilation":"0","duration":192.679,"tracknum":8,"artist_id":12666}],"count":6}} utils.min.js:26:210

Thanks. Looking at the response received from LMS:
{
   "params":[
      "aa:aa:93:0a:1b:fa",
      [
         "tracks",
         "0",
         25000,
         "album_id:11821",
         "tags:ACRdts",
         "sort:tracknum",
         "artist_id:12666",
         "library_id:0"
      ]
   ],
   "method":"slim.request",
   "id":1,
   "result":{
      "titles_loop":[
         {
            "id":136574,
            "title":"Make It",
            "albumartist":"Aerosmith",
            "trackartist":"Aerosmith",
            "compilation":"0",
            "duration":220.316,
            "tracknum":1,
            "artist_id":12666
         },
         {
            "id":136575,
            "title":"Somebody",
            "albumartist":"Aerosmith",
            "trackartist":"Aerosmith",
            "compilation":"0",
            "duration":225.567,
            "tracknum":2,
            "artist_id":12666
         },
         {
            "id":136577,
            "title":"One Way Street",
            "albumartist":"Aerosmith",
            "trackartist":"Aerosmith",
            "compilation":"0",
            "duration":422.164,
            "tracknum":4,
            "artist_id":12666
         },
         {
            "id":136579,
            "title":"Write Me",
            "albumartist":"Aerosmith",
            "trackartist":"Aerosmith",
            "compilation":"0",
            "duration":252.081,
            "tracknum":6,
            "artist_id":12666
         },
         {
            "id":136580,
            "title":"Movin' Out",
            "albumartist":"Aerosmith",
            "trackartist":"Aerosmith",
            "compilation":"0",
            "duration":302.497,
            "tracknum":7,
            "artist_id":12666
         },
         {
            "id":136581,
            "title":"Walkin' the Dog",
            "albumartist":"Aerosmith",
            "trackartist":"Aerosmith",
            "compilation":"0",
            "duration":192.679,
            "tracknum":8,
            "artist_id":12666
         }
      ],
      "count":6
   }
}

You can see that only has 6 tracks. So, not much Material can do here. It asks for the track listing, and LMS returns only 6 tracks.
As for the queue oddities. The problem here is that Material currently has no debug here. I've just added some, but you would need to install the code from git - which means manually copying the files. Another solution would be to look at the network tab in your browser's developer tools. So:

Navigate to the album you want to play
Go to your browser's network tab - this will show all network requests the current page is making
Clear this list
Play the album
Firefox: Look at the 'jsonrpc.js' requests (there is a 'File' column, 'jsonrpc.js' should be there). If you click on one of these, the details should be shown on the right. Find one whose 'Params' has ["status",0,500,"tags:cdegltuysAKNRS"] (desktop browsers) or ["status",0,500,"tags:cdegltuysAKNS"] (mobile browsers). For this request, click on the 'Response' tab on the right - and paste here
Chrome: On the left will be requests under 'Name', find 'jsonrpc.js' Click on this and you should see details on the right.  Keep liking these until you see the status/tags display as detailed in Firefox above. Paste the whole response here.

I've already realized the two missing tracks in the JSON response from LMS. I just wonder why the Default skin sees eight tracks, though. I assume it's not requesting this information in JSON format? Still it's kind of strange. LMS' music library seems to be OK, just the JSON string LMS returns is lacking information.
Are you aware of any way to fix this?
Doing a "Rescan Media Library" via LMS' "Basic Settings" did not help me here (not even when chosing "Clear library and rescan everything").
What did help is to temporarily remove such albums from the music directory, do a re-scan (to have them removed from the LMS library), re-add the albums and do re-scan again. This helped for the one album for which I've just tested this.
I g. will try temporarily clear the media library (e.g. by giving LMS a dummy path as media folder) and proceed as described above.
Here is the network response when playing the album for which I've sent the prvious JSON string (it also contains just those six tracks):
{
  "result": {
    "mode": "play",
    "power": 1,
    "playlist shuffle": 0,
    "playlist repeat": 0,
    "seq_no": 0,
    "duration": 220.316,
    "playlist_tracks": 8,
    "playlist_timestamp":<PHONE_NUMBER>.72398,
    "can_seek": 1,
    "playlist_loop": [
      {
        "album_id": 11821,
        "album": "Aerosmith",
        "title": "Make It",
        "trackartist": "Aerosmith",
        "genre": "Hard Rock",
        "albumartist": "Aerosmith",
        "year": 1973,
        "trackartist_ids": "12666",
        "id": 136574,
        "tracknum": 1,
        "albumartist_ids": "12666",
        "playlist index": 0,
        "artist_id": 12666,
        "coverid": "dde2dfbf",
        "url": "file:///volume1/music/Aerosmith%20-%201973%20-%20Aerosmith/01.%20Make%20It.mp3",
        "duration": 220.316
      },
      {
        "album": "Aerosmith",
        "album_id": 11821,
        "title": "Somebody",
        "albumartist": "Aerosmith",
        "genre": "Hard Rock",
        "trackartist": "Aerosmith",
        "tracknum": 2,
        "trackartist_ids": "12666",
        "id": 136575,
        "year": 1973,
        "artist_id": 12666,
        "playlist index": 1,
        "albumartist_ids": "12666",
        "url": "file:///volume1/music/Aerosmith%20-%201973%20-%20Aerosmith/02.%20Somebody.mp3",
        "coverid": "dde2dfbf",
        "duration": 225.567
      },
      {
        "albumartist_ids": "12666",
        "artist_id": 12666,
        "playlist index": 2,
        "url": "file:///volume1/music/Aerosmith%20-%201973%20-%20Aerosmith/04.%20One%20Way%20Street.mp3",
        "coverid": "dde2dfbf",
        "duration": 422.164,
        "album_id": 11821,
        "album": "Aerosmith",
        "title": "One Way Street",
        "trackartist": "Aerosmith",
        "albumartist": "Aerosmith",
        "genre": "Hard Rock",
        "year": 1973,
        "tracknum": 4,
        "id": 136577,
        "trackartist_ids": "12666"
      },
      {
        "artist_id": 12666,
        "playlist index": 3,
        "albumartist_ids": "12666",
        "url": "file:///volume1/music/Aerosmith%20-%201973%20-%20Aerosmith/06.%20Write%20Me.mp3",
        "coverid": "dde2dfbf",
        "duration": 252.081,
        "album_id": 11821,
        "album": "Aerosmith",
        "title": "Write Me",
        "albumartist": "Aerosmith",
        "genre": "Hard Rock",
        "trackartist": "Aerosmith",
        "tracknum": 6,
        "id": 136579,
        "trackartist_ids": "12666",
        "year": 1973
      },
      {
        "id": 136580,
        "trackartist_ids": "12666",
        "tracknum": 7,
        "year": 1973,
        "albumartist": "Aerosmith",
        "genre": "Hard Rock",
        "trackartist": "Aerosmith",
        "title": "Movin' Out",
        "album_id": 11821,
        "album": "Aerosmith",
        "duration": 302.497,
        "coverid": "dde2dfbf",
        "url": "file:///volume1/music/Aerosmith%20-%201973%20-%20Aerosmith/07.%20Movin%27%20Out.mp3",
        "playlist index": 4,
        "artist_id": 12666,
        "albumartist_ids": "12666"
      },
      {
        "trackartist_ids": "12666",
        "id": 136581,
        "tracknum": 8,
        "year": 1973,
        "genre": "Hard Rock",
        "albumartist": "Aerosmith",
        "trackartist": "Aerosmith",
        "title": "Walkin' the Dog",
        "album_id": 11821,
        "album": "Aerosmith",
        "duration": 192.679,
        "coverid": "dde2dfbf",
        "url": "file:///volume1/music/Aerosmith%20-%201973%20-%20Aerosmith/08.%20Walkin%27%20The%20Dog.mp3",
        "playlist index": 5,
        "artist_id": 12666,
        "albumartist_ids": "12666"
      }
    ],
    "player_name": "Kitchen",
    "rate": 1,
    "mixer volume": 40,
    "signalstrength": 0,
    "waitingToPlay": 1,
    "player_ip": "<IP_ADDRESS>:39725",
    "digital_volume_control": 1,
    "time": 0,
    "playlist mode": "off",
    "playlist_cur_index": "0",
    "player_connected": 1
  },
  "id": 1,
  "method": "slim.request",
  "params": [
    "aa:aa:93:0a:1b:fa",
    [
      "status",
      "0",
      500,
      "tags:cdegltuysAKNRS"
    ]
  ]
}

OK, that is odd. LMS states there are 8 tracks, but only returns 6? Whilst this could be an issue with Material, its looking very much like an LMS issue to me. Have you tried with other control points - e.g. iPeng, Orange Squeeze, SqueezeCtrl, Squeezer? AFAIK these use JSONRPC too (but some, e.g. iPeng/SqueezCtrl, send control messages via Cometd) . Not 100% sure what the default web UI uses.
What version of LMS are you using?

The only other controller I have tried so far is Squeezer. It also gives me the correct information (8 tracks), but it connects to LMS via the telnet port (9090), therefore I guess it does not retrieve the album information via a JSON response.
I am running LMS on a Synology DS415play. However, I am not using the 7.9.1 image provided by Synology but I've downloaded a 7.9.2 image from here: https://sourceforge.net/projects/lmsupdate/files/DSM6.x/
This is what LMS tells me:
Logitech Media Server Version: 7.9.2 - 0023.1559540205 @ Wed Jun 5 14:51:56 CEST 2019
Hostname: coberNAS
Server IP Address: <IP_ADDRESS>
Server HTTP Port Number: 9002
Operating system: Synology DiskStation - EN - utf8
Platform Architecture: i686-linux
Perl Version: 5.24.0 - i686-linux
Audio::Scan: 0.95
IO::Socket::SSL: 2.037
Database Version: DBD::SQLite 1.34_01 (sqlite <IP_ADDRESS>)
Total Players Recognized: 3

Can you use curl from a commandline? If so, try:
curl 'http://SERVER:9000/jsonrpc.js' --data '{"id":1,"method":"slim.request","params":["aa:aa:93:0a:1b:fa",["status",0.100]]}'

Replace SERVER with your LMS's hostname/IP. Does this return details for 8 tracks?

Here's what curl gave me (it's eight tracks):
{
  "id": 1,
  "method": "slim.request",
  "params": [
    "aa:aa:93:0a:1b:fa",
    [
      "status",
      0.1
    ]
  ],
  "result": {
    "rescan": "1",
    "player_name": "Kitchen",
    "player_connected": 1,
    "player_ip": "<IP_ADDRESS>:41860",
    "power": 1,
    "signalstrength": 0,
    "mode": "play",
    "time": 39.6702580966949,
    "rate": 1,
    "duration": 220.316,
    "can_seek": 1,
    "mixer volume": 40,
    "playlist repeat": 0,
    "playlist shuffle": 0,
    "playlist mode": "off",
    "seq_no": 0,
    "playlist_cur_index": "0",
    "playlist_timestamp":<PHONE_NUMBER>.88821,
    "playlist_tracks": 8,
    "digital_volume_control": 1,
    "playlist_loop": [
      {
        "title": "Make It",
        "playlist index": 0.1,
        "id": 164189
      },
      {
        "id": 164190,
        "title": "Somebody",
        "playlist index": 1.1
      },
      {
        "title": "Dream On",
        "playlist index": 2.1,
        "id": 164191
      },
      {
        "id": 164192,
        "playlist index": 3.1,
        "title": "One Way Street"
      },
      {
        "id": 164193,
        "title": "Mama Kin",
        "playlist index": 4.1
      },
      {
        "id": 164194,
        "title": "Write Me",
        "playlist index": 5.1
      },
      {
        "id": 164195,
        "title": "Movin' Out",
        "playlist index": 6.1
      },
      {
        "playlist index": 7.1,
        "title": "Walkin' the Dog",
        "id": 164196
      }
    ]
  }
}

And here's what I see with Material Skin (same screenshot as above):

That's! great! What that means is something in the tags: parameter is causing LMS to filter out items. So, I'm assuming the following will only give 6 tracks:
curl 'http://SERVER:9000/jsonrpc.js' --data '{"id":1,"method":"slim.request","params":["aa:aa:93:0a:1b:fa",["status",0.100,"tags:cdegltuysAKNRS"]]}'

...as this is the command Material is using. Please check the above still works (as in still returns incorrect amount). Then, please do the command but remove a letter from tags: until all 8 tracks are returned.

Hmm. Not sure what you would have expected.
Here is what I got for
curl 'http://`<IP_ADDRESS>:9002/jsonrpc.js' --data '{"id":1,"method":"slim.request","params":["aa:aa:93:0a:1b:fa",["status",0.100,"tags:cdegltuysAKNRS"]]}'

It contains the first track only:
{
  "params": [
    "aa:aa:93:0a:1b:fa",
    [
      "status",
      0.1,
      "tags:cdegltuysAKNRS"
    ]
  ],
  "result": {
    "rescan": "1",
    "player_name": "Kitchen",
    "player_connected": 1,
    "player_ip": "<IP_ADDRESS>:42407",
    "power": 1,
    "signalstrength": 0,
    "mode": "play",
    "time": 79.0941779441833,
    "rate": 1,
    "duration": 252.081,
    "can_seek": 1,
    "mixer volume": 40,
    "playlist repeat": 0,
    "playlist shuffle": 0,
    "playlist mode": "off",
    "seq_no": 0,
    "playlist_cur_index": "5",
    "playlist_timestamp":<PHONE_NUMBER>.88821,
    "playlist_tracks": 8,
    "digital_volume_control": 1,
    "playlist_loop": [
      {
        "playlist index": 0.1,
        "title": "Make It",
        "id": 164189
      }
    ]
  },
  "id": 1,
  "method": "slim.request"
}

And it does not change, no matter how many letter I remove from tags.

D'oh!!! I made an error in the previous example 0.100 should have been 0,100 - this is the range of tracks to return (0 to 100). So, can you try:
curl 'http://SERVER:9000/jsonrpc.js' --data '{"id":1,"method":"slim.request","params":["aa:aa:93:0a:1b:fa",["status",0,100,"tags:cdegltuysAKNRS"]]}'

Please check the above still works (as in still returns incorrect amount). Then, please do the command but remove a letter from tags: until all 8 tracks are returned.

OK, here we go.
For the sake of readability I've attached a zip-File containing four JSON files named after the tags I've used to create these responses.
json.zip
While with tags:cdegltuysAKNRS and tags:cdegltuysAKNR there were only six tracks present in the response, with tags:cdegltuysAKN all eight tracks were present. I've then tried tags:cdegltuysAKNS which also resulted in the correct list of eight tracks.

Thanks for that. So, its the R which is supposed to return a track;s rating. Not sure why that's causing tracks to not appear. Pretty sure this is also the reason for the browse error too.
Are any of these songs rated? Have a rating tag? Do you use TrackStat?

I am not aware of having rated any of the songs in my library. How/where would I do that and how/where can I check if I have maybe rated them by accident?
I am also not aware of any rating tags in the files themselves. I actually don't see any significant differences in the ID3 metadata between the two tracks not displayIed and the other six tracks.
And as I wrote earlier, I succeeded to make previosuly not displayed tracks visible again by temporarily removing them from and re-adding them to the LMS library. This indicates it has nothing to do with the metadata in the file itself but with whatever metadata/information stored in LMS' library.
And I've just verified I don't have the TrackStat plugin installed. Do you suspect any other LMS plugin to mess things up? Would it help to give you a list of LMS plugins I have installed?

Sorry, I really have no idea about other plugins - I'm actually pretty new to LMS!
Anyhow, for 0.8.2 I've updated the code to only use R if TrackStat is installed - the rating would only be displayed if this was installed, so there is no need to fetch if not.
However, using R in the tags: section should not cause any filtering. the tags: section indicates which info a controller would like to know about, not what it should filter on. I'm guessing that LMS has some sort of error when accessing ratings for these files (for whatever reason), causing them not to be added to the respective lists. This is an LMS issue. It's not seen in other controllers, as I'd imagine they are not requesting this info. I suggest you raise an issue on LMS's github issue tracker.
But as for Material, I think this issue is now resolved - so I'm closing. I'll release 0.8.2 soon.


Uglify Fixnum Error With ruby 2.4

@aravind99, do you have any details? At least I've succesfully used Uglifier with Ruby 2.4 and tests are run on it automatically.


⚠ Bofrost.be has degraded performance

In bbe0623, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 3080 ms

Resolved: Bofrost.be performance has improved in a8c94e7 after 311 days, 8 hours, 12 minutes.


Add support to open, create and close file

I just noticed that open and create function can't be call on the same function, but they work if you call just one

Thanks for the contribution. I think your problem may have to do with null terminated strings.
Also, let's get some tests going for the standard library.

Ok, I will try to fix that.

I'm going to visit this problem and see if we can't avoid this memcpy overhead somehow, but to get this working for now, you can do something like this:
fn open(path: []u8, flags: isize, perm: isize) -> isize {
    var buf: [path.len + 1]u8; // allocates memory on the stack
    @memcpy(&buf[0], &path[0], path.len);
    buf[path.len] = 0;
    // now you can use &buf[0] for the syscall.
}

Oh ok I understand better with this example, thanks. I will add it.

Done, I have commited it.

Done, I will be more careful next time.

no worries, and thanks for the contribution! also thanks for the syntax highlighting package you made. I think that's the same format that github requires for highlighting, so that will come in handy.

No problem. I love this language that's why I try to contribute to it. :yum:


DecimatedSpawnPoint no longer provided in cells

I've been using the DecimatedSpawnPoint array to triangulate an approx location for nearby pokemon so I don't have to move my player to scan for wild pokemon. It doesn't appear to get passed anymore, and I'm also not receiving all the nearby pokemon in the array.
Is this a change on Niantic's end that's preventing this data from coming through?

This appears to happen to me when the servers are under heavy loads

I hope that's all it is. I have a slack bot scanning Pokemon around my office and I've finally got it running solid and then this happens, haha.

hahah the feels


732 patch install not removing older version of bouncy castle -

Describe the bug
Installing the latest rhythmyx patch pre-upgrade to 8.1.1 should be  removing the previously installed bouncy castle jars from the JRE(64)/lib/ext folder but the patch fails to remove them.  after patching,  starting via the jetty service causes annotation processing to take a very long time 300k+ ms and the service appears to hang.
The 8.1 upgrade needs to remove the bouncy castle jars from ext if they are found and the 7.3.2 patch should be updated so it correctly removes them.

Remove BC jars from JRE/lib/ext as part of 8.1.1 upgrade in install.xml

Closing issue. If it tests ok, please remove the Ready for QA label. If there is still a problem, please re-open and remove the Ready For QA label - label - Re-Opened.

Tested upgrading a Rhythmyx instance on 732_20211210 patch level.  The existing bc* jars were removed from the JRE and JRE64 folders.


Remote: compress statusbar label

Can we just have an aggressive max length and put "..." into the middle of the label?

This would seem to make most sense workbench-side to cover all extensions.

@chrmarti you mean to compress any text in the statusbar from any extension that is put there? I am not entirely sure, I just think that the remote case can easily produce strings of length that are long for no helpful reason.

The expension needs to register a resourceLabelFormatters that returns workspaceSuffix that is human readable and not too long.

/duplicate https://github.com/microsoft/vscode-remote-release/issues/1470


Filter Chips are getting concatenated in filterType 'custom' mode, incompatible with multi-select.

When column with filterType custom mode and with multi-select options. filter chips are getting concatenated in the same chip, when select on multiple options.
Expected Behavior
filterType custom with multi-select options should support for multiple chips to be displayed in the chips list. Like in the current filterType multiselect mode.
Current Behavior
FilterType with custom
Filter Options :
Multiple options are selected.

Chip :
All selected options are concatenated into single chip.

FilterType with multiselect
Chip :
All selected options are displayed as separate chips.

Analysis
I have investigated mui-datatable TableFilterList.js component, and i found that, the filterType custom doesn't handle multi-values in the filterList[index]
https://github.com/gregnb/mui-datatables/blob/f0ea9e58d82839c57a4dfd4a342b6649932660a7/src/components/TableFilterList.js#L44
Your Environment

Tech
Version

Material-UI
4.3.3

MUI-datatables
2.11.1

React
16.9.0

browser
any

Hello @buwanekab. So, if you are using filterType: "custom", then you are required to supply your own filter component and logic, and so on. That means that you have to make your own multiselect component. Given that, I'm not sure that custom is really what you're looking for. Why doesn't simply using multiselect work for you?

I think I'll need to see a sample of code that isn't working to be of more help. Can you post something to codesandbox?

@gabrielliwerant ,
can check on this codesandbox example :
https://codesandbox.io/s/monitoring-dashboard-hhb42?fontsize=14
FYI -
custom filterType in  Alert Source
multiselect filterType in  Alert Severity

Not sure if youve solved this yet but I came across this same issue.
The issue is in the customFilterListRender fn and it depends how many options youve selected.  If you select one option then it looks like the value is a string and it renders in the chip. When you select multiple, it renders the contents of the array in the same chip.
What I did (and there's probably a better way to do this) was to check if value is an Array. If it is, then I iterate through the array and return each value separately. If its not an array then I just return the value.
Here's an example; I use ramda for the helper functions.
customFilterListRender: value => {
            if (!R.isEmpty(value)) {
                return R.is(Array, value)
                         ? value.forEach(item => item || '(blank)')
                          : item || '(blank)'
            }
            return false
        }, ```

@promerorgz ,
Thanks for your suggestion.
I have a question, In your solution, you have used ternary operation to return values, based on the input value from customFilterListRender. So, in there my doubt is that you are returning undefined value if it is an array. value.forEach(item => item || '(blank)'), since forEach return type is undefined,
But anyway, i tried with my sandbox. still the same. now its giving different error due to undefined return.

I've looked into this more deeply, and this isn't actually a bug, it's a non-existent feature. The way custom filter list renderers work now, they only support single values, not arrays of values. Quite a few things need to change about filters in order to accommodate this, including a necessary additional option to supply your on delete function for custom filter list renders, since otherwise the code won't know how it's supposed to modify the filterList array in situations where you have multiple items. It's not the same as multiselect, because multiselect makes decisions about how to remove elements from the filterList array that can't be guaranteed if you're using custom logic (in particular, the custom filter example will break if using multiselect logic).
I'm working on something now, but I'm not guaranteeing anything as there's a lot of work and many opportunities for regressions that I have to be careful about.


Drop support for Swift 5.4

Minimum supported version is now Swift 5.5.
Also includes the same upgrades to CI as those found in vapor/sqlite-kit#100 (most notably, adding the API breakage check and code coverage).

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@9439661). Click here to learn what that means.
The diff coverage is n/a.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #82   +/-   ##
=======================================
  Coverage        ?   84.15%
=======================================
  Files           ?        7
  Lines           ?      303
  Branches        ?        0
=======================================
  Hits            ?      255
  Misses          ?       48
  Partials        ?        0

Flag
Coverage Δ

unittests
84.15% <0.00%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

These changes are now available in 4.3.0