[Bug] BetterDiscord incompatible with latest Discord on Linux.

os: Debian 10 buster
discord: 0.0.14
when install betterdiscord at discord-0.0.14, it will not work and discord change to broswer version

Having the same problem. I tried to reinstall both BetterDiscord and Discord but nothing seems to be working.

Same bug here.
kernel 5.11.6-1-MANJARO

same here.
Ubuntu 20.04.2 LTS

same here
Ubuntu 20.04.1
Linux 64bit 5.8.0-45-Generic

This is known and is a duplicate of #442 / #548. In the future, reacting to the original issue with 👍 is more helpful to me to see who  is also experiencing these problems.

So, is this bug critical or have you already an idea about how to fix it ?

Same here, only happened when I updated to 0.0.14 on flatpak (fedora 33), tried reinstalling BetterDiscord and Discord, will not work.

I adapted the patch from https://github.com/rauenzi/BetterDiscordApp/issues/442#issuecomment-805413148 for Linux. Here's how you can try it:
patch -Nu -d "$(betterdiscordctl status $flavor | sed -n 's/Modules: //p')" \
    -p0 --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Replace $flavor with:

-f '' for stable
-f 'ptb' for PTB
-f 'canary' for Canary
--snap for snap
--flatpak for flatpak

It may or may not work for you.

this patch seems to not run at all.
can't find file to patch at input line 3
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- discord_desktop_core/injector/betterdiscord/config.json
|+++ discord_desktop_core/injector/betterdiscord/config.json

Adding --follow-symlinks to the patch command should fix the issue.

same issue still for me after adding --follow-symlinks...

Which flavor? What's the output of this command?
betterdiscordctl status $flavor | sed -n 's/Modules: //p'

same issue still for me after adding --follow-symlinks...
i should note this error was also present after manually dereferencing the symlink

there is no config.json file in my discord_desktop_core folder

Which flavor? What's the output of this command (replacing $flavor as above)?
betterdiscordctl status $flavor | sed -n 's/Modules: //p'

I am on snap. output is /home/epicfacethe3rd/snap/discord/122/.config/discord/0.0.14/modules

Were you using BD beta before? The patch may not work on BD stable.

Were you using BD beta before? The patch may not work on BD stable.

I don't honestly know. i'm going to guess no.

is there a way to get to bd beta?

Not while BD is broken. :^)

what time takes the patcher to patch ?

10 minutes currently

is there a way to get to bd beta?

Install normally and point the config.json to the beta branch. i.e. change branch value to gh-pages-development

I adapted the patch from #442 (comment) for Linux. Here's how you can try it:
patch -Nup0 -d "$(betterdiscordctl status $flavor | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Replace $flavor with:

-f '' for stable
-f 'ptb' for PTB
-f 'canary' for Canary
--snap for Snap
--flatpak for Flatpak
--nix for Nixpkgs/NixOS

It may or may not work for you.

i got this
patch -Nup0 -d "$(betterdiscordctl status -f '' | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)
ERROR: Discord installation not found. Try specifying it with "--discord".
patch: **** Can't change to directory '' : No such file or directory
 ✘ zany130@fedora  ~  curl: (23) Failure writing output to destination

I adapted the patch from #442 (comment) for Linux. Here's how you can try it:
patch -Nup0 -d "$(betterdiscordctl status $flavor | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Replace $flavor with:

-f '' for stable
-f 'ptb' for PTB
-f 'canary' for Canary
--snap for Snap
--flatpak for Flatpak
--nix for Nixpkgs/NixOS

It may or may not work for you.

i got this
patch -Nup0 -d "$(betterdiscordctl status -f '' | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)
ERROR: Discord installation not found. Try specifying it with "--discord".
patch: **** Can't change to directory '' : No such file or directory
 ✘ zany130@fedora  ~  curl: (23) Failure writing output to destination

Same here.

got it working on flatpak with
patch -Nup0 -d "$(betterdiscordctl status --bd-repo-branch=gh-pages-development --flatpak | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Try this instead(after you do betterdiscordctl install)
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch; patch -Nup0 -d (betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch
I only tested this on stable discord so this may or may not work for those who use flatpak, snap, etc. (Can someone try?)
P.S I dunno how long that curl link's gonna last cause I dunno how long it takes for discord to remove files from their servers.

I adapted the patch from #442 (comment) for Linux. Here's how you can try it:
patch -Nup0 -d "$(betterdiscordctl status $flavor | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Replace $flavor with:

-f '' for stable
-f 'ptb' for PTB
-f 'canary' for Canary
--snap for Snap
--flatpak for Flatpak
--nix for Nixpkgs/NixOS

It may or may not work for you.

i got this
patch -Nup0 -d "$(betterdiscordctl status -f '' | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)
ERROR: Discord installation not found. Try specifying it with "--discord".
patch: **** Can't change to directory '' : No such file or directory
 ✘ zany130@fedora  ~  curl: (23) Failure writing output to destination

Are you sure you've installed stable Discord and not snap or flatpak?

Try this instead(after you do betterdiscordctl install)
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Modified.patch" > Modified.patch; patch -Nup0 -d (betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch
I only tested this on stable discord so this may or may not work for those who use flatpak, snap, etc. (Can someone try?)
P.S I dunno how long that curl link's gonna last cause I dunno how long it takes for discord to remove files from their servers.
Edit: I accidentally put Mod.patch not Modified.patch
I got this

curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Modified.patch" > Modified.patch; patch -Nup0 -d (betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch
bash: syntax error near unexpected token `('

I did the steps manually.
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch
patch -Nup0 -d "/home/<USERID>/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
rm -f Modified.patch

Try this instead(after you do betterdiscordctl install)
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Modified.patch" > Modified.patch; patch -Nup0 -d (betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch
I only tested this on stable discord so this may or may not work for those who use flatpak, snap, etc. (Can someone try?)
P.S I dunno how long that curl link's gonna last cause I dunno how long it takes for discord to remove files from their servers.
Edit: I accidentally put Mod.patch not Modified.patch

There is a missing $.
... patch -Nup0 -d (betterdiscordctl ... should be ... patch -Nup0 -d $(betterdiscordctl ....
After that it worked.

Switching discord link to mediafire cause it went inactive
New command:
curl "https://download1501.mediafire.com/bro8wwny39dg/rqpv9r67r5rpidq/Mod.patch" > Modified.patch; patch -Nup0 -d $(betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch

Workaround:

Restore from Backup to 0.0.13 (or don't update in the first place).
change "version" in /usr/share/discord/resources/build_info.json to "0.0.14".

Worked for me

Switching discord link to mediafire cause it went inactive
New command:
curl "https://download1501.mediafire.com/bro8wwny39dg/rqpv9r67r5rpidq/Mod.patch" > Modified.patch; patch -Nup0 -d $(betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch

link ist out of date. just enter the url in the browser and copy the direct link for yourself.

Bluffing build_info doesn't work for everybody
Your "patch" doesn't work for everytbody
I will wait for the real fix, from BD

working for me on stable by doing
betterdiscord --bd-repo-branch=gh-pages-development install
and then following Zaricix instructions although I had to download it from a browser curl wouldn't work.

I adapted the patch from #442 (comment) for Linux. Here's how you can try it:
patch -Nup0 -d "$(betterdiscordctl status $flavor | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Replace $flavor with:
* `-f ''` for stable

* `-f 'ptb'` for PTB

* `-f 'canary'` for Canary

* `--snap` for Snap

* `--flatpak` for Flatpak

* `--nix` for Nixpkgs/NixOS

It may or may not work for you.

this patch worked for me on discord stable on the stable version of BD

Thanks to ObserverOfTime's post I was able to fix things here on Arch.
However I had to fix the symlink issue in a more aggressive mannor. For some reason --follow-symlinks was not working for me.
My solution was to temporarily rename the injector link and move the folder that it points to into it's place. Then run the patch, then move the folder back and rename the injector link back to just injector again.

I did the steps manually.
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch
patch -Nup0 -d "/home/<USERID>/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
rm -f Modified.patch

Just edit for your user id.

THIS WORKS.

I did the steps manually.
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch
patch -Nup0 -d "/home/<USERID>/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
rm -f Modified.patch

Just edit for your user id.

THIS WORKS.

Probably. I was just being paranoid.

when I try any of these, debian, it says
patch -Nup0 -d "/home/$USER/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
patch unexpectedly ends in middle of line
patch: **** Only garbage was found in the patch input.

when I try any of these, debian, it says
patch -Nup0 -d "/home/$USER/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
patch unexpectedly ends in middle of line
patch: **** Only garbage was found in the patch input.

Try it without the $USER and put your USER manuelly

I made a script that is curl-able so that you can execute the patch over CMDLine in one shot
/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/WarpWing/631161668d32da957654938ba281c566/raw/5e2c41693922487265815518a5fe04fd8827fa1a/patch.sh)"

Please read the code to make sure that it's the code you want to run. I'm not responsible for anything that happens to your system

when I try any of these, debian, it says
patch -Nup0 -d "/home/$USER/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
patch unexpectedly ends in middle of line
patch: **** Only garbage was found in the patch input.

Same, Manjaro.
Apparently curl link doesn't work.

I made a script that is curl-able so that you can execute the patch over CMDLine in one shot.
NOTE: This should work for every flavor of BD. Please tell me if it doesn't and I'll update it accordingly. Also please read the code to make sure that it's the code you want to run. I'm not responsible for anything that happens to your system.
/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/WarpWing/631161668d32da957654938ba281c566/raw/5e2c41693922487265815518a5fe04fd8827fa1a/patch.sh)"

Picture of it working

Good luck fellow Linux Discordians and happy patching!

I did the steps manually.
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch
patch -Nup0 -d "/home/<USERID>/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
rm -f Modified.patch

Just edit for your user id.

this will not work for snap.
has anyone found a fix for snap based users on stable?

The other links don't work so try this
curl "https://www.dropbox.com/s/tx8f3vzjaoascig/Mod.patch?dl=1" > Modified.patch; patch -Nup0 -d $(betterdiscordctl status | sed -n 's/Linked injector directory: //p') --follow-symlinks < Modified.patch; rm -f Modified.patch
If that doesn't work try one of the other commands and replace the link with mine.

I haven't tried the patch myself, but may I suggest you guys to host the patch on gist.github.com? It's more of a permanent solution, plus it has syntax highlighting. :D

i seem to be getting the same error as you there. are you on the snap install?
AUR, stable.

i seem to be getting the same error as you there. are you on the snap install?

AUR, stable.

Try mine. The error was because you weren't actually downloading anything as the links were broken.

I did the steps manually.
curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch
patch -Nup0 -d "/home/<USERID>/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
rm -f Modified.patch

Just edit for your user id.

this will not work for snap.
has anyone found a fix for snap based users on stable?

I made a script that is curl-able so that you can execute the patch over CMDLine in one shot.
NOTE: This should work for every flavor of BD. Please tell me if it doesn't and I'll update it accordingly. Also please read the code to make sure that it's the code you want to run. I'm not responsible for anything that happens to your system.
/bin/bash -c "$(curl -fsSL https://gist.githubusercontent.com/WarpWing/631161668d32da957654938ba281c566/raw/5e2c41693922487265815518a5fe04fd8827fa1a/patch.sh)"

Picture of it working

Good luck fellow Linux Discordians and happy patching!

i seem to be getting the same error as you there. are you on the snap install?

I was on the stable version. This patch script should work for all versions because it targets BetterDiscord regardless of the install path so it's a hmm moment.

curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" > Modified.patch
patch -Nup0 -d "/home/$USER/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
rm -f Modified.patch

This is the current patch that worked for me. It's the code from the patch modified with $USER. For people that are new, run them individually because it could just be an issue with the script perhaps? Anyways good luck, still don't know why it wouldn't work for all versions. Also, note that the latest BD with patch breaks a few existing themes. My FrostedGlass Transparency is gone :(

It won't work for snap and flatpak because they're not symlinked.

It won't work for snap and flatpak because they're not symlinked.

Ah, let me see if I can make a non-symlink compatible version. Probably because it's under the snap/ and flatpak/ respectively.

@WarpWing Could you upload your patch to a github gist? Unfortunately your link returns this:
<?xml version='1.0' encoding='UTF-8'?><Error>AccessDenied<Message>Access denied.</Message>Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object.</Error>

@WarpWing Could you upload your patch to a github gist? Unfortunately your link returns this:
<?xml version='1.0' encoding='UTF-8'?><Error>AccessDenied<Message>Access denied.</Message>Anonymous caller does not have storage.objects.get access to the Google Cloud Storage object.</Error>

https://gist.github.com/WarpWing/631161668d32da957654938ba281c566
Here you go. Did the script not execute properly or?

Sorry, I should have been more clear. The first command curl "https://cdn.discordapp.com/attachments/409824216729255936/824346562737340436/Mod.patch" gives the xml output I mentioned above. I meant taking the contents from that curl link to a gist instead of that discord link that doesn't appear to work.

You should use $HOME instead of /home/$USER, because user can change home directory location.

Now that you have your own link can you stop spamming about your "patch" here or make a separate thread just about it?
The subject is about the incompatibility of latest linux discord version with bd, and all we can read is "muh my patch, my patch this my patch that". And also claiming on bd discord that it is THE FIX by linking this thread, seriously wtf.
We have seen it ok, thx, now stop.

@WarpWing
Running this:
patch -Nup0 -d "/home/ori/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
or
patch -Nup0 -d "/$HOME/.local/share/betterdiscordctl/bd/0" --follow-symlinks < Modified.patch
Gives the following output in my terminal.
patch unexpectedly ends in middle of line
patch: **** Only garbage was found in the patch input.

Notes:
OS = Manjaro Linux
Using Stable
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Any other Ideas for a fix?

Nevermind @WarpWing, turns out @etrigan63's link is working again. Here's the patch on github gists in case etrigan63's link goes down again.
@therealOri You're getting those errors because the "patch" from WarpWing's link is the xml output I mentioned here.

@Barbarossa93
What do I do with the patch that you have provided?

@therealOri See here.

Alright, Worked like a charm!

@WarpWing 's solution worked perfectly for me

I personally had to add a newline at the end of the patch for it to work properly

The curl script didn't work for me, but I got it working.
Simply uninstalling and reinstalling with betterdiscordctl uninstall && betterdiscordctl install bd didn't work.
I had to delete the directory in order to get a clean file that the patch expect, by executing sudo rm "/home/<USERID>/.local/share/betterdiscordctl" in between.
These are the errors I got:
patching file betterdiscord/config.json
patching file betterdiscord/index.js
patching file betterdiscord/preload.js
patching file betterdiscord/remote.js
patching file index.js
patch unexpectedly ends in middle of line
patch: **** malformed patch at line 1284:

When I tried after just uninstalling/reinstalling, the errors changed to:
patching file betterdiscord/config.json
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file betterdiscord/config.json.rej
patching file betterdiscord/index.js
Reversed (or previously applied) patch detected!  Skipping patch.
3 out of 3 hunks ignored -- saving rejects to file betterdiscord/index.js.rej
patching file betterdiscord/preload.js
Hunk #3 FAILED at 9.
Hunk #4 FAILED at 13.
Hunk #5 FAILED at 22.
Hunk #6 FAILED at 31.
Hunk #7 FAILED at 36.
Hunk #8 FAILED at 46.
Hunk #9 FAILED at 55.
Hunk #11 FAILED at 68.
Hunk #12 FAILED at 74.
Hunk #13 FAILED at 76.
Hunk #14 FAILED at 79.
Hunk #15 FAILED at 81.
12 out of 15 hunks FAILED -- saving rejects to file betterdiscord/preload.js.rej
patching file betterdiscord/remote.js
patching file index.js

The patch worked for me after trying the above solution (rm -r $HOME/.local/betterdiscordctl) but now on startup I'm getting a new error:

And yes, I'm using the discord_arch_electron AUR package.

The patch worked for me after trying the above solution (rm -r $HOME/.local/betterdiscordctl) but now on startup I'm getting a new error:

And yes, I'm using the discord_arch_electron AUR package.

Try doing a clean reinstall of Discord. Perhaps manually update Electron.js?

On Thu, 25 Mar 2021 14:04:10 -0700
Ty Chermsirivatana @.***> wrote:

Try doing a clean reinstall of Discord. Perhaps manually update Electron.js?

Might as well. The update to 0.0.14 wiped all my settings/gifs anyways lol.
By electron.js do you mean electron itself or something different?

On Thu, 25 Mar 2021 14:04:10 -0700 Ty Chermsirivatana @.***> wrote: Try doing a clean reinstall of Discord. Perhaps manually update Electron.js?
Might as well. The update to 0.0.14 wiped all my settings/gifs anyways lol. By electron.js do you mean electron itself or something different?

Bleh my brain is on autopilot. I mean Electron itself yeah.

Okay. I upgraded to aur/electron-beta-bin which uses electron v13.0.0-beta.4 and modified my /usr/bin/discord to point to electron-beta but the same error persists.
For the record, I was using community/electron before, which is using electron v11.3.0.

curl "https://gist.githubusercontent.com/Slacksarenice/aaa09cffd8be9d06b62a49d780ba1e49/raw/9e9cc4795d31055adde141858d4dfe1232f0a224/betterdiscordfix.sh" | bash
one line script to fix issue

No worries. I upgraded to aur/electron-beta-bin which uses electron v13.0.0-beta.4 and modified my /usr/bin/discord to point to electron-beta but the same error persists.
For the record, I was using community/electron before, which is using electron v11.3.0.

I'm now at the same spot as you man. Any fix to this?

I'm now at the same spot as you man. Any fix to this?

Nope, unfortunately not. Glad to know it's not just me, though.
Are you using the official package or aur/discord_arch_electron?

I'm now at the same spot as you man. Any fix to this?

Nope, unfortunately not. Glad to know it's not just me, though.
Are you using the official package or aur/discord_arch_electron?
If the latter, which electron version?

Have you tried the clean install?

The curl script didn't work for me, but I got it working!
These were the errors I initially got:
patching file betterdiscord/config.json
patching file betterdiscord/index.js
patching file betterdiscord/preload.js
patching file betterdiscord/remote.js
patching file index.js
patch unexpectedly ends in middle of line
patch: **** malformed patch at line 1284:

I re-downloaded the patch because it indicated it might be corrupt. After that, the errors changed to:
patching file betterdiscord/config.json
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file betterdiscord/config.json.rej
patching file betterdiscord/index.js
Reversed (or previously applied) patch detected!  Skipping patch.
3 out of 3 hunks ignored -- saving rejects to file betterdiscord/index.js.rej
patching file betterdiscord/preload.js
Hunk #3 FAILED at 9.
Hunk #4 FAILED at 13.
Hunk #5 FAILED at 22.
Hunk #6 FAILED at 31.
Hunk #7 FAILED at 36.
Hunk #8 FAILED at 46.
Hunk #9 FAILED at 55.
Hunk #11 FAILED at 68.
Hunk #12 FAILED at 74.
Hunk #13 FAILED at 76.
Hunk #14 FAILED at 79.
Hunk #15 FAILED at 81.
12 out of 15 hunks FAILED -- saving rejects to file betterdiscord/preload.js.rej
patching file betterdiscord/remote.js
patching file index.js

I tried uninstalling/reinstalling bd, but the errors only increased, as if the file(s) to be patched didn't get reset at all.
I had to delete the bd directory in order to get a clean file that the patch expect, by executing sudo rm "/home/<USERID>/.local/share/betterdiscordctl" in between un/re-installing. After that, the patch worked.

Can you elaborate your workaround pls ?
I'm facing the same error, so I deleted that directory and then did betterdiscordctl install and then applied the patch, (which I downloaded from here: https://gist.githubusercontent.com/Barbarossa93/f65e6e05fb685716920020a83960dfd2/raw/9a9c639305dde459a0f009b2148e6195d6982ece/gistfile1.txt)
but it still gives me the same error....
(
OS: Arch
Discord stable
)

Have you tried the clean install?

Yes. I did so by wiping ~/.config/discord but to no avail.

I'm now at the same spot as you man. Any fix to this?

Nope, unfortunately not. Glad to know it's not just me, though.
Are you using the official package or aur/discord_arch_electron?
If the latter, which electron version?

I am using aur/discord_arch_electron. I'm using the stock electron version that comes with arch / that package.
Details in package manager GUI seen here:

I have tried the vast majority of patches here all unsuccessful in their own ways.
Replying to @WarpWing:

I'm now at the same spot as you man. Any fix to this?

Nope, unfortunately not. Glad to know it's not just me, though.
Are you using the official package or aur/discord_arch_electron?
If the latter, which electron version?
Have you tried the clean install?

I have went between arch stable (now outdated), snap and flatpak, and I am now on AUR. A clean build was made when testing each patch, even uninstalling and re-downloading the package. Still no success.

Regarding https://github.com/rauenzi/BetterDiscordApp/issues/598#issuecomment-806070730: You can still get the old .deb and .tar.gz files from the following URLs:

https://dl.discordapp.net/apps/linux/0.0.13/discord-0.0.13.deb
https://dl.discordapp.net/apps/linux/0.0.13/discord-0.0.13.tar.gz

For those still having this issue on an Arch based system (Manjaro in my case), I have a temporary fix:

install Discord 0.0.14 from official repos.
Next, run sudo pacman -U /var/cache/pacman/pkg/discord-0.0.13-1-x86_64.pkg.tar.zst. If you lack this file, you can download it here.
Install betterdiscord via betterdiscordctl install.*

*Should you get an error saying ERROR: Directory 'discord_desktop_core' not found in /home/<Username>/.config/discord/0.0.14/modules, wait for discord to install updates and fully launch and run again.
Credit to Jakub & Void for this fix.

1. install Discord 0.0.13
3. build_info.json` and chance "version" to `0.0.14`

It has already been seed multiple times, on the discord server, and even here, that it doesn't work for everybody, making the app crash and rebooting endlessly after typing in the app.

For those still having this issue on an Arch based system (Manjaro in my case), I have a temporary fix:

install Discord 0.0.14 from official repos.
Next, run sudo pacman -U /var/cache/pacman/pkg/discord-0.0.13-1-x86_64.pkg.tar.zst. If you lack this file, you can download it here.
Once installed, run sudo nano /opt/discord/resources/build_info.json and chance "version" to 0.0.14
Install betterdiscord via betterdiscordctl install.*
Run discord.

*Should you get an error saying ERROR: Directory 'discord_desktop_core' not found in /home/<Username>/.config/discord/0.0.14/modules, run discord and allow it to install updates and fully launch, then run betterdiscordctl again.
Credit to Jakub & Void for this fix.

For either this issue in particular or in general, is it "better" to get Discord from the official repositories on Manjaro, or the arch_electron version from the AUR?

I used one of the patches linked here, and had Betterdiscord working for a while. However, when I started Discord about an hour ago I got a message about Discord "rolling back" an update because of some kind of webhook incompatibility, after that I wasn't able to get it to work.

The curl script didn't work for me, but I got it working!
These were the errors I initially got:
patching file betterdiscord/config.json
patching file betterdiscord/index.js
patching file betterdiscord/preload.js
patching file betterdiscord/remote.js
patching file index.js
patch unexpectedly ends in middle of line
patch: **** malformed patch at line 1284:

I re-downloaded the patch because it indicated it might be corrupt. After that, the errors changed to:
patching file betterdiscord/config.json
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file betterdiscord/config.json.rej
patching file betterdiscord/index.js
Reversed (or previously applied) patch detected!  Skipping patch.
3 out of 3 hunks ignored -- saving rejects to file betterdiscord/index.js.rej
patching file betterdiscord/preload.js
Hunk #3 FAILED at 9.
Hunk #4 FAILED at 13.
Hunk #5 FAILED at 22.
Hunk #6 FAILED at 31.
Hunk #7 FAILED at 36.
Hunk #8 FAILED at 46.
Hunk #9 FAILED at 55.
Hunk #11 FAILED at 68.
Hunk #12 FAILED at 74.
Hunk #13 FAILED at 76.
Hunk #14 FAILED at 79.
Hunk #15 FAILED at 81.
12 out of 15 hunks FAILED -- saving rejects to file betterdiscord/preload.js.rej
patching file betterdiscord/remote.js
patching file index.js

I tried uninstalling/reinstalling bd, but the errors only increased, as if the file(s) to be patched didn't get reset at all.
I had to delete the bd directory in order to get a clean file that the patch expect, by executing sudo rm "/home/<USERID>/.local/share/betterdiscordctl" in between un/re-installing. After that, the patch worked.

I tried this, but still get the:
patch unexpectedly ends in middle of line
patch: **** malformed patch at line 1284:
Is there anything else that can be done? It seems to get so close to working... Tried looking at line 1284 myself, but as I figured, I don't understand at all what could be wrong.

@TacoRaptor67 try adding a new line at the end of the patch, then uninstall and reinstall betterdiscord and re-do the patch. That fixed it for me

@TacoRaptor67 try adding a new line at the end of the patch, then uninstall and reinstall betterdiscord and re-do the patch. That fixed it for me

Welp.. that worked! Thanks :smile:

Not working with
$ patch -Nup0 -d "$(betterdiscordctl status | sed -n 's/Modules: //p')" \
    --follow-symlinks --no-backup-if-mismatch < <(curl -Ss https://discord.coffee/hFDvPaj.patch)

Discord 0.0.14 Stable, fresh install from .deb package.

Linux Mint here, also not loading with Discord. Iv tried a few of the ideas from above but no luck.

How do I make betterdiscordctl install this beta?
Should I just deprecate it in favour of the new installer?

How do I make betterdiscordctl install this beta?
Should I just deprecate it in favour of the new installer?

Unsure about how betterdiscordctl operates currently, but zere included a new install script in the main repo which allows you to manually inject using a similar method.

The inject script in the main repo currently goes to the wrong location. I can provide some detailed steps for betterdiscordctl hopefully tomorrow

Maybe I'll adopt the betterdiscord AUR package (which currently installs the original, abandoned, and broken BD) to publish the new installer there. :thinking:

@ObserverOfTime thanks for doing that!
Would you prefer me to put some steps here on GitHub, or just DM them directly on Discord?

Better here, I think, so other people can know them too.

Just to clarify, what are the steps to get up and running?
I just tried

uninstall betterdiscord-rauenzi-git
install betterdiscord
rm -r ~/.config/discord
betterdiscordctl install
discord

And I am presented with the web app again. (system is arch linux)

betterdiscord

Wow, that's a slick installer, went off without a hitch. Much appreciated.


MissingCredentialsException

I added my token to Gist.sublime-settings (user) and am getting a MissingCredentialsException. I'm using ST3, build 3059.
Traceback (most recent call last):
  File "gist in /Users/nifl/Library/Application Support/Sublime Text 3/Installed Packages/Gist.sublime-package", line 31, in _fn
  File "gist in /Users/nifl/Library/Application Support/Sublime Text 3/Installed Packages/Gist.sublime-package", line 193, in on_gist_filename
  File "gist in /Users/nifl/Library/Application Support/Sublime Text 3/Installed Packages/Gist.sublime-package", line 54, in create_gist
  File "request in /Users/nifl/Library/Application Support/Sublime Text 3/Installed Packages/Gist.sublime-package", line 135, in api_request
  File "request in /Users/nifl/Library/Application Support/Sublime Text 3/Installed Packages/Gist.sublime-package", line 47, in api_request_native
  File "request in /Users/nifl/Library/Application Support/Sublime Text 3/Installed Packages/Gist.sublime-package", line 37, in token_auth_string
Gist.request.MissingCredentialsException
error: Gist: unknown error (please, report a bug!)

It looks like the issue is solved


Meeting 2024-02-13

What type of PR is this?

documentation

What this PR does / why we need it:
Agenda for next meeting, to be updated with minutes

@bigludo7 Ok for me, you can formally approve and merge. Thanks


Feature Request: Include which space a window is located

when running aerospace list-windows --all it results to this,

483
Amie
Amie

466
Arc
New Issue · nikitabobko/AeroSpace

474
Discord
#releases

605
WezTerm
t ~

it would be nice if we include the space where the window is located as part of the table/output.

1
483
Amie
Amie

2
466
Arc
New Issue · nikitabobko/AeroSpace

3
474
Discord
#releases

4
605
WezTerm
t ~

Checklist

[x] I've searched for duplicates. My search queries were (please don't forget to search in closed issues too):

include space
list-windows

[x] I've read the documentation https://nikitabobko.github.io/AeroSpace/guide & https://nikitabobko.github.io/AeroSpace/commands
[x] I've searched in the documentation. My search queries were:

include space
list-windows

aerospace CLI client version: 0.14.2-Beta 0cb8dbdfc5ee73b8cbc200f175f467ebead55201
AeroSpace.app server version: 0.14.2-Beta 0cb8dbdfc5ee73b8cbc200f175f467ebead55201

Please read the documentation more carefully
aerospace list-windows --all --format '%{window-id} %{workspace}'


Update joinmessage.py

replaced guild.me and guild.me.name with guild
fixed grammar, join message says thanks for joining, not "inviting"

https://discordpy.readthedocs.io/en/stable/api.html?highlight=permissions_for#discord.TextChannel.permissions_for it expects a member/role obj, not a guild

This is also a cog for posting a message when the BOT joins a server, not a user

This is also a cog for posting a message when the BOT joins a server, not a user

ah, ok that makes more sense now then. sorry 👍


[minor] Update env setup

The cached-mamba action takes too many arguments that should have nice defaults (like the label and env prefix) while also not exposing control over the underlying conda-incubator/setup-miniconda.
Here I want to deprecate the existing action and replace it with one that is both more streamlined and more flexible.

This is working fine. cached-mamba is deprecated but otherwise left alone, so this strictly introduces a new action.
More underlying flags are exposed (with defaults), and the runner is used to determine stuff that used to require specifying env labels and whatnot. Also you can turn off caching entirely. The only required input remaining is the python version. Usage looks as simple as:
# This runs jobs which pyiron modules should run on pushes or PRs to main

name: Push-Pull

on:
  push:
    branches: [ main ]
  pull_request:

jobs:
  pyiron:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: pyiron/actions/cached-miniforge@update_env_setup
        with:
          python-version: '3.11'


Added draft of bad photocopy augmentation.

Can you show a few examples different images with this effect?

Can you show a few examples different images with this effect?

Sorry i forgot to include them just now. So actually i'm working on the demo in notebook too and here's some examples using enron email dataset:

Right now it' still an early draft, but it should be usable now and it can be further improvised later.

Is there a nice way to make the corners seem more natural? It's too obvious that there are artificial noise patterns applied there; they overlap very clearly in the darkest area. Otherwise these and the ones in the notebook look pretty good. I'd like to see more noise across the whole page though, with some large darker regions.
Merging the PR, we can continue work on the defaults later.

Is there a nice way to make the corners seem more natural? It's too obvious that there are artificial noise patterns applied there; they overlap very clearly in the darkest area. Otherwise these and the ones in the notebook look pretty good. I'd like to see more noise across the whole page though, with some large darker regions.
Merging the PR, we can continue work on the defaults later.

Yup, that's something i will work on in the next update. Right now they are in patches of rectangle shape, and hence causing it to look not natural. Thanks for the feedback.


Inconsistent values in specimen table for object condition

I’m not yet sure why but “False” has suddenly started to be input into the specimen table in the db under object condition:

Can't replicate. Presumed a transient problem going from commit https://github.com/NHMDenmark/Mass-Digitizer/commit/e3e6e96e856bae75ef72ccbb7ab36c0d91d8576f

The string "Needs repair" is added for records having Damaged specimen checked.


feat: use named environments (only "default" for now)

Now the environments would be put in:
pixi/.pixi
└── envs
    └── default
        ├── bin
        ├── ...
        └── prefix  <--- prefix file

I like the change but do we have to think about a migration strategy for existing users / envs?

This will probably also lead to similar problems as https://github.com/prefix-dev/setup-pixi/issues/66 and https://github.com/prefix-dev/setup-pixi/issues/35...

@pavelzw should we make the pixi version part of the cache key? Could that help?

Yeah that would help although latest is not really ideal for caching... we could either get the output of pixi --version or just use the SHA if the downloaded binary

https://github.com/prefix-dev/setup-pixi/pull/67


fix: popover wrapper ref

@kyranjamie sure, previously the wrong ref was used for the onClickOutside hook used here. Any click outside of the trigger would cause the dropdown to be removed, preventing the click of items in the drop down. Now anything clicked within the wrapper itself (holding the list too) will not cause it to close. https://github.com/blockstack/explorer/pull/179/files#diff-034bc34d2aaba7b645a7937c308cb337R188


Toggling from 3D → 2D crashes napari eventually (in presence of visible surfaces layer)

🐛 Bug
Toggling from 3D → 2D crashes napari immediately or after scrubbing
To Reproduce
Steps to reproduce the behavior:

Install the napari-bio-sample-data plugin
Open the sample image '3D nuclei' from the plugin
Switch from 2D → 3D → 2D (and napari will likely crash)
If napari doesn't crash, the image previews won't look right, and scrubbing will cause it to crash soon enough

The terminal only shows that there's a segfault. Here's a link to the error reported by macOS: https://docs.google.com/document/d/1NWTL0edbX0hpWUw7XkR2W5Ajn_tnsuSv69iEVQPRS1Y/edit?usp=sharing.
Expected behavior
I expected to switch to 2D mode and be able to continue using napari.
Environment

napari: 0.4.16
Platform: macOS-12.4-arm64-arm-64bit
System: MacOS 12.4
Python: 3.9.13 | packaged by conda-forge | (main, May 27 2022, 17:00:33) [Clang 13.0.1 ]
Qt: 5.15.4
PyQt5: 5.15.7
NumPy: 1.23.1
SciPy: 1.8.1
Dask: 2022.7.1
VisPy: 0.10.0
OpenGL:

GL version: 2.1 Metal - 76.3
MAX_TEXTURE_SIZE: 16384

Screens:

screen 1: resolution 1800x1169, scale 2.0
screen 2: resolution 3440x1440, scale 1.0

Plugins:

console: 0.0.4
napari-bio-sample-data: 0.0.4
napari-svg: 0.1.6
scikit-image: 0.4.16

I can reproduce this on my M1 mac (12.4, dev branch of napari).
3d mode works but then going back to 2d yields:
fish: Job 1, 'napari' terminated by signal SIGSEGV (Address boundary error)

can also confirm I can reproduce this. I also have more information:
I played around with this data set, there are three layers:
The image layer, a label layer, and a surface layer.
the problem seems to be with the surface layer. when the surface layer is dropped or hidden, any toggling between 3D and 2D does not seem to be problematic. I also noticed the surface layer behaves strangely when being loaded at the beginning in 2D mode.
The root of the problem seems to be with converting the 3D surface layer back to 2D. I am not sure if this problem is specific to this dataset though

the problem seems to be with the surface layer.

Yup, I can confirm this on both live and main.

Here's a simple reproducer:
import napari
from napari.utils.colormaps import label_colormap

import numpy as np

vertices = np.array([[0, 0], [0, 20], [10, 0], [10, 10]])
faces = np.array([[0, 1, 2], [1, 2, 3]])
values = np.linspace(0, 1, len(vertices))
surface = (vertices, faces, values)

viewer = napari.view_surface(surface, colormap="red")  # add the surface

Toggle to 3D and back.

I was able to reproduce this on my Intel mac.
I did some debugging mostly by removing/commenting code to try to identify what is causing this since the crash report could be caused by various things.
I found that commenting out the call to VispySurfaceLayer._on_shading_change in VispySurfaceLayer._on_data_change prevented the crash from occurring. In the reproducing example above Surface.shading will be 'flat', but with 2D display that is ignored. Then we change to 3D, that is used and passed through to vispy. But when we change back to 2D we only try to change the vispy node's shading back to None, which may not actually happen.
I was pretty confident that always setting it None (e.g. by moving that outside of the try block) would fix this bug, but it didn't.
So I'm calling on @brisvag and @alisterburt for some more expertise here, as this might be related to some of the issues described in #3475 and #3494. If one of you or someone else takes over, feel free to reassign this issue.

Uhm... The code above from @psobolewskiPhD does not cause any issues on my machine, even switching between 2d and 3d repeatedly.
Seeing how everyone having the issue is on a mac, and I'm not, my first thought is a problem  similar to what I think @alisterburt had in the past, where an uninitialized value in the shader had different values depending on the platform.
Can somone else not on a mac test this?
@psobolewskiPhD thanks for the report, but I have no clue how to even begin reading it xD

This was fixed by: https://github.com/napari/napari/pull/5642


Making sure changed number of cores is propagated to executor

Performance test reportHPX PerformanceComparisonBENCHMARKFORK_JOIN_EXECUTORPARALLEL_EXECUTORSCHEDULER_EXECUTORFor Each-??-InfoPropertyBeforeAfterHPX Datetime2023-05-10T12:07:53+00:002023-07-26T16:01:37+00:00HPX Commitdcb541576898d370113946ba15fb58c20c8325b292882e838ac8cb30c462f60983dfa3011c9000a2EnvfileClusternamerostamrostamDatetime2023-05-10T14:50:18.616050-05:002023-07-26T12:23:36.914398-05:00Hostnamemedusa08.rostam.cct.lsu.edumedusa08.rostam.cct.lsu.eduCompiler/opt/apps/llvm/13.0.1/bin/clang++ 13.0.1/opt/apps/llvm/13.0.1/bin/clang++ 13.0.1ComparisonBENCHMARKNO-EXECUTORFuture Overhead - Create Thread Hierarchical - Latch-InfoPropertyBeforeAfterHPX Datetime2023-05-10T12:07:53+00:002023-07-26T16:01:37+00:00HPX Commitdcb541576898d370113946ba15fb58c20c8325b292882e838ac8cb30c462f60983dfa3011c9000a2EnvfileClusternamerostamrostamDatetime2023-05-10T14:52:35.047119-05:002023-07-26T12:25:55.233587-05:00Hostnamemedusa08.rostam.cct.lsu.edumedusa08.rostam.cct.lsu.eduCompiler/opt/apps/llvm/13.0.1/bin/clang++ 13.0.1/opt/apps/llvm/13.0.1/bin/clang++ 13.0.1ComparisonBENCHMARKFORK_JOIN_EXECUTOR_DEFAULT_FORK_JOIN_POLICY_ALLOCATORPARALLEL_EXECUTOR_DEFAULT_PARALLEL_POLICY_ALLOCATORSCHEDULER_EXECUTOR_DEFAULT_SCHEDULER_EXECUTOR_ALLOCATORStream Benchmark - Add(=)(=)(=)Stream Benchmark - Scale(=)=(=)Stream Benchmark - Triad(=)(=)(=)Stream Benchmark - Copy(=)=(=)InfoPropertyBeforeAfterHPX Datetime2023-05-10T12:07:53+00:002023-07-26T16:01:37+00:00HPX Commitdcb541576898d370113946ba15fb58c20c8325b292882e838ac8cb30c462f60983dfa3011c9000a2EnvfileClusternamerostamrostamDatetime2023-05-10T14:52:52.237641-05:002023-07-26T12:26:13.988864-05:00Hostnamemedusa08.rostam.cct.lsu.edumedusa08.rostam.cct.lsu.eduCompiler/opt/apps/llvm/13.0.1/bin/clang++ 13.0.1/opt/apps/llvm/13.0.1/bin/clang++ 13.0.1Explanation of SymbolsSymbolMEANING=No performance change (confidence interval within ±1%)(=)Probably no performance change (confidence interval within ±2%)(+)/(-)Very small performance improvement/degradation (≤1%)+/-Small performance improvement/degradation (≤5%)++/--Large performance improvement/degradation (≤10%)+++/---Very large performance improvement/degradation (>10%)?Probably no change, but quite large uncertainty (confidence interval with ±5%)??Unclear result, very large uncertainty (±10%)???Something unexpected…

@hkaiser I can barely reproduce the failing tests, and attaching gdb stops the failures. We will have to get really creative for this one

bors merge


Missing Content in aspnet/webhooks/index.md

Issue description
The document ends like this:

In the following nodes these concepts are described in more details.

There is no content following this sentence. I believe the contents included in aspnet/webhooks/receiving/index.md should be merged in at the end of this document.

Can you provide a URL to the topic?


DCIM and Pictures Backup not working in 2.9.0

Describe the bug
I just setup 2.9.0 and manually fixed the directory setup. I let it resync but now i have the problem that the <lespas home>/Backup/google_pixel 7 pro/ directory is empty, so DCIM and Pictures backup is not working, i can also not find it in the settings of the app anymore.
Sync status: "Last synchronization finished 0 minutes ago."
To Reproduce
Steps to reproduce the behavior:

Setup 2.9.0
Sync

Expected behavior
DCIM and Pictures should be backed up in the <lespas home>/Backup/google_pixel 7 pro/ dir
Smartphone (please complete the following information):

Device: Google Pixel 7 Pro
OS: Android 13, CalyxOS 4.10.1
Version 2.9.0

you mean your old photos or the new ones?

Ah sorry, i discovered i have to click on the gallery and then enable it there, now it is working.
However one detail i just found is it did not start backing up the pictures immediately after i enabled it, i waited about a minute but it did not start. I started it manually in the settings.

I will figure out a way to deal with it without syncing too frequently.


[Experimental] Add tag requirements to jobs

This allows even more ways of restricting which nodes can or cannot work on
which jobs.

Looking good so far, I assume this is still being tested though (hence the 'Experimental' bit).

Yes, this was an experiment at first to see if we can tackle a problem we were having with this. Turns out that works just fine, so I'm removing the [Experimental] from the title again.

Just a couple of comments but other than that I think this is ready to merge.


Homepage: Convert to standard button for carousel slideshow

Changes

Changes next/previous buttons in the carousel slideshow to use standard a-btn CF classes.

Testing

Pull branch, run gulp clean && gulp build
Visit http://localhost:8000/?nhp=True and see that buttons are standard blue buttons.

Screenshots

@contolini

Looks great!


Publish Optuna-Spark Examples

Contributing new examples demonstrating hyperparameter tuning with Optuna on Spark.
Approved by OSRB.

Please remove the private links.

Please remove the private links.

Sorry which links are you referring to? I removed those in the PR description if that's what you meant.

in the PR description

Yes, that's what I mean

change target branch to 24.12

For simplicity, I removed benchmarking scripts and just included a runtime graph comparison. The scripts can be added back in if we feel they're necessary.


Add wallet sync info into Overview page

Resolve #376
Screenshot

the bottom controls are not well positioned

when a new wallet is create also enable auto sync

When the backup now button is visible, it affects the positioning of the controls

clicking on the controls open the wallet info page rather than actually doing the intended job of the controls which is switching the slider

When the backup now button is visible, it affects the positioning of the controls
Clicking backup now from the sync card doesn't show the correct page after trying to leave the wallet info page, clicking the back button on the wallet info page shows the backup checklist

clicking on the controls open the wallet info page rather than actually doing the intended job of the controls which is switching the slider

done


File upload

Hi Sir,
Am not able to create the file at chef server, but able to install the application's ( Git,Java,)
While doing "Berks install" it is fine, but while doing "berks upload" for the same cookbook to upload the file, "it is showing frozen (0.1.0), need your help on this.

Change version of cookbook in metadata.rb file & then do Berks upload
Get Outlook for Androidhttps://aka.ms/ghei36

From: kuncham405<EMAIL_ADDRESS>Sent: Friday, August 10, 2018 11:32:23 PM
To: QT-DevOps/DevOpsIssues
Cc: Subscribed
Subject: [QT-DevOps/DevOpsIssues] File upload (#98)
Hi Sir,
Am not able to create the file at chef server, but able to install the application's ( Git,Java,)
While doing "Berks install" it is fine, but while doing "berks upload" for the same cookbook to upload the file, "it is showing frozen (0.1.0), need your help on this.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/QT-DevOps/DevOpsIssues/issues/98, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ACU0rXM-3CQ6vEH1dzewtrrqZzAy7ZJiks5uPcqvgaJpZM4V4mDy.

i got it sir, thank you


Update link in doc comment

I think the signal11 repo is not maintained anymore, and the libusb one is the current one.

Thank you, forgot to update it in the readme!


Lightmapper: Ensure the atlas is big enough to fit padded UV maps

Fixes #94216
Ensures the lightmap atlas has enough space to fit the padded mesh UV maps.

Tested with my MRP, works as expected, no freeze. Thanks for the fast fix

Thanks!


Delete a Dockerhub secret before attempting to create on during init

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line:
/kind bug
/kind cleanup
/kind design
/kind documentation
/kind failing-test
/kind feature
/kind flake

What this PR does / why we need it:
Deletes a dockerhub secret when it is present. This was noted on our testing on Fedora, where when a cluster was in a state that the init needed to be run again, the dockerhub secret needed to be deleted to proceed.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

/test bootstrap-integration

/test e2e-oai-fedora-34

/lgtm
/test bootstrap-integration

/lgtm

/approve


[BUG] - Converting Code

Hi, i was using the old image_cropper from 'com.theartofdev.edmodo:android-image-cropper:2.8.+'. Now i'm using this new library 'com.github.CanHub:Android-Image-Cropper:4.3.2' but i don't know how to convert this parts of code:
CropImage.activity(picUri)
.setGuidline(CropImageView.Guidelines.ON)
.setAspectRatio(4,3)
.start(getContext(),Add.this);
CropImage.ActivityResult result = CropImage.getActivityResult(data);
Uri image = result.getUri();
Thanks for reading, hope u can help me.

Hey sorry, not providing support for the library until we decide a new responsible, check more on the discussion: https://github.com/CanHub/Android-Image-Cropper/discussions/441

Please check the sample app there are various showcases. We don't have the time to answer usage questions.


Import paths aren't support with go modules

I tried the following while in a repo with go modules enabled:
ko publish github.com/foo/bar/cmd/bar

However I got the following error:
2020/02/05 13:44:28 failed to publish images: importpath "github.com/foo/bar/cmd/bar" is not supported

I can work around it by doing:
GO111MODULE=off ko publish github.com/foo/bar/cmd/bar

However, this is not intuitive and it does not respect the given version found in my go.mod file.

This works for me:
~/go/src/github.com/google/ko $ ko publish github.com/google/ko/cmd/ko
2020/02/05 12:50:30 Using base gcr.io/distroless/static:latest for github.com/google/ko/cmd/ko
2020/02/05 12:50:31 Building github.com/google/ko/cmd/ko
2020/02/05 12:50:41 Publishing gcr.io/jonjohnson-test/ko/ko-099ba5bcefdead87f92606265fb99ac0:latest
2020/02/05 12:50:44 Published gcr.io/jonjohnson-test/ko/ko-099ba5bcefdead87f92606265fb99ac0@sha256:63956909652a580a46264674ecb8bec8ed64e0c2e7aca2c547920001cef6a12d
gcr.io/jonjohnson-test/ko/ko-099ba5bcefdead87f92606265fb99ac0@sha256:63956909652a580a46264674ecb8bec8ed64e0c2e7aca2c547920001cef6a12d

There are some caveats though. With go modules, we don't have a global root for searching for modules anymore, so we first check to see if we're in a go modules project via:
$ go list -mod=readonly -m -json

Then we check to see if the path matches what's in your go.mod file here with a simple prefix heuristic.
That generally works, but you might be hitting https://github.com/google/ko/issues/106

Does your example only work then because you are building ko from the ko repo?

Yes -- if your current working directory is using go modules, we assume that go.mod file essentially as your go root. Building a different project used to work because we could assume it's at a specific place on your GOPATH. With modules, we can't rely on that.
I think my initial PR would fall back to GOPATH to look for a package, but we decided that would be confusing: https://github.com/google/ko/pull/60#commitcomment-34289161
If you have a reasonable use case for it, I'm not opposed to it. When we implemented support for go modules, we weren't really sure how people were using modules with multiple repos.

I think my expectation was similar to when I use the go tool. Every command (e.g., test, build), downloads the necessary packages listed in go.mod file. I suppose it would also need to be able to utilize the vendor directory.

This seems like something we could support in strict mode where we know a given string represents a go package, but without it this would probably be too expensive.
ko publish arguments are also a strong enough signal we could assume they're packages and do the right thing here.

I pushed the simplest thing I could imagine to try to fix this, but I haven't tested it extensively... want to give https://github.com/google/ko/pull/139 a try?

Hm, it didn't seem to help.
I'm still getting the same error.

I think I'm mixing three related but not quite exactly the same issues...
I just pushed https://github.com/google/ko/pull/139/commits/bc8f1172b262f749f72a388db7a3aa5de90482c3 which would fix your issue with ko publish (I think), but wouldn't work if you try to ko apply something that references a repo not on your GOPATH. Doing that would be a bit more work, but would you expect it to work?

It seems to get further however I still get an error:
$ cat go.mod
module github.com/x/x

go 1.14

require github.com/google/ko v0.4.0 // indirect

$ ko publish github.com/google/ko/cmd/ko
2020/03/11 22:41:24 Using base gcr.io/distroless/static:latest for github.com/google/ko/cmd/ko
2020/03/11 22:41:27 Building github.com/google/ko/cmd/ko
2020/03/11 22:41:42 failed to publish images: error building "github.com/google/ko/cmd/ko": unmatched importPackage with gomodules


Not all links generate

In my test world, somefin else should have a link from refrance but doesn't.

I’ve made a few improvements locally but am still having the issue. It looks like only one entity’s links are saved.
It’s correct in the local game object, for all users, but it’s not persisted to the .db file. This means a “fix” is to wait for everyone to be connected to the server and sync every time you play. This is a bad fix.
Improvements I’ve made that don’t seem to have any effect (but which we’re still important to make)

await all calls to setFlag to avoid race conditions
call game[entityType].get(id).setFlag(...) instead of on the local entity in case it’s acting on a locally cached object rather than the reference (I don’t think this was an issue, but now it’s definitely not)
duplicate the array of ids when setting, as Foundry compares by reference and was saying “oh this is the same object, I won’t save”

The last one seems to be what the issue is, as it explains why it’s fine in the game object but not in the database. It still wasn’t working, but I have a few different ways to approach it (I’ve just been busy the past few days)


I want to know how focus mechanism works

@andyxiaoxi
see the source code.
Or please see https://flutter.dev/community for resources and asking questions like this (or Stack Overflow).
Closing, as this isn't an issue with Flutter itself
Thank you


[wip] Allow this bundle to be installed with Symfony3

Please note that while the code does support Symfony 3, the templates aren't updated for the new profiler and web dev toolbar in Symfony 2.8 and 3.0.

You should check the profiler_markup_version variable like this:
{% set profiler_markup_version = profiler_markup_version|default(1) %}

{% if profiler_markup_version == 1 %}
    {# ... markup for the old Profiler #}
{% else %}
    {# ... markup for the new profiler #}
{% endif %}

:+1:

+1
With the recent update of symfony 2.8 LTS stable release, i got 9000 deprecation warnings per page because "scope" parameters beeing used by this module.
This PR solve the problem for symfony 2.8, please merge. For the moment, i've to disable Elao/WebProfilerExtraBundle because the 9000 warnings make my dev environment too slow

@WouterJ I will create an other PR with the new template


support for multiple services to be added for a backend.

Rancher Version: cattle build from lbrefactormetadata from https://github.com/alena1108/cattle.git
Steps to reproduce the problem:
Create Lb service with following host name routing rules:

When trying to reach LB ip using hostname header - "www.abc1.com" and path "/service1.html" , traffic is routed only to instances from service - test950297 and not to instances from service -test591785
Expected Behavior:
LB ip should redirect traffic to instances from both the services.

Perhaps point "www.abc1.com" with path "/service1.html" to another load balancer that points to the two separate services...?

@francoishill that would be ideal. But we should still support the use case when user wants to place 2 services under the same port/rule

@alena1108 , tested with latest image - alena1108/lb-controller-haproxy - 10ca4310e14f.
LB is able to direct traffic to instances from 2 different services. But I see few of the backends missing in haproxy cinfiguration resulting in some hostname routing rules giving "503 Service Unavailable" error.

haproxy configuration is missing configuration for www.abc2.com as well as www.abc4.com.

Tested with Rancher Version: latest cattle build from lbrefactormetadata from https://github.com/alena1108/cattle.git
Hostname routing rules get applied correctly when there are rules that direct traffic to instances from 2 different services.


Fix compatibility when kmod module_directory includes /usr

Currently on merged-usr systems, modules are copied into the initrd with a prefixed path of /usr, no matter the system path. This means that modules are copied into the wrong place, e.g /usr/usr/....
Fix this by ensuring the module destination path has a prefix of /usr, rather than always prefixing the destination path with /usr.
Fixes: #194

Argh so yeah I just tried older kmod and things work fine.

Argh so yeah I just tried older kmod and things work fine.

If i'm not mistaken you only chagned the title of this PR not the patch commit message ?

@sjoerdsimons I didn't push.


Need webhook for Rocket.chat

Description
There's default webhook for Slack or some.
needed for Hook for Rocket.Chat. (another Slack clone for own server.)

https://github.com/gogits/gogs/issues/2834
Ah Closed Issue. Sorry


add WASO as variable in part5

Currently, wake after sleep onset (WASO) is reported as its subcomponents in part5, but not as a variable on its own. It may be good to include this or clarify better in the variable names variables can be used as WASO.

I have decided not to do this, because:

I am trying to minimize the number of variables in general
Part 5 is mainly intended to facilitate 24-hour behavior analysis. WASO relates more to sleep analysis (part4).
Whether it is WASO depends on what sleeplog the user relied on. I think it is better for users to dive into it themselves and make the decision about what to call WASO.


Mention MariaDB in README?

There appears to be a check for MariaDB in the code, however MariaDB is not mentioned in the README.md - would it make sense to add a mention of MariaDB? Maybe add MariaDB to CI tests too?

I'm open to accept a PR for this as long as it comes with a sufficient set of CI tests to ensure that everything works as described in the README.

@weiznich , @robertsilen asked for a bit of help and I got this going:
https://github.com/grooverdan/mysqlclient-sys/actions/runs/9381010934/job/25829294150
MySQL macos 13,14 default - this is a lack of bindings. While it looks like these tests where there before I changed them to actually MySQL rather than the brew install of MariaDB. Is generating those bindings easy or should I just skip the test? (note I don't have a macos to do it).
MariaDB macos 14, default, buildtime_bindgen  - this is a bumped 11.2 version -  this is failing to link to ssl. Do you know if this is usually determined by pkgconfig for something else?
MariaDB windows 2022 - its failing to link to mysqlclient.lib as the Windows MariaDB client library is mariadbclient.lib. Do you know how to do this properly in rust build.rs as my attempts have failed.
I think I need to drop MariaDB bundled tests as they aren't tested anything additional to what the MYSQL bundled where.
The last two tests where testing different client libraries against different MariaDB container versions. I could go from a MySQL client libraries of Ubuntu to a MariaDB server as a test. I think this has more value.
Suggestions welcome.
The current diff is: https://github.com/sgrif/mysqlclient-sys/compare/master...grooverdan:mysqlclient-sys:master?expand=1

Thanks for looking into this. This looks already not bad.

MySQL macos 13,14 default - this is a lack of bindings. While it looks like these tests where there before I changed them to actually MySQL rather than the brew install of MariaDB. Is generating those bindings easy or should I just skip the test? (note I don't have a macos to do it).

I think we already have bindings for these version, we "just" need to fix the version detection here:
https://github.com/sgrif/mysqlclient-sys/blob/4026e260399d236b9adbbde9b82d16ab3edafdab/build.rs#L139-L155
It seems like the reported package version is literally 21 or 23 in these cases and we expect something that starts with 21. or 23. there. Might be as simple as adding a version == "21" (or 23) there to match the right version. It still would be helpful to check that the generated bindings match what's in the bindings directory. You can do that by locally executing the bindgen command from here on a macos system with that version installed: https://github.com/sgrif/mysqlclient-sys/blob/master/DEVELOPMENT.md

MariaDB macos 14, default, buildtime_bindgen - this is a bumped 11.2 version - this is failing to link to ssl. Do you know if this is usually determined by pkgconfig for something else?

I think I had a similar failure somewhere in the CI before and it went away by setting up pkgconfig correctly. Not sure what's wrong there. It should pickup the correct dependencies.

MariaDB windows 2022 - its failing to link to mysqlclient.lib as the Windows MariaDB client library is mariadbclient.lib. Do you know how to do this properly in rust build.rs as my attempts have failed.

That's coming from here: https://github.com/sgrif/mysqlclient-sys/blob/4026e260399d236b9adbbde9b82d16ab3edafdab/build.rs#L49-L50
I think there is no real good solution here, other than introducing a MARIADB_LIB_DIR environment branch that just sets the right lib name.

I think I need to drop MariaDB bundled tests as they aren't tested anything additional to what the MYSQL bundled where.

That's fine

The last two tests where testing different client libraries against different MariaDB container versions. I could go from a MySQL client libraries of Ubuntu to a MariaDB server as a test. I think this has more value.

If possible I would rather not use docker containers there, just use whatever dbms (mysql/mariadb) is easiest to install for each OS. Should be fine to just test against that. After all we are more interested in the client libraries here.

The current diff is: https://github.com/sgrif/mysqlclient-sys/compare/master...grooverdan:mysqlclient-sys:master?expand=1

I think I would prefer if the actual test jobs were the same for all variants, as that makes it easier to update the these checks.

Fixed by #49


Create a bookinfo catalog app with istio config

Create a bookinfo catalog app with istio config
Users should be able to change the weight in catalog answers

Created a chart https://github.com/loganhz/bookinfo-chart


Typescript compilation error when using BotBuilder-Azure package

Issue Description
When building bots using NodeJS and typescript, including botbuilder-azure reference to include Cosmos DB for storage causing build issues.
Packages used
"botbuilder": "^3.13.1",
"botbuilder-azure": "^3.0.4"

Code Example
import * as builder from 'botbuilder';
import * as azureState from 'botbuilder-azure';

Reproduction Steps

Create a new Node JS project
Use typescript to create the main files
Include the packages and import the packages to the main file
Running tsc causing compilation errors

Expected Behavior
No typescript compile errors.
Actual Results
import { ConnectionOptions, ConnectionConfig } from "tedious"; is missing in the type definition file and is causing compilation errors.
node_modules/botbuilder-azure/lib/botbuilder-azure.d.ts(252,49): error TS2304: Cannot find name 'ConnectionConfig'.
node_modules/botbuilder-azure/lib/botbuilder-azure.d.ts(259,43): error TS2304: Cannot find name 'ConnectionOptions'.

I have the same issue. Can anyone please help? Thanks!

Duplicate of https://github.com/Microsoft/BotBuilder-Azure/issues/38.

Sorry for the painfully long time it took to get #55 merged... It has finally been merged and there is a new release (3.1.0) out.


Add_Datashader

Working on adding datashader capabilities into ipyradiant.
Main Changes:

Created base.py as a base class for vis code. Then created separate classes for datashader and ipycytoscape that inherit from VisBase.
In datashader.ipynb there is just a high level use of datashader and how one might be able to choose between ipycytoscape and datashader for what kind of graph they use. I just used the example schema file that Nick mentioned.
In datashader_experimenting.ipynb is me trying to figure out how to get callbacks from the datashading stuff. So far all I can do is use Holoview's Tap via streams to get the x/y coordinates of the clicked upon point, but since this is not attached to the actual point it is not useful. Still trying to figure out the best way to do this..
All the dependencies for holoviews, datashader, bokeh should be included in the setup files for this PR.

TODO:

[x] Datashader Test
[x] Callbacks for Datashader for Selected Edges, Selected Nodes (edges in a future PR)
[x] Update drawio architecture for the visualization classes
[x] Add layout selector widget

BINDER LINK ^

BINDER LINK ^

Added a note to update the drawio architecture diagram to include the new class names and links.

In lieu of review, here's a sub-pr:
https://github.com/lnijhawan/ipyradiant/pull/1

In advance of a review, here's a sub-pr:
lnijhawan#1

Things to discuss with nick/zach..

should tools.py tools be included in drawio architecture?
go over documentation/make sure up to par

FUTURE TODO's/Additions:

make it so vis box output always stays the same between switching layout modes
get the TypedTraits to work with URIRefs, do I need to wrap the URL's in a URIRef so that works, or is it fine as is?

Hey, green is good! Anything you want eyes on here?

On binder, I'm getting:
Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing

it's possibly due to the nasty thing we're doing to capture the hvplot branding output, investigating.
Checking it out locally as well to see what's up, but would consider this a blocker.

On binder, I'm getting:
Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing

it's possibly due to the nasty thing we're doing to capture the hvplot branding output, investigating.
Checking it out locally as well to see what's up, but would consider this a blocker.

Not getting this on binder for me.

In the future, lets add examples to the index.ipynb and use index.ipynb as the binder link for PRs. The PR description can reference which examples should be checked. I'll add the datashader and cytoscape examples to the index when I update the screencast for the new release.

Running again with better network...

I'll handle the merge conflicts from merging #29...

yeah, definitely seeing this, even with better network:

@nrbgt Didn't realize that was a console error. I may have gotten it too...

so at some point, we dropped the import of the hvplot stuff...  gotta get that back in, somewheres... will dig around through history

binder/local/ci is a-building... key difference was hv.extension("bokeh", logo=False)

Didn't realize that was a console error.

yeah, many things are very noisy in the console... the issue is that the datashader vis was not actually showing. hotpatching in binder made it work, so am pretty confident this will go through...

Boo windows fail. Will do some more looking.

Binder's back up, though, looks great!

Windows issue was under-specified channels. I've replaced them with fully-qualified URLs and things are looking ok. I forgot to fire up the binder before my call, but have kicked it off, and will continue my review there...


Extension issue

Issue Type: Bug
Extension Name: vsliveshare-audio
Extension Version: 0.1.85
OS Version: Windows_NT x64 10.0.18363
VSCode version: 1.47.2

{
	"messages": [],
	"activationTimes": {
		"codeLoadingTime": 12386,
		"activateCallTime": 0,
		"activateResolvedTime": 12,
		"activationReason": {
			"startup": true,
			"extensionId": {
				"value": "ms-vsliveshare.vsliveshare-audio",
				"_lower": "ms-vsliveshare.vsliveshare-audio"
			},
			"activationEvent": "*"
		}
	},
	"runtimeErrors": []
}

Duplicate of #3721
Thanks for reaching out. Can you give us more details about your scenario? what is the issue ? Also, your logs may provide us with helpful information. You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to #3721 .


Potential Flicker With CSS

Parents can style component children via the :host selector. But for a nested component, it's possible for that to apply to the component prior the stylesheet being moved into the child's Shadow DOM. Ex:
h1 Foo
x-bar
  style:include "./x-bar.styl"

If there's an h1 selector in x-bar.styl it may affect the parent h1 Foo element. Once x-bar renders, the style element will be moved into its Shadow DOM and so the element might visibly flicker.

One solution would be to introduce a faux selector that gets replaced (or just removed) when copied to the child's Shadow DOM. This will prevent it from being applied to the parent provided it's applied to each selector (which is the requirement now for using :host).


Remove Dark Sky (again)

Dark Sky was bought by Apple and is no longer available to third parties.
This was removed in https://github.com/public-apis/public-apis/pull/1206 but inadvertently put back in https://github.com/public-apis/public-apis/pull/754

Thanks for the contribution @davidwengier.


Generated service clients don't support Blazor

We get the following error when constructing a JsonClient:

System.PlatformNotSupportedException: System.Net.Http.HttpClientHandler is not supported on the current platform.

I modified ModelGen to generate a new constructor for service clients that accepts an HttpClient parameter.  You should be able to simply pass the client you get from Blazor:
https://docs.microsoft.com/en-us/aspnet/core/blazor/call-web-api?view=aspnetcore-3.0
The new code does compile and my modelgen unit tests are passing but I haven't actually tested this with a Blazor app.


Blacklist revoked tokens

Currently there is only one way to logout the user: Remove the jwt on client side and therefore a logout-now is not possible atm.
Storing the refresh token in the token will solve this problem, e.g:
{
  "username": "user123",
  "exp":<PHONE_NUMBER>,
  "origIat":<PHONE_NUMBER>,
  "refresh_token": "2ffee69532059e3569cf69f47d611e670b8fc0b5"
}

When a token gets revoked we add the token to the django cache:
cache.set(refresh_token.token, refresh_token.created + JWT_REFRESH_EXPIRATION_DELTA)
In the authentication backend we just check if the token is in the cache:
def authenticate(self, request=None, **kwargs):
        if request is None:
            return None

        token = get_credentials(request, **kwargs)

        if token is not None:
            if cache.get(token["refresh_token"]):
                return None
            return get_user_by_token(token, request)

        return None

What do you think about this?
We also need to build the blacklist cache on startup - a simple manage.py command should do this job

Hi @Speedy1991,
Why not revoke the refresh token when the user logs out?
mutation RevokeToken($refreshToken: String!) {
  revokeToken(refreshToken: $refreshToken) {
    revoked
  }
}

This will only prevent users from using the refresh token to obtain a new token
The problem is mainly with longer running tokens.
They will be still valid to login while the refresh token is revoked. In most cases it's enough to just delete the jwt from the client, but think about compromised/stolen tokens. There will be no way to prevent those from using the jwt

Hi @Speedy1991 and sorry for the delay in my response.
In my opinion, it's not a good idea to include extra data that are not specified in the RFC.
On the other hand, the invalidation of a JWT token is a common problem independent of the refresh strategy.
django-rest-framework-jwt has some tickets related to this topic:
https://github.com/GetBlimp/django-rest-framework-jwt/issues/385

I close the issue, if you have any questions please let me know.


Remove broken environment url

What
Removes the /environment url as it is no longer required or functional (Issue #157)
How to test

Check out the branch and run the app
Visit http://localhost:5000/environment
Verify you see the appropriate 404 error page

Who can test
Anyone except @weapdiv-david

Looks good but fails code style (unused import) and needs rebasing to master


Fixed Positioning of ContextMenu

Dynamic Position of context-menu depending upon the position of the click on the screen.
Fixes #
Before the context menu moved out of the screen on clicking on corners or at certain places.

Describe the changes you have made in this PR -
Added check conditions for the location of the click on the screen and rendering positioning of context-menu accordingly.
Screenshots of the changes (If any) -

Note: Please check Allow edits from maintainers. if you would like us to assist in the PR.

Coverage remained the same at 84.731% when pulling 803ec3e57144db6969a2f16f9011135f31d434c4 on devartstar:DynamicPositionContextMenu into 4c1e0050bf03e047ab97fdad003e1fe12800a00e on CircuitVerse:master.

@tachyons @satu0king can you please review this PR ....
continuous-integration/appveyor/pr - is failing due to mimemagic
codeclimate - is failing due to Function showContextMenu() having Cognitive Complexity of 7


modified readme

Pull request must have been closed before completetion of jenkins job. Please check

Pull request must have been closed before completetion of jenkins job. Please check

Pull request must have been closed before completetion of jenkins job. Please check


TerraformDocs: Update Variable and Output Descriptions

ensure variables/outputs in code have "description" blocks properly describing the variable.
Remove the old, manually, generated variable/output documentation from the README
Leave what is between the
<!-- BEGIN_TF_DOCS --> and <!-- END_TF_DOCS --> alone

finished with OC work


DataProtocol inputs in Compression overlay

Accept DataProtocol conforming types instead of Data as inputs in the Compression overlay.

Resolves SR-10244

The memory fix is coming from https://github.com/benrimmington/swift/tree/sr-10244
The number of reported errors has been reduced to only two, and the naming simplified as proposed in SR-10244. The compression.h header itself can't be changed.

@swift-ci Please smoke test

The new error cases might be clearer as invalidState and invalidData.
I've just realized that __nullable is the old syntax:

Nullability Attributes in Clang
Nullability and Objective-C

Could you try the following? I don't know if source compatibility would be an issue.

_Null_unspecified for the dst_ptr and src_ptr (imported as implicitly unwrapped optionals).
_Nullable for the state (as before, but using the new syntax).

DataProtocol is still a dependency on Foundation, but there isn't a better option at the moment.

Would it be better to put that part in the Foundation overlay and have Foundation grow a dependency on Compression, at least for now?

Yes, invalidState and invalidData are much better. Thanks.

@swift-ci Please smoke test

@swift-ci Please smoke test

Should internal or private APIs have leading underscores?

compression_stream.init(_operation:algorithm:)
OutputFilter._process(finalizing:)
InputFilter._InputFilterBuffer

Should enums have @available(macOS 9999, ...)?

Should enums with var rawValue conform to RawRepresentable?

Will OutputFilter be generic, for its _writeFunc closure?

Can InputFilter have generic readData<D: MutableDataProtocol>(ofLength:) method?

To avoid confusion with _eofReached, could _endReached be renamed to _finalized?

Return type of _writeFunc and writeFunc should be Void, rather than ().

FWIW, these are my thoughts...

Should internal or private APIs have leading underscores?

They are already internal/private. It is a matter of personal style preferences whether to use underscore for private members. I can probably find examples of both styles in the codebase. There are a few internal/private fields that are underscored, so I agree the styling is a bit inconsistent.

Should enums have @available(macOS 9999, ...)?

Yes. Every declaration that is introduced by the overlay should have this availability annotation (or at least every new top-level declaration, since nested ones will inherit the availability).

Should enums with var rawValue conform to RawRepresentable?

I don't know much about the usage of these APIs, so can't judge. RawRepresentable will make the enums convertible to and from the C constants. Right now the conversion is unidirectional.

Will OutputFilter be generic, for its _writeFunc closure?

writeFunc needs to be passed something, and that something should be constructed. Unless I'm mistaken, DataProtocol does not allow constructing instances out of nothing. Does it? It could be possible to construct a Data instance as it's done now and then convert it to the type that _writeFunc would expect...

import Foundation

struct Stream<D: MutableDataProtocol> {
  typealias WriteFunc<T: MutableDataProtocol> = ((T)?) throws -> Void
  var writeFunc: WriteFunc<D>

  init(writingTo: @escaping WriteFunc<D>) {
    self.writeFunc = writingTo
  }

  func process() {
    let data: [UInt8] = [1,2,3] // can be Data or any other Sequence of bytes.
    try! self.writeFunc(D(data)) // <-- this line would copy
  }
}

func writingData(_: Data?) throws { print("Written as data") }
func writingArray(_: Array<UInt8>?) throws { print("Written as array") }

_ = Stream(writingTo: writingData).process()
_ = Stream(writingTo: writingArray).process()

This solution however make an unnecessary copy of data (in a call to D's initializer, inherited from RandomAccessCollection).
Do you have something else in mind?

Can InputFilter have generic readData<D: MutableDataProtocol>(ofLength:) method?

Doing it will make a function generic over its return type, so the type of let x = s.readData(ofLength: 42) would become ambiguous. There is a convention to add an extra parameter to the function to specify type explicitly, like let x = s.readData(ofLength: 42, as: Data.self). This will not be ambiguous, but the implementation of this function, as in the item above, will have to construct the value of type D somehow. Copy and all...

To avoid confusion with _eofReached, could _endReached be renamed to _finalized?

I don't see why not, if you believe it helps readability.

Return type of _writeFunc and writeFunc should be Void, rather than ().

It's just a different spelling of the same thing, isn't it?

@swift-ci Please smoke test

Do you have something else in mind?

@moiseev The generic OutputFilter class would have another stored property.
-public class OutputFilter {
+public class OutputFilter<D: MutableDataProtocol> {

+  private var _outData: D

   public init(

+    _outData = D.init()
+    _outData.reserveCapacity(_bufCapacity)

There doesn't appear to be a withUnsafeMutableBytes method, so it would use:
     // Write output
     if writtenBytes > 0 {
-      let outData = Data(bytesNoCopy: _buf, count: writtenBytes, deallocator: .none)
-      try _writeFunc(outData)
+      let bytes = UnsafeMutableBufferPointer(start: _buf, count: writtenBytes)
+      _outData.removeAll(keepingCapacity: true)
+      _outData.append(contentsOf: bytes)
+      try _writeFunc(_outData)
     }

I don't know if the above would actually work; and only a few types conform to MutableDataProtocol (compared with DataProtocol).

@ebainville I don't think deinit should call finalize() because the user might have cancelled the operation.
OutputFilter could be more consistent with InputFilter if there wasn't a public finalize() method, and the only way is to call write(_:) with a nil (or empty) argument. What's the reason for supporting both nil and empty?
Could you require ContiguousBytes instead of DataProtocol for a simpler implementation? The user would have to manually iterate the DispatchData and NSData regions.

@ebainville I don't think deinit should call finalize() because the user might have cancelled the operation.

The operation can't be cancelled. The C API also requires finalize to be passed to the process calls.

OutputFilter could be more consistent with InputFilter if there wasn't a public finalize() method, and the only way is to call write(_:) with a nil (or empty) argument. What's the reason for supporting both nil and empty?

Decompression can figure out the end of the stream from the compressed data, and doesn't need finalize. nil was added later; it doesn't hurt to have both.

Could you require ContiguousBytes instead of DataProtocol for a simpler implementation? The user would have to manually iterate the DispatchData and NSData regions.

DataProtocol is the preferred input protocol, even if we have to add some boilerplate code inside our overlay.

@swift-ci Please smoke test

The operation can't be cancelled.

By "cancelled", I mean that for example the caller of the OutputFilter.write(_:) method may have encountered a network or file-system error, and is unable to provide more data. When the output filter is released later, it would be surprising if the _writeFunc closure is then called again with a nil argument. The deinit has an unexpected (and possibly unwanted) side effect.

Decompression can figure out the end of the stream from the compressed data, and doesn't need finalize.

Yes, you included this detail in your WWDC video. If we consider only the compression of raw data:

an OutputFilter(.compress, using: .lzfse) has two ways to finalize: by calling either write(nil) or finalize().

an InputFilter(.compress, using: .lzfse) has only one way to finalize: by returning nil from the _readFunc closure.

It doesn't hurt to have two ways to do something, but the finalize() method seems unnecessary to me.


Presto GUI prompts for Client certificate after enabling HTTPS

After enabling HTTPS for Presto on trying to access the GUI on HTTPS link the browser prompts for a client certificate. Can this be addressed ?
Thanks,
Ravi

duplicate of https://github.com/prestosql/presto/issues/3649

@tooptoop4 thanks, my fault
@DRavikanth thanks for reporting the issue, let's continue under https://github.com/prestosql/presto/issues/3649


examples/components-macos app not working

The ./examples/components-macos app launches, but it doesn't seem to respond to any user events - mouse clicks on to the other menu items don't do anything, and the welcome screen is blank:

grr, is this on Mojave or Catalina?

Mojave 10.14.6

Same on High Sierra 10.13.6


LHN - Long pressing chat does not show "Copy Onx Data" on all platforms

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Found when validating #https://github.com/Expensify/App/pull/45079
Version Number: 9.0.7-4
Reproducible in staging?: y
Reproducible in production?: no, new feature
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: applause internal team
Slack conversation:
Action Performed:

Access New Expensify app
Sign into a valid account (Beta enabled)
Long press on LHN

Expected Result:
User expects to see the option "Copy Onx Data" in popup menu
Actual Result:
User can not see this option on iOS and Android app
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[ ] Android: mWeb Chrome
[x] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos

View all open jobs on GitHub

From the PR, this is behind a beta and dev/staging only, so I don't think it's a Web blocker, or even really a App blocker.

Adds a new field for the context menu that allows to quickly copy onyx data of any report from the LHP for staging, dev and internal build environments.

CC: @puneetlath @sobitneupane @cdOut @war-in

This is not a blocker as it does not affect production and is only enabled for staging / dev and internal builds.

@m-natarajan did this happen on staging only? It seems like the conditional for checking the environment might have failed for some case there.

@m-natarajan bump on this Q!

Second on the bump, I tried reproducing this one but I wasn't able to, were you testing this one on the emulators or using a physical device?

@trjExpensify @cdOut Yes on staging only, I am using physical device (iPhone Xs, App version 9.0.11-0) and able to reproduce.

Could you see whether it also happens for you when running on emulators?

@cdOut  Applause QA never uses emulators.

Alright, I'll test it on a physical device and see if I can replicate it then. Thank you for clearing that up!

@m-natarajan has this been tested using an internal build or a staging build?

From the screenie in the OP, it's a staging build:

@sobitneupane needs paying here for the C+ review.
Payment summary as follows:

$250 for the C+ review

Go ahead and request!

$250 approved for @sobitneupane


Confirmed:  explicit support for rclone is in production at rsync.net

(I am referencing a note from nickcw on HN, as well as some old chatter here, in github issues...)
We (rsync.net) have deployed the rclone binary to all of our production servers - the rsync.net cloud storage platform can now be used as a target / source / etc. for rclone operations.
We operate a very stock/standard OpenSSH deployment and your transport is going to be over SSH.  You have full control over your own .ssh directory, including authorized_keys, so you can lock access to 'rclone' or even a specific 'rclone --arguments'.
One caveat is that we have disallowed 'rclone serve' and 'rclone mount'.  I would appreciate any comments from anyone here as to how significant those restrictions are ... 'rclone serve' is definitely out, but we're considering how we might (safely, securely) offer 'rclone mount' - it would be nice to know how common a use-case that is, or if most people are happy to 'rclone mount' from their local location.
AMA ...

We (rsync.net) have deployed the rclone binary to all of our production servers - the rsync.net cloud storage platform can now be used as a target / source / etc. for rclone operations.

:-)
Would you like rsync.net to be listed as a supported cloud provider on https://rclone.org/ ?
This could link to the docs page for sftp or for a paragraph on how to set up rclone with rsync.net if you want.
Would you consider a reciprocal link back to rclone.org? (Not a requirement for the above!)

One caveat is that we have disallowed 'rclone serve' and 'rclone mount'. I would appreciate any comments from anyone here as to how significant those restrictions are ... 'rclone serve' is definitely out, but we're considering how we might (safely, securely) offer 'rclone mount' - it would be nice to know how common a use-case that is, or if most people are happy to 'rclone mount' from their local location.

How do you run rclone on an rsync.net account?  Do you ssh in and run it, or run it via an ssh exec?  Or via some kind of web user interface?
I would say that for the business of transferring files about then rclone mount and rclone serve aren't necessary.  It could conceivably be useful to allow users to mount their google drive and copy files out if it like that, however using rclone copy or rclone sync is more efficient.
I'll note that you should probably disable the --rc-serve feature or maybe disable the --rc entirely if rclone serve is undesirable.

Would you like rsync.net to be listed as a supported cloud provider on https://rclone.org/ ?
This could link to the docs page for sftp or for a paragraph on how to set up rclone with rsync.net if you want.

Yes, thank you - that would be great - could you simply add "rsync.net" to your alphabetical list of providers on the rclone/github pages ?  Would you like us to write some examples (or anything at all) for that page ?
We are polishing an rclone-specific signup page on our end and it will certainly have prominent links back to the main project and github pages, etc.
One very helpful hint that you might add to the SFTP docs page is changing this line:
"Note that some SFTP servers will need the leading / - Synology is a good example of this."
to:
"Note that some SFTP servers will need the leading / - Synology is a good example of this.  rsync.net, on the other hand, requires users to OMIT the leading /.

How do you run rclone on an rsync.net account? Do you ssh in and run it, or run it via an ssh exec? Or via some kind of web user interface?

No web interface - our storage arrays run nothing but OpenSSH and have no ports open other than 22.  So we simply created a rclone binary executable for FreeBSD and placed it into our (very stripped, secured) environment - you just run it over SSH without logging on interactively.
Do you not have a free test account ?  I think you should have one - please email<EMAIL_ADDRESS>so we can give you one.

I'll note that you should probably disable the --rc-serve feature or maybe disable the --rc entirely if rclone serve is undesirable.

I believe this is already the case but thank you for emphasizing that.

OK, here is the rclone-specific signup page at rsync.net:
https://www.rsync.net/products/rclone.html
and it does indeed have links back to both the rclone main site and the github repo.

Would you like rsync.net to be listed as a supported cloud provider on https://rclone.org/ ?
This could link to the docs page for sftp or for a paragraph on how to set up rclone with rsync.net if you want.

Yes, thank you - that would be great - could you simply add "rsync.net" to your alphabetical list of providers on the rclone/github pages ? Would you like us to write some examples (or anything at all) for that page ?

What I normally do is have a link to your main website plus a link to the docs on the relevant backend page.
This can either go to the main page or to a paragraph of text like this one in the webdav backend.
So if you've got some preferred text for that, that would be super!  Some hints on how to set rclone up with sftp would be useful.  If rsync.net has a set of fixed endpoints, these could appear in the examples for ease of use.

We are polishing an rclone-specific signup page on our end and it will certainly have prominent links back to the main project and github pages, etc.

:-)

One very helpful hint that you might add to the SFTP docs page is changing this line:
"Note that some SFTP servers will need the leading / - Synology is a good example of this."
to:
"Note that some SFTP servers will need the leading / - Synology is a good example of this. rsync.net, on the other hand, requires users to OMIT the leading /.

OK I've done that.

How do you run rclone on an rsync.net account? Do you ssh in and run it, or run it via an ssh exec? Or via some kind of web user interface?

No web interface - our storage arrays run nothing but OpenSSH and have no ports open other than 22. So we simply created a rclone binary executable for FreeBSD and placed it into our (very stripped, secured) environment - you just run it over SSH without logging on interactively.

Oh I see, very nice!

Do you not have a free test account ? I think you should have one - please email<EMAIL_ADDRESS>so we can give you one.

I have done so.

I'll note that you should probably disable the --rc-serve feature or maybe disable the --rc entirely if rclone serve is undesirable.

I believe this is already the case but thank you for emphasizing that.

When I get the free test account I'll do a quick security review for you.
How much effort was it patching rclone to remove the features you don't want?  It would be possible to make build tags to make that easier so you could do rclone build -tags noserve,norc,nomount or something like that.

Yes, thank you - that would be great - could you simply add "rsync.net" to your alphabetical list of providers on the rclone/github pages ? Would you like us to write some examples (or anything at all) for that page ?

What I normally do is have a link to your main website plus a link to the docs on the relevant backend page.

Understood.  For the link to the main website, use this rclone link:
https://rsync.net/products/rclone.html
For now, since we don't have anything written to hand to you for the rclone site itself, could the "doc" icon just point to the SFTP "doc page" that already exists ?  It makes sense because it is a stock, standard SFTP implementation ... later we can make an actual rsync.net page with examples, etc., for your rclone.org page.

When I get the free test account I'll do a quick security review for you (on the things built into rclone).
How much effort was it patching rclone to remove the features you don't want? It would be possible to make build tags to make that easier so you could do go build -tags noserve,norc,nomount or something like that.

We use a stock, standard rclone binary - nothing custom about it.  However we have a very special, custom built shell that has a commands whitelist in it - and those particular rclone --arguments are not in the whitelist, so they just fail.  Custom built tags not necessary, but thank you :)

Yes, thank you - that would be great - could you simply add "rsync.net" to your alphabetical list of providers on the rclone/github pages ? Would you like us to write some examples (or anything at all) for that page ?

What I normally do is have a link to your main website plus a link to the docs on the relevant backend page.

Understood. For the link to the main website, use this rclone link:
https://rsync.net/products/rclone.html
For now, since we don't have anything written to hand to you for the rclone site itself, could the "doc" icon just point to the SFTP "doc page" that already exists ? It makes sense because it is a stock, standard SFTP implementation ... later we can make an actual rsync.net page with examples, etc., for your rclone.org page.

Sure that is fine.

When I get the free test account I'll do a quick security review for you (on the things built into rclone).
How much effort was it patching rclone to remove the features you don't want? It would be possible to make build tags to make that easier so you could do go build -tags noserve,norc,nomount or something like that.

We use a stock, standard rclone binary - nothing custom about it. However we have a very special, custom built shell that has a commands whitelist in it - and those particular rclone --arguments are not in the whitelist, so they just fail. Custom built tags not necessary, but thank you :)

Ah ha!  Do you restrict environment variables too? you can configure rclone with environment variables too...

Ah ha! Do you restrict environment variables too? you can configure rclone with environment variables too...

Yes.  An rsync.net account is not a general purpose shell (although it appears to be, and you can run many different UNIX commands over ssh[1]) and the restricted shell we provide has env vars locked down.
[1] https://www.rsync.net/resources/howto/remote_commands.html

I think we can mark this as closed - I am announcing it more broadly here:
https://twitter.com/rsyncnet/status/1143567793801113602
... and would appreciate it if you could retweet.  Other than that, thank you for your help and guidance - I really am excited that we have this in place and we are actively developing "recipes" for doing useful things with rclone inside an rsync.net cloud storage account (hence my question about gmail export in your forum...)
Cheers!

I've retweeted that :-)
Thank you for the test account.  I'm working on a patch to rclone so it supports the md5 and sha1 commands that are available.  rclone is only trying the md5sum and sha1sum binaries at the moment, so sftp transfers to rsync.net are missing out on hash checking.
Also I'll get rclone about working calling the quota command.  (At the moment it calls df which isn't available).