Reorganized documentation

Moved the 'Tutorials' section and included the introduction in the 'Basics'. For now, added unannotated tests to the 'Tutorials' (#104).

Please reformat to this organisation as we discussed on slack
Introduction
API -
    OptimizationFunction
    OptimizationProblem
    solve
Optimisers -
    Global
    Local
Examples/Tutorials

Please reformat to this organisation as we discussed on slack
Introduction
API -
    OptimizationFunction
    OptimizationProblem
    solve
Optimisers -
    Global
    Local
Examples/Tutorials

Tutorials first, API last. Always. Most people will just go to the first page on the tutorials, copy paste, and do that. The rest of the documentation is just for the hardcore people. But if most people can't start using the package in 1 minute because they can't find the tutorial, we failed.

Tutorials first, API last. Always. Most people will just go to the first page on the tutorials, copy paste, and do that. The rest of the documentation is just for the hardcore people. But if most people can't start using the package in 1 minute because they can't find the tutorial, we failed.

I suppose this could be closed now? Or shall I still change anything? It might be good to publish it now (as general reference) before I add new tutorials.

I suppose this could be closed now? Or shall I still change anything? It might be good to publish it now (as general reference) before I add new tutorials.

Yup, just had to do one last thing and flip local and global optimizers. Local always come first because 90% of users use local optimizers and global are more for the "hardcore"

Yup, just had to do one last thing and flip local and global optimizers. Local always come first because 90% of users use local optimizers and global are more for the "hardcore"

https://github.com/SciML/GalacticOptim.jl/commit/eb65f59f30ff9b4a5ce117aee5ca3c24137f406d

https://github.com/SciML/GalacticOptim.jl/commit/eb65f59f30ff9b4a5ce117aee5ca3c24137f406d

Those two tutorials need tests/explanation and get rid of the test pieces. But I assume that's what's coming next.

Those two tutorials need tests/explanation and get rid of the test pieces. But I assume that's what's coming next.

Oh.. I 're-flipped' them because the order was originally 1. local 2. global. I wanted to change it according to Vaibhav's suggestion. Thanks for fixing this.
Regarding the second comment: exactly.

Oh.. I 're-flipped' them because the order was originally 1. local 2. global. I wanted to change it according to Vaibhav's suggestion. Thanks for fixing this.
Regarding the second comment: exactly.

Actually I wanted to fix the organisation of sections a bit. Let me just do that in a new PR, would be easier any way.


Add support for specifying the access_type parameter for Google OAuth

In order to receive a refreshToken from Google Auth, access_type must be set to offline in the authorization url. The Google provider didn't allow setting this parameter.

Thanks for your contribution!


Fix url is not decoded before comparison

If the name of the file had a character that required URL encoding (eg. A white space), it wasn't finding the item to mark it as selected. Also, we don't need to continue searching if we already found it, so we now break from the loop.

Thanks, could you explain in a little more detail what bug was being caused by this that you fixed? I am quite busy right now but I will definetly look over this when I have time. Thank you for taking the time to submit this! :)

Thanks to you for developing this very useful tool!
The case I was fixing happened when exporting and testing it locally. The URL given to the function was URL encoded, for example, if a note had a name like "Hello World", the URL would store Hello%20World. However, the HTML content has it decoded, resulting in the comparison being "Hello World" == "Hello%20World", which is not true.
This resulted in the notes with a space in the name not being selected correctly, causing the content tree on the left side to collapse and not highlight the current note.
I believe this could be an issue with other characters supported as file names, but that change once URL encoded.
One thing I just realized is that your tool has an option to convert all the note names to "web format", making them lowercase and separating the words with "-", that probably avoids the issue, but as long as you have the option to keep the note names in their original format, I would try to be careful with URL encoding.
I hope this clarified the issue, let me know if you have any doubts 🙂

Thank you, this makes perfect sense! I will merge this as soon as I can


uv_write documentation unclear about buffer lifetime and layout requirements.

uv_write2, and by extension, uv_write, perform a copy of bufs into an internal buffer of the uv_write_t. This is done via a memcpy starting at bufs and being n * sizeof(bufs[0]), which requires that the buffers be contiguous and equally sized. The documentation at http://docs.libuv.org/en/v1.x/stream.html does not capture this requirement. This could lead to corruption bugs in the bytes being written if the buffers were not contiguous.

The implementations either copy buffers into a temporary buffer, or write them out synchronously, so the buffer is free to be released after the call, and does not necessitate waiting until the callback indicating completion. The doc should clarify that it is OK to release the buffer immediately.

I guess (2) would lock libuv into a possible non-optimal implementation, but the doc should at least then clarify that the buffer(s) may be released after the callback is invoked.

No, bufs is an array of uv_buf_t which are tiny structs, each containing a pointer and size. I see no implied requirement on the pointed-to buffers.
I personally believe it's unavoidable to have to postpone releasing the buffers until after completion, unless libuv wanted to pay a nontrivial performance penalty, which might also noticeably hit my use case of knot resolver, among others.
Docs should clarify this anyway.

@vcunat is correct.  What we copy is the uv_buf_t structures not the actual content of the buffers.  Those can be of different sizes or whatever, there is no requirement.
I agree we should clarify this.

To clarify 2), libuv does try to do the write immediately, which may succeed, but the completion status is always deferred to the callback, in order to provide a consistent API.  The buffers can only be freed after the callback is called, and they should be held by the user, since libuv nullifies its reference.

See #1074.


Fix incorrect spelling of 'than'

Hey, just a small PR. Impressed with the project, will use it!

Thank you for pull request @superkarolis! Great that you've noticed the type.
Looks like tests failed. Probably lessThan has not been fixed in all places.
In order to still have this fix I made it manually and commit. So the typo is fixed now.

My mistake, thanks!


Markdown position not stable while preview is open

Windows (could not repro on mac)

Clone our smoke test repo, open readme.md and open preview to side
On the line where you have Instalation just add some characters to the end. Notice how the editor which you are currently editing always jumps around. I find this very frustrating as it distracts me while working on markdown

I think there are two settings that are conflicting.
I set the second one to false and its better for me (with mermaid charts that drastically alter the preview output as you type, this was really bad).
// Scrolls the markdown preview to reveal the currently selected line from the editor.
  "markdown.preview.scrollPreviewWithEditorSelection": true,

  // Mark the current editor selection in the markdown preview.
  "markdown.preview.markEditorSelection": true,

  // When the markdown preview is scrolled, update the view of the editor.
  "markdown.preview.scrollEditorWithPreview": true,

Should be fixed by new scroll sync logic


FilePicker v8 requires multiple clicks to select 'places' when in compact mode

When the filepicker is in "compact mode" (i.e. the the width is small, and rather than displaying the 'places' to the left, and the 'directory listing' to the right, it only displays one at a time.) it can require multiple clicks to choose a new 'place'. see the following video:
https://youtu.be/Uy8hyXxq3ds
it always requires two clicks to access SharePoint places (the first account demoed in the above video), however the situation is worse with the consumer onedrive.live.com personal accounts (the second account demoed) ... you can see that it will not navigate to 'My Files' at all, until you first navigate to 'Photos' and then back again.
i don't believe this behaviour is a problem with my implementation, because when not running in "compact mode" it all works fine.
with thanks

@jonathon-love good find! This is a fairly-recent regression in the Picker's behavior. We will have a fix deployed in the next coupld of weeks.


[Feature] Add PlaceholderAPI support for common info sharing (without api usage)

Pre-Request Checklist

[X] I have checked that I am on the latest version of Terra.
[X] I have searched github for similar features requests, including closed
ones, and found none.
[X] I believe this is within the scope of Terra.
[X] This feature request is for all of Terra, and isn't something that
should be implemented by a pack or addon.

Feature Description
Provide placeholderAPI support for common tasks such as determining biome player is in.
What Problem Does This Solve?
3rd party plugin makers can develop against placeholderAPI for triggers/effects, and having the biome be a placeholderapi tag makes it so those developers can use preexisting logic (does placerholder = X) to also detect specific biomes or other biome details (such as temperature)
A Solution You'd Like
Add placeholderAPI tags for biomes to use/that pulls information from biomes, such as name, temperature, and other key details.
Alternative Solutions

Devs could develop against the API (time/effort - and documentation is lacking)
Devs could develop against NMS

Additonal Context
https://www.spigotmc.org/resources/placeholderapi.6245/
https://discord.com/channels/715448651786485780/1166164677944934462

One example here is pyro fishing, the placeholder below would be a good example that would help with many other plugins, it leaves compatibility very open and is not just limited to pyro fishing.
%players_custom_biome_name% = MY_CUSTOM_BIOME


Feature/deep linking new flow

New flow of mobile deep linking between Dapp and Wallet.
Added the redirect field with native fields that enables redirection from Wallet to Dapp after handling session request.

feature/deep_linking_new_flow


paid programming for this library

Would like to hire you to complete a function in your powershell for ninja one..
seems ninja doesnt want to help at all.
please contact me for more information

We're committed to having complete parity with the NinjaOne API without anyone needing to pay-per-function.
Let me know what function/endpoint you're looking for and I'm happy to let you know whether it's something we're already adding - we're working on everything added in 5.6 at the moment for the 2.0.0 stable release this week.

I need to be able to unattentively call scripts/run/id/blah on a specific device.
Meaning execute scripts in the backend
@.https://ca.content.exclaimer.net/?url=https%3A%2F%2Fsentricorp.com%2F&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&excomponentid=jTs8ktvQ7AfgcPomx1buawKV6tcj044Hg6tVSdHhN6g&signature=Ogdx21LOOqCD2QT_aNG4FGb4bSKUimxfZD6p8QUsGhr-KWFGmJWSmqeWPCQQm7zSONTZIQ-n72WeVbiLGcij2cwCeuUK4hPwjbAn9xU8oGNE9-_ua3LlvQunRp-lVwbmB5zyDumVift59ioPnCWgIppmKqxVijajxVxEgfiNvvXNqjsM8HW424ppvPODouLW3dv9EChPNuSbPnn8S5434ncXKWtlFilSydqevnOZT1udFeZ7TPwoMi8U3rSY4kCBjSax-Mvb8W09q4JgD0YVtUKejiz-QcNr94De2fUmfC8Fcx_D08tJ9ZZX-1JekjThQji0vBmMsmrey-fMYrx2Iw&v=1
@.
@.***
1-877-877-5030tel:1-877-877-5030
@.***
<EMAIL_ADDRESS>@.***
www.sentricorp.comhttps://ca.content.exclaimer.net?url=https%3A%2F%2Fwww.sentricorp.com%2F&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&signature=GfNnlKmmAyv6PiVe_8v80XuqEBJMofX5R-LIWIlI0cjGtNrqbqEr6RaBn5UtFJRFWIcdw1Xzuof_DQ6uoDsnvmDNmAMKEpk2Hv2mHI1A0PyhOmQNlHZKG6cRW2o3_hUCk7RAkoARb6OkQFJuwBTKD6C70WvqoFhwD1OxTjURvxZjVPIlNLVIY3jWozgBKj4hhKbge7L_2ZRGl9y-tL-61dJELvjcc9Bp_cNKO-ntK62BBoex1sbDlcFQrX5VcGZ2pjqQ6nPXihXStLffCcQPXudCwUheGyxgVlDauEDBDB7Owoil2C6iJIGh4NiZUqt5cOSOqxXE3Ak6MGi8zQYBkA&v=1
@.***
Book a meeting with me now!https://ca.content.exclaimer.net?url=https%3A%2F%2Fwww.sentricorp.com%2Fservice-page%2Fintroductory-consultation%3Freferral%3Dservice_list_widget&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&signature=kGyCJY7z5z6B0X5aTbK2_bI3hlC37zZhJNR-BNfcXuDBSXUpFsJ1RdaoL7r81WdrmnriJWNgzlRjpe4aYCUmr-8KhfSqhGaY2z3I-hiFGLCMrqUDhfyxRqtbRj9L1zW9gVNWO88xbLBMmN-fc7Ckr1RbeKetxJwcI9qgi2vrFBqvAgjjhWbVMZ6e-K5Dzu8IFUW3R5NRZpqmxPCvUORTuSK4Mz0aCcznp-VnHSJxg0jOsGD7_zPIeFKP34eMg3gYIS6PJKdRKi6PVjJrFFnlDwH8E4ab0xaej8l3_F2SAT45SMF6oa7mrZUEcslfSBcbzA7EuG_S-JQtt1nxEtA7Fg&v=1
@.https://ca.content.exclaimer.net/?url=https%3A%2F%2Fwww.sentricorp.com%2Fsolutions-wasabi&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&excomponentid=jY0s6VsVqLXQc1xVu-_adeP4wXJ1KjPu7rTt1S_cZpc&signature=hJEEO5G44tpiTan64qRBozHjndz7ZMHvyFW1NqWCA-YqJ0WUA5d2jt8bzrK7_URjif_xxqHipGR7_lJ4KqhS6yeWmQ0OLMApEGPcewYgK2r7JSMB2TU1pMPaO0THzAoddyd-ojHrS3mfwzEq7jmvOmetiM-ExyX7J-QJK25iDs8aT_uL4MVSnKv3ZnpK8kaLdZobFCadcyCJ2rKghjbSbemWZdzhiKQEpjFEU212ZA66PakTvembUTP3owkltKHLT6B2jxZ2TZCRcCWbkvbSLtp_WC1F8d6zZpEqCbvTd67mmuPzbcSTjUwih4-gMzRDyOUzTpQbEraW6py9z67D4w&v=1
Sentricorp accepts no liability for the content of this email, or for the consequences of any actions taken on the basis of the information provided, unless that information is subsequently confirmed in writing. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of the company. Sentricorp is a company registered in Canada.
@.
From: homotechsual @.>
Sent: Monday, December 18, 2023 1:09 PM
To: homotechsual/NinjaOne @.>
Cc: Frank CJ @.>; Author @.>
Subject: Re: [homotechsual/NinjaOne] paid programming for this library (Issue #28)
We're committed to having complete parity with the NinjaOne API without anyone needing to pay-per-function.
Let me know what function/endpoint you're looking for and I'm happy to let you know whether it's something we're already adding - we're working on everything added in 5.6 at the moment for the 2.0.0 stable release this week.
—
Reply to this email directly, view it on GitHubhttps://github.com/homotechsual/NinjaOne/issues/28#issuecomment-1861226533, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABBP6JFOQ4BAOSFJX4KJAC3YKCBERAVCNFSM6AAAAABAZ5S5V2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRRGIZDMNJTGM.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

Sounds perfect..
With your script I was able to get
Expires 12/14/2023 1:32:11 PM
Access Xr6YAvcfxC_......
Code bbf5c3d7-708d……
Refresh bbf5c3d7-708d-4afc-.......
Type Bearer
Not sure what to do next..
@.https://ca.content.exclaimer.net/?url=https%3A%2F%2Fsentricorp.com%2F&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&excomponentid=jTs8ktvQ7AfgcPomx1buawKV6tcj044Hg6tVSdHhN6g&signature=Ogdx21LOOqCD2QT_aNG4FGb4bSKUimxfZD6p8QUsGhr-KWFGmJWSmqeWPCQQm7zSONTZIQ-n72WeVbiLGcij2cwCeuUK4hPwjbAn9xU8oGNE9-_ua3LlvQunRp-lVwbmB5zyDumVift59ioPnCWgIppmKqxVijajxVxEgfiNvvXNqjsM8HW424ppvPODouLW3dv9EChPNuSbPnn8S5434ncXKWtlFilSydqevnOZT1udFeZ7TPwoMi8U3rSY4kCBjSax-Mvb8W09q4JgD0YVtUKejiz-QcNr94De2fUmfC8Fcx_D08tJ9ZZX-1JekjThQji0vBmMsmrey-fMYrx2Iw&v=1
@.
@.***
1-877-877-5030tel:1-877-877-5030
@.***
<EMAIL_ADDRESS>@.***
www.sentricorp.comhttps://ca.content.exclaimer.net?url=https%3A%2F%2Fwww.sentricorp.com%2F&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&signature=GfNnlKmmAyv6PiVe_8v80XuqEBJMofX5R-LIWIlI0cjGtNrqbqEr6RaBn5UtFJRFWIcdw1Xzuof_DQ6uoDsnvmDNmAMKEpk2Hv2mHI1A0PyhOmQNlHZKG6cRW2o3_hUCk7RAkoARb6OkQFJuwBTKD6C70WvqoFhwD1OxTjURvxZjVPIlNLVIY3jWozgBKj4hhKbge7L_2ZRGl9y-tL-61dJELvjcc9Bp_cNKO-ntK62BBoex1sbDlcFQrX5VcGZ2pjqQ6nPXihXStLffCcQPXudCwUheGyxgVlDauEDBDB7Owoil2C6iJIGh4NiZUqt5cOSOqxXE3Ak6MGi8zQYBkA&v=1
@.***
Book a meeting with me now!https://ca.content.exclaimer.net?url=https%3A%2F%2Fwww.sentricorp.com%2Fservice-page%2Fintroductory-consultation%3Freferral%3Dservice_list_widget&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&signature=kGyCJY7z5z6B0X5aTbK2_bI3hlC37zZhJNR-BNfcXuDBSXUpFsJ1RdaoL7r81WdrmnriJWNgzlRjpe4aYCUmr-8KhfSqhGaY2z3I-hiFGLCMrqUDhfyxRqtbRj9L1zW9gVNWO88xbLBMmN-fc7Ckr1RbeKetxJwcI9qgi2vrFBqvAgjjhWbVMZ6e-K5Dzu8IFUW3R5NRZpqmxPCvUORTuSK4Mz0aCcznp-VnHSJxg0jOsGD7_zPIeFKP34eMg3gYIS6PJKdRKi6PVjJrFFnlDwH8E4ab0xaej8l3_F2SAT45SMF6oa7mrZUEcslfSBcbzA7EuG_S-JQtt1nxEtA7Fg&v=1
@.https://ca.content.exclaimer.net/?url=https%3A%2F%2Fsentricorp.com%2F&tenantid=viXmC89AEe2fdAAiSK9kbA&templateid=dd6102a4132bee11a9b96045bd5bd41a&excomponentid=q-UBakGCkgHmJuIIvPoQzVATxXV_gGnKJlcYpV8UxCg&signature=Ogdx21LOOqCD2QT_aNG4FGb4bSKUimxfZD6p8QUsGhr-KWFGmJWSmqeWPCQQm7zSONTZIQ-n72WeVbiLGcij2cwCeuUK4hPwjbAn9xU8oGNE9-_ua3LlvQunRp-lVwbmB5zyDumVift59ioPnCWgIppmKqxVijajxVxEgfiNvvXNqjsM8HW424ppvPODouLW3dv9EChPNuSbPnn8S5434ncXKWtlFilSydqevnOZT1udFeZ7TPwoMi8U3rSY4kCBjSax-Mvb8W09q4JgD0YVtUKejiz-QcNr94De2fUmfC8Fcx_D08tJ9ZZX-1JekjThQji0vBmMsmrey-fMYrx2Iw&v=1
Sentricorp accepts no liability for the content of this email, or for the consequences of any actions taken on the basis of the information provided, unless that information is subsequently confirmed in writing. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of the company. Sentricorp is a company registered in Canada.
@.
From: homotechsual @.>
Sent: Monday, December 18, 2023 1:14 PM
To: homotechsual/NinjaOne @.>
Cc: Frank CJ @.>; Author @.>
Subject: Re: [homotechsual/NinjaOne] paid programming for this library (Issue #28)
So we can't do things the Ninja API doesn't support, as it stands now the device/{id}/script/run endpoint requires authorization_code authentication. Ninja can enable sliding refresh tokens which allows you to do interactive authentication once and then reuse / refresh the token as long as it doesn't expire fully. (30 days from memory) which is the workaround we use currently for running scripts from HaloPSA.
—
Reply to this email directly, view it on GitHubhttps://github.com/homotechsual/NinjaOne/issues/28#issuecomment-1861236786, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ABBP6JGESPIAXNM4URRHXJ3YKCBU5AVCNFSM6AAAAABAZ5S5V2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNRRGIZTMNZYGY.
You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>

You'll need to reach out to your NinjaOne account manager and ask them to enable sliding refresh tokens. I'll get our documentation improved tomorrow as it doesn't currently cover Token auth and it should.

ok once done, can you point me to next steps once i get these to perform a run script ?

got the sliding refresh, what is next ?

@xasz simply call the API to run SCRIPT x on device Y....

As you have credentials you can connect via Connect-NinjaOne and then use the cmdlet Invoke-NinjaOneDeviceScript
Do you know that you can schedule a script in ninja?
I think you should ask this in the NinjaOne Discord.

yes i dont want to scedule it.. i want another powershell to call this on demand.
$whois = Get-NinjaOneDeviceLastLoggedOnUser -deviceId 443
foreach ($userinfo in $whois.userName) {
Write-Host " User is $userinfo"

}
Invoke-NinjaOneDeviceScript -deviceId 443 -type 'SCRIPT' -scriptId 20 -runAs $userinfo -Debug -Verbose
spits out on ninja..
Result: Failed. Unable to retrieved credential information.

Please provide an working example and the full error message.
Please use the correct code formatting markdown.


doc: Configure copybutton extension for ignoring shell prompts

You may test this PR directly here: https://builds.zephyrproject.io/zephyr/pr/64058/docs/connectivity/bluetooth/bluetooth-shell.html#scan-for-devices
Add required settings for telling the copybutton Sphinx extension to ignore prompts when copying a code block.
Both bash prompt and Zephyr UART prompt are ignored.
Examples of the new behavior:
.. code-block:: console

    $ echo "Hello World"
    Hello World

The copied text will be: 'echo "Hello World"'.
.. code-block:: console

   uart:~$ l2cap connect 29
   Chan sec: 1
   L2CAP connection pending
   Channel 0x20000210 connected
   Channel 0x20000210 status 1
   uart:~$ l2cap send 3 14
   Rem 2
   Rem 1
   Rem 0
   Outgoing data channel 0x20000210 transmitted
   Outgoing data channel 0x20000210 transmitted
   Outgoing data channel 0x20000210 transmitted

The copied text will be: 'l2cap connect 29\nl2cap send 3 14'.

Note: this option might be a good addition too, to not copy blank lines... https://sphinx-copybutton.readthedocs.io/en/latest/use.html#keep-empty-lines


502 Error crashes uploader

I'm trying to use the uploader to upload my music library, and it works for a while, the most tedious points being transcoding AACs to MP3s it seems. However, after running fine for a while, I get a server response of 502 with a whole lot of hex codes printed to my terminal, with an HTML page saying, "Server Error, please try reconnecting in 30 seconds, that's all we know". At which point google-music-upload has crashed.
So, I start the program again, and it zips through my mp3 320 files fast enough because google recognizes the hashes, and sends an "already exists" response, but it chokes on needing to re-transcode all my AAC files and some of my MP3 files, just to have google send more "ALREADY_EXISTS" responses.
It would be great if receiving that 502 didn't crash the program, or it could remember its place on subsequent invocations.

Could you please send your log file?

This is the tail end of the output, my tmux session saves 1000 lines, but the rest of the 1000 lines are more hex codes above this.
https://hastebin.com/upexometuq
Is there a more helpful log file somewhere that I don't know about?

This is not what I expect to see. You should see a Debug trace on what happened and where in the code. The hex codes are just your files encrypted when sent to Google's server. More something like this :
2018-06-26 19:15:21,764 - gmusicapi.Musicmanager1 (musicmanager:477) [ERROR]: problem gathering local info of ''/media/library/Make My Day - The Awakening EP (2018)/cover.jpg''
Traceback (most recent call last):
   File "/usr/local/lib/python3.6/site-packages/gmusicapi/clients/musicmanager.py", line 475, in upload
     track = musicmanager.UploadMetadata.fill_track_info(path)
   File "/usr/local/lib/python3.6/site-packages/gmusicapi/protocol/musicmanager.py", line 216, in fill_track_info
     track.client_id = cls.get_track_clientid(filepath)
   File "/usr/local/lib/python3.6/site-packages/gmusicapi/protocol/musicmanager.py", line 177, in get_track_clientid
     audio.delete()
 AttributeError: 'NoneType' object has no attribute 'delete'

Unfortunately the stack trace is pushed out of my tmux history... and it
takes running the program for many hours for the crash to show up.
On Tue, Jun 26, 2018, 12:22 PM Jay MOULIN<EMAIL_ADDRESS>wrote:

This is not what I expect to see. You should see a Debug trace on what
happened and where in the code. The hex codes are just your files encrypted
when sent to Google's server. More something like this :
2018-06-26 19:15:21,764 - gmusicapi.Musicmanager1 (musicmanager:477) [ERROR]: problem gathering local info of ''/media/library/Make My Day - The Awakening EP (2018)/cover.jpg''
Traceback (most recent call last):
File "/usr/local/lib/python3.6/site-packages/gmusicapi/clients/musicmanager.py", line 475, in upload
track = musicmanager.UploadMetadata.fill_track_info(path)
File "/usr/local/lib/python3.6/site-packages/gmusicapi/protocol/musicmanager.py", line 216, in fill_track_info
track.client_id = cls.get_track_clientid(filepath)
File "/usr/local/lib/python3.6/site-packages/gmusicapi/protocol/musicmanager.py", line 177, in get_track_clientid
audio.delete()
AttributeError: 'NoneType' object has no attribute 'delete'
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jaymoulin/google-music-manager/issues/10#issuecomment-400432375,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABd6YTuoZGkNGociZZP-Y9rFqVTjaKtzks5uAonagaJpZM4U2reZ
.

FWIW, I surrounded https://github.com/jaymoulin/google-music-manager/blob/27674e102a2facd0bbbac7af0b6b7db986b8417d/uploader/google_music_manager_uploader/uploader_daemon.py#L48 with a try/except with a 30 second wait in the except block, and now the program hasn't crashed in almost two days (running on a raspberry pi, it seems to be doing a LOT of ffmpeg transcoding)

Oh cool, I wasn't following your commits. Yes, definitely.  Would stderr be cleaner than the
terminal output I guess?
On Sat, Jun 30, 2018, 12:24 AM Jay MOULIN<EMAIL_ADDRESS>wrote:

As you can see that already was my guess. But you can't catch all
exceptions and treat them the way you did, that's why I needed the log file
https://github.com/jaymoulin/google-music-manager/blob/feature-12/uploader/google_music_manager_uploader/uploader_daemon.py
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jaymoulin/google-music-manager/issues/10#issuecomment-401523576,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABd6YZGfnDC8pT4lc-woSQTvb9SZCnf-ks5uByefgaJpZM4U2reZ
.


Ejecting should keep .babelrc treated as root

Not sure there's an easy way to fix it but I think that after we eject and generate babel config in package.json it may start looking for more configs in parent folders (which it doesn't do now thanks to this).
If my understanding is correct this might "break" projects on ejecting if there are .babelrc in parent folders.
Help wanted: confirm whether it's an issue, and if it is, propose a fix.

@gaearon If the project already has a .babelrc with different presets which one do you think should take preference?

It is not supported to have .babelrc before ejecting.
I think ejecting should fail if you already have one.

@gaearon Currently, we fail ejecting if we have .babelrc at project root?

@gaearon any clue about it? I can work on it if you give me the first clue about where I should start.

Any clue about what specifically?


[CU-8686etb7z] Prevents user from editing their profile if they are muted

Task linked: CU-8686etb7z Improve Muting


create bit.cpp

@Ayon-SSP please merge

Create a Folder name Bit Operations & Then save the bit.cpp in that folder


Add code for answering range minimum queries in O(1) time .

Write a code for answering range minimum queries in O(1) time.

You are talking about a sparse table! @akashz19 assigning this to you

Yeah sparse table to the rescue.

@akashz19 let the PR rain!

Are you on it? @akashz19

If you want to assign to someone else no worries i  am  busy in other stuff else will do today or tomorrow.

@ankiiitraj  please assign this task to me if it is yet open.

@paraggoyal28 assigning this to you!


Password reset isn't implemented

Resetting password doesn't do anything right now. It shouldn't be too fussy to write a couple views and rig the URLs up. Sending emails could be the most problematic part of this. How am I going to send emails at all? It'll be necessary for the "email notifications" feature.

Solved by removing all user-based features (accounts, register, login, logout, password reset, etc).


[Select] Fix popover width and add autoWidth prop

This sets the minimum width of a Select's popover to the width of the select field and adds an autoWidth prop to disable this, similar to v0.x of material-ui.
Closes #8286

It would be good to have a test and a demo for this new feature.

@oliviertassinari Indeed, but I don't know how to test the width of the component. Is this even possible without actually rendering the component in a browser?

I don't know how to test the width of the component.

@leMaik I think that testing this in the browser will be hard to assert, the width might change from one browser to another. So for the sack of effectiveness, I would stick to a jsdom test. Yes, you can define your own width to the element with jsdom :).

@oliviertassinari Thanks, I'll look into that tonight and add tests.

@leMaik I'm gonna continue this PR if needed. Hold on.

@oliviertassinari But… but it's week end! :cry:

@oliviertassinari Well, I was going to continue this this weekend (today) but fine, feel free to get this done. :+1:

@leMaik I haven't started yet. In that case, I'm moving to #8274 👼 .

@oliviertassinari I didn't find any way to get an element's width using JSDOM. It doesn't seem to have a layout algorithm so the widths are always zero. :confused:

@leMaik I will have a look at it

@oliviertassinari Thank you, I'm curious how that will work. :+1: I just added a demo and removed the inline minWidth calculation.

@leMaik Thanks

@oliviertassinari Nice! :tada:


When creating a room create a new table for the chat

I was researching this ticket, and from what I found creating a new table for each chat is not the best solution.
The best is to use the existing 'message-chat' table and add a new column 'chat_id' to this table in order to identify to which chat this message was sent.
This thread asks to implement something similar to what we want to do and that is the basis of my answer .
If you agree with this let's close this ticket and create others to implement the chat in this new way.

hey Pique great job! you avoided the team on doing something that was a bad practice.
Yes for what I read on the link you posted this is the way to proceed!
I'll get rid of the other issues that were related to this change.


Abstract classes should be excluded from exhaustiveness checks

This is similar to, but simpler than (no sealed classes) e.g. https://github.com/sorbet/sorbet/issues/2572
The scenario described here is somewhat common when using rails STI with an abstract base class.
Input
→ View on sorbet.run
# typed: true
extend T::Sig

class A
  extend T::Sig
  extend T::Helpers
  abstract!
end

class AImp < A; end

class BImp < A; end

sig { params(test: A).void }
def method(test)
  case test
  when AImp
    puts "A"
  when BImp
    puts "B"
  else
    T.absurd(test)
  end
end

Observed output
editor.rb:22: Control flow could reach T.absurd because the type A wasn't handled https://srb.help/7026
    22 |    T.absurd(test)
            ^^^^^^^^^^^^^^
  Got A originating from:
    editor.rb:15:
    15 |def method(test)
                   ^^^^
    editor.rb:17:
    17 |  when AImp
               ^^^^
    editor.rb:19:
    19 |  when BImp
               ^^^^
Errors: 1

Expected behavior
No error: this is an exhaustive check.
Since A is an abstract class, it is not a valid case and should not be expected to be handled. In fact, I would describe an instance of class A existing to be more "absurd" than a new subclass class being added :)

Adding when A doesn't mean that test must be an instance of exactly A, test could be a subclass of A.  If you modify your example slightly:
# typed: true
extend T::Sig

class A
  extend T::Sig
  extend T::Helpers
  abstract!
end

class AImp < A; end

class BImp < A; end

class CImp < A; end

sig { params(test: A).void }
def method(test)
  case test
  when AImp
    puts "A"
  when BImp
    puts "B"
  when A
    puts "Some unknown subclass of A"
  else
    T.absurd(test)
  end
end

method(CImp.new)

(sorbet.run)
and run the program, you get:
Some unknown subclass of A

The intent may be that AImp and BImp are the only possible subclasses of A, but that fact has not been communicated to Sorbet, so it must assume that there are other potential subclasses.

Thanks for clarifying. The use case remains: is there any way to get exhaustiveness checks in this scenario? Should I file a feature request instead?

Thanks for clarifying. The use case remains: is there any way to get exhaustiveness checks in this scenario? Should I file a feature request instead?

Sorbet supports sealed classes and modules for declaring that there are a fixed number of subclasses of a given type.  In the original testcase, declaring A as sealed! is enough (sorbet.run).
The only caveat is that all the subclasses of the sealed class must appear in the same file as the definition of the sealed class.  The same caveat applies to inclusions of a sealed module.

Thanks - I had sealed classes filed away in my head as something too advanced for what I'd need. I gave it a try and it looks good - appreciate the help :)


Door/Window opening for two sided windows

Hi,
First at all, much thanks for your plugin, great done! :)
Is there any way to define two sided windows with one object in sh3d? maybe by a naming convention (e.g.: binary_sensor.kuche_fenster_links_contact;binary_sensor.kuche_fenster_rechts_contact) :)
thanks again,
cheers
Chris

Hey,
For this to work, I'd first need to figure out this item from my To-Do list: Make sure state-icons/labels do not overlap since the window would still have one location in SH3D and that's where I'd try to place both icons.
I'm not exactly sure what algorithm/logic to use in order to properly implement that but, once done, implementing this request should be simple enough.


fix: Error in VS with FluentIcon Color tag

<FluentIcon<EMAIL_ADDRESS>Color="Color.Lightweight" />

Generates an error:
Error (active)	CS7003	Unexpected use of an unbound generic name
on the "Color" tag.
This is upgrading from V2 to V3 in Visual Studio 17.6.6

You should set the Icon property without @ symbol.
The new FluentIcon component has 2 attributes for displaying a specific icon:

Icon is a Type representing the icon class that will be instantiated by the component.
Value is an Icon object that will be used by the component.

Are you sure that is on the Color attribute ? And not on the Icon attribute ?
Try to remove the @ set in the Icon attribute, specifying the Type of icon.
Because, the new FluentIcon component has 2 attributes for displaying a specific icon:

Icon is a Type representing the icon class that will be instantiated by the component.
Value is an Icon object that will be used by the component.

Hi,
Thanks for that.
Your examples have the "@" in them. For instance:
<div style="display:flex">
    <FluentButton Appearance="Appearance.Neutral"><FluentIcon Slot="start"<EMAIL_ADDRESS>/> Button with icon in 'start' slot</FluentButton>
    <FluentButton Appearance="Appearance.Neutral"><FluentIcon Slot="end"<EMAIL_ADDRESS>/> Button with icon in 'end' slot</FluentButton>
</div>

in https://www.fluentui-blazor.net/Icon
Getting rid of the "@" seems to fix the error.

Ho, Sorry about this typo in the documentation, to be corrected quickly.

Closing this. Example is updated for next release. No further action required.


Copy image into output dir when using .. image:: directive

At the moment, this PR shows the problem reported in #42. Basically, the image is not being copied to the output directory when using our extension.
If the extension is disabled the file is copied to ./_build/html/_images/loudly-crying-face.png and its URL _images/loudly-crying-face.png.
When enabled, the image is not copied to the output directory and the URL of it is /en/latest/loudly-crying-face.png.
Closes #42

Updated the code to handle this case properly.
A working example using this PR can be seen at https://sphinx-notfound-page.readthedocs.io/en/image-directive-on-404/test/not/found.html
The image is added directly to Builder.images with the original URI so Sphinx's internals handle this image properly and similar to any other image included with the .. image:: directive.

@acozine it would be good if can try this PR before it gets merged into master and released. I'd appreciate this. If you want to help us here, you can install it using:
pip install --force-reinstall git+git://github.com/rtfd/sphinx-notfound-page@image-directive-on-404

@humitos tested - with this branch installed, I get [Errno 2] No such file or directory: '/Users/alicia/git_repos/ansible/docs/docsite/_build/html/_images/images/cow.png' when I build the docs.

Our other images are accessible directly if you know the URL (for example, see https://docs.ansible.com/ansible/devel/_images/hyphen-funny.jpg). I don't see a test for the presence of the image - I'm just blindly copying-and-adapting from existing tests, but would something like this cover the use case?
def test_image_source(app, status, warning):
    app.build()
    path = app.outdir / '_images/loudly-crying-face.png'
    assert path.exists() == True
    assert path.exists()

    content = open(path).read()

I can't figure out why Sphinx is still trying to copy my image to the wrong output directory.

@humitos after further testing, I can confirm that this branch works correctly when the image is in the rst directory, at the same level of the filetree as the 404.rst file.
If the image is placed in another directory under docs/docsite, the extension copies the path as well as the image. For example, if the image is stored as docs/docsite/rst/images/foo.png, the build process will try to create _build/html/_images/images/foo.png in the HTML output.

For other images, Sphinx flattens the filetree when it builds the HTML. For example, the images from rst/dev_guide/style_guide/images/ get copied to html/_images/, rather than to html/_images/dev_guide/style_guide/images/. Is that the usual process, or is that unique to our Sphinx setup? I could see that being a problem if you had multiple images in different directories called image.png, but it's convenient if your images have unique names.

For other images, Sphinx flattens the filetree when it builds the HTML. For example, the images from rst/dev_guide/style_guide/images/ get copied to html/_images/, rather than to html/_images/dev_guide/style_guide/images/. Is that the usual process, or is that unique to our Sphinx setup?

This is the way that Sphinx works, I guess.
Similar as you, I thought that it would use the same structure than the filesystem when copying the images, but that assumption was incorrect (actually, internal [copyfile](https://github.com/sphinx-doc/sphinx/blob/5ce5c2c3156c53c1f1b758c38150e48080138b15/sphinx/builders/html.py#L731-L732 Sphinx function fails when the directory does not exists). I changed the code to behaves as Sphinx does.
@acozine I suppose that your docs should build properly now with the latest changes. Let me know if anything.

@humitos thank you, this is awesome! Yes, when I install this branch my build works correctly. I hope the PR can be merged soon, and a new release cut with this and other fixes, so we can put this extension to use on our site!

@acozine that is great news! Thanks for the awesome support and continuous testing. It was really helpful to me.


Node failed after add-node  - "Error: missing content for serving cert" - front-proxy-client.crt is zero bytes

Summary

New node failed after adding to existing HA cluster (4 nodes) with error:
microk8s.daemon-kubelite[508516]: Error: missing content for serving cert "aggregator-proxy-cert::/var/snap/microk8s/3597/certs/front-proxy-client.crt::/var/snap/microk8s/3597/certs/front-proxy-client.key"
(Then a miliion Go stacktrace lines...)
In the certs folder:
/var/snap/microk8s/3597/certs/front-proxy-client.crt was 0 bytes.
Regenerated the cert with:
sudo microk8s refresh-certs -e front-proxy-client.crt
and then the kubelite service started correctly.
What Should Happen Instead?

The newly added node should not die, should report the cert error without excessively long stacktraces.
Reproduction Steps

This might have happened once before with this version, but I just deleted and re-created that time.
Introspection Report

Sorry, don't want to expose logs info.
Can you suggest a fix?

Check that certs were generated correctly before / during node add?
Are you interested in contributing with a fix?

no

Hi @gsnsw-felixs, sorry to see you are having troubles.
This looks like a rare race condition, have you been able to reproduce the issue since?


webpack test fails for kubectl edit

Locally it seems good, but on travis it fails with tab.visible.xterm-alt-buffer-mode not exist.
https://travis.ibm.com/composer/kui/jobs/19756237#L3109

this should be fixed by #2367


Support icons for roulette units

Changes for roulette_unit.dart:
The type RouletteUnit now has a new constructor:
const RouletteUnit.icon(
  IconData icon, {
  Color color = Colors.blue,
  double weight = 1.0,
}) : this(color: color, icon: icon, weight: weight);

Changes for roulette_paint.dart:
To paint it, the icon is transformed into a string:
String.fromCharCode(icon.codePoint)

And the text style now depends whether it is an icon.
final textStyle = icon != null
    ? TextStyle(
        fontSize: 40.0, // seems to look great before about 25 units in the roulette on my device
        fontFamily: icon.fontFamily, // to render the icon as an icon
      )
    : unit.textStyle ?? style.textStyle; // unchanged code

I didn't provide an example, but I can do it if needed.
PS: I'm sorry for the unexpected changes on some lines, it's due to the Visual Studio Code extension which formats the code.

Thanks for the contribution!
I would add some golden tests for this.

@antoninhrlt I have updated the codes and tests. If you have any additional suggestions, please let me know. Otherwise, I am planning to merge this PR.

I might make some new changes in the future since I'm using this project for an application I'm developing, so when I need something I update the package like I did here.
You can merge this PR.
Thank you


Uses the old web app api & has no option to switch to the old app.

setup method fails on a timeout after login since to account-menu-button is no longer a CSS element in the new app.
# Waiting and opening the user menu to avoid the 'You're using CFD' message.
        elem = WebDriverWait(self.driver, self.timeout).until(expected_conditions.element_to_be_clickable((By.CLASS_NAME, "account-menu-button")))
        force_click(elem)

A simple solution (as an intermediary to switching to new api) would be to use the Switch to the old app button as part of setup. The HTML for the button is

    <svg width="32" height="32" viewBox="0 0 32 32">
      <g fill="none" fill-rule="evenodd">
        <path
          fill="#6F6F7F"
          fill-rule="nonzero"
          d="M-0.396446563,2.89644657 C-0.591708707,2.70118442 -0.908291196,2.70118442 -1.10355334,2.89644656 C-1.29881549,3.09170871 -1.29881549,3.4082912 -1.10355335,3.60355334 L3.75000004,8.45710674 L8.60355335,3.60355335 C8.79881549,3.4082912 8.79881549,3.09170871 8.60355335,2.89644657 C8.4082912,2.70118442 8.09170871,2.70118442 7.89644657,2.89644657 L3.75000004,7.04289317 L-0.396446563,2.89644657 Z"
          transform="matrix(0 -1 -1 0 21.354 20.354)"
        ></path>
        <circle cx="16.5" cy="16.5" r="11" stroke="#6F6F7F"></circle>
      </g>
    </svg>

Switch to the old app

or xpath
/html/body/div[1]/div[10]/div/div/div/div/div/div/div[9]

or css selector
div.account-menu-item:nth-child(9)

or css path
html body div#app.en div.css-cdrhz6.dropdown-animation-enter-done div div.css-p7lmf6.bottom.right.reverse.dropdown-items.account-menu div.dropdown-items-content div.css-1fbss72.scrollable-area-wrapper.bottom div.css-u0d0cr.scrollable-area div.scrollable-items div.account-menu-item.switch-to-old

@peterferguson have you found a better solution than this package to automate tasks on Trading212?

Nope I quite like this solution actually. If you just log into your trading212 and switch to the old app first in the drop down this library works like a charm.
The fix is fairly simple and the main class makes it easy to interact with the webdriver so any features that are missing are easy to add. I have added things like extraction of portfolio value, cash value and a list of stocks currently held.

Hey :)
Sorry for answering late. I'm a little busy this days.
I'm hoping to refactor all of this project to use requests instead of selenium so it'll be faster and it'll support design changes more easily.
I'll try to do it ASAP :)

Note: It's fixed for now, But I still want to make the library work with requests instead of selenium so we won't have bugs like this one. I've started a new job so it's gonna take some time.
If someone wants to contribute and develop it, he's welcome and I'll really appreciate it :)

Note: It's fixed for now thanks to @peterferguson , But I still want to make the library work with requests instead of selenium so we won't have bugs like this one. I've started a new job so it's gonna take some time.
If someone wants to contribute and develop it, he's welcome and I'll really appreciate it :)

Hey @BenTimor, I would like to get involved in this have you started working on the requests implementation yet?

Note: It's fixed for now thanks to @peterferguson , But I still want to make the library work with requests instead of selenium so we won't have bugs like this one. I've started a new job so it's gonna take some time.
If someone wants to contribute and develop it, he's welcome and I'll really appreciate it :)

Hey @BenTimor, I would like to get involved in this have you started working on the requests implementation yet?

Thanks! :)
I've just started investigating the requests Trading212's client sending to their server. Still couldn't reproduce any of them on Python requests, I guess they're looking for something like localStorage which I haven't trying to send yet.
When I (or you) have something ready, we should put it on a different branch and start working on it. :)


Create asyncio event loops explicitly when starting agent or server

Description
Please be critical about this. I think I understand based on the documentation and the cpython + tornado code, but up till two hours ago I knew next to nothing about this.
Very small part of #5389 (easy wins)
Self Check:
Strike through any lines that are not applicable (~~line~~) then check the box

[ ] Attached issue to pull request
[ ] Changelog entry
[ ] Type annotations are present
[ ] Code is clear and sufficiently documented
[ ] No (preventable) type errors (check using make mypy or make mypy-diff)
[ ] Sufficient test cases (reproduces the bug/tests the requested feature)
[ ] Correct, in line with design
[ ] End user documentation is included or an issue is created for end-user documentation (add ref to issue here: )

What does this add/do i.e. why?

Processing this pull request

Merged into branches iso6, master in b642021ad424ab7e313ea95a0e28f815c9fffcd2


[#4558] Add grpcHandler

Codecov Report

Merging #5486 into master will increase coverage by 0.05%.
The diff coverage is 48.09%.

@@            Coverage Diff             @@
##           master    #5486      +/-   ##
==========================================
+ Coverage    41.1%   41.15%   +0.05%
==========================================
  Files        2777     2781       +4
  Lines       83924    84002      +78
  Branches    11175    11185      +10
==========================================
+ Hits        34493    34575      +82
+ Misses      46415    46396      -19
- Partials     3016     3031      +15

Impacted Files
Coverage Δ

...ofiler/context/provider/SpanProcessorProvider.java
66.66% <ø> (ø)

...llector/handler/thrift/ThriftAgentInfoHandler.java
0% <ø> (ø)
:arrow_up:

...inpoint/web/filter/visitor/SpanVisitorAdaptor.java
0% <0%> (ø)

...receiver/grpc/PermissionServerTransportFilter.java
0% <0%> (ø)
:arrow_up:

.../pinpoint/profiler/sender/grpc/GrpcDataSender.java
0% <0%> (ø)
:arrow_up:

...er/sender/grpc/ExponentialBackoffReconnectJob.java
0% <0%> (ø)

...int/profiler/context/compress/SpanProcessorV1.java
71.42% <0%> (+5.71%)
:arrow_up:

...inpoint/common/server/bo/grpc/GrpcSpanFactory.java
3.47% <0%> (-0.1%)
:arrow_down:

...p/pinpoint/collector/receiver/grpc/SpanServer.java
38.29% <0%> (-4.56%)
:arrow_down:

...oint/profiler/context/storage/BufferedStorage.java
89.58% <100%> (ø)
:arrow_up:

... and 33 more

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 24bc88e...cc777ae. Read the comment docs.


Lack of information on how to use input pipes

I'm trying to make video from image and audio numpy arrays instead of reading them from file, and there's not enough information on how to do that.
I only managed to save images as video, but I also need to somehow write audio, and I can't find a way to have multiple pipes.
output_file = "output.mp4"

# video stream
video = (
    ffmpeg
    .input("pipe:", format="rawvideo", pix_fmt="bgr24", s="{}x{}".format(*video_res), r=video_frame_rate)
    .output(output_file, pix_fmt="yuv420p", vcodec="libx264", r=video_frame_rate)
    .overwrite_output()
    .run_async(pipe_stdin=True)
)

# write video frames to video input pipe
for image, duration in zip(images, images_durations):
    for _ in range(duration):
        video.stdin.write(image.tobytes())

You can't pass multiple pipes to a process. Even if you could, for some reason ffmpeg probably wouldn't be compatible with it as it doesn't even allow reading from 2 named pipes. The cleanest way is to have 2 processes: one to an audio file, one to a video file. Then at the end of the script, combine them.


Automate Release Process on CI

Summary

Add a workflow on the CI that is triggered by creating a tag which builds all components, creates a draft release and adds their artifacts to it.
Value

We have an automated and reproducible workflow that creates releases in a format known by the launcher.
We can easily create a release and be assured that the launcher will be able to find and download it.
Specification
This workflow should:

[ ] Trigger only on tags ~pushed to release/* branches~ that match v*.*.*.
[ ] Create a draft release.

As part of this, the following should happen:

[ ] Enso components artifacts (runtime.jar, runner, project-manager) are added to the release.
[ ] Manifest containing metadata as described in the release policy is added.
[ ] Launcher is built to a native binary and added for Linux, Mac and Windows.
[ ] Launcher binaries are packaged in such a way, that they can be executed on all platforms without additional actions (i.e. distributions for Unix preserve the executable bit).

Acceptance Criteria & Test Cases

A CI workflow is added which satisfies the above specification.
The workflow has been run to create a temporary test release to see that it works correctly.

Currently it seems quite infeasible to trigger on tags that are assigned to a release/* branch, because it is hard to check and anyway it seems that developers can create a tag on a commit in the release/* chain even without write permissions to release/*, because that commit can also exist in other branches.

To be clear, it should match enso-semverstring not v....


[feature] one tap navigation

only works with business result

Codecov Report

Merging #1033 into feature/onetap_complete will decrease coverage by 0.24%.
The diff coverage is 29.32%.

@@                     Coverage Diff                     @@
##           feature/onetap_complete    #1033      +/-   ##
===========================================================
- Coverage                    28.29%   28.05%   -0.25%
===========================================================
  Files                          299      308       +9
  Lines                        14587    14746     +159
  Branches                      1328     1339      +11
===========================================================
+ Hits                          4128     4137       +9
- Misses                        9939    10085     +146
- Partials                       520      524       +4

Impacted Files
Coverage Δ

...ain/java/com/mercadopago/GuessingCardActivity.java
0% <ø> (ø)
:arrow_up:

...rcadopago/adapters/IdentificationTypesAdapter.java
0% <ø> (ø)
:arrow_up:

.../com/mercadopago/adapters/PaymentTypesAdapter.java
0% <ø> (ø)
:arrow_up:

...om/mercadopago/adapters/PaymentMethodsAdapter.java
0% <ø> (ø)
:arrow_up:

...java/com/mercadopago/viewmodel/mappers/Mapper.java
0% <0%> (ø)

...va/com/mercadopago/core/MercadoPagoComponents.java
28.54% <0%> (-0.21%)
:arrow_down:

...in/java/com/mercadopago/viewmodel/OneTapModel.java
0% <0%> (ø)

.../com/mercadopago/viewmodel/mappers/CardMapper.java
0% <0%> (ø)

...adopago/viewmodel/mappers/PaymentMethodMapper.java
0% <0%> (ø)

...n/java/com/mercadopago/onetap/OneTapPresenter.java
0% <0%> (ø)

... and 19 more

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 f730347...1e2a10a. Read the comment docs.


HV-980. Store java.util.Set element as Node.key in Path

When a bean property of type java.util.Set is violated, the Path of the ConstraintViolation does contain no information which element of the Set is violated. As a fix for this problem, the violated element is stored as Node.key in the Path.
See https://hibernate.atlassian.net/browse/HV-980 for more details

As is we cannot merge this, since it is against the spec. If anything we would need to make this a provider specific feature.

Closing this for now. We will use a different approach where it will be possible to unwrap the Node to a Hibernate Validator specific Node type which will expose a dedicated method.


app: api to set file descriptor soft limit

Fixes #2584

Does it only make effect on main process?

Does it only make effect on main process?

was under the impression the render process would inherit main process ulimit, was wrong in the end. Have fixed it, thanks @hokein !

I think we can just make it a method of process object, so users can just call it as they need. Under most cases users only need to set fd limit for workers or only renderer process.

@zcbenz Fixed, thanks!

:+1:

Thanks @deepak1556!


[Relay] clean up hd, change tl

the comment for hd is wrong - type checking fail because it should (there is no sensible match)
and I strongly argue against having a nil_case for tl that return silently:
0: it is bad to silent error and return a 'very innocent value'. suppose tl actually got passed a nil somewhere in code. it will return a nil, and it will continue execution as if everything is normal (because nil is completely normal in list (it does not mean null)). it might trigger more silent error, returning more and more 'nil', and in the end you get the wrong value. Now this is extremely hard to debug, as you can not know which nil is 'nil because of failed tl match' or 'nil because it denote a completely normal empty list'.
1: it is not how tl/cdr is defined in scheme/ocaml/haskell/etc. it will confuse people.
@wweic does this sounds reasonable to you?

Yes, we should err out when calling tl on nil().


Continue revisiting tokenization stage

This PR continues the revisiting of the tokenization code:

Include stronger type checking in the matches instead of losing type info by casting to a char or u32

Merging now, since it touches so many places and so is likely to conflict with other work in flight.


unable to get bytemask working.

Hi,
I've added bytemask to my android project but after exporting in both debug and release and opening in jadx, I can see that none of my strings are encrypted by bytemask.
Here is My gradle plugins on top of my gradle app level file.
plugins{
    id("com.android.application")
    id("org.jetbrains.kotlin.android")
    id('com.google.gms.google-services')
    id("com.facebook.react")
    id("dev.shreyaspatil.bytemask.plugin") version "1.0.0-alpha02"
}

here is my bytemask config at the end of app level gradle.
bytemaskConfig {
    defaultPropertiesFileName.set("bytemask.properties")
    className.set("BytemaskConfig")
    configure("debug") {
        enableEncryption.set(true)

        encryptionKeySource.set(new KeySource.SigningConfig("debug"))
    }

    configure("release") {
        enableEncryption.set(true)

        encryptionKeySource.set(new KeySource.SigningConfig("release"))
    }
}

And here is my jadx screenshot.

What am i missing out here, respectively?
gradle task :bytemaskDebug is being executed fine also.

@aliakhgar the screenshot you attached here, I'm just seeing MainApplication file. Can you check the content of BytemaskConfig?
So it just masks the strings present in .properties file into a separate class altogether.

Thanks. Feel free to discuss again.


Vertices order

Vertices are reordered after geometry export.
This might be in order to lighten the file, however could an option like "not optimizing vertices" be added for exporting glTF/glb files?
It would be very helpfull in order to work with three.js and multi-materials meshes.

@tasticad Part of the problem is that Blender vertices can't necessarily translate 1:1 with vertices in the exported file. Data like color or normals might sometimes require vertices to be split, n-gons have to be triangulated, rendered points and lines separated from triangles, and so on. Doing that export correctly and efficiently is not trivial, and so while we aren't intentionally changing order, it could potentially happen for a number of reasons. And moreover, it's not really clear (to me at least) how to observe order of vertices in Blender to determine whether the exporter has maintained that order.
It sounds like triangulating in advance is doing what you need, so I'll close this issue, but if you still have a problem and can share how to clearly observe the order that you expect, please let us know.


Sometime the cursor not autofocus on input field after pressing PowerToys Run hotkey. Cannot type immediately, has to be click on it first.

Microsoft PowerToys version
v0.37.2
Running as admin

[X] Yes

Area(s) with issue?
PowerToys Run
Steps to reproduce
I set the PowerToys Run hotkey to Win + Space.
Then I remap the key on keyboard manager Shift (right) -> Win + Space.
Press Shift (right) randomly at any program.
✔ Expected Behavior
After pressing the hotkey to open PowerToys Run, it shows, and the cursor autofocus on the input field. I can type and search immediately.
❌ Actual Behavior
After pressing the hotkey, PowerToys Run show but sometimes the cursor doesn't autofocus on the input field. I cannot type immediately, has to click on the input field first.
Other Software
No response

I have noticed this happens every (?) time when Run's settings screen is open.

Looks like a duplicate of https://github.com/microsoft/PowerToys/issues/8876

@riolly
I think it is a know issue but it would help if you provide steps to reproduce.

I try to figure it out when it's happening. But still doesn't have any clue. Seem random to me.

But I notice something here. It's out of focus even though it pops right away. The PowerToys Run is there, but it's not the main active window. Maybe it's not close properly the last time I hit the command or close it. Still trying to figure it out.

But I notice something here. It's out of focus even though it pops right away. The PowerToys Run already there, but it's not at the main focus window. Maybe it's not close properly the last time I hit the command or close it.

Looks like a duplicate of #8876

Oh yes. It's duplicated here #8876. This discussion will be moved there. Thank you.


Should throw an error when given invalid framebuffer properties

regl.framebuffer({foo: 'bar'}) doesn't throw an error about invalid property names. In particular data does not throw an error which has lead to some confusion due to the otherwise similar (in some cases feels almost interchangeable) behavior compared to regl.texture.

(tried to come up with a PR but that's gonna takes some time to work through where that would happen)


Set version in AIPscan module and have API return it

There's an API endpoint - /api/infos/version - that returns a fixed version number. Add a __version__ property to the AIPscan module then have the version API endpoint return it.

PR merged.


Update mitocheck cp pipeline

@gwaybio @roshankern
I have updated the pipeline to change the metadata regular expression as described in issue #14 and to remove any measurements for whole images.
I would like to add in this PR that I did not change the Frames metadata to Frame as stated in #14 due to CellProfiler giving me an error that states the metadata tag Frame is reserved for CellProfiler use which I am unsure how to get around that at this time. I think this will not be a huge issue in the long run anyway.

LTGM but please make sure to fetch and merge main to this fork so as to not undo the changes to main I just implemented (PR for cell UUIDs was just merged with main).

@roshankern
I was able to get all notebooks to run, but I would like to make a big note for you to view issue #19. Fiji has been a big barrier for me to be able to run idrstream and could be for others which I explain.
As well, I am going to revert my changes from running these notebooks and not commit them so that they do not conflict with your PR that you just merged where you change the example_merge.ipynb and merge_CP_DP.py.
And yes, I will fetch upstream and main after merging this PR as usual which will include the changes in your previous PR. I will talk to Greg tomorrow about how to fix these phantom commits that keep popping up. If anything, I might need to delete my fork which then wouldn't make that an issue :crossed_fingers:


Check if transaction metadata endpoint makes sense

IMO users sometimes don't care about the blocks which contain a transaction, but only about the transaction itself.
If it's possible, we should add a tx metadata endpoint.

Let's agree on having an endpoint to obtain Transaction's metadata, as we report and retrieve rejection reason and such over TXs instead of Blocks.

Endpoint still needs to be added.

@jkrvivian we need to discuss if it should be connected to the blockId in the retainer, or stored separately.


Register TensorFlowGraph functions in TFPartition for eager mode globally.

This entails adding a global graph registration at the beginning of main, and
changing convention tensorflow to be still called as a normal swift function later on in IRGen.
Function bodies needed to be preserved throughout TFPartition as well.
This is needed in order to ensure that the graph is still registered when calling TensorFlowGraph in eager mode either as function attributes or directly.
Note: This currently doesn't support calling into convention(tensorflow) functions in other modules.
In addition, This cl contains a very small change to IRGen.cpp where we need tensorflow functions to remain as a normal SIL function so that they can be properly called if they are not inlined rather than being treated as C functions which they are not.

@swift-ci please test tensorflow

@swift-ci please test tensorflow

@swift-ci please test tensorflow


Error downloading files.

Everytime I execute vagrant box add lucid32 http://files.vagrantup.com/lucid32.box, I keep getting this error:
C:\Users\Josh\Desktop\HoodiniOS>vagrant box add lucid32 http://files.vagrantup.com/lucid32.box
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'lucid32' (v0) for provider:
    box: Downloading: http://files.vagrantup.com/lucid32.box
    box: Download redirected to host: hashicorp-files.hashicorp.com
    box: Progress: 0% (Rate: 0*/s, Estimated time remaining: --:--:--)
An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

Failed to connect to hashicorp-files.hashicorp.com port 443: Timed out

C:\Users\Josh\Desktop\HoodiniOS>

The mirror is dead, and I haven't been able to found another one working

Take a look at #147


Generate the catalog url

... when item is added from the yaml editor.
@algairim please review.  Thx

lgtm


SOLR-16974: Global Circuit Breakers

https://issues.apache.org/jira/browse/SOLR-16974
Proof-of-concept with static map of global breakers.

Next step would be to add some solr.xml parsing, say from a new <circuitBreakers> tag. The inner xml could be identical as the one used in solrconfig.xml, and the loop parsing them would simply register them in the global static context of the registry. Then I believe the POC would be ready :)

I think this is ready for review


feat(turbopack): Analyze instanceof

Description
Closes PACK-2635
Testing Instructions
I added a test

It was a wrong approach


Unable to fetch NXP source

ERROR: imx-boot-1.0-r0 do_fetch: Fetcher failure for URL: 'git://source.codeaurora.org/external/imx/imx-mkimage.git;protocol=https;branch=lf-5.10.72_2.2.0'. Unable to fetch URL from any source.
This is likely because CodeAura closed down their git repositories at the end of March.
https://bye.codeaurora.org/

Hi @abferm indeed, that is the cause.
We first need to have https://github.com/Freescale/meta-freescale/pull/1512 merged and then we can pull it in our repo.

@floion, we merged it already. I hope it helps.

Thanks so much @otavio !
@abferm created https://github.com/balena-os/balena-fsl-arm/pull/389 to fix this issue here

https://github.com/balena-os/balena-fsl-arm/pull/389 has been merged. Feel free to reopen if you still see this issue


ENH: Add multiple label support to source_band_induced_power, source_induced_power

Fixes #11985.
What does this implement/fix?
source_induced_power and source_band_induced_power currently only allow one label to be passed for power and plv calculation. It should be able to do this over multiple labels.

Let's check in about how we want to handle output for single labels and any other main feedback points about restricting K and then averaging power over labels. After we've got that shored up, then I will need to do work on the tests.

The most recent commit proposes performing kernel restriction to labels within the _prepare_source_params function, but if we do that, then we need to handle the _compute_source_psd_epochs function as well. So, at this point, let's touch base on a conceptual level about if we want to move multi-label restriction into _source_induced_power so that we avoid changes to psd functions or if we want to look at multi-label functionality for the psd epochs function too.
If we want to continue on with _prepare_source_params then I need to finish the alterations to that function and clean it up (e.g. excessive comments), but I don't want to move ahead until we've weighed the overall strategy.

Thanks, @larsoner! About single label behavior: do you think the _source_induced_power should continue to output power as (n_vertices, n_freqs, n_samples) if there's only a single label so that old scripts using this function are not broken? It would be kinda weird, but it would not break people's existing pipelines?

@larsoner Looks like pre-commit hooks fixed a whitespace issue that's now causing CircleCi to fail (unregistered user issue). Can I fix this or does it need to be you?

You can fix it and push a commit

It is fixed, so am I pushing an empty commit to get CircleCI to restart?

Yes you can but these style CIs are red, too
https://github.com/mne-tools/mne-python/actions/runs/6550989358/job/17791250636?pr=12026
https://results.pre-commit.ci/run/github/1301584/1697565252.Q-17qBRiRZa0i7bLzB1HGA

@larsoner  I'm puzzled about the 4 failed CircleCi tests. It looks to me like they're failing on code that a) I didn't touch, b) doesn't call code that I touched, and c) passes pytest on my machine locally. Do you have thoughts on what's happening?

pip pre errors are related to numpy API changes it looks like
ubuntu minimal error is in test_tfr_multi_label which looks related?: `E   FileNotFoundError: fname does not exist: "/home/runner/work/mne-python/mne-python/MEG/sample/sample_audvis_trunc_raw.fif"

@drammock  Thanks, Dan. About the multi-label one, my call is the same as the one above it in test_tfr_with_inverse_operator(method). Do I need the decorator @testing.requires_testing_data above my multi-label test function to make it work? Is that an issue that would normally pass pytest on my machine but break CircleCI checks?

@drammock Thanks, Dan. About the multi-label one, my call is the same as the one above it in test_tfr_with_inverse_operator(method). Do I need the decorator @testing.requires_testing_data above my multi-label test function to make it work? Is that an issue that would normally pass pytest on my machine but break CircleCI checks?

yes indeed. Look at the step in which the failure occurs: https://github.com/mne-tools/mne-python/actions/runs/6551626097/job/17793283214?pr=12026
it's title is "Run tests with no testing data".  adding the decorator would cause the test to get skipped on that CI job.

@drammock What should I do about the numpy API stuff?

You can ignore the pip-pre jobs for now and someone else will fix them separately :)

@larsoner @drammock  Ok, I think the only CircleCI failures at this point are related to the pip-pre stuff (though correct me if I'm wrong!), so I'm pulling this PR out of draft status.

I think as long as we document that the order of operations is different (mean across verts then baseline for [label] rather than baseline then return all vert data for label, when a mean can then be taken) it's okay.

One major suggestion for refactoring/restructuring. If it's not clear let me know and I'm happy to chat about it, or if you want I can push a commit to try it

@larsoner Sounds good, exploiting the power of dicts more here is a good idea. I'll work on it and push, probably tomorrow!

@drammock  @larsoner  I think this PR is pretty much ready, but do either of you have last comments?

@larsoner  Looks like nibabel errors are causing the CircleCi failures?


Update velocity-animate.d.ts

add hook functions (http://julian.com/research/velocity/#hook)

@pchab thanks mate!


Feature Request: Column header function handler

I'm looking for a way to add a class to a column, is this possible?
var columns = [
  {
    property: 'order',
    header: 'Order',
    props: {
      className: 'selected'
    }
  }
]

I'm trying to mimic the functionality below, one heading is an element, and the other has a carrot (added by class).

Ideally header could be a function handler like cell and I can return a JSX element from there.
header: function () {
  return 'Anything'
}

I think #65 should allow the customization you need. Gotta poke that.

@reggi It's possible to inject custom headers now. Please have a look at the current version.

Hello I tried to use this enhancement but it doesn't work it displays nothing:
columns: [
			{
			  property: 'selected',
			  header: function() {
				  return (<input type="checkbox"  selected={false} />)
			  },

Could you help me ?

@Ezekiah See https://github.com/bebraw/reactabular/blob/master/docs/customizing_header.md . Maybe columnNames is the key. If you can upload your project to GitHub, I can have a closer look.

Yeah columnNames is used in full_table.js.
Here is my version of full_table. https://gist.github.com/Ezekiah/c8294613aef0f9f4c8d0
I added  "selected" cell to implement the multiselect feature, but I dunno how I can add an input in the header

@Ezekiah Ah, it was simpler than I remembered. Try something along header: <input type="checkbox" selected={false} />. No need to wrap in function. It expects a React element. Incidentally text happens to work by default. See src/column_names.js for exact details.

I'm closing this issue given header is somewhat customizable now and it should be possible to achieve what was originally requested.


#448: fix release workflow

fixes #448

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 61.755%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5276

Relevant Lines:
8226

💛  - Coveralls


[ENH,WIP] Establish a unique, global BIDSLayout

So I'm super wary of global variables like this, and this could cause problems if anybody wants to use these functions/interfaces with multiple datasets. I recognize that we don't currently handle multiple datasets, but if these are at least in some sense meant to be candidates for upstreaming to nipype, I think this is asking for breakage.
Would it be easier to do all of this if we just made collect_participants take a layout parameter, and then fmriprep/mriqc could instantiate a layout once and pass it in?
For the things like parsing file names, it might be worth pinging Tal over in bids-standard/pybids#369 about APIs that shouldn't require crawling a directory to have access to.

I'm not a fan of super-global variables, but I think here it makes most sense. My original thought about this is that (like we do with the context in multiprocessing) fmriprep initializes the layout in the beginning. This way, it can be queried at any time throughout the workflow.
Similarly to the context of multiprocessing, the logic is made to allow setting it just once unless you are very aware that you want to initialize another layout.
But in general, I think the BIDSLayout is a good singleton for most of the use-cases (counter-example: meta-analyses?).
I've been considering whether making the bids_dir argument to collect_* optional. If not None, then create a new BIDSLayout, otherwise use the global. Let me know if you think that would address some of your concerns.

Some of this I guess is what niworkflows is supposed to be, which is to me a bunch of pretty much isolable units. Adding a thread of logic that isn't tied together in an object just kind of breaks my mental model. In the end it's probably not a big deal, but just to go ahead and answer your comments:

This way, it can be queried at any time throughout the workflow.

Sure. Let's create it in fMRIPrep then. I'd still rather it be a passed variable than a global, but if it needs to be a global there, then it can be.

But in general, I think the BIDSLayout is a good singleton for most of the use-cases (counter-example: meta-analyses?).

In FitLins I use another one to build up the output derivatives directory, with additional entities that are not yet in the spec. Or you can imagine a situation where you want to separately index a BIDS-Raw dataset and a related BIDS-Derivatives dataset (to reduce the overhead in separate contexts).
Granted, I'm not using niworkflows over there, at this point.
But anyway, I think it's a reasonable decision for an app, a little more tenuous for a library, which is harder to predict the usage of.

I've been considering whether making the bids_dir argument to collect_* optional. If not None, then create a new BIDSLayout, otherwise use the global. Let me know if you think that would address some of your concerns.

But what if we can pass in a layout or a directory that we can index in a new layout? Wouldn't that cover most of the cases?

Okay, I'll see whether we can do this in fMRIPrep proper.


Implementing React's Routing

1st approach:

May i know how to implement react's routing process within the docbox application
How to make multiple routing to work with docbox application

2nd approach:

How to import Docbox as npm modules within the existing react application

React doesn't have one official router. Some applications use react-router, but there are many other options, like reach router.
Docbox doesn't use a routing system, because it's simple enough that it doesn't need one. Sorry, refactoring it to use a router is too complicated and opinionated a task to answer in an issue.
For the second approach: I wouldn't recommend using docbox as an npm module. It's made to be cloned as a git repository. You can copy the files into another project if you want to make it part of another application.

Hi tmcw,
Thank for replying me back immediately for my support. Can you be able to suggest me some api documentation module/component which can be integrated with ReactJS or AngularJS application, were we try to implement them in routing process.
Reference Link: https://stackoverflow.com/questions/58851909/suggest-me-api-documentation-tool


Incorrect code span info of inline functions

Currently, AddEntriesFromIterable makes a ReturnTypeMismatch error while tycheck.  Executing esmeta tycheck by removing AddEntriesFromIterable from tycheck-ignore.json shows a log.
[ReturnTypeMismatch] AddEntriesFromIterable (step 1, 2:48-98)
- expected: Normal[ESValue] | Abrupt
- actual  : Normal

However, the spec shows that step 1 of the given abstract operation shouldn't return the normal completion.
<emu-clause id="sec-add-entries-from-iterable" type="abstract operation">
        ...
        <emu-alg>
          1. If IsCallable(_adder_) is *false*, throw a *TypeError* exception.
          1. Let _iteratorRecord_ be ? GetIterator(_iterable_).
          1. Repeat,
            1. Let _next_ be ? IteratorStep(_iteratorRecord_).
            1. If _next_ is *false*, return _target_.
            1. Let _nextItem_ be ? IteratorValue(_next_).
            1. If Type(_nextItem_) is not Object, then
              1. Let _error_ be ThrowCompletion(a newly created *TypeError* object).
              1. Return ? IteratorClose(_iteratorRecord_, _error_).
            1. Let _k_ be Completion(Get(_nextItem_, *"0"*)).
            1. IfAbruptCloseIterator(_k_, _iteratorRecord_).
            1. Let _v_ be Completion(Get(_nextItem_, *"1"*)).
            1. IfAbruptCloseIterator(_v_, _iteratorRecord_).
            1. Let _status_ be Completion(Call(_adder_, _target_, « _k_, _v_ »)).
            1. IfAbruptCloseIterator(_status_, _iteratorRecord_).
        </emu-alg>
...

It seems that code span info is going wrong while handling IfAbruptCloseIterator, which is not a function call but shorthand including a return statement of normal completion record.

I think you can use a quick fix which prints IR instruction instead of algorithm loc.
https://github.com/es-meta/esmeta/blob/836df280538f0bb258b9b27a550fa2a28e7e1d32/src/main/scala/esmeta/analyzer/util/Stringifier.scala#L125-L131 fix this code like below:
private val addLoc: Rule[IRElem with LangEdge] = (app, elem) => {
  for {
    lang <- elem.langOpt
    loc <- lang.loc
  } {
    app >> " @ " >> loc.toString
    app :> elem.toString
  }
  app
}

and run tycheck with log option.
esmeta tycheck -tycheck:log

This will print tycheck mismatch logs at ./logs/analyze/mismatches with correct IR backtrace.
Now you can easily find where is the wrong point!
[ReturnTypeMismatch] AddEntriesFromIterable (step 1, 2:48-98)
return [? %8] // <- ** This is IR instruction where ReturnTypeMismatch happens! **
- expected: Normal[ESValue] | Abrupt
- actual  : Normal
[ReturnTypeMismatch] AddEntriesFromIterable (step 3.d.ii, 10:18-68)
return [? %5]
- expected: Normal[ESValue] | Abrupt
- actual  : Normal

I fixed this issue in https://github.com/es-meta/esmeta/pull/261/commits/fc85c0cc3c9d185ecd73321946f82c65bde277ef by adding the overriden option to BackEdgeWalker.


Always issue GetExpressCheckoutDetails during authorize or purchase, and store payer_email in responses table associated to the kb payment and transaction

@pierre @daliwei

I guess you might want to update the spec because it adds another row in the response table so that some of the specs that check the number of responses are failing, for [example] (https://github.com/killbill/killbill-paypal-express-plugin/blob/f0cf36688c728022b5be9f4e33737bbca98804eb/spec/paypal_express/remote/hpp_spec.rb#L221). Some other failures are due to the error message, e.g., from Could not find the payer_id: the token is missing to Could not retrieve the payer info: the token is missing

👍

Sorry @alenad, it looks like I missed that one! I'll merge https://github.com/killbill/killbill-paypal-express-plugin/pull/21 first once we have the migration files but you might have to fix some conflicts here afterwards 😬

@alenad / @daliwei: could you take a look at the conflicts?


What is the image range when calculating the mean square error?

@ShenYujun, it's a little confuse.

It should be [-1, 1].

Get it. Thanks.

BTW, how to statistic the speed? One way is to calculate the time required for a minibatch and then process the number of minibatch. Is that the way? Thank you for your guidance

Yes, you are right. But a more accurate way is to set the minibatch as 1.

Get it! thanks!


Add exiftool to extract mp4 exif info

Before uploading the mp4 video record to openstreetcam, the mp4 file
needed to extract the GPS information.
This commit add the exiftool package to extract GPS information from
mp4 file and implemented the videodiscover for uploading.

Firstly @splasky just what to say this would be a awesome feature!
There maybe some misunderstandings related to the video upload.
In order to upload usable data using the video format one needs to write the metadata file. The backend only can make sense of a sequence containing videos if it has metadata file.
Creating metadata file can be much easier achieved using the new metadata parser classes that were just merged into master.
Firstly you should make a dedicated parser class from video to sensor data instances then add the sensors data instances to a metadata parser instance and call the serialize method on that metadata parser. Uploading the generated metadata file will make the sequence usable by the backend.
This would be awesome! If you need help i am more than happy help.
I am really curious to see an example of video that contains GPS data or other sensor data. Can you share a short example?

The mp4 videos needs track info before uploading.


Fix navigation bar not to cover page contents when it goes multi-line

Make navbar static instead of fixed.
Drop navbar's margin-bottom.
Can't say what it was there for, but it shifted everything down with a static navbar.
Drop body's padding-top.
The css file explicitly mentions this.
Put the forkme image after navbar in the code, so it's also not covered by it.
Remove the top value of the image.
Hard-codedd to be below the single-line navbar, breaks in all other cases, not needed anymore.

Before/after:
https://i.imgur.com/pbJnmzX.png -> https://i.imgur.com/PQAZZ6W.png
https://i.imgur.com/dYv1aLb.png -> https://i.imgur.com/sMWwhM8.png
https://i.imgur.com/JVHjvum.png -> https://i.imgur.com/G4v9DFa.png
https://i.imgur.com/vFlYnlV.png -> https://i.imgur.com/57DuHt2.png
The current view is how it looks in all browsers, but I only tested desktop. Mobile should be fine, since collapsed navbar looks the same either way. Drop-down lists are fine too.

What happens if you scroll down?  Does the navigation bar stay put?  It's probably better to adjust it so that the body section below the nav bar sits in a scrollable div that fills the space.

You are right, the way I did it navbar gets scrolled away. Is it possible to automatically change the body's padding-top to the end height of navbar?


enum34

Some python packages depends on enum34 but enum34 is not available to newer python versions. An example of python packages that depends on enum34 is plaidml. See this example:
let
  mach-nix = import (builtins.fetchGit {
    url = "https://github.com/DavHau/mach-nix/";
    ref = "refs/tags/2.3.0";
  });
in
mach-nix.mkPythonShell {
  requirements = ''
    plaidml-keras
  '';
}

Unfortunately, I was not able to manage mach-nix to install enum34. It fails with this error:
building '/nix/store/wzsfzfbp5rr19a9fbyilf5j6s6xbq9rs-mach_nix_file.drv'...

### Resolved Dependencies ###

plaidml-keras - 0.7.0 - wheel
├── keras - 2.2.4 - wheel
│   ├── h5py - 2.10.0 - wheel
│   │   ├── numpy - 1.19.1 - wheel
│   │   └── six - 1.15.0 - wheel
│   ├── keras-applications - 1.0.8 - wheel
│   │   ├── h5py - 2.10.0 - wheel
│   │   │   ├── numpy - 1.19.1 - wheel
│   │   │   └── six - 1.15.0 - wheel
│   │   └── numpy - 1.19.1 - wheel
│   ├── keras-preprocessing - 1.1.2 - wheel
│   │   ├── numpy - 1.19.1 - wheel
│   │   └── six - 1.15.0 - wheel
│   ├── numpy - 1.19.1 - wheel
│   ├── pyyaml - 5.3.1 - sdist
│   ├── scipy - 1.5.2 - wheel
│   │   └── numpy - 1.19.1 - wheel
│   └── six - 1.15.0 - wheel
├── plaidml - 0.7.0 - wheel
│   ├── cffi - 1.14.2 - wheel
│   │   └── pycparser - 2.20 - wheel
│   ├── enum34 - 1.1.10 - wheel
│   ├── numpy - 1.19.1 - wheel
│   └── six - 1.15.0 - wheel
└── six - 1.15.0 - wheel

these derivations will be built:
  /nix/store/0bac04c0mdzw4a12xlysh23spcf6xvgh-python3.8-pycparser-2.20.drv
  /nix/store/4iawfqdkj3d2662hswviylh4if3sqgr4-python3.8-six-1.15.0.drv
  /nix/store/6kldfiqny7v0ccq17rj45b10pq24pqbn-python3.8-numpy-1.19.1.drv
  /nix/store/gbqr8n832icf2hxg5ym31kwknywgd76y-Keras_Preprocessing-1.1.2-py2.py3-none-any.whl.drv
  /nix/store/0j5v3jy1yb1cxdpsdbqk6c24c9bai4v7-python3.8-keras-preprocessing-1.1.2.drv
  /nix/store/42rc12bc6k1zdgxpyad7kvrlgmnznyp3-python3.8-enum34-1.1.10.drv
  /nix/store/l578c88j8y97zyv943zdk2ncngcgpc4x-python3.8-cffi-1.14.2.drv
  /nix/store/1224pv136y3wpw183ij3b003qzpliv58-python3.8-plaidml-0.7.0.drv
  /nix/store/2805caqz6w1k6d1mkrldwzyssf432iyh-python3.8-scipy-1.5.2.drv
  /nix/store/al8qnpzzjq86c4sijhwk343xafa5633c-python3.8-h5py-2.10.0.drv
  /nix/store/59x06j316cfadmi9358b5qddmw8cms3k-python3.8-keras-applications-1.0.8.drv
  /nix/store/y1dd45yd5fypdplc5w42pq9bax6pcjxw-python3.8-keras-2.2.4.drv
  /nix/store/rjrhjgwq6gnhj9sll58pn30vimrc2rv6-python3.8-plaidml-keras-0.7.0.drv
  /nix/store/ncwlrj5wxiv1zngs9i50jpz4hg0mlg1h-python3-3.8.5-env.drv
building '/nix/store/42rc12bc6k1zdgxpyad7kvrlgmnznyp3-python3.8-enum34-1.1.10.drv'...
building '/nix/store/6kldfiqny7v0ccq17rj45b10pq24pqbn-python3.8-numpy-1.19.1.drv'...
building '/nix/store/0bac04c0mdzw4a12xlysh23spcf6xvgh-python3.8-pycparser-2.20.drv'...
building '/nix/store/4iawfqdkj3d2662hswviylh4if3sqgr4-python3.8-six-1.15.0.drv'...
building '/nix/store/gbqr8n832icf2hxg5ym31kwknywgd76y-Keras_Preprocessing-1.1.2-py2.py3-none-any.whl.drv'...
Sourcing python-recompile-bytecode-hook.sh
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing wheel setup hook
Using wheelUnpackPhase
Sourcing pip-install-hook
Using pipInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing python-recompile-bytecode-hook.sh
Sourcing python-remove-tests-dir-hook
Sourcing python-recompile-bytecode-hook.sh
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing wheel setup hook
Using wheelUnpackPhase
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing pip-install-hook
Sourcing wheel setup hook
Using pipInstallPhase
Using wheelUnpackPhase
Sourcing pip-install-hook
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Using pipInstallPhase
Sourcing python-namespaces-hook
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing python-recompile-bytecode-hook.sh
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing wheel setup hook
Using wheelUnpackPhase
Sourcing pip-install-hook
Using pipInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
unpacking sources
Executing wheelUnpackPhase
Finished executing wheelUnpackPhase
patching sources
configuring
no configure script, doing nothing
building
no Makefile, doing nothing
installing
Executing pipInstallPhase
/build/dist /build
unpacking sources
Executing wheelUnpackPhase
Finished executing wheelUnpackPhase
patching sources
unpacking sources
Executing wheelUnpackPhase
configuring
unpacking sources
Executing wheelUnpackPhase
Finished executing wheelUnpackPhase
no configure script, doing nothing
patching sources
building
no Makefile, doing nothing
configuring
installing
Executing pipInstallPhase
/build/dist /build
no configure script, doing nothing
building
no Makefile, doing nothing
installing
Executing pipInstallPhase
/build/dist /build
Finished executing wheelUnpackPhase
patching sources
configuring
no configure script, doing nothing
building
no Makefile, doing nothing
installing
Executing pipInstallPhase
/build/dist /build
Processing ./pycparser-2.20-py2.py3-none-any.whl
Processing ./numpy-1.19.1-cp38-cp38-manylinux2010_x86_64.whl
Processing ./enum34-1.1.10-py3-none-any.whl
Processing ./six-1.15.0-py2.py3-none-any.whl
Installing collected packages: pycparser
Installing collected packages: enum34
Installing collected packages: six
Successfully installed enum34-1.1.10
Successfully installed six-1.15.0
/build
/build
Finished executing pipInstallPhase
Finished executing pipInstallPhase
post-installation fixup
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/2n2wn711g0zkn426m95g3qfxzja9fvjn-python3.8-enum34-1.1.10
shrinking RPATHs of ELF executables and libraries in /nix/store/n4zhi9fx42390ba2f9hhvh6cf3a6b6ng-python3.8-six-1.15.0
patching script interpreter paths in /nix/store/n4zhi9fx42390ba2f9hhvh6cf3a6b6ng-python3.8-six-1.15.0
patching script interpreter paths in /nix/store/2n2wn711g0zkn426m95g3qfxzja9fvjn-python3.8-enum34-1.1.10
checking for references to /build/ in /nix/store/2n2wn711g0zkn426m95g3qfxzja9fvjn-python3.8-enum34-1.1.10...
checking for references to /build/ in /nix/store/n4zhi9fx42390ba2f9hhvh6cf3a6b6ng-python3.8-six-1.15.0...
Executing pythonRemoveTestsDir
Executing pythonRemoveTestsDir
Finished executing pythonRemoveTestsDir
pythonCatchConflictsPhase
Finished executing pythonRemoveTestsDir
pythonCatchConflictsPhase
Successfully installed pycparser-2.20
Traceback (most recent call last):
  File "/nix/store/q2zpnf017gccs9w9mb0ikdqhkf0k5v82-catch_conflicts.py", line 1, in <module>
    import pkg_resources
  File "/nix/store/rpgik653k5r1y9526nm2cgl6514rdjgx-python3.8-setuptools-47.3.1/lib/python3.8/site-packages/pkg_resources/__init__.py", line 24, in <module>
    import re
  File "/nix/store/fjgnz0xfl04hsblsi4ym5y5akfh6mlmy-python3-3.8.5/lib/python3.8/re.py", line 145, in <module>
    class RegexFlag(enum.IntFlag):
AttributeError: module 'enum' has no attribute 'IntFlag'
/build
Finished executing pipInstallPhase
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/8ffpsn7k69i94yhss6bnk70wqwsz2xzr-python3.8-pycparser-2.20
patching script interpreter paths in /nix/store/8ffpsn7k69i94yhss6bnk70wqwsz2xzr-python3.8-pycparser-2.20
builder for '/nix/store/42rc12bc6k1zdgxpyad7kvrlgmnznyp3-python3.8-enum34-1.1.10.drv' failed with exit code 1
cannot build derivation '/nix/store/ncwlrj5wxiv1zngs9i50jpz4hg0mlg1h-python3-3.8.5-env.drv': 1 dependencies couldn't be built
error: build of '/nix/store/ncwlrj5wxiv1zngs9i50jpz4hg0mlg1h-python3-3.8.5-env.drv' failed

Is it possible to avoid mach-nix to try to install enum34?

It makes no sense to install enum34 on any python version > 3.3 since enum34 is a backport lib  for python versions older than 3.4.
Therefore plaidml and plaidml-keras should introduce a constraint that limits the enum34 requirement to older python versions.
In pip,  enum34 can be installed, but it will just be ignored during runtime since it clashes with the builtin enum library.
Try installing it and then execute print(enum.__file__).
The reason the installation of enum34 crashes under nix is probably because one of the build phases depends on enum and clashing names produce a different result than in pip.
But since enum34 doesn't really belong here, I suggest to report/fix it upstream. Until it is fixed, you can hack your way around like this:
mach-nix.mkPythonShell {
  requirements = ''
    plaidml-keras
  '';

  _.enum34.phases = "installPhase";
  _.enum34.installPhase = "mkdir $out";

  _.plaidml.pipInstallFlags = "--no-deps";
  _.plaidml-keras.pipInstallFlags = "--no-deps";
}

Let me know if this works for you.

Thanks @DavHau! It worked.

Worked for me as well! Thank heavens because I couldn't figure out how to "uninstall enum34" in mach-nix, which is the action that a lot of sites suggest for the enum34 intFlag problem.  This override got my plaidml-keras environment built.

Worked for me as well! Thank heavens because I couldn't figure out how to "uninstall enum34" in mach-nix, which is the action that a lot of sites suggest for the enum34 intFlag problem.  This override got my plaidml-keras environment built.


⚠ Bofrost.at has degraded performance

In 595030b, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1932 ms

Resolved: Bofrost.at performance has improved in ed4d49d after 9 minutes.


Consul configuration defines unused options in server and client

Client agents do not need to enable connect, this is only used on servers:

Enabling Connect requires changing the configuration of only your Consul servers (not client agents).

https://github.com/picatz/terraform-google-nomad/blob/0db159e7c90367553c3c9b61c3a892418d686e36/packer/configs/consul/client.hcl#L30-L32
Servers do not need to enable the gRPC port, this is only used on clients:
https://github.com/picatz/terraform-google-nomad/blob/0db159e7c90367553c3c9b61c3a892418d686e36/packer/configs/consul/server.hcl#L17
There might be others, but these should definitely be removed.

👋 Hello @lordsonfernando, PRs are welcome!


various layout works at Subset tab

This PR addresses following issues:

#381

#289
Sheena approved my mockup - discussed at slack

#290
a) change the text style
b) add show more/less link for multifilter case
Discussed with Sheena and she chose one of my mockup, which is included in this PR. See more details at the corresponding issue, #290 with screenshots

@jtlong3rd I have addressed your feedbacks. For the second one, I made a variable to check the array length of the multifilter variable and use it as additional condition to display Show more link. An example screenshot for the case of resident status you suggested, which should not have the expansion link.


Fix timers running inside scene preview on drag

This PR closes #39221.
As a hacky work-around, we iterate through all first-level children of the scene's root and call stop() on the ones that are Timers.
This approach is bad, and I'm currently thinking of using the pause function of the scene tree, but for some reason Godot crashes when toggling pause, which I'll need to investigate.
New approach is to pause the subtree which starts with the node containing the preview, instead of iterating through all of its children. This ensures that the preview stays frozen regardless of the existence of second-level timers (unless the child nodes are set to Process pause mode) and is cleaner than the old one, IMO.
(This is not a duplicate PR, the old one was not based on the master branch due to an oversight of mine)
EDIT: Waiting for the OS/DisplayServer split to be completed (or at least previews working again on master)
Previews are working again, so this is ready for review.

pausing scene preview is not good I think.
it is helpful when placing particle scene or etc.

@volzhs I don't know if this is intended behavior, paging @Calinou

I just set up test scene to demonstrate it.

it is pretty helpful with viewing live update instanced scene.

Do we want this as a feature or should I fix it? @Calinou @KoBeWi

The fix itself isn't really complicated, so unless the issue is really unimportant, it should be ok to have this (but I wonder if there are other nodes that could be taken care of too).

The fix itself isn't really complicated, so unless the issue is really unimportant, it should be ok to have this (but I wonder if there are other nodes that could be taken care of too).

I didn't quite get what you mean here: by "this" you mean to have the behavior after the fix, or the behavior as it is now?

I meant the fix.

Sorry for the long delay reviewing this further. The current implementation seems OK from a cursory look, though I'm not convinced if the actual "bug" being fixed is something that needs to be fixed in the first place - but I don't have a strong opinion either way.
If @KoBeWi approves the implementation this can likely be rebased to squash the commits and solve merge conflicts, and merged.

tbh I'm not sure myself if it's worth fixing; I opened the issue because the behavior was unexpected to me. I just checked and freeing the preview node doesn't cause crash, so the issue is rather harmless.

I'd say let's shelve it for now, and revisit if we find it to actually be a problem worth fixing.


Copy translations update

Task/Issue URL: https://app.asana.com/0/72649045549333/1199369362194383/f
Tech Design URL:
CC:
Description:
Update copy translations (see task for more details)
Steps to test this PR:
1.

Internal references:
Software Engineering Expectations
Technical Design Template

Found a few issues in different files:

<br/> replaced by \n inside <CDATA blocks. New line will not work.
usage of \ in xml needs to be \\.

@cmonfortep thanks for the review. Addressed them all inhttps://github.com/duckduckgo/Android/pull/1024/commits/b8ac44840114262f1d5badcf336c32fa515aefaf

Thanks, please check the comment about the copy used in Swedish, it seems not correct.
Also, I found 4 copies still using \n inside a CDATA block.
Apart from that, we are good to merge this. thanks!

@cmonfortep fixed in https://github.com/duckduckgo/Android/pull/1024/commits/7501b20d39864092897a4839652a61fdc4662a98


Corrupt driver jars/dlls are not reloaded after proxy is set

We have a corporate proxy which returns HTML to any app which tries to download a file without the proxy configured. This has led to the files in C:\Users\MY_USERNAME.dbeaver.metadata.plugins\org.jkiss.dbeaver.core\drivers\mssql being corrupted.
e.g.
sqljdbc4.jar contains the html source for our proxyconfiguration help page.
Clicking 'download' from the driver page does not re-download these files. Deleting these files allows me to download them again.

Did you try to set proxy configuration in DBeaver (in preferences or right in download dialog)?

Yes. The issue is that I had not set the proxy settings for the initial download. Once I set them correctly, I had to delete the corrupt files in order to download again.

Ok. So, this issue is about re-downloading corrupted driver files?

Ok. So this is a feature request for re-downloading corrupted jars.

Yup
On Wed, 20 Jan 2016, 14:34 Serge Rider<EMAIL_ADDRESS>wrote:

Ok. So this is a feature request for re-downloading corrupted jars.
—
Reply to this email directly or view it on GitHub
https://github.com/serge-rider/dbeaver/issues/166#issuecomment-173221942
.