Wrong output for flax.linen.Conv + jax.pure_callback in jit-ed function on GPU

Description
Not quite sure if this is a Flax or a JAX issue. I filed the same bug also here; see comments therein.
On multi-GPU (I'm using 8 GPUs), the linen.Conv layer gives wrong outputs in a jit-ed function where the parameters are selected within a jax.pure_callback function.
The error does not replicate on CPU, and it does not appear without jax.pure_callback.
I paste here a minimal code snippet reproducing the issue.
from typing import Any

import jax.numpy as jnp
from flax import linen as nn
from jax import random, pure_callback, jit

class Model(nn.Module):
    output_dim: int = 10
    dtype: Any = jnp.float32

    @nn.compact
    def __call__(self, x):
        x = nn.Conv(
            features=6,
            kernel_size=(5, 5),
            strides=(1, 1),
            padding="valid",
            dtype=self.dtype,
        )(x)
        x = nn.Dense(features=self.output_dim, dtype=self.dtype)(x)
        return x

if __name__ == "__main__":
    model = Model(10)
    dict_params = [model.init(random.PRNGKey(0), jnp.zeros((1, 28, 28, 1))),
                   model.init(random.PRNGKey(1), jnp.zeros((1, 28, 28, 1)))]

    def fun():
        params = pure_callback(lambda i: dict_params[i], dict_params[0], 0)
        return model.apply(params, jnp.ones((1024, 28, 28, 1)))

    print(jit(fun)().mean(), jit(fun)().mean())
    # 0.13688925 0.13688925
    print(fun().mean(), fun().mean())
    # 0.079618014 0.079618014

The correct output is 0.079618014. However, when the function is jitted, this gives the wrong output 0.13688925.
I've got no idea why this is happening, but this is currently hindering my development. Could you please look into it?
Thank you very much!
What jax/jaxlib version are you using?
jax = "^0.3.23" jaxlib = {url = "https://storage.googleapis.com/jax-releases/cuda11/jaxlib-0.3.18+cuda11.cudnn805-cp39-cp39-manylinux2014_x86_64.whl"}
Which accelerator(s) are you using?
GPU
Additional system info
Linux
NVIDIA GPU info
No response

Thanks for raising this. Sorry for the numerics bug.
I wonder if https://github.com/google/jax/pull/13084 will fix this.

@gianlucadetommaso could you try working from github HEAD, and patching that PR?
Actually you may be able to do pip install --upgrade git+https://github.com/google/jax.git@test_485737242 to install jax from that branch.

@levskaya I think the error makes sense, you are passing a tracer into the lambda via a capture, test_case_2 should be like this:
def test_case_2(dict_params):
    params = pure_callback(lambda ds, i: ds[i], dict_params[0], dict_params, 0)
    return test_fn(params, jnp.ones((1024, 28, 28, 1)))

 Complete Code
import jax
import jax.numpy as jnp
from jax import random, pure_callback, jit, lax

keys = random.split(random.PRNGKey(1), 2)

dict_params = [{'c_w': random.normal(keys[0], (5, 5, 1, 6))},
               {'c_w': random.normal(keys[1], (5, 5, 1, 6))}]

dn = lax.conv_dimension_numbers((1024, 28, 28, 1),
                                (5, 5, 1, 6),
                                ('NHWC', 'HWIO', 'NHWC'))
def test_fn(params, x):
  y = lax.conv_general_dilated(x,
                               params['c_w'],
                               window_strides=(1,1),
                               padding='valid',
                               lhs_dilation=(1,1),
                               rhs_dilation=(1,1),
                               dimension_numbers=dn,
                               feature_group_count=1,
                               batch_group_count=1)
  return y

def test_case():
    # causes numerical difference when jitted:
    params = pure_callback(lambda i: dict_params[i], dict_params[0], 0)
    # no numerical difference when jitted:
    # params = dict_params[0]
    return test_fn(params, jnp.ones((1024, 28, 28, 1)))

print(jnp.mean(jnp.abs(jit(test_case)() - test_case())))  # 6.0820947

# variant: explicitly passed input leads to a tracer error at pure_callback:
def test_case_2(dict_params):
    params = pure_callback(lambda ds, i: ds[i], dict_params[0], dict_params, 0)
    return test_fn(params, jnp.ones((1024, 28, 28, 1)))

print(jnp.mean(jnp.abs(jit(test_case_2)(dict_params) - test_case_2(dict_params))))

The other version of Jax appears to fix the issue:
ip install --upgrade git+https://github.com/google/jax.git@test_485737242
https://colab.research.google.com/drive/1k9qynITvJLgHgjKWam8yfLLOwXh5mEm1?usp=sharing

This was fixed by the new version. Closing the issue.


ci/tests: Change the way artifacts are collected

We want to be able to safely gather any artifacts without worrying about
any possible secrets leaking. Every artifacts that we want to upload
will now have to be placed in /tmp/artifacts which will then be uploaded
to S3 by the executor and link to the artifacts will be provided in the
logs. Only people with access to our AWS account will be able to see the artifacts.
This pull request includes:

[ ] adequate testing for the new functionality or fixed issue
[ ] adequate documentation informing people about the change such as

[ ] submit a PR for the guides repository if this PR changed any behavior described there: https://www.osbuild.org/guides/

I've made it a bit better. The script now uploads anything in the $ARTIFACTS folder to S3 and you can set your own $ARTIFACTS env var if needed otherwise it will default to /tmp/artifacts.
The $ARTIFACTS directory is created in provision.sh which is sourced in every test script AFAIK so it should be fine, CI should discover any issues with it.
I've also dropped the encryption of journal and some db dump in api tests because these artifacts are only accessible after logging it to the image-builder AWS account so it should be safe there and easy for us to read if needed.

But what's the advantage of having it in s3 vs an encrypted tarball in gitlab?

IMO it's much easier to access because you can just open it in your browser and look at it instead of downloading it, decrypting and then looking at it.
And if it's all in S3 where only our team has access we don't have to worry about leaking any secrets.

Also should we be putting it in /tmp? Unsure how big some of the artifacts get. This is probably not a concern.

Yeah I didn't think of that, I hope there won't be any issues with it, we can always change it later if it becomes a problem.


new build warnings of 2017-06-29

I skip the "defined but not used" and "visibility" warnings and the "maybe-uninitialized".
The interesting ones:
`osTWbuild.log:[   38s] /home/abuild/rpmbuild/BUILD/FreeRDP-master/libfreerdp/core/update.c:2159:3: warning: implicit declaration of function 'update_free_window_icon_info'; did you mean 'update_free_window_state'? [-Wimplicit-function-declaration]
osTWbuild.log:[   47s] /home/abuild/rpmbuild/BUILD/FreeRDP-master/channels/drive/client/drive_file.c:187:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
osTWbuild.log:[   48s] /home/abuild/rpmbuild/BUILD/FreeRDP-master/channels/drive/client/drive_main.c:869:13: warning: passing argument 1 of 'drive_free' from incompatible pointer type [-Wincompatible-pointer-types]
`
osTWbuild.log_20170629.zip
Builds are done with the latest master of 2017-06-29 for different openSUSE versions; 32 and 64 bit.
For details see the attached log.

@hendwolt what compiler was used?

@bmiklautz
gcc in different versions (from 4.8 to 7.1).

All the "interesting" warnings are fixed with today's master (2017-07-24).

@hendwolt thanks for testing.


Add convenience functions/classes

What
Alongside the generated trait views, add common convenience functions:

filePathFromUrl / filePathToUrl - to ensure a consistent URL encoding scheme for file system paths (e.g. considering UNC paths, where there is no consensus).
...?

There is non-trivial work to add static code to these packages and single-source it. So it might be prudent to consider whether any of these could be justified in living in OpenAssetIO itself.


Cannot See Atom Window with macOS 10.13.6

Prerequisites

[ X] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: https://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: https://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
Atom will startup but fail to load any windows when trying to use the program. This issue occurs both in safe mode and normal. I have downgraded to 1.27.2 where atom works fine again. Potentially a problem with the latest electron upgrade or the fact that I am using macOS 10.13.6 as the issue was noticed around the time the OS was updated.
Steps to Reproduce

Open atom
Applications boots but no windows are visible. I have tried opening files and using the command line to reset the view but to no prevail
Behaviour is repeated in safe mode
I have tried all three versions of 1.28 without any success

Expected behavior: [What you expect to happen]
Can see the editing screen
Actual behavior: [What actually happens]
App boots but no screen loads, repeated in safe mode. Unable to use software
Reproduces how often: [What percentage of the time does it reproduce?]
All the time, the application now unusable.
Versions

1.28.0
1.28.1
1.28.2

This is the second time I have posted this as the issue was closed with no success. Please let me know what other information I can provide to help replicate the bug.

Could you give us the output of running atom --foreground with any of the 1.28.0 releases?

I'm having the same issue (i'm quite a novice with this stuff so sorry if it doesn't help). I've installed the shell commands, with atom open i've run the atom --foreground command in terminal but get no output - a new instance of atom opens in the launcher but immediately shuts - no windows visible.

@daneuesden - what version of Atom did you install (does atom -v work?) and what version of macOS are you running?
Also, did you try safe mode or temporarily resetting to factory defaults?
You mentioned that you installed the shell commands so just to clarify, Atom worked for you at some point but then stopped working?

@rsese - atom -v does work, output below;
Atom    : 1.29.0
Electron: 2.0.5
Chrome  : 61.0.3163.100
Node    : 8.9.3

Actually i've also noticed this is on 1.29 build whereas this issue is 1.28.
I'm running Mac OS version 13.10.6.
I've not tried safe mode or temp. resetting factory defaults but will do and get back to you.
Atom worked prior to the 13.10.6 release but since the OS upgrade it's opened but no windows show as initially reported.

Atom foreground yields the same results for me as @daneuesden. An instance of atom loads but no visible window appears. This is with:

Atom    : 1.29.0
Electron: 2.0.5
Chrome  : 61.0.3163.100
Node: 8.9.3

It looks like slightly different in both cases though since @elvinos for you atom --foreground doesn't exit (based on your screenshot) but it does in @daneuesden's case?
Do either of you see any crash reports?
https://flight-manual.atom.io/hacking-atom/sections/debugging/#find-crash-logs
@elvinos in your case, is there a dock item active for Atom after you start it?  And can you cmd-tab to the application and see the menu bar?

@rsese I don't see any crash reports, Atom doesn't actually crash per-se. The dock icon is still active in the launcher window (and menu bar is visible) and is theoretically running with no problem but you can't see any of the windows.
Screenshot of console.app report list for reference;

@rsese I don't see any crash reports, Atom doesn't actually crash per-se. The dock icon is still active in the launcher window (and menu bar is visible) and is theoretically running with no problem but you can't see any of the windows.

@daneuesden - is the menu bar completely visible with "File, Edit, View", etc.?  Can you do things like File > New Window and the window is listed under the Window menu item?

@rsese yes that's correct. I can see the full menu bar. Opening a new Windows lists it in the dock icon. Not explicitly looked in the window menu though

Opening a new Windows lists it in the dock icon.

Hmmm, similarly is there anything in the Window menu that would indicate that a window is open @elvinos @daneuesden?  If you click on Window > Zoom does that bring up any window?

Oh one more thing - when you start Atom, do you notice any Atom-related entries in /var/log/system.log?  There's one or 2 issues a while back where there actually was useful information there.

Ahhh great, thanks for confirming @daneuesden :+1:  Based on the description, it sounded like things were working but the windows were just not visible for some reason.  @elvinos @marco-brandizi - can you try the suggestion above and see if that helps?

That's https://github.com/atom/atom/issues/12508 @jrtibbetts but you did find the the pull request opened to resolve that issue if you want to subscribe there.

@rsese, nope, I initially see the main windows, but then there are a lot of menu items and other actions (About, Licence, reopen last project folder, drag&drop files from Finder) that don't yield any action.

After clicking the Zoom button in the menu bar, the problem seems to have been resolved.
It is strange how trying just about anything else seem to have no effect in making the windows visible.
Anyway thanks Team Atom for the help!

Glad that solved the issue for you!  I think we should keep this issue open though in case there's a regression in Atom causing this problem.

@juliauser - that sounds like a different issue than what's reported here.  Go ahead and open a new issue and fill out the issue template and we can take a look.

@rsese

I have a similar. I am running on a Mac os 10.14.2 and I cannot open any window in Atom. The only thing that appears in the menu bar is 'Atom'. And if I select it, I only see 'Quit'.
Any help? Thanks

Same problem.
Atom    : 1.35.1
Electron: 2.0.18
Chrome  : 61.0.3163.100
Node    : 8.9.3
In macOS High Sierra 10.13.16
kaos:~/ $ atom --foreground                                                                                [20:15:13]
2019-03-18 20:16:42.498 Atom[1115:98628] Syntax error on line 4, column 15: Unexpected IdentifierLiteral
2019-03-18 20:16:42.499 Atom[1115:98628] SyntaxError: Syntax error on line 4, column 15: Unexpected IdentifierLiteral
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:214:13)
at Value (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:97:12)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at addProperty (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:147:15)
at Array.reduce (:null:null)
at Obj (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:140:28)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at Value (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:97:12)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at addProperty (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:147:15)
at Array.reduce (:null:null)
at Obj (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:140:28)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at Value (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:97:12)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at addProperty (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:147:15)
at Array.reduce (:null:null)
at Obj (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:140:28)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at Value (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:97:12)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at addProperty (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:147:15)
at Array.reduce (:null:null)
at Obj (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:140:28)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at Value (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:97:12)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at Block (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:94:12)
at transformNode (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:216:12)
at Object.parse (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/cson-parser/lib/parse.js:222:16)
at parseObject (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/season/lib/cson.js:42:23)
at parseContentsSync (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/season/lib/cson.js:68:16)
at Object.readFileSync (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/season/lib/cson.js:180:14)
at getConfig (/Applications/Atom.app/Contents/Resources/app.asar/src/main-process/start.js:117:33)
at start (/Applications/Atom.app/Contents/Resources/app.asar/src/main-process/start.js:47:18)
at Object. (/Applications/Atom.app/Contents/Resources/app.asar/src/main-process/main.js:62:1)
at Object. (/Applications/Atom.app/Contents/Resources/app.asar/src/main-process/main.js:64:3)
at Module._compile (module.js:642:30)
at Object.Module._extensions..js (module.js:653:10)
at Module.load (module.js:561:32)
at tryModuleLoad (module.js:504:12)
at Function.Module._load (module.js:496:3)
at Object. (/Applications/Atom.app/Contents/Resources/electron.asar/browser/init.js:186:8)
at Object. (/Applications/Atom.app/Contents/Resources/electron.asar/browser/init.js:188:3)
at Module._compile (module.js:642:30)
at Object.Module._extensions..js (module.js:653:10)
at Module.load (module.js:561:32)
at tryModuleLoad (module.js:504:12)
at Function.Module._load (module.js:496:3)
at Function.Module.runMain (module.js:683:10)
at startup (bootstrap_node.js:196:16)
at bootstrap_node.js:622:3

@jucavi - your issue looks different since you're getting an error and the problem of the initial report was resolved by zooming the window.
Also, your screenshot shows the command was run as atom --save, it should be atom --safe.  If atom --safe doesn't help, I'd suggest temporarily resetting to factory defaults.
If you still have trouble after that, feel free to post on the official message board and @ mention me there and we can take a look together.

If you click Window->Zoom it comes back.

Just FYI I'm on MacOS Mojave -- 10.14.3 with
Atom    : 1.35.1
Electron: 2.0.18
Chrome  : 61.0.3163.100
Node    : 8.9.3
I was still getting this problem. The zoom trick kinda worked, as in it opened the current project only, not other open projects and you had to do it every time to opened the project. Also, reopen project did not work at all, not even with the zoom trick. I had to open the project again and then click zoom. Reopen + zoom did nothing. However the zoom trick gave me access to preferences and updates again and after running updates of installed packages Atom seems to work fine again. If I'd known that would happen I'd have paid more attention to what packages were updated and be able to tell you...but I didn't. All I can tell you is there were 8 of them. If it happens again I'll pay more attention, but if this works for others maybe they can too.

I faced same issue. But I was able to fix it by following below steps:

Go to View > Show all tabs

This will pop up all the tabs. Then you can use Atom normally.
Thanks!
Arun

I observed that the window size of atom had been reduced so much that it couldn't be noticeable or open.
You can go to views -> Toggle Full screen and then resize the window again.

Thanks rsese, that was the same problem I had. Strange that the window size would be reduced so much.
A preventive fix for Mac users is: Changing the dock settings to "Double-click a window's title bar to: Minimize" [instead of Zoom].
For one can [when that setting is set to zoom, which I think is the default] [and when Atom is active and the window should be visible], simply double click 2 % from the bottom of the screen in the far left corner, and that has the same effect as pressing "Window -> Zoom". Then double clicking on the title bar, once again reduces window size to being nearly being invisible.
I think that is actually how most people originally got this problem; that they at some point accidentally or intentionally double clicked the title bar of an Atom window. But if they had other windows active still, I think whenever they open a file in Atom, the new file might often be loaded to that visible window. Not until they - possibly days or weeks later - close that visible window, will new files opened with Atom load to that former "open" window, which is currently 99.9 % hidden in the far left bottom corner of the screen. Although not actually random, it's is perceived as random.

Hi, I had the same issue. The issue fixed when i changed the System Settings in Display from 'Scaled' to 'Default for this display'
MacOS: 10.14.6 Mojave
Atom    : 1.42.0
Electron: 4.2.7
Chrome  : 69.0.3497.128
Node    : 10.11.0

I've just experienced this issue on the latest version of atom (1.44.0) - Window -> Zoom fixed...

same issue, same fix :)
It seems the windows settings are saved. Not even a restart could fix it.

same issue, same fix :)
On macOS 10.15.3 (19D76) with Atom:
Atom    : 1.44.0
Electron: 4.2.7
Chrome  : 69.0.3497.128
Node    : 10.11.0

Tried above, If you click Window->Zoom it comes back. it worked, actually if you look carefully in left bottom of screen, the window is minimized there, you can try manually resize.
Not sure why it suddenly becomes so small, probably a bug

Tried above, If you click Window->Zoom it comes back. it worked, actually if you look carefully in left bottom of screen, the window is minimized there, you can try manually resize.
Not sure why it suddenly becomes so small, probably a bug

Same here Atom v 1.44.0 x64
Mac Os X 10.15.3 (19D76)

Same here.
Window is shrunk to literally just a few pixels, almost off-screen, on the left side.  Perhaps related to switching between internal/external monitors?
atom 1.45.0
macOS 10.14.6

Same problem. Fixed with Zoom.
atom 1.45.0
macOS 10.15.3 (19D76)

Same here- window>Zoom fixed it for me as well.

The same, Zoom fixed the issue for me, thanks!

Same issue, Window → Zoom “fixes” the problem
Started today.

Catalina 10.15.3
Intel Iris Graphics 6100 1536 MB
Atom 1.45.0

I have been struggling with atom not opening for 6 months and the zoom button fixed the problem. Thank you!

After clicking the Zoom button in the menu bar, the problem seems to have been resolved.
It is strange how trying just about anything else seem to have no effect in making the windows visible.
Anyway thanks Team Atom for the help!

Mojave 10.14.6
Intel Iris Graphics 6100 1536 MB
Atom 1.45.0
Started on the full system crash while atom being in full screen at 2nd monitor.
Ok please can someone do the thing for updating help page on atom.io, I delete every thing for nothing (applet, setup), because there are missing information about the "ZOOM" button tricks on Debugging

This is definitely related to having multiple monitors and connecting/disconnecting them with Atom running.  Note that the window is still there, it's just horribly shaped.  In my particular case, it ends up being a ~10x2 pixel shape on the left side of the window:

That little smudge on the left? Yup, that's the Atom window.  It's also the default size for new atom windows, so they all just pile up right there.  Here's what happens when I activate Expose:

For the record, I am using only one monitor and this just happened to me, and Zoom fixed it.
% atom -v Atom    : 1.47.0 Electron: 5.0.13 Chrome  : 73.0.3683.121 Node    : 12.0.0

I also have been plagued by the "invisible windows" bug. The "Zoom" trick however didn't always work for me. I noticed thanks to https://github.com/atom/atom/issues/17727#issuecomment-630958312 that there is still a small sliver of the windows visible. I was able to grab the edge and re-expand the windows. This will probably be my workaround for now.
Almost exclusively, I use my computer with an external monitor and the clamshell closed. I rarely use it with the clamshell open.

2 years later and the issue is still present... Zoom fixed it, though.
For the record:
d.diaz@danieldiaz-ltm aws % atom -v && sw_vers
Atom    : 1.49.0
Electron: 5.0.13
Chrome  : 73.0.3683.121
Node    : 12.0.0
ProductName:	Mac OS X
ProductVersion:	10.15.6
BuildVersion:	19G73

My case: it has happened before on windows, today is the first time it happens on mac (mini 2014 Mojave).
What I tried: quit, reopen, hide/show window, open a new window, open a file, create new file, go to settings... nada, problem remains
This solved the issue: from the file menu, open a file in dev mode, window is still not showing up so I just quit then reopen and the new window appeared!
Hope it helps.

@clean-code-charlie thanks, your workaround worked for me on MacBook Pro 2012 on Mojave 10.14.6

My case: Turns out that when I doubled click the Window's header bar, it minimized the window down into a 10x10px in the bottom 0,0 of my screen (left, bottom). I have a dark background and didn't see it. It was also in some kind of Full Screen mode, but wasn't full screen.
I dragged to resize the window.
Closed it with the red x.
Closed Atom.
Re-opened and was able to reproduce with -v 1.53.0.
Applied the same fix, and all is fine now, but I can't double click on the window bar.
I ended up using a Window manager from Setapp called Mosaic to fix the window problem

I've been using Atom for 4 years and had this problem..
Window -> Zoom fixed it..
I feel stupid, I was using Visual Studio for a few days with none of my confgis set up,
and nearly started using it until I found this thread..
Seems like a trivial problem with big consequences that could possibly easily be fixed?..

For me this happened because I had symlinked ~/.atom/ to a location, which I then moved. I just had to recreate the link to fix it.

Lost enough time on this between yesterday and today I almost stopped using atom. Window > Zoom works, but this is insane.

This caught me out today, think I did double click the top bar, saw the animation for the window zooming down to the bottom left corner but didn't realise what it was at the time. Problem persisted even after restarting the app and the whole machine. hitting zoom fixed it. Perhaps change the default zoom down setting to just half size the screen instead of shrinking it to nothing?
Mac Os 10.15.4
Atom    : 1.53.0
Electron: 6.1.12
Chrome  : 76.0.3809.146
Node    : 12.4.0

MacOS - 10.15.7
Atom    : 1.53.0
Electron: 6.1.12
Chrome  : 76.0.3809.146
Node    : 12.4.0
Clicking around a lot and window zoom brings it back. But it's slow and disruptive to recover.

For me, the Zoom option is disabled... I am using macOS 11.0 Beta.
Atom : 1.53.0
Chrome : 87.0.4280.88

Most of the options on here didn't show for me, but after a lot of trying, one of the suggestions pointed me to the right answer.  I think under View (can't remember now), there is an option to toggle developer mode.  After doing that, quit Atom, and reopen Atom.  Fixed!

Most of the options on here didn't show for me, but after a lot of trying, one of the suggestions pointed me to the right answer.  I think under View (can't remember now), there is an option to toggle developer mode.  After doing that, quit Atom, and reopen Atom.  Fixed!

The only thing that worked for me was starting atom with atom --clear-window-state

The only thing that worked for me was starting atom with atom --clear-window-state

I eventually succeeded. Read on.
Versions:
Atom    : 1.54.0
Electron: 6.1.12
Chrome  : 76.0.3809.146
Node    : 12.4.0
Mac OS X: 10.15.7 (19H2)

So I installed Atom as follows:

Download (clicked link on home page and it knew it was for Mac OS X)
Had Mac open download with archive utility
Dragged the Atom file to the Applications folder
Started up Atom (once with Find, and once with app launcher)
Atom was basically dead... no window, no menus with Command Pallette. Nothing
Tried it twice.
New terminal window revealed nothing when testing

$ which atom
$ atom
-bash: atom: command not found

Quit Atom

SUCCESS: Then I went to Finder and to the Applications folder.

I double-clicked the Atom file
Atom opened in all of its glory.

$ which atom
/usr/local/bin/atom

Just happened to me as well. Dual monitor but was in single monitor and rebooted.
Catalina 10.15.7
Atom 1.54.0
Zoom worked.

Same here
Catalina 10.15.7
Atom 1.54.0

Had the same error for a long time. Checked this issue, tried zoom and it worked.
Atom: 1.55.0
Catalina 10.15.7

Seeing the same issue on Catalina 10.15.7. Zoom does fix it. It would be nice to not have to crawl google and read through all the comments on this issue to get a workaround. I almost stopped using Atom because of this issue.

Seeing the same issue on Catalina 10.15.7. Zoom does fix it. It would be nice to not have to crawl google and read through all the comments on this issue to get a workaround. I almost stopped using Atom because of this issue.

Same. Was very close to dumping it. Very frustrating.

Tested on BigSur 11.2.3 and Atom 1.56 x64. Thank goodness for the Zoom that fixed it so I can see the windows again but was freaking out when windows disappeared. Be nice to get this fixed.

Seeing the same issue on Catalina 10.15.7. Zoom does fix it. It would be nice to not have to crawl google and read through all the comments on this issue to get a workaround. I almost stopped using Atom because of this issue.

Same, went a couple of days before seeing this thread. Zoom worked. I was a few minutes away from switching editors. I think this is a UX defect, though I'm not sure what exactly the solution is.

Seeing the same issue on Catalina 10.15.7. Zoom does fix it. It would be nice to not have to crawl google and read through all the comments on this issue to get a workaround. I almost stopped using Atom because of this issue.

Same, went a couple of days before seeing this thread. Zoom worked. I was a few minutes away from switching editors. I think this is a UX defect, though I'm not sure what exactly the solution is.

Not sure what is going, as it stands I am getting tired of OS X been having too many issues with Bluetooth with my MX keyboard/mouse and AirPods. It's exhausting...I even switched to the darn dongle and still having issues.

Slightly off topic but wanting to leave here since it's startup related. I noticed recently opening and closing a lot of text files, that Atom takes way too long to start. A text editor should be light. With a performant M1 Mac, and SSD etc I'd expect Atom to be quite snappy, currently ~7 full seconds from double clicking a small text file to seeing the contents. Are there things that can be loaded after the fact so that the initial file open doesn't have to take so long? Doesn't seem to be a problem with default text editors or Sublime, for example... which open files almost instantaneously.

Same issue, Window → Zoom “fixes” the problem
Started today.

Catalina 10.15.3
Intel Iris Graphics 6100 1536 MB
Atom 1.45.0

It is OK for my Mac, Big Sur 11.5.1

Still an issue. Just faced it today and found that little line that was zoomed out Atom window thanks to this thread

Still occurring:
~ % atom -v
Atom    : 1.58.0
Electron: 9.4.4
Chrome  : 83.0.4103.122
Node    : 12.14.1

Not update available.
Zoom fixed.

Still the same issue? zoom option not available. is there any other fix to this issue?

i keep seeing this issue in Atom (1.58) and Macos Monterey 12.1 .
I struggle to show the windows and if i close and reopen Atom , everything is still hidden and the only way to fix it is either use Window -> Zoom and close the windows one by one or Force Quit through MacOs.
Is there any issue open on this yet?
Thank you

Same issue with Mac OS Catalina and atom 1.59.0.
I see on the left bottom of the screen a barely visible lines, when hovering over one of the lines, I can resize this line to a bigger window.

I see the same issue on Mac Monterey

 Still the same issue? zoom option not available. is there any other fix to this issue?

also seeing this on Montery.

The 'zoom' button saved my day.
If anyone else observing this in Mac, please try that.
Kudos to one who mentioned that here.

Just in case if anybody is stuck on this problem as well.
My problem was that Atom window wasn't showing as well and the zoom option was disabled.
I was so frustrated that I couldn't find any other solutions until from the discussions above I realised I haven't tried all the solutions yet.

To tryout my solution(I high suggest this for anybody who is still stuck on this problem):

Right click on the app icon
Click on 'Options'
Make sure it's not assigned to None if so, then changed it
Use rm -rf ~/.atom sudo open -a Atom command to open it again
It solved my problem and Atom was working correctly.
Anyway, this solution will probably work. Another thing that you can probably try was 'toggle developer tools', which might help.


Add support for customEvents

Are there plans to get this implemented?

Until the OpenTelemetry specs have been finalized around how to send event telemetry, we are suggesting users to use the custom events extension in the meantime to send customEvents to app insights.


Installation works, however, starting errors

root@fusionpbx-dev:~/FreeSwitch-DataDog-Metrics-master# python --version
Python 2.7.16
root@fusionpbx-dev:~/FreeSwitch-DataDog-Metrics-master# /etc/init.d/fsmetrics start
Starting server
Traceback (most recent call last):
File "/usr/share/python-daemon/fsmetrics.py", line 9, in
from daemon import runner
ImportError: No module named daemon
Trying to install here, however, receiving this notice.

Apparently python-daemon package on debian didn't install.  It's installed now but I'm receiving:
Traceback (most recent call last):
File "/usr/share/python-daemon/fsmetrics.py", line 159, in
daemon_runner = runner.DaemonRunner(app)
File "/usr/local/lib/python2.7/dist-packages/daemon/runner.py", line 119, in init
app.pidfile_path, app.pidfile_timeout)
File "/usr/local/lib/python2.7/dist-packages/daemon/runner.py", line 304, in make_pidlockfile
lockfile = pidfile.TimeoutPIDLockFile(path, acquire_timeout)
File "/usr/local/lib/python2.7/dist-packages/daemon/pidfile.py", line 40, in init
super().init(path, *args, **kwargs)
TypeError: super() takes at least 1 argument (0 given)


Remove the bionic references

As general housekeeping, we should remove references to bionic stemcells
Acceptance Criteria

[x] GIVEN a bosh director controlled by cg-deploy-bosh, when a director is deployed, remove the bionic references in the runtime config.  Verified via deployment to all bosh directors and running bosh rc and observing a lack of bionic references
[x] GIVEN a pipeline controlled by cg-deploy-bosh, remove bionic-specific releases such as cg-s3-fisma-release, cg-s3-snort-release and cg-s3-awslogs-bionic-release

Security considerations
None, cleanup of no longer used resources
Implementation sketch

[x] Remove bionic references in https://github.com/cloud-gov/cg-deploy-bosh/blob/main/runtime-config/runtime.yml
[x] The script which generates the pipeline jobs to use the older bionic releases is at https://github.com/cloud-gov/cg-deploy-bosh/blob/main/ci/update-runtime-config.sh with the inputs defined at https://github.com/cloud-gov/cg-deploy-bosh/blob/main/ci/update-runtime-config.yml, removed the unused ones:  cg-s3-fisma-release, cg-s3-snort-release and cg-s3-awslogs-bionic-release
[x] Verify with a bosh deps command that none of the underlying removed releases from the previous step are used by the tooling, dev, stage, prod directors
[x] Deploy to master
[x] Deploy to tooling
[x] Deploy to dev
[x] Deploy to staging
[x] Deploy to prod

All three references were removed, as were any references to Bionic.


No error triggering with ExpressReceiver and Lambda when missing OAuth Code

There is no error thrown when there is a missing OAuth code. We want to log all possible errors to Sentry and are unable to record this one through code. Only the error screen is thrown, but not able to find out the function where we would be able to catch this error.

Have these three error handlers setup as well.
Reproducible in:
The Slack SDK version
"slack/bolt": "^3.14.0",

or refer to your package.json
Node.js runtime version
v18.18.0
OS info
ProductVersion:         14.1.1
BuildVersion:           23B81
Darwin Kernel Version 23.1.0: Mon Oct  9 21:28:45 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6020
Steps to reproduce:
(Share the commands to run, source code, and project settings)

Open the link - localhost:3001/slack/oauth_install - without the code parameters
This should show an error screen
This error is not thrown anywhere, not able to catch it by either using middleware or in processEventErrorHandler function

Expected result:
Error should be thrown in processEventErrorHandler
Actual result:
No error thrown anywhere
Requirements
For general questions/issues about Slack API platform or its server-side, could you submit questions at https://my.slack.com/help/requests/new instead. :bow:
Please read the Contributing guidelines and Code of Conduct before creating this issue or pull request. By submitting, you are agreeing to those rules.

Can you share your code to reproduce this?
Note that depending on the app setup, the installation screen may not be managed by bolt (thus why I ask for code to reproduce the issue).

The relevant code blocks are
Express Receiver
  const receiver = new ExpressReceiver({
    app: expressApp,
    signingSecret: config.SLACK_SIGNING_SECRET,
    clientId: config.SLACK_CLIENT_ID,
    clientSecret: config.SLACK_CLIENT_SECRET,
    stateSecret: config.SLACK_STATE_SECRET,
    processBeforeResponse: true,
    scopes: [
      "chat:write",
      "channels:join",
      "channels:history",
      "channels:read",
      "groups:read",
      "groups:history",
      "groups:read",
      "im:history",
      "mpim:history",
      "mpim:read",
      "reactions:read",
      "im:read"
    ],
    logLevel: LogLevel.DEBUG,
    installationStore: new MongoInstallationStore({
      model,
      orgMetaConfigModel
    }),
    installerOptions: {
      directInstall: true,
      installPathOptions: {
        beforeRedirection: async (req, res, opts) => {
          ---
          return true;
        }
      },
      callbackOptions: {
        beforeInstallation: async (opts, req, res) => {
          ----
          return true;
        },
        afterInstallation: async (installation, opts, req, res) => {
          console.log("[SLACK] afterInstallation", installation);
          ---
          return true;
        }
      }
    },
    dispatchErrorHandler: async ({ error, logger, response }) => {
      console.log("[SLACK] Error in dispatch", error);
      CatchError.captureException(`dispatch error: ${error}`);
      response.writeHead(404);
      response.write("Something is wrong!");
      response.end();
    },
    processEventErrorHandler: async ({ error, logger, response }) => {
      console.log("[SLACK] Error in processEvent", error);
      CatchError.captureException(`processEvent error: ${error}`);
      // acknowledge it anyway!
      response.writeHead(200);
      response.end();
      return true;
    },
    unhandledRequestHandler: async ({ logger, response }) => {
      console.log("[SLACK] Unhandled Request");
      CatchError.captureException(
        "Acknowledging this incoming request because 2 seconds already passed..."
      );
      // acknowledge it anyway!
      response.writeHead(200);
      response.end();
    }
  });

Serverless Start Code
import serverlessExpress from "@vendia/serverless-express";

let serverlessExpressInstance;

const startServerlessExpress = async (event, context, callback) => {
  try {
    console.log(
      "[SERVERLESS] Starting Serverless Express with event",
      event,
      context
    );
    const { receiver } = await init();
    //@ts-ignore
    serverlessExpressInstance = serverlessExpress({
      app: receiver.app,
      eventSourceRoutes: {
        AWS_SNS: "/sns"
      },
      logSettings: {
        level: "debug"
      }
    });

    return serverlessExpressInstance(event, context);
  } catch (e) {
    console.log("[SERVERLESS] Error Occurred", e);
    CatchError.captureException(e, {
      data: {
        message:
          "[SERVERLESS] Error Occurred in installation / events handler of Slack"
      }
    });
    callback(e);
  }
};

I also have a slack app initialised for registering listeners, but I dont think this is triggered in OAuth Flow
  const app = new SlackApp({
    signingSecret: config.SLACK_SIGNING_SECRET,
    clientId: config.SLACK_CLIENT_ID,
    clientSecret: config.SLACK_CLIENT_SECRET,
    receiver,
    port: 3001,
    processBeforeResponse: true,
    extendedErrorHandler: true
  });

  const ErrorHandler: ExtendedErrorHandler = async ({
    error,
    context,
    body
  }) => {
    console.log("[SLACK] Error occurred in slack app", error);
    throw error;
  };

  app.error(ErrorHandler);

@daga-segwise This could be indeed confusing, but for OAuth flow error patterns, you can use callbackOptions for it: https://slack.dev/node-slack-sdk/oauth#persisting-data-during-the-oauth-flow The event process error handlers work only for /slack/events requests.

Hey Thanks for the response! I am using callback options, but I dont think this case reaches there. It sends an error before triggering any of the callback functions.


WSL local port can't be accessed by windows following deep sleep

Version
10.0.19044.1889
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
Ubuntu 20.,04
Other Software
No response
Repro Steps
I am not sure it is reliable replicates. Following a deep sleep, I sometimes need to disable and enable wifi interface to get it to work.
Once I do it and reconnect to the internet, It no longer shares ports with the Windows machine.
I am not sure able just reenable of interface .
I also have bridged interfaces related to hyperV.
Expected Behavior
Have ports shared. ie. when listen on WSL on port 9900 , I can connect to it from windows by localhost:990.
Actual Behavior
Ports are not shared
Diagnostic Logs
No response

Do you happen to have "fast startup" enabled? I recall an bug we fixed a long time ago with similar signature.

Yes I do. I turned it off and will report if it happens.


After i stopped the recording manually, file is unusable

I pressed ctrl+c and waited as the instructions said.

[out#0/mp4 @ 0000021ce2fdbec0] Error writing trailer: Immediate exit requestedts/s speed=   1x
frame=137930 fps= 30 q=-1.0 Lsize=   97792kB time=01:16:37.97 bitrate= 174.2kbits/s speed=   1x
video:62025kB audio:35922kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Exiting normally, received signal 2.

ERROR: Interrupted by user
Traceback (most recent call last):
File "C:\TikTok-Live-Recorder\main.py", line 67, in
main()
File "C:\TikTok-Live-Recorder\main.py", line 61, in main
bot.run()
File "C:\TikTok-Live-Recorder\tiktokbot.py", line 45, in run
self.start_recording()
File "C:\TikTok-Live-Recorder\tiktokbot.py", line 55, in start_recording
os.system(f"youtube-dl --hls-prefer-ffmpeg --no-continue --no-part -o {output} {live_url}")
KeyboardInterrupt
^C

The file that was generated can not be played.

Try with vlc
https://www.videolan.org/vlc/

Try with vlc https://www.videolan.org/vlc/

Tried, same results, video can't be played.

https://github.com/Michele0303/TikTok-Live-Recorder/releases/tag/2.3


Adding api_key_required to the route decorator causing an error

I recently updated my API from Chalice 0.6 to Chalice 0.7 and I have an issue deploying it when I add api_key_required=True to the route decorator:

@app.route('/{id}', api_key_required=True)
def index(id):
   # ...

When I try to deploy the API I am getting this error:

An error occurred (BadRequestException) when calling the PutRestApi operation: Invalid Swagger 2.0 input.

If I remove the api_key_required=True part - it works well.

This has been fixed via https://github.com/awslabs/chalice/pull/282

@jamesls got it, thanks!

@jamesls I would like to ask if there is a minor release in the plans? The one that will include the fix.

0.8.0 now has this fix (along with python3 support!)


GQ-27 Exceptions/Dev Manager Commentary

Requires: #194

Ping @0mega and @bliof for feedback 👀

@bliof and @0mega Could you take a look again? 🐧

Hey, @0mega!
I've made several changes the last two days on the pull request. Could you take another look 👀
Thanks!

@bliof Could take a look again 👀


Peer-to-Peer Code review W2 D4

Hello @Nedramrez,
Good job so far with your project.
✅ Following Correct Github Flow.
✅ Good implementation to separate classes into separate files.
Suggestions to do:

[x]  We noticed that you need to import classes into index.js
[ ]  you need to refactor the code using ES6 syntax.
[ ] For display date you should use a library Luxon.

Thank you!


Amboss Magma integration

Could add the ability to sell a magma channel through vortex.
User would create an offer of the round amount, then once it is purchased they would queue up a channel open.
Could add in things like making sure the magma fee is higher the coordinator fee so the user always makes money. Or for remixes they can advertise a lower fee because there is no fee to open the channel

Magma swaps look even more interesting


lsp-request: Object reference not set to an instance of an object with lsp-ui-peek-find-references

Issue
When running lsp-ui-peek-find-reference on any token in a source file I get above error.
Environment

Spacemacs<EMAIL_ADDRESS>emacs:  GNU Emacs 26.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.8) of 2019-04-12
This repo:  commit 4a261428ac3f6eadea3b208c91ae8e1b612a838c
python runtime: 3.6.7 64-bit

We're probably going to need more information than that; since this isn't VS Code, it'd be helpful for you to provide the request that emacs is making, as well as the full exception message with line numbers to know what's null and shouldn't be.

Here it is a callstack from the server side:
   at Microsoft.Python.LanguageServer.Sources.ReferenceSource.ScanClosedFiles(String name, CancellationToken cancellationToken) in /home/kyoncho/Sources/dotnet/python-language-server/src/LanguageServer/Impl/Sources/ReferenceSource.cs:line 123
   at Microsoft.Python.LanguageServer.Sources.ReferenceSource.FindAllReferencesAsync(String name, IPythonModule declaringModule, ILocatedMember rootDefinition, SourceLocation location, DefinitionSource definitionSource, CancellationToken cancellationToken) in /home/kyoncho/Sources/dotnet/python-language-server/src/LanguageServer/Impl/Sources/ReferenceSource.cs:line 72
   at Microsoft.Python.LanguageServer.Sources.ReferenceSource.FindAllReferencesAsync(Uri uri, SourceLocation location, ReferenceSearchOptions options, CancellationToken cancellationToken) in /home/kyoncho/Sources/dotnet/python-language-server/src/LanguageServer/Impl/Sources/ReferenceSource.cs:line 64
   at Microsoft.Python.LanguageServer.Implementation.LanguageServer.FindReferences(JToken token, CancellationToken cancellationToken) in /home/kyoncho/Sources/dotnet/python-language-server/src/LanguageServer/Impl/LanguageServer.cs:line 245

I did some investigation and the issue is caused that for some reason ReadTextWithRetry is failing the temp files that are created by Emacs. We could investigate what is causing that issue or alternatively make the *.py scan pattern configurable.  Let me know what do you think.

Can you provide some sample filenames? We can ignore them, but we can't avoid looking through unopened files when searching for references.
To me, I'd be curious as to why this would fail with an null ref anyway. My first impression would be that the temp files shouldn't be read and cause some IO error, but we catch those.

Probably needs null check on content since ReadTextWithRetry can return null.

Project filenames? If I understand you right here's a sample
Batch.py
batchwrapper.py
Beam.py
Embed.py
floyd.yml
Layers.py
Models.py
Optim.py
Process.py
README.md
start_here.ipynb
start_here.md
starthere.org
Sublayers.py
TODOs.org
Tokenize.py
train.py
translate.py

In case it is worth anything, here is a lsp-log file
https://gist.github.com/df0054dd5b5b38395b3e0ffa11d3f6d2

Of the temp files, I mean.

I am not familiar with that. What would I be looking for?

It's probably the null check, but I had assumed that since you determined that it was emacs temp files causing the issue in ScanClosedFiles and suggested modifying *.py, you knew what the files were called.

Oh dear, I didn't realize there were two people here, not just one, sorry!

Can this be reopened? It is happening again

This project is not in active development. If you are using VS Code, you try Pylance language server.


[AutoPR keyvault/data-plane] use OAV to generate new key vault REST examples

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/2864

(message created by the CI based on PR content)


phongo_bulk_write_error_add_message() refactoring

Use bson_iter_utf8() to avoid extra string allocation and cut back on some extra strlen() calls.

Sorry - I find this much harder to read. I picked up the bson strdup change and reduced the amount of strlen()s though from your patch: https://github.com/derickr/mongo-php-driver/commit/fd356f3fd72dad3f65f9a2aeb13b6c0e3c9aa610
I realise that this isn't the most performant, but as this is an Exceptional situation, that shouldn't matter much.


Refactor block struct

Created a MutableBlock struct which test consensus returns from build methods, and changed Block to have header through an Arc, making it immutable and easy to pass by cloning (w/o another Arc around). This also saves from a full header clone on header processor commit

Addressed some of the items in https://github.com/kaspanet/rusty-kaspa/issues/60


Commit generated changes to diagnostics prefab

Overview
So... that diagnostics window prefab bug still exists. These are the changes Unity generates for some reason without me even touching that prefab. Can anyone make up their mind about this? Is it worth trying to get those merged and see if Unity is finally happy with it?

It's mainly just from being re-serialized when imported.
I have a feeling it's bc of the text mesh pro assets used in the prefab.

True, I am also looking at TMP here. But still I think it should not happen in this way. I mean MRTK has a lot of TMP prefabs doesn't it? Can't remember I'seen these serialization changes happeing over there. Really frustrating since it prevents the projct from building.

With the changes of this PR applied my build succeeds at least.

Nevermind. The same issue reappered even with these changes applied. It keeps regenerating them.


not recognize http://localhost:8080

not recognize http://localhost:8080

@oDaShuTz do you consider localhost to be a domain name?


Fix elasticsearch hybrid rrf window_size

Description
If similarity_top_k is larger than elastic search's default rank.rrf.window_size, it will raise exception. Added window_size depend on query.similarity_top_k instead of default value.
Fixes #8635
Fixes #12179
New Package?
Did I fill in the tool.llamahub section in the pyproject.toml and provide a detailed README.md for my new integration or package?

[ ] Yes
[x] No

Version Bump?
Did I bump the version in the pyproject.toml file of the package I am updating? (Except for the llama-index-core package)

[ ] Yes
[x] No

Type of Change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[x] Added new unit/integration tests
[ ] Added new notebook (that tests end-to-end)
[x] I stared at the code and made sure it makes sense

Suggested Checklist:

[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added Google Colab support for the newly added notebooks.
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[x] I ran make format; make lint to appease the lint gods

Thanks @adrian539859! Last thing: can we update the version (patch) number in the pyproject.toml?


Add dashboard proposal JSON

Closes https://github.com/newrelic/newrelic-prometheus-configurator/issues/47.
For the limited preview we want to provide a way to users to install the new dashboard.

Looking good! i just left some small comments


Windows support

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

Selectors are suggested to take a <two spaces>#<one space>[<expression>] form. See lines [25]

Hmm, need curses

Does fish itself actually have Windows support (outside of WSL)?

Yes with Cygwin


Speed up wait time

I have currently a 30 second sleep period to make sure the page and data is rendered. This is to avoid missing data. Better code would be starting with 5 seconds and then doing a while loop with increasing sleep, until 60 seconds or so.
This would help the overall performance of the code over many places. (It’s important to collect data from each place at least 1x per hour)

Thanks @metebalci !!


Asset caching doesn't restore

Describe the bug
I'm using filesystem-based asset caching in my CI system in conjunction with NuGet-based binary caching (which works fine).  It looks like asset caching is working in so far that the assets are being correctly stored in the specified location, but if there's a binary cache miss the package source is still being downloaded from the public mirrors rather than the asset cache.
In my case I'm zipping up the asset cache dir and pushing to Artifactory at the end of a successful build, and downloading and extracting at the start of the next.  As an example I deleted an openssl package from my NuGet repo, the package was dutifully rebuilt but using the public mirror.
// export X_VCPKG_ASSET_SOURCES="clear;x-azurl,file:///home/jenkins/agent/workspace/streamline-aws/branch-develop/pre-commit/change-364167/build/vcpkg_asset_cache,,readwrite"
Asset cache hit, unzipping to /home/jenkins/agent/workspace/streamline-aws/branch-develop/pre-commit/change-364167/build/vcpkg_asset_cache
Archive:  asset_cache.zip
  inflating: /home/jenkins/agent/workspace/streamline-aws/branch-develop/pre-commit/change-364167/build/vcpkg_asset_cache/637f6d436614a805bb7d8e5dac0fc154896f4e77a51e1bf2d4509779bc412eaff1756dedcc9937490ca21d5bc15c8df6d911cfe9eebce51f80b5ec42a85d4155
...
Attempting to fetch 60 packages from nuget.
Restored 59 packages from NuGet in 28.98 s. Use --debug for more information.
Starting package 1/60: openssl:gatord-armv7-linux-musl
Building package openssl[core]:gatord-armv7-linux-musl...
-- [OVERLAY] Loading triplet configuration from: /home/jenkins/agent/workspace/streamline-aws/branch-develop/pre-commit/change-364167/build/native/gator/daemon/cmake/triplets/gatord-armv7-linux-musl.cmake
-- Downloading https://www.openssl.org/source/openssl-1.1.1l.tar.gz;https://www.openssl.org/source/old/1.1.1/openssl-1.1.1l.tar.gz -> openssl-1.1.1l.tar.gz...

I've also noticed that specifying  x-block-origin; before azurl source makes no difference - the public mirrors are still used.
Environment

OS: Linux in a Docker container
Compiler: n/a

To Reproduce
Steps to reproduce the behavior:

Set the X_VCPKG_ASSET_SOURCES env var to `"clear;x-azurl,file:///my-asset-cache,,readwrite"
Do a build to populate the asset cache
Delete some built NuGet packages from your binary cache to force a rebuild of them
Rebuild and observe that the rebuilt packages download from public mirrors, not the asset cache

Expected behavior
vcpkg will use the filesystem-based asset cache to build a package from rather than the public mirrors.
Failure logs
Sorry can't, commercially sensitive.

Tl;dr: The message is lying to you.
Ah, I suspected as much but I couldn't just turn the network off on my corporate CI system!  I didn't know about the proxy options.


ORD-4 Refactor Entities

Refactor Entities

Just got this: Doctrine can convert camel case to underscore by simply doing this: https://github.com/codeliner/php-ddd-cargo-sample/blob/master/config/autoload/global.php

It seems that Zend emphasizes the use of module for everything. So, we should create a separate common/shared module for the such code and use that in every other module.
We will call this a Foundation or Common module.
Reference: http://stackoverflow.com/questions/15561309/zf2-create-common-lib-for-database-access-across-all-modules
http://framework.zend.com/manual/2.0/en/modules/zend.module-manager.intro.html

:+1:


Persistent service update (dev)

Codecov Report

Merging #338 (a70633e) into dev (a55d327) will decrease coverage by 0.07%.
The diff coverage is 74.60%.

@@            Coverage Diff             @@
##              dev     #338      +/-   ##
==========================================
- Coverage   67.08%   67.01%   -0.08%
==========================================
  Files         120      120
  Lines       10562    10586      +24
==========================================
+ Hits         7086     7094       +8
- Misses       3476     3492      +16

Impacted Files
Coverage Δ

assemblyline/datastore/helper.py
32.31% <33.33%> (ø)

assemblyline/cachestore/__init__.py
67.27% <45.83%> (-19.57%)
:arrow_down:

assemblyline/filestore/__init__.py
67.79% <90.90%> (+0.16%)
:arrow_up:

assemblyline/filestore/transport/azure.py
61.11% <100.00%> (ø)

assemblyline/filestore/transport/ftp.py
25.71% <100.00%> (ø)

assemblyline/filestore/transport/http.py
65.00% <100.00%> (ø)

assemblyline/filestore/transport/local.py
70.00% <100.00%> (ø)

assemblyline/filestore/transport/s3.py
78.07% <100.00%> (ø)

assemblyline/filestore/transport/sftp.py
31.62% <100.00%> (ø)

assemblyline/odm/models/config.py
99.44% <100.00%> (+<0.01%)
:arrow_up:

... and 3 more

Continue to review full report at Codecov.

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


C++, node, ruby, php and python (dbg and opt) having compilation failures on Windows

Here is an example from C++ but pretty much all other languages are failing with the same reason.
https://grpc-testing.appspot.com/job/gRPC_master/14678/config=dbg,language=c++,platform=windows/console
Started by upstream project "gRPC_master" build number 14678
originally caused by:
 Started by timer
Building remotely on grpc-jenkins-windows-worker2 (x86_64 i386 newwindows) in workspace c:\jenkins\workspace\gRPC_master\config\dbg\language\c++\platform\windows
 > git rev-parse --is-inside-work-tree # timeout=10
Fetching changes from the remote Git repository
 > git config remote.origin.url http://github.com/grpc/grpc.git # timeout=10
Cleaning workspace
 > git rev-parse --verify HEAD # timeout=10
Resetting working tree
 > git reset --hard # timeout=10
 > git clean -fdx # timeout=10
 > git submodule foreach --recursive git reset --hard # timeout=10
 > git submodule foreach --recursive git clean -fdx # timeout=10
Fetching upstream changes from http://github.com/grpc/grpc.git
 > git --version # timeout=10
 > git -c core.askpass=true fetch --tags --progress http://github.com/grpc/grpc.git +refs/heads/*:refs/remotes/origin/*
Checking out Revision 927dae0da0e6f643bdcb0175dd5c2ea81c4ebce2 (refs/remotes/origin/master)
 > git config core.sparsecheckout # timeout=10
 > git checkout -f 927dae0da0e6f643bdcb0175dd5c2ea81c4ebce2
 > git rev-list 927dae0da0e6f643bdcb0175dd5c2ea81c4ebce2 # timeout=10
 > git remote # timeout=10
 > git submodule init # timeout=10
 > git submodule sync # timeout=10
 > git config --get remote.origin.url # timeout=10
 > git submodule update --init --recursive
[windows] $ sh -xe C:\Users\jenkins\hudson5492778082926128100.sh
+ tools/jenkins/run_jenkins.sh
++ uname -m
+ arch=x86_64
+ case $platform in
+ '[' windows == linux ']'
+ '[' windows == windows ']'
+ echo 'building c++ on Windows'
building c++ on Windows
+ unset platform
+ python tools/run_tests/run_tests.py -t -l c++ -c dbg -x report.xml -j 3
START: tools\run_tests\pre_build_c.bat
PASSED: tools\run_tests\pre_build_c.bat [time=11.6sec; retries=0:0]
START: vsprojects\build_vs2013.bat

c:\jenkins\workspace\gRPC_master\config\dbg\language\c++\platform\windows>setlocal

Microsoft (R) Build Engine version 12.0.40629.0

[Microsoft .NET Framework, version 4.0.30319.42000]

Copyright (C) Microsoft Corporation. All rights reserved.

MSBUILD : error MSB1009: Project file does not exist.

Switch: vsprojects\buildtests_cxx.sln

FAILED: vsprojects\build_vs2013.bat [ret=1, pid=2916]
FAILED: Some tests failed
+ TESTS_FAILED=true
+ '[' '!' -e reports/index.html ']'
+ mkdir -p reports
+ echo 'No reports generated.'
+ '[' true '!=' '' ']'
+ exit 1
Build step 'Execute shell' marked build as failure
[htmlpublisher] Archiving HTML reports...
[htmlpublisher] Archiving at BUILD level c:\jenkins\workspace\gRPC_master\config\dbg\language\c++\platform\windows\reports to /home/jenkins/jenkins_home/jobs/gRPC_master/configurations/axis-config/dbg/axis-language/c++/axis-platform/windows/builds/14678/htmlreports/HTML_Report
[copy-to-slave] Copying 'report.xml', excluding nothing, from 'file:/c:/jenkins/workspace/gRPC_master/config/dbg/language/c++/platform/windows/' on 'hudson.slaves.DumbSlave[grpc-jenkins-windows-worker2]' to 'file:/home/jenkins/jenkins_home/jobs/gRPC_master/workspace/' on the master.
Recording test results
ERROR: Step ‘Publish JUnit test result report’ failed: No test report files were found. Configuration error?
Finished: FAILURE

Still the case as of https://grpc-testing.appspot.com/job/gRPC_master/15480/

Not directly actionable. Closing this as part of buildpony bankruptcy.


Short solution needed: "ffmpeg qscale" (ffmpeg)

Please help us write most modern and shortest code solution for this issue:
ffmpeg qscale (technology: ffmpeg)
Fast way
Just write the code solution in the comments.
Prefered way

Create pull request with a new code file inside inbox folder.
Don't forget to use comments explain solution.
Link to this issue in comments of pull request.

How to set MPEG-4 video quality using "qscale" option


Allow to shim node modules inside define object in vite.config.js

Clear and concise description of the problem
So i've been trying to use ViteJS and i've run into multiple problems regarding incompatibility of npm packages. I understand, that Vite is ESM only, but many npm packages are using node builtins. The unability to use these packages makes Vite much harder to use and much less versatile
Suggested solution
I thought the simplest solution would be to provide these shims inside the define object in vite.config.js. However i am unable to do just that. Here is screen of code where the crypto module is used inside react-refresh/babel plugin which  i need to import and use inside my Vite project. When i comment this line out inside node_modules everything works fine

So I tried to shim crypto module, inside the define object like this

and i'm getting this error

Alternative
Only alternative to this solution is forking problematic npm packages and modifying the code itself to make it compatible with ESM modules, this is however very awkward and cumbersome solution.
Additional context
I tried to shim for example path module with path-browserify and i was not able to do that. Is there any problem with providing this feature? It would be very helpful if i could shim node builtins myself and use these packages inside Vite project
Validations

[x] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that request the same feature to avoid creating a duplicate.

This is not an intended use case for config.define. It's implemented as a straightforward text replacement without any syntax analysis. define should be used for CONSTANTS like process.env.FOO and __APP_VERSION__
I think that the best way to shim node builtins in packages is to use a rollup plugin like https://github.com/snowpackjs/rollup-plugin-polyfill-node. That hopefully will end up being adopted by the rollup org. I think there were some issues in with this plugin in Vite, but it is worth exploring how to iron out the details so we can start to recommend this (even in the docs)
About your issue in particular, that require shouldn't kick in at all in the browser because it is inside a guard. There was a related issue that is fixed as part of 4.2.0-beta.2 so it would be good to try it there, and if that doesn't work, please open a new bug report with a minimal reproduction. Thanks!

@patak-js Thanks for info, will open a bug report


Laravel 11.x Compatibility

hey, I appreciate it!
I think we can still support 9 and 10 with ^9.0|^10.0|^11.0 and then probably remove that composer.lock file and add it to .gitignore

thanks!

Hello and no problem! I tested the PR in my current project and all tests were also successful. Thank you for merging.


Create an Automation to Extract Invoice Details

Tutorials: https://developers.sap.com/tutorials/spa-dox-create-automation.html
Most of the images are not displayed.
Need to check if something is missing from our end.
This tutorial displays all the messages.
https://developers.sap.com/tutorials/spa-acquire-automation-store/spa-dox-create-automation.html
Let's discuss this in our daily meeting .
Need to work on Joshua's mail about the duplication of the Invoice processing tutorial

@chaitanya-priya-puvvada i can see all of them.

Hi @celineaudinsap:Do we have any update from Joshua on this?

Not yet Priya. Let me ask him if he has any updates

Tutorial:
https://developers.sap.com/tutorials/spa-acquire-automation-store/spa-dox-create-automation.html
will be deleted from production as it is a duplicate of:
https://developers.sap.com/tutorials/spa-dox-create-automation.html


什么时候会上传代码呀？

hi、对你们的工作很感兴趣，想问下什么时候会上传代码

Hi, thanks for your interest. We are preparing for the open source and will release both the code and models. Please stay tuned.:)

Hi, @WXinlong
Thanks for providing a promising work. Do you have any plan to release the project code?
Best.

@senlin-ali @GewelsJI  The code and model are available now.:)


QueryInst with FP16  RuntimeError: transform: failed to synchronize: cudaErrorIllegalAddress: an illegal memory access was encountered

What command or script did you run?

python tools/train.py configs/queryinst/queryinst_r50_fpn_1x_coco.py

Did you make any modifications on the code or config? Did you understand what you have modified?
Yes, added fp16 = dict(loss_scale=512.)
What dataset did you use? COCO

Environment

Please run python mmdet/utils/collect_env.py to collect necessary environment information and paste it here.

sys.platform: linux
Python: 3.7.11 (default, Jul 27 2021, 14:32:16) [GCC 7.5.0]
CUDA available: True
GPU 0,1: GeForce RTX 2080 SUPER
CUDA_HOME: /usr/local/cuda-10.2
NVCC: Cuda compilation tools, release 10.2, V10.2.89
GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
PyTorch: 1.11.0
PyTorch compiling details: PyTorch built with:
  - GCC 7.3
  - C++ Version: 201402
  - Intel(R) oneAPI Math Kernel Library Version 2021.4-Product Build 20210904 for Intel(R) 64 architecture applications
  - Intel(R) MKL-DNN v2.5.2 (Git Hash a9302535553c73243c632ad3c4c80beec3d19a1e)
  - OpenMP 201511 (a.k.a. OpenMP 4.5)
  - LAPACK is enabled (usually provided by MKL)
  - NNPACK is enabled
  - CPU capability usage: AVX2
  - CUDA Runtime 10.2
  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_61,code=sm_61;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_37,code=compute_37
  - CuDNN 7.6.5
  - Magma 2.5.2
  - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=10.2, CUDNN_VERSION=7.6.5, CXX_COMPILER=/opt/rh/devtoolset-7/root/usr/bin/c++, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_KINETO -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -DEDGE_PROFILER_USE_KINETO -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_VERSION=1.11.0, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=OFF, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF,

TorchVision: 0.12.0
OpenCV: 4.5.5
MMCV: 1.4.7
MMCV Compiler: GCC 7.3
MMCV CUDA Compiler: 10.2
MMDetection: 2.22.0+6b87ac2

Seems unstable while learning.

Try to use the dynamic loss scale:
fp16 = dict(loss_scale='dynamic')

Doesn't help. It starts to produce nan and then fails at some point. Probably access to nan converted memory address.

Okay, we will verify the compatibility of QueryInst fp16 training.

Hey I meet the same problem. This problem sometimes occurs when i use fp16


[1.19 backport] Integrate S3 Compatible API's for Etcd Snapshot Targets

Backport of https://github.com/k3s-io/k3s/issues/2838
PR: https://github.com/k3s-io/k3s/pull/3080

Validated using commit id
k3s version v1.19.9+k3s-f9450c84


Teams Module - Get-Cs* commands throws instead of silently returning $null (prior to 2.6.0) when the queried resource doesn't exist

Get-Cs* command is broken with the recent Teams module (4.0.0, 4.1.0).
The Get-Cs* commands throw an exception instead of silently returning $null (prior to 2.6.0) when the queried resource doesn't exist, and we were relying on this to check whether to create the resource or not.
So, we handled it differently now with Teams module 4.0.0, where we are checking a particular text in the error message in exceptions and deciding whether to create a new resource or not.
for example, for Get-CsTeamsComplianceRecordingPolicy we were getting exceptions with messages containing 'Cannot find "TeamsComplianceRecordingPolicy"', and the script only creates the policy when the exception message got this particular text.
This was working fine till march last week when we released scripts compatible with Teams Module 4.0.0,
but those are also broken now as the exception for Teams Module 4.0.0 for Get-Cs* suddenly changed and our logic of resource existence check failed.
Could you please let us know the definite solution for checking resources exist
Or
Restore the behavior prior to 2.6.0 where The Get-Cs* commands do not throw an exception and silently return $null.

Hi @pbafna03,
I tried version 4.2.0, getting the exception if the policy does not exist, earlier it was returning $null silently.
PS C:\Users\Administrator> $recordingPolicy = Get-CsTeamsComplianceRecordingPolicy -Identity "DummyPolicyName"
Get-CsTeamsComplianceRecordingPolicy : "DummyPolicyName" not found
At line:1 char:1
$recordingPolicy = Get-CsTeamsComplianceRecordingPolicy -Identity "Du ...
CategoryInfo          : InvalidOperation: ({ ConfigType = ...emaVersion =  }:<>f__AnonymousType194) [Get-CsTeamsComplianceRecordingPolicy], Exception FullyQualifiedErrorId : ClientError,Microsoft.Teams.ConfigApi.Cmdlets.GetCsTeamsComplianceRecordingPolicy
PS C:\Users\Administrator>
My question was is there any definitive way to check whether resources exist or not rather than making this decision based on exceptions.
Also, we observed that this exception also changed a couple of times for Version 4.0.0 so we cannot rely on the exception.

@tushdeore - Something like Get-CsTeamsComplianceRecordingPolicy -Filter "DummyPolicyName" can be used to check existence.

@pbafna03 Yes it worked, this is exactly what I was looking for.
Thank you so much :)

@tushdeore If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Choose color

Do you plan to add a color picker? Right now this works with hardcoded colors.

Not currently, no. But all annotations are extensible and you are welcome to create your own annotations or UI to support this.


Add ruby 3 support

Add Ruby 3 support (notably changes due to keyword arg support etc)

We're reviving this fork as the original repo, while still receiving new updates, has not published a new gem since. This'll allow us to publish our own release as-needed.

This just brings this fork in line with the mainline, correct? I.e. this doesn't yet address the rack incompatibility?

This just brings this fork in line with the mainline, correct? I.e. this doesn't yet address the rack incompatibility?

I happened to click a button that just brought this fork up to date with mainline here: https://github.com/Yesware/sneakers/commit/32c0d50abb6b3b72eaec98d7b0995946f09834bd
So the Rack support has already been fixed 👀

Whoops, rake not rack. Updated my comment above.

This just brings this fork in line with the mainline, correct? I.e. this doesn't yet address the rack incompatibility?

I happened to click a button that just brought this fork up to date with mainline here: 32c0d50
So the Rack support has already been fixed 👀
See:

🤔 Hmm, okay. Looks like there was one commit that relaxed the rake dependency for production builds, and then the dev dependency forcing rake v12 was removed in a separate commit, so that should be all set. 👍 I didn't see that second commit resolving the dev side earlier.


refactor: remove long-deprecated routesLoaded lifecycle

Motivation
Close #3918. After 1 year and a half, we only had one user complaining, and there's no follow-up. I can only assume that this is going to impact no-one.
#3918 mentioned search plugins as a use-case. We now have many successful search plugins that read the routes data through postBuild, so I believe there's no valid use-case of this lifecycle anymore.
Have you read the Contributing Guidelines on pull requests?
Yes

Let's wait until next week if we get an answer from op in https://github.com/facebook/docusaurus/issues/3918, and then move on 👍
Note: I'm thinking about adding another lifecycle to replace this one, but with a different API and use-case in mind: the ability for one route to "pick data" from another. The idea would be for example to be able to inject a list of blog post, or a doc, as props to your homepage, and similar use-cases. No API design, just a rough idea.


Suggestion: Any chance to support ZOOM for mermaid diagram?

For big diagram (sequence diagram for example), currently mermaid rendering works perfectly but cannot zoom in to see details.
It would be better to have a zoom button just like the image viewer, so that the picture can be viewed full window size.

Similar (covered in) #44


Error trying to visualize the SQL model using SQLRSTableGroupVizualisation

Hi. Thanks for the great job with this package. I tried to use it in a standard Moose 10 image, but I got some problems. As I managed those troubles, I decided to share what I found with you.
I followed the instructions in the README and I could connect and generate a model from an ODBC database (SQLServer, in my case). But I noticed an error trying to generate the visualization as described in the README. The SQLRSTableGroupVizualisation>>extractAssociationFor:with: in the main branch calls for messages that do not exist in the target objects. I think the API of the SQL-Model objects has changed, and this method was not updated since then. Looking at the current version of the SQL-Model classes, I could find a running version for it:
extractAssociationFor: nodeColumn with: allNodes

	| ref |
	ref := (nodeColumn rawModel incomingForeignKeyReferences
					collect: [ :foreignRef |
						foreignRef foreignKeyConstraint columnReferences collect: [
				   			:columnReference | columnReference column ] ]) flattened.
	nodeColumn dependenciesToNodes:
		(allNodes select: [ :aColumnNode |
			 ref includes: aColumnNode rawModel ])

But, It was not enough. The class HSimpleVisualizationBuilder that comes distributed in Moose 10 (package Hierarchical-Roassal3) also needs a change. SQLRSTableGroupVizualisation>>build starts a sequence of messages that reaches HSimpleVisualizationBuilder>>canvasController:. The version of this method in Moose 10 has a block that gives an error in the sequence of calls that starts with SQLRSTableGroupVizualisation. RSControlConfiguration does not understand noZoomToFitOnExtendChanged  message. So, I changed this block as following:
From:
[ i configuration noZoomToFitOnExtendChanged ]

To:
[ i zoomToFitInteraction noZoomToFitOnExtendChanged ]

The last is the way it is implemented in Moose 11. But with Moose 11, I got errors in other parts of the SQL-Model package. Which version of Moose are you using to develop FamixSQL? This is a change that is out of the context of the FamixSQL package, but I do not find other way to manage that.
The SQLRSTableGroupVizualisation is also used by the MCD Tables inspector, so the above solution also solves the model visualization on this inspector. And there is another minor issue: The FamixSQLTableGroup>>inspectionTable method is duplicated in the image: it is in the class in the SQL-Model package, and as an extension in the SQL-Model-Extension package.
I am not sure if this is the best way to report. Maybe it should be better to separate each point into a different issue. But I decided to put it all together, since I need all of them to manage the visualization of the model.
Summarizing: with Moose 10 and the changes above, I got the right visualization of the generated model. I have forked your project and applied the changes. The change of the HSimpleVisualizationBuilder is not in the commits, since I made it direct in my image. You can check in https://github.com/jeffsantos/FamixSQL.

hello.
Thanks for reporting this and taking the time to correct things
Some precisions:

We started recently to migrate FamixSQL, so various things are not working yet and this is kind of "expected"
The roassal issue is likely a different thing as FamixSQL and Roassal are 2 different projects handled by different people
To make things worst, Roassal has also been going through serious modifications recently, so it is hard to keep things synchronized
we are a small team of professors/researchers with a lot on our plates, so things can be slow at time

Will keep in touch

Hi Nicolas, thanks for your prompt answer. I have been in the Pharo/Moose/Gtoolkit world recently (about a year) but I understand everything you point about the complexity of the projects. I am also a professor/research (in Brazil) so I really know what you mean. My intent usage of FamixSQL (and all Pharo ecosystem) is in academic projects and teaching. So I will keep my eyes on the evolution of things and I will try to contribute in any way as I can.

Hello @jeffsantos
I have merged your work in #11
I also looked at the problem with Roassal. The API of Roassal for HNode changed from the version I have on Moose10 and Moose11. It is a breaking change on the node styler API (the stuff that draws the rectangle representing the tables and columns).
I found ways to fix the bug for Moose10 or Moose11, but not one convenient way to have the fix for both. I suppose that we will have to create two versions of the visualization
For now, I decided to change the visualization by removing the usage of this styler. So it should work in both 10 and 11 versions.
I also renamed the class SQLRSTableGroupBuilder since it is actually a builder looking at its hierarchy (It was not correctly done previously, more a hacky thing)
Please don't hesitate to push PR to this repository. We'll also have to find time to write proper documentation on the moose website https://modularmoose.org/

Hi Benoit. Thanks for the merge. I've synced my fork with the upstream, so I can continue following your progress. Anything I catch that I could solve, I will push via PR.
I tried the synced version on two fresh images of Moose, 10 and 11. The new version is working on 11 now. But is not on Moose 10, the visualization still fails. I noticed that now, the renamed SQLRSTableGroupBuilder inherits from HSimpleVisualizationBuilder, so the build message still reaches the canvasController method. That is the point of the code that gives the error, as I described in my first message. But, as SQLRSTableGroupBuilder now inherits from HSimpleVisualizationBuilder, a temporary solution may be to override the canvasController on it, change the problematic block.
canvasController: aCanvas

	^ RSCanvasController new
		  noLegend;
		  in: [ :i |
			  aCanvas newAnimation
				  duration: 500 milliSeconds;
				  onStepDo: [ aCanvas signalUpdate ];
				  when: RSAnimationEndEvent
				  do: [ i zoomToFitInteraction noZoomToFitOnExtendChanged ]
				  for: self.
			  (i interactions at: RSDraggableCanvasInteraction) left.
			  i configuration
				  maxScale: 3;
				  minScale: 0.5
			  "useBasicZoom;" ];
		  yourself

I committed and pushed this to my fork, tested it over Moose 10 and 11 e now it is ok on both. For sure, it is not a good design, but at least it avoids the error temporarily. If you think it's worth, I can send a new PR. To contribute a best solution, I will need to understand better the Hierarchical-Roassal package. I will definitely try to do that, but it may take me a while.

[ ] check new contribution and integrate 😄

Great! The documentation will be super helpful. I will check it. I'll also follow here for any updates about the fix. Thanks.


Fix #2390: Toggle state of bottom card on click

Description (required)
Fixes #2390
What changes did you make and why?
Added same functionality as the arrow-shaped button to the Step 1 bottom card as a whole.
Tests performed (required)
Tested betaDebug on Android 7.1.2 (API 25)
GIF showing what changed (optional - for UI changes)

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@1692705). Click here to learn what that means.
The diff coverage is 0%.

@@           Coverage Diff            @@
##             master   #2391   +/-   ##
========================================
  Coverage          ?   5.93%
========================================
  Files             ?     238
  Lines             ?   11364
  Branches          ?    1028
========================================
  Hits              ?     674
  Misses            ?   10637
  Partials          ?      53

Impacted Files
Coverage Δ

...ava/fr/free/nrw/commons/upload/UploadActivity.java
0% <0%> (ø)

Continue to review full report at Codecov.

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


Werewolf game:InstructSpeak add llm mode

InstructSpeak add llm mode

Please resolve all conflicts and Review comments @mannaandpoem


widen union of ReaderTaskEithers

🚀 Feature request
Current Behavior
import * as RTE from 'fp-ts/lib/ReaderTaskEither';

const getA = RTE.asks((r: {a:number}) => r.a)
const getB = RTE.asks((r: {b:number}) => r.b)

const getAOrB = (flag: boolean) => flag ? getA : getB

in example above the return type of getAOrB is  RTE.ReaderTaskEither<{a:number}, never, number> | RTE.ReaderTaskEither<{b:number}, never, number>;
Desired Behavior
I think we can write a widen function that will return
RTE.ReaderTaskEither<{a:number} & {b:number}, never, number>
const getAorB = (flag:boolean) => pipe((flag? getA: getB), widen)

in this example I left out the lefts but it should have union of them too
Suggested Solution
I have a solution for this but I don't think @gcanti  are gonna approve cause it's little hacky but this issue can be here for other people to see
export const widen = <T extends ReaderTaskEither<any, any, any>>(
  x: T
): RTE.ReaderTaskEither<
  Intersection<T extends ReaderTaskEither<infer R, any, any> ? R : never>,
  T extends ReaderTaskEither<any, infer E, any> ? E : never,
  T extends ReaderTaskEither<any, any, infer A> ? A : never
> => x;

// this is the hacky type
type Intersection<A> = (A extends any ? (a: A) => void : never) extends (
  a: infer A
) => void
  ? A
  : never;

and we can have this on Reader  and other datatypes too.

I was thinking if there is a better way to do this? does anyone have a suggestion?

with the upcoming v2.10 you can do
const getAOrB = flow(
  (b: boolean) => (b ? RTE.right(b) : RTE.left(b)),
  RTE.foldW(
    () => getB,
    () => getA
  )
)

with the upcoming v2.10 you can do
const getAOrB = flow(
  (b: boolean) => (b ? RTE.right(b) : RTE.left(b)),
  RTE.foldW(
    () => getB,
    () => getA
  )
)

foldW

I don't think it's the same cause this will return ReaderTask and also my example was made simple for this issue in reality sometimes we want to branch out and each ReaderTaskEither will need a new resource and a new Error .
let's say that with a boolean we want to know if we should read from cache repository or db repository both of them return the same A but different E and also diffrent R

foldW

I don't think it's the same cause this will return ReaderTask and also my example was made simple for this issue in reality sometimes we want to branch out and each ReaderTaskEither will need a new resource and a new Error .
let's say that with a boolean we want to know if we should read from cache repository or db repository both of them return the same A but different E and also diffrent R

@mohaalak ReaderTask<R, Either<E, A>> = ReaderTaskEither<R, E, A>
(adding some types)
interface A {
  readonly a: number
}

interface EA {
  readonly _tag: 'EA'
}

const getA: RTE.ReaderTaskEither<A, EA, number> = RTE.asks((r) => r.a)

interface B {
  readonly b: number
}

interface EB {
  readonly _tag: 'EB'
}

const getB: RTE.ReaderTaskEither<B, EB, number> = RTE.asks((r) => r.b)

const getAOrB: (b: boolean) => RTE.ReaderTaskEither<A & B, EA | EB, number> = flow(
  (b: boolean) => (b ? RTE.right(b) : RTE.left(b)),
  RTE.foldW(
    () => getB,
    () => getA
  )
)

@mohaalak ReaderTask<R, Either<E, A>> = ReaderTaskEither<R, E, A>
(adding some types)
interface A {
  readonly a: number
}

interface EA {
  readonly _tag: 'EA'
}

const getA: RTE.ReaderTaskEither<A, EA, number> = RTE.asks((r) => r.a)

interface B {
  readonly b: number
}

interface EB {
  readonly _tag: 'EB'
}

const getB: RTE.ReaderTaskEither<B, EB, number> = RTE.asks((r) => r.b)

const getAOrB: (b: boolean) => RTE.ReaderTaskEither<A & B, EA | EB, number> = flow(
  (b: boolean) => (b ? RTE.right(b) : RTE.left(b)),
  RTE.foldW(
    () => getB,
    () => getA
  )
)

oh now I've got what you are talking about, I think I can make a utilty function for this like

const ifElseW = <R1, R2, E1, E2, A>(
  p: boolean,
  onTrue: () => ReaderTaskEither<R1, E1, A>,
  onFalse: () => ReaderTaskEither<R2, E2, A>
): ReaderTaskEither<R1 & R2, E1 | E2, A> => (p ? onTrue() : onFalse());

if you think this is a good Idea I can make a PR and even add when and unless. like haskell
And explicit type annotation works, but I was thinking about type inference.

oh now I've got what you are talking about, I think I can make a utilty function for this like

const ifElseW = <R1, R2, E1, E2, A>(
  p: boolean,
  onTrue: () => ReaderTaskEither<R1, E1, A>,
  onFalse: () => ReaderTaskEither<R2, E2, A>
): ReaderTaskEither<R1 & R2, E1 | E2, A> => (p ? onTrue() : onFalse());

if you think this is a good Idea I can make a PR and even add when and unless. like haskell
And explicit type annotation works, but I was thinking about type inference.


How should Questions on each page be answered

On every page we show different information to explain why he is doing what he is doing and hints to often raised questions.
Currently on each page we are answering the question differently. This leads to the fact that often the answers to the questions are overseen because they are not prominent enough.
For example:

When the infura ID is required we have a little information icon
When sending ETH we have a tooltip on Raiden account explaining what a raiden account is and a plain text at the center of the page telling the user to download the account
When swapping RDN or DAI we have a tooltip on the text RDN or DAI which explains why we need the token and how much is required. This is always overseen and these questions are always raised
We also need to explain in the beginning why the user is required to deposit a specific amount of eth and what he is going to do

I think a consistent design throughout all the pages answering FAQs for each page would help the user to know where to look for questions. We have a lot of free space on the screen and we should use it IMO.
@sashseurat  Can you help on this?

see if #214 helps? I have the feeling that we need to explain the user at the beginning what he is going to do and why

On every page we show different information to explain why he is doing what he is doing and hints to often raised questions.
Currently on each page we are answering the question differently. This leads to the fact that often the answers to the questions are overseen because they are not prominent enough.
For example:

When the infura ID is required we have a little information icon
When sending ETH we have a tooltip on Raiden account explaining what a raiden account is and a plain text at the center of the page telling the user to download the account
When swapping RDN or DAI we have a tooltip on the text RDN or DAI which explains why we need the token and how much is required. This is always overseen and these questions are always raised
We also need to explain in the beginning why the user is required to deposit a specific amount of eth and what he is going to do

I think a consistent design throughout all the pages answering FAQs for each page would help the user to know where to look for questions. We have a lot of free space on the screen and we should use it IMO.
@sashseurat Can you help on this?

I'll gladly help, but this issue requires time, so we need to figure out if I can dedicate time to this over other things.
I can ask Kamal

For the first iteration, we do not have that much time, so we will go for a quick solution.
My suggestion now is to

provide background information for every one of the 6 steps / page
have an icon that opens a tooltip that explains the step
try to explain every step in only four bullets

Does that make sense to you @Fred?

Yes. I think as we already got feedback, we got a lot of free sapce in the screen so we can use it. Im gonna create an issue containing all the questions/answers for each page

Maybe just add those bullets per page here in this issue to reduce a little bit of noise

[ ] for now: trigger a "you should stay on this page" alert


Bug in copying clients from previous account

There is a problem with the production system for when people copy clients into the new asa.
When the URL
https://www.tax.service.gov.uk/agent-mapping/signed-out-redirect?id=[removed id for security reasons]
It redirects to:
http://localhost:9025/gg/sign-in?continue=http%3A%2F%2Flocalhost%3A9438%2Fagent-mapping%2Fstart-submit%3Fid%[id removed]
One presumes that it should not be redirecting to localhost.  Could someone please fix this?

Just made a PR to fix the config in Production so this should be fixed now!

Thank you for that.   I have looked at it myself and it does appear to be now working.  I have also told the others who raised the issue that it has now been fixed.
Thank you for a rapid response on this.


Rewrite Location response header filter

Rewrite Location response header filter. Expected use is to rewrite Location header value, typical to successful POST requests, getting rid of back end specific host:port details, and optionally getting rid of a version portion. The replacement value is, by default, taken from the Host request header.
This proved to be a typical need, at least for us, when putting legacy restful services behind the API gateway.

Codecov Report

Merging #620 into 2.0.x will increase coverage by 0.23%.
The diff coverage is 87.03%.

@@             Coverage Diff              @@
##              2.0.x     #620      +/-   ##
============================================
+ Coverage     70.58%   70.82%   +0.23%
- Complexity      917      933      +16
============================================
  Files           129      130       +1
  Lines          3675     3729      +54
  Branches        259      263       +4
============================================
+ Hits           2594     2641      +47
- Misses          945      952       +7
  Partials        136      136

Impacted Files
Coverage Δ
Complexity Δ

...cloud/gateway/route/builder/GatewayFilterSpec.java
60.19% <0%> (-1.81%)
37 <0> (ø)

...cloud/gateway/config/GatewayAutoConfiguration.java
98.34% <100%> (+0.01%)
61 <1> (+1)
:arrow_up:

...iteLocationResponseHeaderGatewayFilterFactory.java
92% <92%> (ø)
15 <15> (?)

Continue to review full report at Codecov.

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

If I am remembering correctly, it should be the responsibility of the downstream service to look at the X-Forwarded-* headers of the incoming request (from the gateway) and correctly formulate things like the Location header.

Ideally, that might be the downstream's responsibility, yes. But I suspect many face the same problem we do, which is: legacy services that we have no access or no budget to touch, just want to put the gateway in front without breaking users.
If you still find this filter too use case specific, feel free to close. I guess one can accomplish the same thing with the more generic RewriteResponseHeader filter(s), only the host:port value would have to be baked into configuration, and the strip version logic based on request won't happen.

Merged with updates and polish via 33ad55583135ba44d998b8f2678a09713f199064. Notably I removed the need for mocking final classes.
Thanks for your contribution!


Limit users interaction on mod embeds

When someone from moderation team uses !help sm non staff member or user who did not send the command is able to interact with buttons. I think it should be limited to not allow users interaction on mod help embed if they are not the author.
The paginator wont show up when non staff member uses the !help sm command but I think it would make sense that if moderator runs the command in some general channel, the interactions would be limited to author of message.
Link to message: https://discordapp.com/channels/267624335836053506/267624335836053506/947082166020501524

Hey, I'd like to implement this feature.

Sounds good, I've assigned you now.


[CI] add buster backports in CI builder setup

Motivation
CI builder is bumped to debian:buster in 3743988, but it missed
the backports to keep the tooling packages consistent with the
Docker build.
Test Plan
This is the same setup as the current nightly's. To be canaried in Circle.

@bors-libra r=davidiw

:pushpin: Commit e3d7a81 has been approved by davidiw

:hourglass: Testing commit e3d7a81b5b855d7214fe9b23e74b9fe167a3dcdc with merge ba0a150f52c13eb5a73e3505aaecf7a1d036f779...

:sunny: Test successful - checks-circle_commit_workflow
Approved by: davidiw
Pushing ba0a150f52c13eb5a73e3505aaecf7a1d036f779 to master...