Change data path from %appdata% roaming to other path - out of Roaming Profile

Describe the bug
Rocketchat saving all data in %appdata% in roaming profile, which is not good, because that folder is geting bigger and it is everytime  synced with server.
We need to have option to change that path.
What operating system and which version?
Windows all
Which version of Rocket.Chat (Server)?
latest
Which version of Rocket.Chat.Electron (Electron/Desktop)?
latest
Is there any setting relevant changed?
no
Expected behavior
Option to change default local path, where data should be stored

That configuration could be an option on the config.json file?

it will be amazing, easy configurable via that file

Hey @stylefish, thanks for sharing your experience.

That configuration could be an option on the config.json file?
According to me the most feasible way for this is to provide a setting in the settings page of the app where the user will be able to select his/her preferred path for saving all of the Rocket.Chat's configurations other than the default one (%APPDATA%/Rocket.Chat).
By far, the most intuitive way will be providing an input with a button (to select the path by browing).

@jeanfbrito, please let me know if you are convinced with my approach. I would love to work on this issue as soon as possible.
Thanks,
Prisha Gupta

Upon further investigation, it sounds similar to #383


Change "conversion" display of value + precision

Conversion has both a value and precision component; currently, it is rendered as a dictionary, e.g.,
https://open-reaction-database.org/id/ord-02a6cbee10dc4fdc9d25ed24ae6ea6f5

I would suggest showing "value \pm precision" if precision is defined, or just "value" if precision is undefined
https://github.com/open-reaction-database/ord-interface/blob/cbfe8426531d78686e53eec051d2a09bb6962915/app/src/views/reaction-view/OutcomesView.vue#L98

@connorcoley Like this? Just making sure I have the syntax correct based on your suggestion:

Sorry for my ambiguity -- I think the unicode character for plus-minus (±) is most appropriate. \pm is the Latex command for it :)


mime/multipart: Form fields saved to "disk" may actually go to RAM

multipart.ReadForm is supposed to store up to maxMemory bytes in RAM and then the remainder on disk. The idea, presumably, is to prevent RAM exhaustion.
Temporary files are created using ioutil.TempFile. os.TempDir is used to determine the temporary directory to use. However, os.TempDir() returns $TMPDIR, or, failing that, "/tmp".
The problem is that on modern Linux systems, /tmp is a tmpfs and is thus hosted in RAM. This defeats the entire objective of saving large multipart parts to files.
/var/tmp should always be backed by disk. The FHS states the purpose of "/var/tmp" as "temporary files preserved between system reboots." multipart should use /var/tmp, not /tmp.
(Since there is no actual need for temporary multipart files to be preserved across reboots, it would be nice if the FHS provided something in between, thus allowing for periodic deletion on boot or so on, but alas it does not.)
Possible solutions:

Introduce an os.LargeTempDir() which returns a temporary directory to be used for large files. Change multipart to pass this value to ioutil.TempFile.

tmpfs will go to disk (to swap) if there's no useful RAM. But that's beside the point...
 Anybody with exact requirements about bounding memory-vs-disk usage should use the lower-level streaming interface.
I don't want to make the simple interface more complicated, when sophisticated users should just be using the sophisticated interface in the first place.

By that logic, the file-saving functionality in mime/multipart is redundant and can be removed, as the 'maxMemory' argument serves no purpose, since it all ends up in swap anyway.
Either this is a bug in mime/multipart, or mime/multipart's API contains vestigal components.
Also, this has nothing to do with net/http as such. It's Reader.ReadForm that I'm talking about here.
Making mime/multipart use /var/tmp internally doesn't change or complicate the interface exposed by mime/multipart let alone net/http, so fixing this doesn't seem like a big issue.

https://golang.org/doc/go1compat prevents us from removing things.
The standard library is full of duplicate ways to do things: e.g. http.Get vs making your own http.Client and http.Transport and your own http.Requests. It's a trade-off between convenience and control.
Feel free to bind /tmp wherever you want for your Go programs. Or set the TMPDIR environment variable.

As I understand it, the primary difference between /tmp and /var/tmp is that /tmp is cleared on reboot.  So it seems appropriate to me that mime/multipart default to using /tmp.  You can of course control it by setting the TMPDIR environment variable, as with most programs.

Barring a fix for this, the documentation for ReadForm is misleading and would cause most people to believe that large parts would go to disk-backed storage. It could be updated to point out the hazard of /tmp on modern Linux systems and advise people to set TMPDIR.
Since the size of swap space is usually bounded on Linux systems, it is more precious than regular disk space and thus use of swap vs. use of disk is not strictly equivalent.
For the benefit of others, this issue can be worked around by setting a default TMPDIR. This is at least safer than hoping the environment will do so:
if os.Getenv("TMPDIR") == "" {
  os.Setenv("TMPDIR", "/var/tmp")
}


scrollToLocation is not a function

Seems that scroll to location in section view stops working

Fixed by changing
this.SectionList.scrollToLocation({
to
this.SectionList.getNode().scrollToLocation({


Dynamic range currently hard-coded per accelerometer brand

Dynamic rangeof the sensors is currently hard-coded per accelerometer brand, adapt functions g.shell.GGIR, g.part1 and g.getmeta to either have an optional user-defined dynamic range or attempt to extract dynamic range from file header

Feature added to version 1.5-8


Alias @astrojs/language-server is still in node-packages.nix

Describe the bug
The nodejs package "@astrojs/language-server" fails after merging #309100 with:
error:
       … while calling the 'derivationStrict' builtin

         at /builtin/derivation.nix:9:12: (source not available)

       … while evaluating derivation 'shell'
         whose name attribute is located at /nix/store/vkyrj85l215ycifp3rx7hq2rirxw0rrc-nixpkgs/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:334:7

       … while evaluating attribute 'buildInputs' of derivation 'shell'

         at /nix/store/vkyrj85l215ycifp3rx7hq2rirxw0rrc-nixpkgs/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:381:7:

          380|       depsHostHost                = elemAt (elemAt dependencies 1) 0;
          381|       buildInputs                 = elemAt (elemAt dependencies 1) 1;
             |       ^
          382|       depsTargetTarget            = elemAt (elemAt dependencies 2) 0;

       error: Alias @astrojs/language-server is still in node-packages.nix

Steps To Reproduce
Steps to reproduce the behavior:

Use nixpkgs unstable channel on a commit after d128948f8c90
Run nix-shell -p "nodePackages.\"@astrojs/language-server\""

Expected behavior
The package should still work as it did in the commit before. If the package is up for removal there should be a clean migration path.
Additional context
This package is used in nixvim ( https://github.com/nix-community/nixvim/blob/4852f94f8ccae551514df0092a077014bafb95ca/plugins/lsp/language-servers/default.nix#L31 ) and the change broke automatic update.
Notify maintainers
@pyrox0
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.8.0-39-generic, Ubuntu, 24.04 LTS (Noble Numbat), nobuild`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.18.4`
 - channels(hag): `"home-manager, nixpkgs"`
 - nixpkgs: `/home/hag/.nix-defexpr/channels/nixpkgs

Just to note, this issue has affected a number of package renames, being moved from nodePackages to the top-level.
I'm not sure what the intended deprecation warning and/or transition period is before an outright removal?

you can install astro-language-server instead https://github.com/NixOS/nixpkgs/blob/a3a5fb4bbc6833c197ddf9d66dbf610041013f04/pkgs/by-name/as/astro-language-server/package.nix

you can install astro-language-server instead

I don't think that's the issue; the issue is that nodePackages.* packages seem to getting renamed/moved/whatever without going through the normal alias -> deprecated -> assertion process.

The nodejs package "@astrojs/language-server" fails after merging #309100 with:

That's not possible since that PR wasn't merged.

The nodejs package "@astrojs/language-server" fails after merging #309100 with:

That's not possible since that PR wasn't merged.

I believe they meant d128948f8c908057d56078380c797df14b6c4237

Fixed in https://github.com/NixOS/nixpkgs/pull/333736


Set appropriate limits for tabs and tools

Tabls:
Protein families: 500 genomes
Pathways: 500 genomes
All other tabs: 10000 genomes OR max that can be supported by solr
Tools:
MSA: 200
ID Mapping: 1000

I've implemented a version of the filtering to reference and representative genomes as we discussed last week.  I  have not yet updated the tool limits.
Note that while 10k works as the default for most of the tabs, it is not clear to me if that number should end up being that high

These updates have been commited.  They will be merged to alpha in a day or two.


Bug/open create user perms

What does this PR do?
This PR updates user permissions to allow for new user creation. In addition, the health check endpoint was update with read only permissions.
Jira ticket number?
N/A
Changes

Fix UserSerializer to correctly receive/apply required user data
Add permission class to health check view
Add post_save signal to assign user permissions to the user on creation
Add basic project permissions for new user (so that they can create a new project and whatnot)
Fix creator requirement in ProjectListSerializer

Needs coordination with:

[ ] https://github.com/CMSgov/blueprint_ui/pull/71

To do:

[ ] Add tests

@jauschalley @amyd11 I think this is ready to go. Kept finding some holes that needed to be plugged, but this should allow for basic usage until we can iron out some other stuff.


Removing unused ffmpeg dep

Ran npm run build and builds fine.
We can't use "ffmpeg" library as it is unlicensed - this library is also not being currently used.

Sounds good!

How was it? Did it work when leaving ffmpeg dep out?

Closing for now. Not needed.


[Storage] bump core-http dependency version to 1.1.4

Revert "Make exception for storage"
This reverts commit a3035f8256e11105d9d16615f7e7809aa40fd1ff.

This should wait after storage preview release.

/check-enforcer override


[Question] Are there ways to know who is currently signed in to MS Teams?

I would want to save it to a local session for reference to the bot that I'm making.

From.Id is unique for every user and bot combination. So you can store data against From.Id if you are using the data in same bot.

I see, that's for when a user initiated an Activity to the bot, right? But what if the bot only gathered information to the channel members and proactively messaged each member. How will i know who is currently signed in?

Do you want to know user’s presence status like Available, Busy, Away? This on the API roadmap but it's not possible as of today.

Okay, I see, so there is no other way where a bot can identify the user who is currently signed in? I just really need the user info of who is currently signed in using the bot. Anyway so for the roadmap if ever, can you add a feature where the bot can know if a channel member is online? Like the bot in a channel can be notified for when a channel member is online. Looking forward to the API development.

@ilanopat, did you mean when a bot is added to MS teams there isnt way to find (in bot code) who is chatting ? I see session object only has channel source as msteams.
I am trying to do similar thing as you mentioned to get user authenticated.
https://github.com/Microsoft/BotBuilder/issues/4229

@rjgmail88 kind of, yes. In .NET I can see all the members of a channel using the connectorclient via GetConversationMembersAsync() function. But all I want to know is who is the user currently signed in from the channel members?

@ilanopat - hi - I'd really like to know more about the scenario you are trying to solve to try and help. As it is stated above, knowing the status of the various team members is currently not available, so if you are wanting to know who, out of the whole list of team members, is currently logged onto Teams, then this functionality is not supported. It sounds like you may be looking for something different, though. Are you asking about who the current logged in user is who sent a message? Or who is the current logged in user who just added this bot to the team? Your question of "what if the bot only gathered information to the channel members and proactively messaged each member. How will i know who is currently signed in?" - are you looking for the person who added the bot to the team that allowed your bot to get the team information that allowed you to fetch the roster? I'm just trying to peg down what you are specifically trying to do to help.

Yes maybe I'm looking for something different that's still not implemented, I'm doing a proactive bot that sends a sign in message to each member of a channel. I'm trying to save the session of a user who will make a sign in from the trigger in the callback, and use that session to message again the user with an api function.

Hi - I'm assuming the part about "bot that sends a sign in message to each member of a channel" isn't what is giving you problems. What sort of "session" are you trying to save? A session as a cookie? A session in the bot's back end in the user data?
Is the flow you are trying to do:

Send a proactive message to the person with a sign in action
The user eventually "clicks the button" to start the log in flow for your bot
Once the person has signed in, send that person a proactive message saying "You have successfully signed in."

If the above is what you are trying to accomplish, which step is giving you troubles. If the flow above is incorrect, which steps are you doing something different in?
(for reference, I'm not sure if this page would help with what you are trying to do - https://docs.microsoft.com/en-us/microsoftteams/platform/concepts/authentication/auth-flow-bot )

@ilanopat, are you asking, for examplE:
"There are 10 people on a team, only 5 are currently online at a particular instant, I want to know who those 5 are so I can send them a message"

@jotrick Hi, yes, I'm doing that exact same thing, and I'm saving the session in the bot custom state, in the user data. So when my API controller is being called by an external API which sends the details that I need, to construct the proactive message, in the payload, I'm having troubles with it, because the bot doesn't have any idea to which user it needs to send it to.
@billbliss yeah, kinda like that

The API you're referring to we call "presence" and it's not exposed yet. Definitely on the list but we don't yet have an ETA.

@ilanopat - it sounds like you have an API controller that is called externally. It sounds like the "something external" calls your API which you want to trigger some amount of proactive messages to users. If that is correct, then I would say you need the external trigger to carry the information needed to know who to message. Some of the patterns we have seen:
Things like oauth flows can store this sort of "user data" to know who to message in fields like "state".
Things like proactive triggers can message large groups of people that are registered as "listeners". For example - a certain flag has a list of users in a database that want to know about that flag. When the API for that flag is triggered, the bot goes to the database and gets the list of users it should message.
Are these the sorts of patterns and/or things you are looking to do?

Yes, that's it @jotrick

@ilanopat - Does this answer your question about a pattern you could follow or do you still have questions?

yes. You can close this now, I'll just open a new issue if ever I encounter one. Thank you


[Host] Enable teachers to view which students submitted what responses (both phases)

The teacher must be able to see the names of the students during the game.

@drewjhart Updated Intermediate Design to have more straightforward chart representation of response data, based on feedback from @sincwu.

Figma link


Chrome v59 on Windows detects touchOnly on desktop

Hey Rafael,
Just wanted to bring it to your attention that now Chrome v59 on windows doesn't correctly detect mouse (and mistakes it for touchOnly device) in addition to Firefox. Seems to only happen on Windows and Macs are fine

Thanks for reporting. Much appreciated. I'm able to reproduce the Chrome v59 error on Windows, but Firefox v54 reads as hybrid not touch-only for me because of what we discussed in #4. Does Firefox read as touch-only for you?

@pnarielwala are you on a mouse only or hybrid windows machine?

@RByers it looks like Chrome v59 on Windows is giving a weird response to the hover and pointer media queries. I'm on a Windows 10 hybrid (primarily a mouse device) hover and any-hover are false, and pointer fine and any-fine are also false. See this detection test. Is there a reason for this? Is this a bug? Thanks.

@rafrex I am on a mouse only windows machine

And mozilla now reads as hybrid which is fine, but maybe browsers are moving towards not supporting window.matchMedia()?

Maybe we could use window.navigator.userAgent instead?

I don't think browsers are not going to support window.matchMedia(), as that would break many responsive websites (Firefox supports window.matchMedia), it is just the hover and pointer media queries that are in question (Firefox never supported them). Chrome used to support them, and I'm guessing this is a bug, because the hover none and pointer coarse MQs a true on my hybrid, but hopefully @RByers can shed some light on this for us. It would be shame if Chrome stopped supporting them, unless they have a better replacement.
I'd prefer to only use userAgent as a last resort to patch holes and bugs, like this one. I'd be happy to accept a PR using userAgent as a targeted fix for this issue if you have time to work on it.

So just checked this morning, and Chrome seemed to have fixed itself! I'll monitor it throughout the day and then close this issue

Sorry for the delay.  @darktears made some improvements in Chrome 59 on Windows here to try to better handle the convertible case.  I.e. when in tablet mode we expect touch to be primary.  But we rely on the OS to tell us when it's in tablet mode, so maybe that's not 100% reliable?  Or perhaps we have some other issue?  /cc @mustaqahmed.

I've tested intensively with as much detachable and convertible devices I could get around me. However it seems like one scenario is not working. I'm still troubleshooting it as we speak https://bugs.chromium.org/p/chromium/issues/detail?id=739430

Great, thanks for the info. I'm on vacation until next week and will look into it more then.

I just landed https://chromium.googlesource.com/chromium/src.git/+/6edbb267b6d43303d08e758ff63f941df5c8ff7f
Can someone try a Canary build in the coming days and confirm it works fine. Then I can ask the patch to be backported in other branches.

@darktears I just tested it with Canary (v62.0.3164.0) on an ASUS TP200S (with Windows 10) and it is not working (hover and any-hover MQs never match). This is a non-detachable hybrid that can enter tablet mode, but regardless of if it is in tablet mode or not, the hover and pointer MQs don't reflect that it has a mouse input device.
Note that on this device, even when it is in tablet mode, the mouse still works. Maybe if the device is a non-detachable hybrid, then the any-hover and any-fine MQs should always match?

@rafrex does the laptop supports screen rotation?

@darktears yea that's the one I have. I tried your link, but got the same results (see picture). The pointer and hover media queries were working fine as of Chrome v58.
I not much with PCs (just have this one for testing purposes), but I'm happy to check something on it for you.

@pnarielwala is it working fine for you on your mouse only machine? Are you able to test it out on other PCs/hybrids? Thanks.

@rafrex I can't access the hardware so I will make an experimental build of Chromium with some debug output so you can give me more infos.

Hi @rafrex,
Can you try this build : https://drive.google.com/open?id=0B65HPC3GJ5tEWTNzMmpiWlRjMmM
Unzip it, run it from the terminal (say git bash) with --enable-logging --v=0. Access https://googlechrome.github.io/samples/media-hover-pointer/ and tell me what is the debug output in the terminal.
Thanks.

@rafrex : did you had time to check it out?

@darktears sorry been really busy, hopefully will get to it today.
Also, I have a friend with a ASUS Zenbook Pro UX501VW and it has the same issue. Don't know if you're able to access any ASUS convertible hardware, but might be worth a test if you can.

I managed to grab an old ASUS T-100 and it behaves as expected. I really need the debug outputs to fix it further. I don't have access to any ASUS laptops....

@darktears sorry for the delay on this and thanks for working to fix this issue.
I downloaded the debug build, unziped it, and ran it from git bash after cding into its directory:
$ start chrome --enable-logging --v=0
Two windows opened, one being the Chrome browser, and the other presumably the log (window with black background and flashing white cursor). However, nothing appeared in the log or in the gitbash terminal after navigating to https://googlechrome.github.io/samples/media-hover-pointer/ or any other site. What am I doing wrong? Sorry I'm not much of a Windows person.
Also of note, the debug build has the correct pointer and hover media query results. Where as canary still has the incorrect results. Not sure if this was intentional.

@rafrex well you should see some debug output.
I'm puzzled about the fact you say the debug build returns the correct values. The debug build I sent you is basically master of Chromium with just few debug output, no functionality or behavior has been changed. Could you make sure your Canary is updated by going into the menu -> Help -> about Google Chrome.

@darktears yes it's up to date.
The canary version is: 62.0.3182.0
The dev build version is: 62.0.3170. 0

@rafrex there is no difference between the debug build I gave you and the canary build in term of code related to interaction MQs so I don't understand here why you're seeing two different outputs.
Concerning the debug output could you check with cmd then chrome.exe --enable-logging --v=0. You have to see debug output because I'm debugging every single code path to detect the input type.

@darktears I clean canary's cache, no change. Tried launching the dev build with the added .exe extension, but no log shows up. I'm not sure what's up. Are there any build steps that are added or are different between the dev build and canary build?

Absolutely no difference (beside the branding) so I'm really puzzled here really. @RByers do you have a clue of what's going on here....

@pnarielwala I patched this with a userAgent detection. Can you let me know what the full read out is (including all subsections) from http://detect-it.rafrex.com on your windows mouse only device? Thanks.

@rafrex ok I figure out the differences. It was my bad when adding the debug stuff. Can you try https://drive.google.com/open?id=0B65HPC3GJ5tESFkwYzNBa3lXRjg again and tell me the debug output.

@darktears here's the debug output. Also, the new dev build hover and pointer media queries match canary (i.e. are incorrect).
[1820:7164:0821/140830.292:ERROR:win_util.cc(450)] ----Testing pointer devices----
[1820:7164:0821/140830.323:ERROR:win_util.cc(452)] GetPointerDevices 1
[1820:7164:0821/140830.323:ERROR:win_util.cc(465)] ----Testing touch screen----
[1820:7164:0821/140830.323:ERROR:win_util.cc(475)] ----Testing docked state----
[1820:7164:0821/140830.323:ERROR:win_util.cc(494)] ----Testing rotation support----
[1820:7164:0821/140830.323:ERROR:win_util.cc(507)] ----Testing platform role and SM_CONVERTIBLESLATEMODE----
[1820:7164:0821/140830.401:ERROR:win_util.cc(533)] !GetSystemMetrics(SM_CONVERTIBLESLATEMODE) :1
[1820:7164:0821/141042.371:ERROR:win_util.cc(450)] ----Testing pointer devices----
[1820:7164:0821/141141.954:ERROR:win_util.cc(452)] GetPointerDevices 1
[1820:7164:0821/141141.970:ERROR:win_util.cc(465)] ----Testing touch screen----
[1820:7164:0821/141141.970:ERROR:win_util.cc(475)] ----Testing docked state----
[1820:7164:0821/141141.970:ERROR:win_util.cc(494)] ----Testing rotation support----
[1820:7164:0821/141141.970:ERROR:win_util.cc(507)] ----Testing platform role and SM_CONVERTIBLESLATEMODE----
[1820:7164:0821/141141.970:ERROR:win_util.cc(533)] !GetSystemMetrics(SM_CONVERTIBLESLATEMODE) :1
[1820:7164:0821/141141.970:ERROR:win_util.cc(450)] ----Testing pointer devices----
[1820:7164:0821/141141.970:ERROR:win_util.cc(452)] GetPointerDevices 1
[1820:7164:0821/141141.985:ERROR:win_util.cc(465)] ----Testing touch screen----
[1820:7164:0821/141141.985:ERROR:win_util.cc(475)] ----Testing docked state----
[1820:7164:0821/141141.985:ERROR:win_util.cc(494)] ----Testing rotation support----
[1820:7164:0821/141142.001:ERROR:win_util.cc(507)] ----Testing platform role and SM_CONVERTIBLESLATEMODE----
[1820:7164:0821/141142.001:ERROR:win_util.cc(533)] !GetSystemMetrics(SM_CONVERTIBLESLATEMODE) :1
[1820:7164:0821/141142.001:ERROR:touch_device_win.cc(43)] IS TABLET PlatformRoleMobile

@rafrex sure this is what I am getting on my mouse-only computer (although the sub sections do change sometimes upon restarting my computer)

@pnarielwala thanks. What's the model of your mouse-only computer? And what chrome version? This might be helpful for the Chromium team as the media query and touch event results are not what they should be.
@darktears it looks like a mouse-only windows device is also giving incorrect hover and point media query results (they reflect a touch only device, see the subsections in @pnarielwala screenshot above).
@RByers, @darktears  it also seems like 'ontouchstart' in window is true for mouse-only windows device. Is this an intentional change? I'd much prefer it to remain false unless the device has a touch screen (which I thought was the consensus https://lists.w3.org/Archives/Public/public-touchevents/2016Dec/0007.html).
Note that Detect Touch Events hasSupport uses 'ontouchstart' in window, while browserSupportsApi uses Boolean(window.TouchEvent).

@rafrex I'm on a Lenovo T440s with Chrome Version 60.0.3112.101 (Official Build) (64-bit)

Stable Chrome 60 doesn't have the fix mentioned above so @pnarielwala result seems consistent. I suggest @pnarielwala tests Canary to verify the fix.
@rafrex : Could you make sure you installed the latest ATK from Asus on https://www.asus.com/us/2-in-1-PCs/ASUS_Transformer_Book_Flip_TP200SA/HelpDesk_Download/

@darktears I installed the latest ATK and restarted. No change in the media query results. Also the debug output looks the same as before (I can paste it if you want).
@pnarielwala can you post the same screen grab as before but using Chrome Canary? Thanks.

@rafrex based on the debug this is not Chrome's fault. We use https://msdn.microsoft.com/en-us/library/windows/desktop/ms724385(v=vs.85).aspx GetSystemMetrics asking SM_CONVERTIBLESLATEMODE and your laptop returns that it's in slate mode (aka screen flipped and keyboard/trackpad disabled) when it's not. This is the last API we can use to detect if your laptop is a convertible. Previous tests are returning true for your hardware : it has a touch screen, it's not docked, and it supports rotation.
So here is my question : when you flip over the screen does Windows 10 ask you if you want to switch to tablet mode (without user interaction)? You should see a popup close to the time in the taskbar, e.g. https://onmessages.files.wordpress.com/2016/02/image001.png (make sure that in the settings you want to be asked about it https://www.cybernetman.com/files/siteContent/editor/Pics/KB380/Settings.png).

@RByers, @darktears it also seems like 'ontouchstart' in window is true for mouse-only windows device. Is this an intentional change? I'd much prefer it to remain false unless the device has a touch screen (which I thought was the consensus https://lists.w3.org/Archives/Public/public-touchevents/2016Dec/0007.html).

That should be true only when Windows reports there is a touchscreen present.  There are a number of known situations where Windows will lie and claim there is a touchscreen when there is not (like when you have installed Visual Studio and it's fake touchscreen driver used to simulating a touch screen).

@darktears I don't have that Asus TP200S anymore, but I recall that it didn't ask me if I wanted to enter tablet mode, even though in the settings I had indicated such. Which I agree indicates there is something wrong on Asus's end.
My friend's Asus Zenbook Pro UX501VW started indicating the correct media query results in v62 (was only affected v59 - v61), so whatever you did in v62 helped. Also my new PC, a Lenovo Ideapad Flex 4 has the correct media query results.
For the Lenovo Ideapad, when I switch from computer mode to tablet mode and refresh the page the media queries change as expected, but when I switch back from tablet mode to computer mode the media query results continue to indicate a touch only device after page refresh. I have to close and restart Chrome to get the correct media query results. Just some feedback for something to look into.
As a side note, I'm not surprised that it's not Chrome's fault. Like a lot of frontend code I write it's not my fault all browsers don't implement things according to spec, but it's my responsibility to workaround browser deficiencies so my apps work. Just as I think it is Chrome's responsibility to work around computer deficiencies so that it works correctly.

I'm going to close this issue and limit the workaround for detect-it to Windows Chrome v59 through v61.


iOS Text Input Issue

I'm submitting a...

[x] Bug report
[ ] Feature request

Reproduction steps

Get an iOS device (I am personally using an iPhone X)
Open a browser of your choice (I used Safari and Chrome)
Navigate to this JSFiddle
Select the text input box
Type

You will notice that the keyboard does not dynamically or automatically change. Ever. When you first tap on the text input box it should automatically be in Caps mode, and after typing a single character it should automatically become uncapitalised. This does not happen. Another issue double-tapping space does not produce a full-stop. If you need any reminder of how the keyboard should be behaving, just open the notes app and type for a bit.
I believe that it must be because the keyboard isn't able to find any information on the contents of the text input box, though I'm speaking with no knowledge in the area.
Note: If you remove show from the URL of the JSFiddle, it will take you to the code.
Version information
Browser type and version: Safari (latest version), Chrome (latest version)
EasyMDE version: 2.4.0

I believe this to be an issue with Codemirror specifically, not necessarily EasyMDE.
The problem is likely in how Codemirror handles I/O... it uses a textarea to capture input, but then inserts the content into an overlay div's innerHTML (or innerText?). iOS, if I recall correctly, uses the previous content to decide what the next input event will trigger, whether it be standard input, additional character inserts (double-space to add a period). And since the textarea itself never contains any content, iOS then assumes you want to enter capitalized text (I'm assuming in this specific case).

I believe this to be an issue with Codemirror specifically, not necessarily EasyMDE.
The problem is likely in how Codemirror handles I/O... it uses a textarea to capture input, but then inserts the content into an overlay div's innerHTML (or innerText?). iOS, if I recall correctly, uses the previous content to decide what the next input event will trigger, whether it be standard input, additional character inserts (double-space to add a period). And since the textarea itself never contains any content, iOS then assumes you want to enter capitalized text (I'm assuming in this specific case).

Ah, that explains it! Might you know of any fix or workaround?

Well from what I can tell, it's been an issue for quite some time. You can read a relevant issue here:
https://github.com/codemirror/CodeMirror/issues/3403
Seems like it's specifically an issue with events cancelling, causing internal logic in the keyboard to not fire. I'm not sure of a solution unfortunately, unless you feel like forking Codemirror and going down a rabbit hole.

FWIW, a more recent comment on that CodeMirror bug realises that the (or a) problem is that CodeMirror was setting the textarea's autocapitalize attribute to "false" when it should have been set to "off". So maybe it's possible to get a fixed CodeMirror into EasyMDE without waiting for its rewrite?
I assume this isn't a complete solution - it won't suddenly make the input behave like native iOS input fields - but it seems better than the current situation where it tends to go into capslock mode.)

I think it's enough to reopen this issue and do an update of CodeMirror.

Please have a look on https://easymde.tk/next, is the iOS behaviour better now?

Please have a look on https://easymde.tk/next, is the iOS behaviour better now?

Using the “default editor” demo, no. The behaviour is identical to how it was 9 months ago.

Alright, I was hoping a codemirror update would have been enough, will look into the configuration tomorrow.

.. swiping is broken as well as the native iOS autocomplete is

Is there any update on this?


rstrnt-sync-* apparently not compatible with tmt

When called for the first time, rstrnt-sync-set spawns a background process that listens on TCP & Unix sockets for incoming sync changes. However, when a test finishes, tmt & SSH cooperate to avoid leaving leftover processes on the guest, and this means the said background process would be killed. Probably quite strongly, as it does not clean up the Unix socket, and any subsequent call to rstrnt-sync-set on the same guest, e.g. from a later test, will get stuck on trying to connect to the now dead background sync manager process.
rstrnt-sync could do a better job when starting the background process, it's still part of the test's process group, and as such it's "garbage collected" when the test finishes.
What to do with this situation? Do we want to provide compatible aliases? Or write a note & recommend other libraries?
Related issue https://issues.redhat.com/browse/TFT-2395

@happz we want to strive for 100% compatibility with Beaker. So we should make it work.
We might want to provide our own rstrnt-sync-set that makes sure the background process correctly handles the signal handling and exists gracefully on such an event, cleaning up the leftover Unix socket.

notes from the tmt hacking discussion:
Can Jishi answer how many tests are affected by this, are there a lot of them?

According to restraint docs
States are scoped to the current task. That is, states set by the current task will have no effect in subsequent tasks.

Even if we fix the process killing issue, does it mean that tmt would also mimic restraint behavior with respect to the above to avoid conflicts across tests?


[NFC][Concurrency] Improve the summary documentation for Sendable.

The old text

A type whose values can safely be passed across concurrency domains by copying.

Was misleading, especially because soon, Sendable will not require Copyable. This change improves the opening documentation both by being more descriptive about how types might be Sendable, and by using the term of art "thread-safe type" which will be immediately understood by programmers who are conceptually familiar with concurrency.
Thanks to @rjmccall for the new text.

@swift-ci please smoke test

@swift-ci please smoke test


{ACR} Fix #23340: Fix az acr task credential add crashes when given…

… a password but no username
fixes https://github.com/Azure/azure-cli/issues/23340
Related command

Description

Testing Guide

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change
[Component Name 2] az command b: Add some customer-facing feature

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

[ ] I adhere to the Error Handling Guidelines.

ACR


windows_path notifies even if value is not modified

Description
I'm using windows_path to append binary folders to the PATH on windows. Under test-kitchen I need to reboot to have that reflect when I run tests against the PATH. So my windows_path resources use notifies to request a reboot at the end of the run. However, even if the PATH holds our expected directory, the env resource that windows_path defers to reports up to date but the reboot resource is notified.
Chef Version
13.4.19
Platform Version
Windows 10 Enterprise Edition virtual box VM (gusztavvargadr/w10e 0.6.0 on vagrant)
Replication Case
Tell us what steps to take to replicate your problem.  See How to create a Minimal, Complete, and Verifiable example
for information on how to create a good replication case.
reboot 'env' do
  reason 'Going to reboot to finalise installation'
  action :nothing
end

windows_path 'C:\\Windows\\system32' do
  action :add
  notifies :request_reboot, 'reboot[env]', :immediately
end

Chef-client output
In this example, I'm adding C:\flex\bin to the PATH, but it's already there from an easier run.
 * windows_path[C:\flex\bin] action add
           - Adding C:\flex\bin to path environment variable
           * env[path] action modify (up to date)

         * reboot[env] action request_reboot[2017-10-25T18:52:38+00:00] WARN: Reboot requested:'env'

           - request a system reboot to occur if the run succeeds

...

 Running handlers:
       Running handlers complete
       Chef Client finished, 10/51 resources updated in 11 seconds
       [2017-10-25T18:52:38+00:00] WARN: Rebooting server at a recipe's request. Details: {:delay_mins=>0, :reason=>"Going to reboot to finalise installation", :timestamp=>2017-10-25 18:52:38 +0000, :requested_by=>"env"}

       Running handlers:
       [2017-10-25T18:52:38+00:00] ERROR: Running exception handlers
       Running handlers complete
       [2017-10-25T18:52:38+00:00] ERROR: Exception handlers complete
       Chef Client failed. 10 resources updated in 11 seconds
       [2017-10-25T18:52:38+00:00] FATAL: Stacktrace dumped to C:/Users/vagrant/AppData/Local/Temp/kitchen/cache/chef-stacktrace.out
       [2017-10-25T18:52:38+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
       [2017-10-25T18:52:38+00:00] FATAL: Chef::Exceptions::Reboot: Rebooting server at a recipe's request. Details: {:delay_mins=>0, :reason=>"Going to reboot to finalise installation", :timestamp=>2017-10-25 18:52:38 +0000, :requested_by=>"env"}
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: 1 actions failed.
>>>>>>     Converge failed on instance <webkit-windows10ee>.  Please see .kitchen/logs/webkit-windows10ee.log for more details
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration

@btm @NimishaS the converge_by here needs to be deleted:
https://github.com/chef/chef/blob/master/lib/chef/provider/windows_path.rb#L40
the env resource should probably be modified to better document what its doing using converge_by's there, the windows_path resource should just delegate that responsibility to the subresource:
 * windows_path[C:\flex\bin] action add
           * env[path] action modify (up to date)
                -  Adding C:\flex\bin to path environment variable

converge_by outputs logging as a side-effect of updating the resource and doing why-run stuff.  it shouldn't be used to try to output logging.  there's no real good way to output logging with the formatter for this kind of purpose, so its better to make the sub-resource output something more usefully descriptive.


HP ProDesk 400 G2.5 "Asset Tracking Number" not an option

Having trouble with the HP ProDesk 400 G2.5 SFF models, looks like there is no "Asset Tracking Number" option, instead called "Asset Tag". This is leading to the script not finding proper BIOS PW, etc. Let me know how best to proceed, thanks!
BiosSledgehammer.ps1.log-04.txt

This is somewhat strange, giving that we support the "normal" ProDesk 400 G2, but the log clearly shows that the setting is now known.  Additionally, even if it would support this, no BIOS update can happen because the BIOS version is reported as "02.17" without any family or other information. This is also not common.
Checking the log, is it possible that you tried to execute BIOS Sledgehammer during PE? If so, could you please run it verbose after PE and sent a new log so I can check if at least the BIOS version works after that.
I will in the meantime think about a way to allow more than one setting for testing the BIOS password.

Was executing in PE, yeah - I do the activateUEFI there to automate a legacy ->UEFI prior to striping down the OS. However, seeing the same result once in Windows, unfortunately :(. I feel like this model might be a bit of a black sheep for HP.
BiosSledgehammer.ps1.log-01.txt

@dreary-ennui Thanks for the update, let me think about methods to bring this black sheep back to the family : ).
I have some ideas for the BIOS version parsing as well as as the Asset Tracking Number test. I need to make sure to implement this in a way and doesn't break existing machines.
Hopefully, I have some news tomorrow.

@dreary-ennui The necessary code changes are done.

The BIOS data parsing will now handle devices, that do not report a BIOS family, and process the result as just the BIOS version
Before testing the BIOS password files, BIOS Sledgehammer will check if the device support a setting named ""Asset Tracking Number" or "Asset Tag". What turns out to be supported will be used.

There is no release for this as of yet, so just download the current snapshot from https://github.com/texhex/BiosSledgehammer/archive/master.zip and copy BiosSledgehammer.ps1 from the archive to the ProDesk 400. Give it a test run in Windows directly and if looks good, please try it from SCCM/MDT.
If possible, I would like to have the verbose log files for both cases, just so I check if everything looks normal. I can't test this directly as we do not have any ProDesk 400 G2.5.

Awesome, will check out early next week. Thanks so much! Loving the utility, btw.

You're welcome, happy to hear you find it useful.

Ok - good news, bad news. The good news is it looks like your modifications take care of the original issues, thank you much for that. The bad news is that it appears - at this point - that on this model there are some settings that are not configurable through the BCU? Getting a return code of 6 when trying to modify the value for Asset Tag even running the BCU directly. Attached, BIOS sledge logs and a get return. Will keep digging and let you know of any updates.
400g2.5_settings.txt
BiosSledgehammer.ps1.log-03.txt

Well, that's rather unfortunate. We need some setting that we can change to detect the correct password, so...

Checking the previous release of this BIOS, there is no indication of a bug that indicates this to be a bug
The BIOS settings export shows that this is actually the "MOD v02.17" release, so release 2.17 for the MOD BIOS family
Checking SP87861, the BIOS family matches, so we have definitely the right BIOS for this machine (some models have more than one BIOS family)
What is rather uncommon is the addition of (ReadOnly) inside your settings export, I have never seen this before:

Asset Tag (ReadOnly)
	2Uxx383xxC
Ownership Tag (ReadOnly)

Born on Date (ReadOnly)
	00/00/0000

Searching for this, I found this question on the HP forums. Unfortunately, without answer.
My first idea was to use Ownership Tag in case Asset Tag could not be used, but since it's also marked as "ReadOnly" I would think changing that will result in another ACCESS DENIED error.
I can't see any "Lock Settings" in this BIOS as some modern BIOS version allow, so this can't be reason either.

There are two things you could try:

Factory reset the BIOS, then try a settings export again just to make sure if this make the ReadOnly entries go away
Use the F10 BIOS to define a password, then try a setting export and see if ReadOnly has changed.

I just released v5.0.6 (BETA) that includes the newest BCU version. You might want to give this a try.
Please remember to copy both BiosSledgehammer.ps1 and MPSXM.psm1

@dreary-ennui Any updates on this?

Sorry Michael - was in training all last week. Should have an update by Wednesday.

More bad news, unfortunately. Tried your suggestions and the new version to same result. Also interesting - a new BIOS update was released just a month ago, version 2.23 which doesn't work with the HPBIOSUPDREC utility - says the BIOS version doesn't match expected family syntax 👍 . Updated to 2.23 using the SAFUWIN utility packaged in SP87861, which did update properly, but still with the (ReadOnly) on the ownership info stuff. I can go into the BIOS setup and use CTRL+A to get into an "edit" mode for the ownership info, but that doesn't help much here. I'm going to open a support ticket with HP regarding BCU access to these settings and see what they say - but not with bated breath.

Thanks for the update, please let me know what HP says. If even their own BiosUpdRec utility fails, something is really not right there.

Tell me about it - told ya it was the black sheep of the family :D
Warranties are starting to expire on our fleet so I might be able to eventually swing a “best effort” angle but I’m gonna keep trying in the meantime. Will keep you posted. Thanks much for your support.

On Jul 31, 2018, at 2:17 PM, Michael Hex<EMAIL_ADDRESS>wrote:
Thanks for the update, please let me know what HP says. If even their own BiosUpdRec utility fails, something is really not right there.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@dreary-ennui There was no update on this for the last three weeks, please let me know if there are any news from HP?

Hey Michael - thanks for following up. Doesn’t look like we’re getting anywhere with this and we’re probably just going to cut our losses on this model seeing as how they’re coming off of warranty anyway. You can close this issue, sorry!

On Sep 11, 2018, at 3:19 PM, Michael Hex<EMAIL_ADDRESS>wrote:
@dreary-ennui There was no update on this for the last three weeks, please let me know if there are any news from HP?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

OK, sad. Would have been great to get a response from HP for this.
Everything I was able to gather in the meantime indicates that these (ReadOnly) attributes appear for some BIOS settings when the device is considered to be a customer device. But that's just an educated guess as long as HP does not confirm it.


Allow search to be sorted by shortest match.

When using a regex search in a project, it's often likely that the shortest match is the one closest to what you need. It would be nice if there was some way to make this a search option in the Ctrl+Shift+F menu.

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Sanitize packages recursively

In some of our tests we create packages that include actions. If that fails for some reason, the test cannot be run again, because sanitize fails to delete the package properly.
We should fix this by having a recursive sanitize before the test.

closing as duplicate of issue linked above.


Buttons inside the top panel do not work

I wanted to add a button inside the  the top portion of the SlideUpPanel, but the clicked does not work. Tapping the button just toggles the panel in/out

Yes?

A button inside the panel should still get its clicked event and not toggle the menu. It works in the original lib, I have bound and tested it.

This might be due to this being behind in terms of fixes etc. which the original repo has.

i guess that my answer in the #14  can help you


Move/Delete 'UserTopic' records, regardless of the visibility_policy, during a move-topic operation.

As mentioned in #24236 (comment)

I think it's safe for this project to be a follow-up, since we won't be offering these new values in the UI yet, but the logic in this
for muting_user in get_users_muting_topic will want to move all UserTopic records, not sure those with the MUTED state. And the TODO comment above about bulk updates should ideally be fixed while we're at it.

Currently, when we move a topic to another stream:

UserTopic records are moved/deleted only for the objects with MUTED visibility_policy.

We need to update the logic:

UserTopic records should be moved/deleted irrespective of the visibility_policy.

This should be implemented before offering new values (UNMUTE) in the UI.
This issue should be a follow-up after #24236 is merged.

Hi ,
I am a working professional and willing to participate in GSOC 2023 so want to solve this issue

Hi , I am a working professional and willing to participate in GSOC 2023 so want to solve this issue

Hi @affan00733
You should checkout the application guide to get started. -- Thanks!


Download-and-define hosted repo from a .zip URL

Support REST request referencing a remote URL to a .zip or other archive. The system would retrieve the .zip, unpack it into a hosted repository directory structure, then define a new hosted repository around it (using a name given in the REST request).
Request parameters:

remote URL
repository name

Response:

201 CREATED with location of new hosted repository.

Would be nice to implement as a RemoteRepository with a URL of something like this:
zip+http://some.remote.server/path/to/repo.zip
To do this, we'd probably need to register our own URL handlers for the JVM with code similar to this:
http://stackoverflow.com/questions/861500/url-to-load-resources-from-the-classpath-in-java
It's not yet clear how to delegate to the existing URL handler...but new URL(url) won't work with the above without a custom URL handler.

We have the ability to define a hosted repository for a zip file upload now. That's close enough.


develop 병합

Codecov Report

Merging #159 (37c18db) into main (889bbbe) will decrease coverage by 2.41%.
The diff coverage is 3.38%.

:exclamation: Current head 37c18db differs from pull request most recent head 900fb70. Consider uploading reports for the commit 900fb70 to get more accurate results

@@             Coverage Diff              @@
##               main     #159      +/-   ##
============================================
- Coverage     32.18%   29.77%   -2.42%
+ Complexity       81       79       -2
============================================
  Files            57       59       +2
  Lines           609      655      +46
  Branches         40       53      +13
============================================
- Hits            196      195       -1
- Misses          402      449      +47
  Partials         11       11

Impacted Files
Coverage Δ

...a/com/semicolon/gspass/config/ScheduledConfig.java
0.00% <0.00%> (ø)

...semicolon/gspass/controller/TeacherController.java
0.00% <ø> (ø)

...om/semicolon/gspass/controller/UserController.java
0.00% <0.00%> (ø)

...com/semicolon/gspass/dto/teacher/GradeRequest.java
0.00% <0.00%> (ø)

...ava/com/semicolon/gspass/entity/gspass/GsPass.java
0.00% <0.00%> (ø)

...ava/com/semicolon/gspass/entity/school/School.java
17.85% <0.00%> (-2.15%)
:arrow_down:

...on/gspass/exception/GsPassAlreadyUseException.java
0.00% <0.00%> (ø)

...m/semicolon/gspass/facade/user/UserFacadeImpl.java
0.00% <0.00%> (ø)

...micolon/gspass/security/config/SecurityConfig.java
0.00% <0.00%> (ø)

...lon/gspass/service/teacher/TeacherServiceImpl.java
50.84% <0.00%> (-4.71%)
:arrow_down:

... and 5 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 7bd00ae...900fb70. Read the comment docs.


Complete struct keyword inside item bodies

The complete type like let keyword:

Yes, we currently complete the struct keyword outside items but not inside, but we should also allow it inside. Same goes for union and enum. Interestingly, it seems we do complete trait and impl already.


[IMP] Use Webpack and lastest AST

Loved the project and wanted to give it a little push by using Webpack with Symfony Webpack Encore wrapper and latest AST.

Amazing work @emullaraj - working well.

There are a couple of front-end inconsistencies in terms of the new build output folder being reflected in the original index file though
Thank you for the feedback @Acen and let me know what can be improved frontend wise.


fix: reexport default export of typescript module

This fixes the following when using the module with TS:
TS1192: Module '"node_modules/@vueform/multiselect/src/index"' has no default export.
[index.d.ts(1, 1): ]()'export *' does not re-export a default.

Has this been resolved outside of this pull request, or is there another reason it hasn’t been merged?

Thanks, I appreciate it


Offline Popup Not Closing

This bug was reported by:Vadeblade @ 7:37pm CDT on Oct 27th

I am experiencing this bug as well

v1.3.2+v1.4.2 fixed this issue


Pause Music Rename In Menu

Describe your problem here.
How do I rename the pause music
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No response

can you be more specific?

You don't, unless you mean using different music for the pause menu, in which case, you can either replace the file, or use playMusic() in onPause()

local pauseMusicPath = 'musicfile'
function onCreate()
  savedPM = getPropertyFromClass('ClientPrefs', 'pauseMusic')
  setPropertyFromClass('ClientPrefs', 'pauseMusic', pauseMusicPath)
end
function onDestroy()
  setPropertyFromClass('ClientPrefs', 'pauseMusic', savedPM) -- return default
end

You don't, unless you mean using different music for the pause menu, in which case, you can either replace the file, or use playMusic() in onPause()

Right now I can change the music, but its song name still is the default , i want to change it

I really think you should use source, I think there is no way to change it with Lua. You might be able to detect it with Lua. Maybe like the "downscroll" detection or something.

I really think you should use source, I think there is no way to change it with Lua. You might be able to detect it with Lua.


'City Status' not displaying correctly bug?

All,
The 'City Status' is only displaying ONE city and it has labels in the cells instead of data (ie '$Housing$', '$Amenities$', etc).

Thx
jonpfl

see #283


fix(shared-data): swap X/Y spacing for 24-well nest tuberacks

overview
The X/Y spacing of the 24-well NEST tube racks are swapped, as pointed out by @SyntaxColoring. This PR bumps the version of the definitions to 2 and resolves spacing issues in version 1.
closes #4238
changelog

swap the x/y spacing
update the y-offset value (from 10.08 to 10.07) to match other 24-well tube racks (see opentrons_24_tuberack_eppendorf_1.5ml_safelock_snapcap)

review
Test on robot to see that the grid spacing has been corrected

Marking this as a do not merge because of  #4217 (see #4179 for more details, which is blocked for the same reason)

Unless we expect a quick turnaround on #4217, could we temporarily remove the broken NEST labware from the Labware Library?

Protocols that are somehow currently using the labware successfully will still be able to, because we're not touching the definitions.
New people won't fall into the hole.

#4266 supercedes this if we're going to do a hotfix


Commutable > Traversable?

Hello!
Over at rambda https://github.com/ramda/ramda/pull/1467#issuecomment-151715080
There has been some discussion of the names sequence and traverse and how commute seems to make more sense in general. The idea is that traverse should be saved for a different function.
If in favor of renaming sequence to  commute, what would the typeclass be called? I think Traversable is more or less ubiquitous among FP languages so it'd be a shame to rename.
Thoughts?

I'm not in favor of this change. traverse is one of the few functions here that actually has a good name, and I feel it would be a regression in understanding to change the name.
commute describes what the types do, traverse describes what the function does.
 I'm familiar with the paper, but I never thought of the word traverse that way

On Nov 15, 2015, at 2:30 PM, Hardy Jones<EMAIL_ADDRESS>wrote:
I'm not in favor of this change. traverse is one of the few functions here that actually has a good name, and I feel it would be a regression in understanding to change the name.
commute describes what the types do, traverse describes what the function does.
This is good reading: https://www.cs.ox.ac.uk/jeremy.gibbons/publications/iterator.pdf
—
Reply to this email directly or view it on GitHub.


Changed to use correct value for NSLinkAttributeName constant.

Fixed link detection in UITextView when using NSAttributedString.

I see that I have committed this pull request for BPAttributedStringConverter.m.  I actually meant to modify BPAttributedTextVisitor.m which is in the version I received via Cocoapods (v1.01).  I've searched through this repo and can't find a branch that seems to tie up with the Cocoapods version?


[SPARK-25894][SQL] Add a ColumnarFileFormat type which returns the column count for a given schema

(link to Jira: https://issues.apache.org/jira/browse/SPARK-25894)
What changes were proposed in this pull request?
Knowing the number of physical columns Spark will read from a columnar file format (such as Parquet) is extremely helpful (if not critical) in debugging poor query performance on a parquet table with a deeply nested schema. This PR adds a new metadata field for FileSourceScanExec which identifies the maximum number of columns Spark will read from that file source. (N.B. the actual number of columns read may be lower if the physical file Spark is reading is missing some of them. For example, this can occur in a large partitioned table with a wide schema with sparse data—some partitions may not have data for some columns.) This metadata is printed as part of a physical plan. For example, take a contacts table with the following schema:
root
 |-- id: integer (nullable = true)
 |-- name: struct (nullable = true)
 |    |-- first: string (nullable = true)
 |    |-- middle: string (nullable = true)
 |    |-- last: string (nullable = true)
 |-- address: string (nullable = true)
 |-- employer: struct (nullable = true)
 |    |-- id: integer (nullable = true)
 |    |-- company: struct (nullable = true)
 |    |    |-- name: string (nullable = true)
 |    |    |-- address: string (nullable = true)

With schema pruning, the following explain query
explain select name.first, employer.company.address from contacts

prints
== Physical Plan ==
*(1) Project [name#3726.first AS first#3742, employer#3728.company.address AS address#3743]
+- *(1) FileScan parquet [name#3726,employer#3728,p#3729] Batched: false, ColumnCount: 2,
        DataFilters: [], Format: Parquet, Location:
        InMemoryFileIndex[file:/blah/blah/spark/target/tmp/spark-686cac53-0...,
        PartitionCount: 2, PartitionFilters: [], PushedFilters: [], ReadSchema:
        struct<name:struct<first:string>,employer:struct<company:struct<address:string>>>

Note ColumnCount: 2. This tells us that schema pruning is working at planning time. Without schema pruning, that same query prints
== Physical Plan ==
*(1) Project [name#3726.first AS first#3742, employer#3728.company.address AS address#3743]
+- *(1) FileScan parquet [name#3726,employer#3728,p#3729] Batched: false, ColumnCount: 6,
        DataFilters: [], Format: Parquet, Location:
        InMemoryFileIndex[file:/blah/blah/spark/target/tmp/spark-947d2af3-8...,
        PartitionCount: 2, PartitionFilters: [], PushedFilters: [], ReadSchema:
        struct<name:struct<first:string,middle:string,last:string>,employer:struct<id:int,
        company:struct<...

Note ColumnCount: 6. This tells us either schema pruning is disabled or is not working as expected. If we've enabled schema pruning, this query plan gives us an obvious avenue for investigation of poor query performance.
How was this patch tested?
A new test was added to ParquetSchemaPruningSuite.scala.

Merged build finished. Test PASSed.

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

Test build #98316 has started for PR 22905 at commit 4aa8d04.

@gatorsmile @viirya @cloud-fan @dbtsai your thoughts?
cc @dongjoon-hyun for ORC file format perspective.

is there anything blocked by this? I agree this is a good feature, but it asks the data source to provide a new ability, which may become a problem when migrating file sources to data source v2.

is there anything blocked by this? I agree this is a good feature, but it asks the data source to provide a new ability, which may become a problem when migrating file sources to data source v2.

This isn't blocking anything. It's just a contribution that's shown itself to be very helpful for us identifying the source of performance problems in past experience. I think it would be helpful for others, too.
That being said, I don't know enough about what would be involved in migrating file sources to data source v2 to say how difficult that would be. This implementation (for Parquet) is essentially a one-liner. All the heavy lifting is done by SparkToParquetSchemaConverter.

Test build #98316 has finished for PR 22905 at commit 4aa8d04.

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

Merged build finished. Test PASSed.

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

Thank you for pinging me, @mallman .

@mallman Could you run the EXPLAIN with this new changes and post it in the PR description?

Merged build finished. Test PASSed.

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

Test build #98397 has started for PR 22905 at commit b4f0584.

Test build #98397 has finished for PR 22905 at commit b4f0584.

This patch fails to build.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #98399 has started for PR 22905 at commit 7124ffa.

Build finished. Test PASSed.

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

@mallman Could you run the EXPLAIN with this new changes and post it in the PR description?

Done.

Test build #98399 has finished for PR 22905 at commit 7124ffa.

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

Merged build finished. Test PASSed.

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

@cloud-fan @viirya @HyukjinKwon Can we make a decision on this PR? As I mentioned before, I've pretty much made my case as best I can.

I think it is useful but the current impl looks not a little bit hacky.
How about adding an API for counting the number of leaf columns in class StructType? Also cc @rxin @cloud-fan @hvanhovell

How about adding an API for counting the number of leaf columns in class StructType? Also cc @rxin @cloud-fan @hvanhovell

That could work as a more generally-applicable alternative. I'll have to think more on whether or how that might differ from the number of format-specific columns selected for a given StructType.
Thanks for your perspective.

Build finished. Test PASSed.

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


pip version differences

Hello!
Is there any significance difference between the version is uploaded to pip in the different versions?
With significance I refer to different reward functions, observations spaces...?
I am testing the differences between an approach that was executed at version 1.0.1 and I do not know if the results might slightly change in 1.0.3 (current).
Thank you in advance!

There shouldn't be any difference in reward function. Recent changes have just been small bugfixes.


SLATE_IGNORE_FILES does not work

Problem
SLATE_IGNORE_FILES does not ignore my files
Replication steps
add this to your .env
SLATE_IGNORE_FILES=/config/settings_data.json:/assets/static/icons.svg
More Information
I want to ignore my icons.svg as whenever I deploy my work the icons.svg wont work properly so I have to upload it to the store directly whenever I deploy
am I writing the proper syntax?

@arthurgouveia for your second file are you also trying to ignore a file in the assets folder?
This did work for me successfully:
SLATE_IGNORE_FILES=/config/settings_data.json:/layout/theme.liquid

@jonathanmoore have you tried on assets?

This may be a regression caused by https://github.com/Shopify/slate/pull/647. Will investigate!


Policy dose not converge in quadrotor transportation scenario.

The newly designed quadrotor transportation case cannot hover at a fixed point.
Learned policy

The policy tends to hit the boundary of flying space.
Learning curve

It cannot converge after a long time of training.
Check with PID
The PID controller can track the center point very precisely.

Check: can the drone hovering at a fixed point when the object weight is set to zero?

Objective: check if the attitude + thrust control is working.

Resolved: the dynamic error
Error dynamics cause the problem in the multi-drone case. Be careful with a GPU-based environment during the tensor operation!


spark_apply runs forever and nothing appears in the gui

Hello the sparklyr team!
I am using the promising spark_apply function but even a simple call seems to break.
I have a pretty large dataset, broken down in about 50 parquet files (they contain a column called myurl).
The code I run is essentially
library(httr)
# for parse_url() in the spark_apply call

df<- read_parquet(sc, //mypath/myfiles* , memory = FALSE, overwrite = TRUE, name = 'df')
df_agg  <- df %>% head()  %>% spark_apply(
    function(e) data.frame(parse_url$my_url, e),
    names = c("mypath", colnames(df)))

note the head(.) that should make this computation straighforward. Yet, Rstudio seems stuck in computation mode forever, and nothing happens on the stages tab of the spark GUI. Is that a bug? Is that expected? Other stuff like df %>% group_by(myurl) %>% summarise(count = n()) %>% collect() work just fine
Thanks again for your help. This spark_apply would be a life saver for me.

@kevinykuo  @javierluraschi
actually doing something as simple as
df %>%
  spark_apply(function(e) head(e, 1))

creates the same problem (crash of the R session, nothing happens in the GUI). Cant spark apply work with parquet files? Do you see a probleme here?
Thanks!!

does head(df) work?

@kevinykuo yes, even some more involved group_by + summarise + collect. what do you think?😱

Would help to see the logs when you run the spark_apply() code

where can I find them? I can have a look and see if I can share them (or at least tell you what is the main error). thanks!!

@kevinykuo @javierluraschi the problem is that there is not output in the console at all. Essentially the command starts a computation and then breaks. I tried all the tabs in the Spark GUI: no activity at all as well. Where can I find the log you are talking about? Happy to help solve this important issue
Thanks!!

@kevinykuo @javierluraschi sorry but I need to BUMP this!! :D please let me know how I can help here. Thanks again!

@randomgambit let's start with the log4j.spark.log* files in your working directory. You might also want to check out the logs on the worker nodes. IIRC you're running standalone? This might help: https://spark.apache.org/docs/latest/spark-standalone.html#monitoring-and-logging

@randomgambit could you share sessionInfo(), I would recommend installing the latest version of sparklyr for spark_apply(), as in devtools::install_github("rstudio/sparklyr"), getting the logs as KevinKuo suggested would be necessary as well.

> sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-ubuntu14-linux-gnu (64-bit)
Running under: Ubuntu 14.04.5 LTS

Matrix products: default
BLAS/LAPACK: /opt/intel/2015.3.187/composer/mkl/lib/intel64/libmkl_gf_lp64.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8    LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] httr_1.3.1          lubridate_1.6.0     dplyr_0.7.2         listviewer_1.4.0    sparklyr_0.7.0-9017 MKLthreads_0.1

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.12     compiler_3.4.1   dbplyr_1.1.0     plyr_1.8.4       bindr_0.1        base64enc_0.1-3  tools_3.4.1
 [8] digest_0.6.12    jsonlite_1.5     tibble_1.3.3     nlme_3.1-131     lattice_0.20-35  pkgconfig_2.0.1  rlang_0.1.1
[15] psych_1.7.5      shiny_1.0.3      DBI_0.7          rstudioapi_0.6   yaml_2.1.14      parallel_3.4.1   bindrcpp_0.2
[22] withr_1.0.2      stringr_1.2.0    htmlwidgets_0.8  rprojroot_1.2    grid_3.4.1       glue_1.1.1       R6_2.2.2
[29] foreign_0.8-69   reshape2_1.4.2   tidyr_0.6.3      magrittr_1.5     backports_1.1.0  htmltools_0.3.6  assertthat_0.2.0
[36] mnormt_1.5-5     mime_0.5         xtable_1.8-2     httpuv_1.3.5     config_0.2       stringi_1.1.5    lazyeval_0.2.0
[43] broom_0.4.2

I see this in the stderr

17/09/05 20:32:04 WARN ParquetRecordReader: Can not initialize counter due to context is not a instance of TaskInputOutputContext, but is org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl
17/09/05 20:32:04 WARN ParquetRecordReader: Can not initialize counter due to context is not a instance of TaskInputOutputContext, but is org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl
17/09/05 20:41:39 ERROR sparklyr: Worker (1111) failed to complete R process
(17/09/05 20:41:39 ERROR sparklyr: Worker (1111) failed to run rscript: ,java.lang.Exception: sparklyr worker rscript failure, check worker logs for details.)
17/09/05 20:41:39 WARN BlockManager: Putting block rdd_21_0 failed due to an exception
17/09/05 20:41:39 WARN BlockManager: Block rdd_21_0 could not be removed as it was not found on disk or in memory
17/09/05 20:41:39 ERROR Executor: Exception in task 0.0 in stage 4.0 (TID 92)
java.lang.Exception: sparklyr worker rscript failure, check worker logs for details.
	at sparklyr.Rscript.init(rscript.scala:67)
	at sparklyr.WorkerRDD$$anon$2.run(rdd.scala:90)
17/09/05 20:41:39 WARN ParquetRecordReader: Can not initialize counter due to context is not a instance of TaskInputOutputContext, but is org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl
17/09/05 20:41:39 WARN ParquetRecordReader: Can not initialize counter due to context is not a instance of TaskInputOutputContext, but is org.apache.hadoop.mapreduce.task.TaskAttemptContextImpl

this is what happens after the simple spark_apply and head mentioned above. I see a take at NativeMethodAccessorImpl.java:0 that takes about 30 min to fail and show the errors shown. What do you think? Thanks!!

@kevinykuo @javierluraschi do you get the updates without the @ stuff? I wonder if this is useful at all ;-)

Can you try to obtain the worker log, as per
17/09/05 20:41:39 ERROR Executor: Exception in task 0.0 in stage 4.0 (TID 92) java.lang.Exception: sparklyr worker rscript failure, check worker logs for details., so we can see what's throwing the error?
The Spark docs linked above might give you hints as to where they sit on your cluster.

@randomgambit currently, I'm catching up on older github issues, so the @javierluraschi notification doesn't help much, finding me in gitter or email is your best bet.
As KevinKuo mentioned, we really need to get the worker logs since this error: java.lang.Exception: sparklyr worker rscript failure, check worker logs for details. is just mentioning that something failed in the worker node, once you share that log, we should be able to point you in the right direction.

@kevinykuo @javierluraschi thanks, I am trying to find out where I can find these logs. Most of the stuff I found only contain this generic error

in any case, my understanding is that spark_apply is expected to be much much slower (in particular when using a generic R package in the computation) than the other native sparklyr functions. Is that correct?

@randomgambit yes, this is correct. There is currently a performance cost between transferring data between Scala and R during spark_apply(), it could actually save time in some instances (say, high computation in R for packages using C libraries), but most of the time it will come with an overhead.  I would always start by using dplyr, ml_, sdf_, etc. and only when the functionality is not available, consider using spark_apply().

@javierluraschi @kevinykuo some updates. I appears every time one uses spark_apply there is some bottleneck due to Sparklyr copying over the entire R distribution over each node.
This can take quite a while and will not show up on the Spark gui. Also, calling a package from withing spark_apply only works with the syntax mypackage::myfunction.
You may want to specify the IO thing on the doc at some point? Anyways, Thanks for your help again!

Thanks, suggestion added to https://github.com/rstudio/sparklyr/issues/1021

15 minutes overhead for a single master and worker node is a real problem, the use of Apache arrow seems not to overcome. Is there any way to initialize the nodes at start time, independently from the later launched spark_apply commands ?


Add documentation about using environment variables in config files

As a response to an issue in the opentelemetry/collector repository, I am adding this piece of documentation into the collector/configuration section. This documentation will expose to the users about the capability of the configuration file handling environment variables.

I signed it

I signed it

I signed it


Fix spacing in this card.

Hi. I noticed that the margin and padding in this card is not adequate. I'd like to improve it.

fix this


Remove alternate implementation of FindFilesInAssets

Per in person discussion related to #7288, this change removes the off-by-default alternate implementation of FileUtilities.FindFilesInAssets as there did not exist a test for that implementation and the MRTK code base only used the default path.

/azp run


egressgw: policy: set namespace in policy ID

when parsing a CEGP into a PolicyConfig, in addition to the policy name, set also the policy namespace in the config ID, as otherwise 2 policies sharing the same name on different namespaces can overwrite each other.

ugh, makes sense. Do we want to fix earlier releases too? (and CENP in 1.12)

/test

think we need a similar fix for ParseCEGPConfigID() / policy deletion :thinking: ?
Adding a test (ie. improving newEgressPolicyConfigWithNodeSelector()) for these scenarios would be cool - but maybe overkill & sufficient as follow-on.


add PhysicalMachineNames to AD Checker. Remove -allowprerlease to mod…

…ule install.

@kristopherjturner Thank you for your contribution. I have sent the changes you suggested to Engineering to confirm. Will keep you posted.
#in-progress

@kristopherjturner Engg has confirmed this change. Signing off.
#sign-off


Add TISR 212 and LSM 172

It would be great to see if this dataset could be used to train machine learning models such as graphcast. There are a couple of variable missing though,

(taken from here, https://arxiv.org/pdf/2212.12794.pdf) I think the two missing fields are Incident solar radiation and land sea mask. Any interest in including these or even trying to get all the era5 variables available.

Yes, definitely stay tuned. This is within our immediate plans :)

We're going to be a bit slow in updating docs & code on this, but please check gs://gcp-public-data-arco-era5/ar. It should have what you're looking for 😉 .


[WIP] Javascript reorganization and webpack build

The basics of this work, like drawing a map, set_center, etc.  I think the annotations might be broken, and I didn't test much anything else.  I'm just putting this out there to give others a chance to look it over in case anyone wants to bikeshed about the eslint style or file organization.  I don't particularly care, but it's best to settle on something early.
Another thing to consider is to do what ipyleaflet (and others) do, which is the run the javascript build in setup.py.  For now, it is just a manual step (npm run build).

Most of the default functionality implemented in the notebooks/ folder looks good to me.  I am however seeing the map displaying full screen in a band above the notebook (instead of fixed on the right hand side).
I am into putting the npm run build in the setup.py.  For better or for worse we've hitched our wagon to setup.py;  both the nbextension and serverextension are also automatically installed by setup.py.

I'm not seeing the issue with the map displaying full screen.  Could you host the notebook so I can debug it?

I'm having trouble getting the annotations working.  When following the first example notebook, I get in the console
utils.js:785 Could not open comm  --  Error: Class jupyter.widget not found in registry

but
$ jupyter nbextension list
Known nbextensions:
  config dir: /Users/jbeezley/.jupyter/nbconfig
    notebook section
      jupyter-js-widgets/extension disabled
  config dir: /Users/jbeezley/git/geonotebook2/env/bin/../etc/jupyter/nbconfig
    notebook section
      geonotebook/index  enabled
      - Validating: OK
      jupyter-js-widgets/extension  enabled
      - Validating: OK

Have I done something dumb?

I see, it is disabled in ~/.jupyter/nbconfig.  I have no idea how that got there.

Okay, I think I fixed the remaining issues.

This looks GREAT to me! thanks @jbeezley


Drop oracle jdk7 from CI?

oraclejdk7 is unfortunately no longer available in Trusty after our latest updates, since we can no longer support oraclejdk7 on our recent build images due to Oracle's withdrawal. See: http://www.webupd8.org/2017/06/why-oracle-java-7-and-6-installers-no.html
https://github.com/travis-ci/travis-ci/issues/7019#issuecomment-316769716

It seems like we should drop oraclejdk7. Is there any issue with requiring JDK 8 and above?

Yeah, looks like we should drop oraclejdk7, but I think we want to retain openjdk7 for now.

openjdk7 is broken on trusty. looks like we are stuck on the legacy Ubuntu for now. 😭

https://github.com/docker-library/openjdk/issues/117
https://travis-ci.org/googleapis/toolkit/jobs/255774665 no such provider: SunEC

Fixed


jsx-a11y/aria-proptypes errors: "The prop value with an expression type of JSXElement could not be resolved"

When I enable the jsx-a11y/aria-proptypes rule, I get the following error:
The prop value with an expression type of JSXElement could not be resolved.
  Please file issue to get this fixed immediately.
Error: The prop value with an expression type of JSXElement could not be resolved.
  Please file issue to get this fixed immediately.
    at Object.extractLiteral [as JSXExpressionContainer] ($PWD/node_modules/eslint-plugin-jsx-a11y/node_modules/jsx-ast-utils/lib/values/expressions/index.js:162:11)
    at getLiteralValue ($PWD/node_modules/eslint-plugin-jsx-a11y/node_modules/jsx-ast-utils/lib/values/index.js:65:35)
    at extractValue ($PWD/node_modules/eslint-plugin-jsx-a11y/node_modules/jsx-ast-utils/lib/getPropValue.js:24:12)
    at getLiteralPropValue ($PWD/node_modules/eslint-plugin-jsx-a11y/node_modules/jsx-ast-utils/lib/getPropValue.js:56:10)
    at EventEmitter.JSXAttribute ($PWD/node_modules/eslint-plugin-jsx-a11y/lib/rules/aria-proptypes.js:71:56)
    at emitOne (events.js:82:20)
    at EventEmitter.emit (events.js:169:7)
    at NodeEventGenerator.enterNode ($PWD/node_modules/eslint/lib/util/node-event-generator.js:40:22)
    at CodePathAnalyzer.enterNode ($PWD/node_modules/eslint/lib/code-path-analysis/code-path-analyzer.js:607:23)
    at CommentEventGenerator.enterNode ($PWD/node_modules/eslint/lib/util/comment-event-generator.js:97:23)
    at Controller.traverser.traverse.enter ($PWD/node_modules/eslint/lib/eslint.js:905:36)

I have no idea how to find out on which file it's erroring out, but it seems like it might be a bug in jsx-ast-utils.

Any update on this one?

@ljharb will work on this today.

Fixed in jsx-ast-utils v1.3.1 you can reinstall and should be good.


Suppor for high dimension ODEs?

Would this be able to pull large ODEs from model objects?
In particular, ones used in the MRGsolve package?

Hi - thanks for your interest. I'm not really sure what you're referring to. Do you mind providing a bit more context and possibly an example of what you're looking for?

I think you would have to extract the mrgsolve equations which are not formulas;  It is similar to:
https://github.com/datalorax/equatiomatic/issues/52

It appears very similar to #52 - nlmixr uses ODE's (I think) as well. MRG solve uses LSODA ODE solver for Pharmacokinetic applications. In the world of PBPK, it would be very helpful to be able to extract the systems of equations in a "pretty" format for publications.
It sounds like its not general enough to be able to handle this. But this package looks great...why I was so excited!

Thanks for the comment. I am always open to new ideas for enhancements and new developments, including building something that works generally across these. With that said, however, I know next to nothing about what we're talking about here and would need some more guidance. An example model, and what the output should look like, would be really helpful.
My highest priority is currently implementing mixed effects/multilevel models (e.g., see #107), but I'd be happy to put this on the list of future development priorities. I just need more context/examples to help me understand how it should be implemented.

I can give you details for RxODE and nlmixr, but I will wait until they don't require python to run, since it isn't your first priority.
For nlmixr models, the ODEs can be extracted as text (w/Leibnetz notation) as well as the mixed effects, but I think you are referring to linear mixed effects models here.

Yes, I'm currently working on linear mixed effects models via lme4. It's possible some of that code could transfer.

I'm hopeful;  Thanks for entertaining this.


SDK-34: JAVA SDK: set a limit on minimum polling interval

Setting minimum poll interval to 1 second.
If anything less than this is specified then it defaults to 1 second.

made indentation/space related changes

Squash merged. 636189a


Capture only audio

i want implement to peerconnection with audio only. But the audio it work after start capture video.
Does anyone know how to do this?

@dbemfica , I have a demo.


How to get active tab from component?

actions.currentScene() is great when the scene is not a part of a tab navigator. Is there a good way to tell which tab I am on from anywhere in my app?
My use case is I have an auto sliding carousel on my home screen, but I only want it to autoPlay when the user is on that tab.
I have tried to wrap a TouchableOpacity to each tab icon and dispatch an action on each press to keep track of which tab is active - I thought this would for sure work but when trying to change tabs they no longer receive the props.focused prop and do not change tabs on press (but it did keep track of the active tab from the press).
Has anyone come across this and solved it in a clean way, or am I just totally missing something?
Cheers.

Like this?
{navigation.state.routes.map((element, i) => {
        const active = navigation.state.index === i


Improve distinct data threshold terminology

Change distinct match threshold to distinct data threshold since we are checking for distinct data values and not matches

@sidfloyd90 : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Supabase start throws error

Bug report
Describe the bug
Using supabase in my next js project and have a remote instance setup also. supabase start throws error:
Database is not healthy
To Reproduce
supabase login
supabase init
supabase start

Expected behavior

Screenshots

With --debug

System information

OS: Ubuntu 21.04
Version of supabase-js: ^2.1.1
Version of Node.js: 19.0.0

Additional context
Add any other context about the problem here.

Hello, could you paste here the docker logs after supabase start?
$ docker logs supabase_db_my_project

The logs look normal. Does supabase db start work? This command only starts the db container.

@sweatybridge when I ran it the first time, it worked.
But when I ran supabase stop and ran the command again I got the following error:
Starting database...
Database is not healthy.
Error: failed to connect to `host=localhost user=postgres database=postgres`: failed to receive message (read tcp <IP_ADDRESS>:36606-><IP_ADDRESS>:54322: read: connection reset by peer)
Try rerunning the command with --debug to troubleshoot the error.

As a sanity check, could you run the following commands before supabase start?
docker ps -a
docker network ls

Then after supabase start, run those commands again. Compare the state before and after could help diagnose this problem.

Another thing to check is the disk space allocated to docker. To be KN the safe side, you want to leave about 20GB of free space for docker before running supabase start.

Closing this as can't reproduce. Let me know if you have more information.


Do Rust Native Queues and Mutexes Properly Suspend Tasks

Note: Hopefully posting a question here is allowed. If not, please let me know where I should be asking this so I can put the question in the correct place.
When writing code in C/C++ with the ESP-IDF, functions that read from a queue (e.g. xQueueReceive) or attempt to take a mutex (e.g. xSemaphoreTake) will put the task task into a suspended state, so that the FreeRTOS system can switch to other tasks while waiting for the resource to be obtained. Will the equivalent functionality built into Rust do this as well?
I ask as I considering on porting a project from C++ to Rust that will need to read from different sensors in different tasks, and it seems that embedded-hal-bus is the way to do this. Furthermore, I will then have a task that needs to sit waiting to be able to read data from a queue. I would like to be able to use Rusts's built in functions to do this, but I'm worried that the tasks will not properly suspend when they are waiting.

As far as I know, all rust platform APIs use libc behind the scenes, which then uses the newlib implementation in esp-idf-sys, which for the threading stuff ultimately uses the right FreeRTOS APIs.
So in short, yes.

I also confirm that all Rust sunchronization primitives, including std::sync::Mutex suspend the FreeRTOS tasks when waiting on the primitive, because these primitives are implemented in terms of FreeRTOS lower level synchronization primitives. Just like Rust threads are implemented in terms of FreeRTOS tasks.
@N3xed is right that you should be extra careful if you also plan to hook FreeRTOS interrupts yourself, because in that case you cannot use off-the-shelf Rust synchronization primitives, as they are not interrupt-safe. In that case, you should do unsafe calls into FreeRTOS primitives, or use the few ones which already have safe Rust wrappers in esp-idf-hal/esp-idf-svc.
As for questions, please use the Matrix channel, which is linked from the README of this crate.

@N3xed and @ivmarkov Thank you on both accounts. I will use matrix for further questions.


Export path issue using github workflow

When using Github workflows there is an issue with the export path.
When trying to build my Mono project. (after manually adding .net dependencies using the following code block
      - name: .NET installation
        uses: actions/setup-dotnet@v3
        with:
          dotnet-version: 6.0.x

The following error is returned on compilation:
ERROR: Prepare Template: The given export path doesn't exist.
   at: add_message (editor/export/editor_export_platform.h:182)
ERROR: Project export for preset "Windows Desktop" failed.
   at: _fs_changed (editor/editor_node.cpp:994)

The project it was ran on was in the root of the repository (so no subfolder).
This required the removal of the following line from the workflow:
cd $PROJECT_PATH
There was no mention of this in the README. My suggestion is to at least add a mention to it (along with the manual adding of the .net dependcies).
This did not fix the issue. After some further digging I managed to fix my build by changing the export path from
godot --headless --verbose --export-release "Windows Desktop" ../build/mac/$EXPORT_NAME.zip
to
godot --headless --verbose --export-release "Windows Desktop" ./build/mac/$EXPORT_NAME.zip
These steps combined have fixed my building issues for my Mono project that is set up in the root of my repository. I am unsure exactly if the project being in the root is the cause of the error. I added any information that might help narrow down the actual problem.

Thanks for this post. I believe the .. is only needed, if your root folder is not the project folder. So removing cd $PROJECT_PATH and replacing .. with . should both be done when having the project at the root.

Please take a look at https://github.com/abarichello/godot-ci/pull/157. It's not a perfect solution (Bash conditions could be used to use ../build only if in a subfolder), but it should do for now.

@FlippantKitten @DarkyOMG Please take a look at https://github.com/abarichello/godot-ci/pull/157 🙂


Update link for 'Dhall to HLint' blog post

Should work without .html 👍
P.S. Thanks for mentioning our blog post in README!

Thanks!


⚠ Bofrost.at has degraded performance

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

HTTP code: 200
Response time: 1417 ms

Resolved: Bofrost.at performance has improved in a4628ef.


Retry garage-push in case of errors on the server side

As done with garage-sign, make sure to retry push at least 3 times in
case of errors on the server side.
Signed-off-by: Ricardo Salveti<EMAIL_ADDRESS>

This is not strictly required, but since we had network issues affecting our CI builds, I decided to have a similar retry logic in place as done with garage-sign.

After some consideration, I think it would be best to put this sort of retry logic directly into garage-push. That gives us better control over what really happens and makes testing much easier as well.


Add namespace query parameter for mirrors

Mirrored registries are design to serve content from upstreams. However, the mirror hostname will usually not match the hostname of the upstream, requiring the mirror to only use a single upstream or use its own pattern matching to determine the upstream. To solve this issue, the client will pass along the namespace which is being used for the request, allowing mirrors to easily map to multiple upstreams. This query parameter can safely be ignored if multiple upstreams are not supported.
Marking as draft to move along conversation in https://github.com/opencontainers/distribution-spec/issues/12

Codecov Report

Merging #3451 into master will increase coverage by <.01%.
The diff coverage is 53.65%.

@@            Coverage Diff             @@
##           master    #3451      +/-   ##
==========================================
+ Coverage   44.11%   44.11%   +<.01%
==========================================
  Files         124      124
  Lines       13760    13794      +34
==========================================
+ Hits         6070     6085      +15
- Misses       6759     6774      +15
- Partials      931      935       +4

Flag
Coverage Δ

#linux
47.87% <56.25%> (ø)
:arrow_up:

#windows
39.77% <53.65%> (+0.01%)
:arrow_up:

Impacted Files
Coverage Δ

remotes/docker/registry.go
61.33% <100%> (+1.05%)
:arrow_up:

remotes/docker/fetcher.go
47.54% <25%> (-2.46%)
:arrow_down:

remotes/docker/resolver.go
53.29% <58.06%> (-0.24%)
:arrow_down:

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 fdab4f4...7538d45. Read the comment docs.

@dmcgowan With today's containerd, the client is configured to talk with a specific registry Host, and resolving the original image ref.
In this model, the mirror will get the original image ref, thus it will know whatever the upstream is, right?

The problem with UpstreamHost/library/busybox is that no mirror supports it and there is no way today for the client to know whether the registry would understand that. The path to get that working would be to re-introduce the ping before every pull along with a defined configuration to figure out how the registry wants the client to interpret the "path" component. This would reintroduce the extra latency for ping, make the whole process more complicated, and fragment the registry ecosystem as now registries would need to be able to handle multiple types of clients to offer content on multiple URLs.
In this model, the mirror will get the upstream host information via a query parameter, which can be safely ignored if the mirror does not support arbitrary or multiple upstreams. (A path component cannot be ignored :smile:  )

@dmcgowan Hm, ok. Based on the log and code, it seems that todays implementation is https://MirrorHost/v2/library/busybox. I didn't pay attention to the protocol before, and thought that UpstreamHost/library/busybox is passed to the mirror as parameters. :)

@Random-Liu I see in your mirror PR on CRI you don't add the push capability to the hosts. This code would see that and add the query parameter on all requests from CRI. While it is harmless I am not sure if that is ideal

@dmcgowan Kubernetes/CRI doesn't the need the push capability from the client side.
If we want to add push capability, I think we can only add it to the default host.

Going to close this for now since it is not mergeable, changes need to be made for configurable and better logic for determining whether a registry is a global mirror.


How do I used it for binomial distribution?

I am using dso for a response of 0 and 1, how do I set p to be Bernoulli distribution below?
Thank you!

Sorry, can you provide more details? Not sure what “response” means. Are you saying that you are searching over sequences where each token of the sequence is binary?

Sorry, can you provide more details? Not sure what “response” means. Are you saying that you are searching over sequences where each token of the sequence is binary?

response refers to y. it is like logistic regression model.
we have data X and Y. X are some variables and Y is the indicator of whether the event happens, for example, if the borrowers default, then it is 1 otherwise 0.
The underlying distribution of Y is binomial.
I noticed there is a parameter: "regressor": "dso_least_squares"
is there a way I can define customized cost function. In that case, do I also need provide gradient fun for minimization purposes?
Thanks.

Sounds like you are solving a symbolic regression (regression) task where your response variable takes on binary values.
You can use the standard regression config for this, though your expressions are free to output continuous values. An alternative would be to customize the dso.Task so that y = 0 if the expression takes on a value < 0 and y = 1 otherwise, for example. This should be a quick change.
Note the "distribution" your response variable takes on has nothing to do with the p in the equation above, which is the dso.Policy object that represents a parameterized distribution over symbolic expressions.

is there a way I can define customized cost function

DSO is a generic combinatorial optimization framework, so you can customize any search space or reward function you want.


Unfiltered goodness to the last drop.

Alright I need this hotness in the main line. Deploy attempt number 1.


Add Bace event webhook integration

@arjanvanijzendoorn  Thanks for reviewing this. I applied the changes based on your comments. Can you please resolve and merge this?