Fully Transparent buttons have a faint border

Describe the bug
When using a theme that sets both the button background and border to fully transparent (#00000000), the buttons still appears to have faint gray-ish border.
To Reproduce
Steps to reproduce the behaviour:

Create a button using a theme where the background and border are fully transparent (#00000000).
There will be a light gray border around the button.

Expected behaviour
I would expect the button to lack the light gray border, and be fully transparent.
Screenshots

Platform and software (please complete the following information):

OS: Windows
Pygame GUI version 0.6.5
Pygame version 2.1.2

You need to set the shadow width to 0 as well
On Sat, 19 Nov 2022, 19:44 keyraven, @.***> wrote:

Describe the bug
When using a theme that sets both the button background and border to
fully transparent (#00000000), the buttons still appears to have faint
gray-ish border.
To Reproduce
Steps to reproduce the behaviour:

Create a button using a theme where the background and border are
fully transparent (#00000000).
There will be a light gray border around the button.

Expected behaviour
I would button to lack the light gray border, and be fully transparent.
Screenshots
[image: image]
https://user-images.githubusercontent.com/118307471/202868530-7b085a30-bb55-4337-af5b-4a10f5d57c78.png
Platform and software (please complete the following information):

OS: Windows
Pygame GUI version 0.6.5
Pygame version 2.1.2

—
Reply to this email directly, view it on GitHub
https://github.com/MyreMylar/pygame_gui/issues/354, or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADGDGGQ4CVMOB5XJ77XRY63WJEU3XANCNFSM6AAAAAASFO4YUU
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Thanks! That got rid of the shadow!


[dask] run Dask tests on aarch64 architecture

Refer to https://github.com/microsoft/LightGBM/pull/3948#discussion_r575694158.
Now that QEMU is setup and proved to be stable on our CI, let's run Dask tests on aarch64 architecture and see what happens.

seems like they worked ok! I can see in the logs that the Dask tests definitely ran
../tests/python_package_test/test_dask.py .............................. [ 16%]
..........................................s.................             [ 36%]

wait I take that back. Was looking at the wrong test. A lot of them failed, although the build wasn't marked as failed.
https://dev.azure.com/lightgbm-ci/lightgbm-ci/_build/results?buildId=9255&view=logs&j=c2f9361f-3c13-57db-3206-cee89820d5e3&t=bf5b33f9-9072-549e-d8b1-cab79a1dd2a9
../tests/python_package_test/test_dask.py xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [ 16%]
xxxxxxxxxxxxxxxx...................xxxxxxxxxxxxxx...........             [ 35%]

This code is on the code path of the client fixture we import from distributed, maybe that's the reason?
https://github.com/dask/distributed/blob/aa8e2dd87f58a29e3f4efb65e0ffcd83239ccc68/distributed/utils_test.py#L649
Don't know why we don't see anything in the logs though...

I don't see anything in the logs explaining why so many were xfailed.

Yeah, me too!..
Also, build took ~1.5h with only few passed tests. Guess all xfailed ones were aborted before completing.

This code is on the code path of the client fixture we import from distributed, maybe that's the reason?

If that's true, then it is very dangerous to use this fixture because we may not spot actual errors with our main Dask builds as the whole build will be marked green.

I don't see anything in the logs explaining why so many were xfailed.

Yeah, me too!..
Also, build took ~1.5h with only few passed tests. Guess all xfailed ones were aborted before completing.

This code is on the code path of the client fixture we import from distributed, maybe that's the reason?

If that's true, then it is very dangerous to use this fixture because we may not spot actual errors with our main Dask builds as the whole build will be marked green.

I agree :/
I'll have to investigate more

I just updated this to latest master. There have been a lot of changes and fixes to the Dask tests since this was first opened, especially removing the client fixture in #4159.

Looks better than https://github.com/microsoft/LightGBM/pull/3996#issuecomment-780636048.
../tests/python_package_test/test_dask.py FF..FF..FF..FF..FF..FF..FF..FF [ 12%]
..FF..FF..FF..FF..FF..FF..FF..FF..F...F......FF..FF..FF..FF..FF..FF..FF. [ 25%]
.FF..F...............F..F..F..F..F..F..F..F..F..F..F..F..F..F..F..F..... [ 39%]
.....................................s.................................. [ 53%]
...s.................F...F.s........                                     [ 60%]

...

= 69 failed, 444 passed, 6 skipped, 2 xfailed, 400 warnings in 2145.62s (0:35:45) =

Not in terms of number of failed tests but in terms that they are failed now not xfailed. So seems you were right and client fixture was very dangerous.

Interesting!   Each array should have the same number
        of dimensions as the desired output and the nesting of the lists.

        >>> x = np.array([[1, 2]])
        >>> concatenate3([[x, x, x], [x, x, x]])
        array([[1, 2, 1, 2, 1, 2],
               [1, 2, 1, 2, 1, 2]])

        >>> concatenate3([[x, x], [x, x], [x, x]])
        array([[1, 2, 1, 2],
               [1, 2, 1, 2],
               [1, 2, 1, 2]])
        """
        from .utils import IS_NEP18_ACTIVE

        # We need this as __array_function__ may not exist on older NumPy versions.
        # And to reduce verbosity.
        NDARRAY_ARRAY_FUNCTION = getattr(np.ndarray, "__array_function__", None)

        arrays = concrete(arrays)
        if not arrays:
            return np.empty(0)

        advanced = max(
            core.flatten(arrays, container=(list, tuple)),
            key=lambda x: getattr(x, "__array_priority__", 0),
        )

        if IS_NEP18_ACTIVE and not all(
            NDARRAY_ARRAY_FUNCTION
            is getattr(type(arr), "__array_function__", NDARRAY_ARRAY_FUNCTION)
            for arr in core.flatten(arrays, container=(list, tuple))
        ):
            try:
                x = unpack_singleton(arrays)
                return _concatenate2(arrays, axes=tuple(range(x.ndim)))
            except TypeError:
                pass

        if concatenate_lookup.dispatch(type(advanced)) is not np.concatenate:
            x = unpack_singleton(arrays)
            return _concatenate2(arrays, axes=list(range(x.ndim)))

        ndim = ndimlist(arrays)
        if not ndim:
            return arrays
        chunks = chunks_from_arrays(arrays)

        def dtype(x):
            try:
                return x.dtype
            except AttributeError:
                return type(x)

        result = np.empty(shape=shape, dtype=dtype(deepfirst(arrays)))

        for (idx, arr) in zip(
            slices_from_chunks(chunks), core.flatten(arrays, container=(list, tuple))
        ):
            if hasattr(arr, "ndim"):
                while arr.ndim < ndim:
                    arr = arr[None, ...]
>           result[idx] = ar

E           ValueError: could not broadcast input array from shape (500,3) into shape (500,)

I can do some research and see if similar errors have been reported to dask/dask or dask/distributed.

Not sure if it's relevant, but it does look like the aarch64 builds are getting slightly newer versions of the key dependencies.
Linux_latest bdist (logs)
dask               pkgs/main/noarch::dask-2021.4.0-pyhd3eb1b0_0
dask-core          pkgs/main/noarch::dask-core-2021.4.0-pyhd3eb1b0_0
distributed        pkgs/main/linux-64::distributed-2021.4.0-py38h06a4308_0
numpy              pkgs/main/linux-64::numpy-1.20.1-py38h93e21f0_0
numpy-base         pkgs/main/linux-64::numpy-base-1.20.1-py38h7d8b39e_0

QEMU_multiarch bdist (logs)
dask               conda-forge/noarch::dask-2021.4.1-pyhd8ed1ab_0
dask-core          conda-forge/noarch::dask-core-2021.4.1-pyhd8ed1ab_0
distributed        conda-forge/linux-aarch64::distributed-2021.4.1-py39ha65689a_0
numpy              conda-forge/linux-aarch64::numpy-1.20.2-py39h43e3299_0

I mention that because the error we're getting seems to be happening at the level where Dask is doing sum numpy operations, so it could come from an incompatible mix of Dask and numpy.

Just noticed that it's all-green now! 😱
I'd like to make any random Dask test to fail and check QEMU reaction.

oh wow, great! Yes, I'm curious to see what happens if you add a raise ValueError() or something to one of the Dask tests

OK, corrupted Dask test on QEMU failed as it was expected:
=========================== short test summary info ============================
FAILED ../tests/python_package_test/test_dask.py::test_warns_and_continues_on_unrecognized_tree_learner
= 1 failed, 512 passed, 6 skipped, 2 xfailed, 342 warnings in 4202.86s (1:10:02) =

Reverting test commit now.

Were all previous test failures on QEMU due to environment compatibility issues or did the latest Dask (or its deps) include a real fix? If latter, I think it will be useful to identify that release and document it as minimum required version for aarch64 platform. How do you think @jameslamb ?

I'm going to push some empty commits to check the tests stability and measure their time consumption.

Now its' duration either ~50min or ~105min (this binarization is due to that sometimes QEMU job is x2 faster than other times).

Oh interesting! I never noticed that big differences between different job runtimes before.

Are we OK with this setup?

I am ok with this setup for now. The level of activity on the project hasn't been high enough that that would be add significant friction to the development process.

I am ok with this setup for now.

Me too. Merge?


Broken code on TIL "Mix tasks accessing the db with Mix.Ecto"

I wasn't able to find a good place to report issues with the code posted in specific TIL so I am posting here about "Mix tasks accessing the db with Mix.Ecto". The code in there is broken because it relies on an Ecto private API that has been changed in Ecto 3.0. Specifically Mix.Ecto.ensure_started/2 no longer exists. Here is proof that Mix.Ecto is considered a private API: https://github.com/elixir-ecto/ecto/issues/1586#issuecomment-233301683

@axelson thanks for the heads up.  We haven't converted to 3.0 yet that's def on the todo list.


⚠ Samsung has degraded performance

In 2e1990e, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2549 ms

Resolved: Samsung performance has improved in 6a0c5f1.


Persona images not working in Sketch version 41.2 (35397)

just re-downloaded the zip of the current master branch of Content Generator repo.
Using any of the three options in the Persona images produce no change. the system show the following relevant log.
Male (Sketch Plugin)[4807]: ~/Dropbox/Sketch3/Plugins/Content Generator%20Sketch%20Plugin/CG.sketchplugin/Contents/Sketch/data/images/persona/male/

Sketch[4807]: Exception: TypeError: null is not an object (evaluating 'imagesFileNames. count')

Male (Sketch Plugin)[4807]: TypeError: null is not an object (evaluating 'imagesFileNames. count')
	sourceURL: ~/Dropbox/Sketch3/Plugins/Content Generator Sketch Plugin/CG.sketchplugin/Contents/Sketch/Persona/Photos/Male.js

a bit explanation about the location of Sketch plug-in folder:
I used "ln -s" command to create a symlink so that the plugins can be synced to the cloud, that way I don't have reinstall them manually after OS reinstallation.
All the other plug-ins are working, so I assume this might not be the cause.
Thank you for the awesome plug-in!

Did you installed the plugin via Sketch Toolbox? It doesn't work that way. I've tried that.
Instead, I uninstalled it from Sketch Toolbox, then followed the official instructions to re-install it.
And now it works.

first installed via Sketch Toolbox, didn't work.
Removed. Downloaded zip file of the current master branch. Manually put the files inside Sketch's plug-in folder. Still didn't work.

@rockallite Works Now 💃🏻
Thanks!!

These aren't working for me either. Just stopped working a while back. I've uninstalled/ reinstalled, etc and I can get the flickr images to load in but nothing under persona.... anyone else having this issue?

@alexblakwolf still didn't work T-T

Would really really love this to be fixed please guys.

For those who installed from Sketch Toolbox. Uninstall the plugin in Sketch Toolbox. Follow the instraction. It worked for me. Thanks!

@alexhitch what specifically worked for you? The rest of the plugin works fine, yes. but the "Persona>Photos>Female/Male/Neutral" image generation does NOT work in Sketch 42.

@timuric you closed a duplicate of this issue, but I cannot get this to work even in the latest build from March 6, 2017. please advise.

This has been fixed! I've verified that it works now as of the March 6, 2017 build. Thank you @timuric !

I've installed through the Sketch Toolbox, I've installed manually.  I have the latest version of sketch and content generator plug in and I still don't get persona images.  Any suggestions?


Add & Change options to provide custom MgrCount, MonCount & no. of CephFSActiveMDS, ObjectStoreGateways

LGTM after the CI passes

fixed the CI


Terraform 0.14 upgrade

what
update null label from 0.19.2 to latest
Release notes from 0.22.0:
Breaking change: This release updates minimum Terraform version requirement to 0.12.26
why
Needed to use this module on terraform 0.14 and null label 0.19.2 doesn't support that. If breaking compatibility with terraform 0.12.26 is undesirable then I can point to 0.21.0 of null-label.

/test all


[HUDI-850] Avoid unnecessary listings in incremental cleaning mode

We are unnecessarily scanning partitions for cleans_by_commit mode when there are no sufficient commits accumulated for cleaning.

Let me resolve the conflicts and ping back

Codecov Report

Merging #1576 into master will decrease coverage by 0.00%.
The diff coverage is 80.00%.

@@             Coverage Diff              @@
##             master    #1576      +/-   ##
============================================
- Coverage     71.81%   71.81%   -0.01%
  Complexity      294      294
============================================
  Files           385      385
  Lines         16542    16549       +7
  Branches       1661     1661
============================================
+ Hits          11880    11885       +5
+ Misses         3932     3931       -1
- Partials        730      733       +3

Impacted Files
Coverage Δ
Complexity Δ

...g/apache/hudi/table/action/clean/CleanPlanner.java
86.13% <80.00%> (-1.57%)
0.00 <0.00> (ø)

...le/action/rollback/BaseRollbackActionExecutor.java
70.83% <0.00%> (-6.95%)
0.00% <0.00%> (ø%)

...n/java/org/apache/hudi/index/hbase/HBaseIndex.java
82.77% <0.00%> (-0.48%)
0.00% <0.00%> (ø%)

...able/action/restore/BaseRestoreActionExecutor.java
93.75% <0.00%> (+3.12%)
0.00% <0.00%> (ø%)

...src/main/java/org/apache/hudi/metrics/Metrics.java
67.56% <0.00%> (+10.81%)
0.00% <0.00%> (ø%)

...g/apache/hudi/metrics/InMemoryMetricsReporter.java
80.00% <0.00%> (+40.00%)
0.00% <0.00%> (ø%)

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 c4b7162...44ee5e7. Read the comment docs.

@vinothchandar : Ready for review

@vinothchandar : There is a followup on fixing the quality of unit-tests  (filed HUDI-857). Otherwise, good to review and merge.


Exception: com.google.earlgrey.ElementInteractionErrorDomain

Hello,
I setup EarlGrey 2.0 on my machine and managed to automate a single UI screen where I was able to click on a button but the script has been failing in the subsequent screen identifying ui elements and failing with this exception:
Exception: com.google.earlgrey.ElementInteractionErrorDomain
Upon opening the report I observed the following in the logs
I soon realized I need to tweak  GREYConfiguration but started seeing other errors please advice how to overcome this issue.Greatly appreciate any feedback on this issue.
FYI I tried making these  changes
let greyConfig = GREYConfiguration()
greyConfig.setValue(60.0, forConfigKey:GREYConfigKey.interactionTimeoutDuration)
// greyConfig.setValue(30.0, forConfigKey:GREYConfigKey.caLayerMaxAnimationDuration)
But it failed with
Assertion Failure: GREYConfiguration.m:49: failed: caught "NSInvalidArgumentException", "-[GREYConfiguration setValue:forConfigKey:]: unrecognized selector sent to instance 0x600002520260"
Log Report follows for Exception: com.google.earlgrey.ElementInteractionErrorDomain
UI Test Activity:
Assertion Failure: BofAUITests.swift:75: Exception: com.google.earlgrey.ElementInteractionErrorDomain
Exception Name: com.google.earlgrey.ElementInteractionErrorDomain
Exception Reason: {
"User Info" :   {
"NSLocalizedDescription" : "App not idle within 30 seconds.",
"NSUnderlyingError" : {
"Description Glossary" :   {
"GREYAppStateTracker" : "Waiting for network requests to finish. By default, EarlGrey tracks all network requests. To change this behavior, refer to GREYConfiguration.
Waiting for UIView's draw/layout pass to complete. A draw/layout pass normally completes in the next runloop drain.
Full state transition call stack for all objects:
<CALayer: 0x600001da54a0> => Waiting for UIView's draw/layout pass to complete. A draw/layout pass normally completes in the next runloop drain.
(
0   AppFramework                        0x00000001027c60f9 -[GREYAppStateTrackerObject setState:] + 73
1   AppFramework                        0x00000001027b1a26 __133-[GREYAppStateTracker grey_changeState:usingOperation:forObject:orInternalObjectDeallocationTracker:orExternalAppStateTrackerObject:]_block_invoke + 1302
2   AppFramework                        0x00000001027b0b3f -[GREYAppStateTracker grey_performBlockInCriticalSection:] + 367
3   AppFramework                        0x00000001027b13bd -[GREYAppStateTracker grey_changeState:usingOperation:forObject:orInternalObjectDeallocationTracker:orExternalAppStateTrackerObject:] + 1693
4   AppFramework                        0x00000001027af6a0 -[GREYAppStateTracker trackState:forObject:] + 112
5   AppFramework                        0x00000001027d14e6 -[CALayer(GREYApp) greyswizzled_setNeedsDisplayInRect:] + 134
6   QuartzCore                          0x00007fff2b12db91 -[CALayer setNeedsDisplay] + 44
7   AppFramework                        0x00000001027d18b3 -[CALayer(GREYApp) greyswizzled_setNeedsDisplay] + 355
8   UIKitCore                           0x00007fff48565281 -[UIView(Rendering) setNeedsDisplay] + 82
9   AppFramework                        0x00000001027ecdc3 -[UIView(GREYApp) greyswizzled_setNeedsDisplay] + 355
10  UIKitCore                           0x00007fff48543e60 -[UIView initWithFrame:] + 127
11  UIKitCore                           0x00007fff47a6a3da -[UIControl initWithFrame:] + 64
12  UIKitCore                           0x00007fff47a5a338 -[UIButton initWithFrame:] + 91
13  UIKitCore                           0x00007fff4838928f -[UITextField clearButton] + 113
14  Foundation                          0x00007fff25712bba -[NSObject(NSKeyValueCoding) valueForKey:] + 317
15  UIKitCore                           0x00007fff4838e479 -[UITextField valueForKey:] + 124
16  AccessibilityUtilities              0x00007fff2e5a38c0 __57-[NSObject(UIAccessibilitySafeCategory) safeValueForKey:]_block_invoke + 30
17  AccessibilityUtilities              0x00007fff2e5a3c10 -[NSObject(UIAccessibilitySafeCategory) _accessibilityPerformSafeValueKeyBlock:withKey:onClass:] + 69
18  AccessibilityUtilities              0x00007fff2e5a35e8 -[NSObject(UIAccessibilitySafeCategory) safeValueForKey:] + 236
19  UIKit                               0x0000000111314916 -[UITextFieldAccessibility _accessibilityRightButtons] + 75
20  UIKit                               0x0000000111315261 -[UITextFieldAccessibility accessibilityElements] + 281
21  UIAccessibility                     0x00007fff47494e06 -[NSObject(AXPrivCategory) _accessibilityElements] + 69
22  UIAccessibility                     0x00007fff474b7274 -[NSObjectAccessibility accessibilityElementCount] + 81
23  AppFramework                        0x000000010280a1e3 GREYTraversalExploreImmediateChildren + 1891
24  AppFramework                        0x000000010281036c -[GREYTraversalDFS grey_nextObjectDFS] + 300
25  AppFramework                        0x0000000102810013 -[GREYTraversalDFS enumerateUsingBlock:] + 339
26  AppFramework                        0x0000000102811fcf +[GREYElementHierarchy hierarchyStringForElement:withAnnotationDictionary:] + 783
27  AppFramework                        0x0000000102811c6d +[GREYElementHierarchy hierarchyStringForElement:] + 301
28  AppFramework                        0x000000010281198b __39+[GREYElementHierarchy hierarchyString]_block_invoke + 635
29  AppFramework                        0x0000000102811b2f __39+[GREYElementHierarchy hierarchyString]_block_invoke.19 + 47
30  AppFramework                        0x00000001027ba7e2 __59-[GREYDispatchQueueTracker grey_dispatchSyncCallWithBlock:]_block_invoke + 50
31  libdispatch.dylib                   0x00007fff5223f7b9 _dispatch_client_callout + 8
32  libdispatch.dylib                   0x00007fff5224c861 _dispatch_async_and_wait_invoke + 109
33  libdispatch.dylib                   0x00007fff5223f7b9 _dispatch_client_callout + 8
34  libdispatch.dylib                   0x00007fff5224bc9b _dispatch_main_queue_callback_4CF + 1212
35  CoreFoundation                      0x00007fff23bd4049 CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 9
36  CoreFoundation                      0x00007fff23bceca9 __CFRunLoopRun + 2329
37  CoreFoundation                      0x00007fff23bce066 CFRunLoopRunSpecific + 438
38  GraphicsServices                    0x00007fff384c0bb0 GSEventRunModal + 65
39  UIKitCore                           0x00007fff48092d4d UIApplicationMain + 1621
Thanks

Your app didn't idle within 60 seconds - can you check if you have a network request or an infinite animation? Generally animations are printed in the UI hierarchy.

Thank you very much for the prompt reply.Yes,I do see several network requests with Waiting for network requests to finish even tough the appeared screen is positioned for subsequent actions.I pasted one below as example .Is there anyway I can overcome this?would you recommend somehow explicitly instruct in code to whitelist or ignore certain urls for synchronization?please advice how it can be done in Earlgrey 2 using Swift.
NSCFLocalDataTask:0x7fe26cc05610, URL:"https://yfjkbjkbjk/ghjgbjkjkk/use/
<__NSCFLocalDataTask:0x7fe28ce10b60,
Waiting for network requests to finish. By default, EarlGrey tracks all network requests. To change this behavior, refer to GREYConfiguration.

This implementation helped me resolve the issue
let urls: [String] = [".abc.",".pqr.]
let greyConfig = GREYConfiguration.shared
greyConfig.setValue(urls, forConfigKey:GREYConfigKey.urlBlacklistRegex)


Add APIs for graceful drain

This patch adds the following APIs for supporting graceful drain:
(1) Inputhost Admin - SealExtent() API to be called by the controller
to start the graceful drain
(2) Controller Admin - InitiateDrain() API to trigger the drain process
from input and/or store
(3) New InputHost command type to send DRAIN command to the clients.
Note: A couple of things:

Since we are just using the SealExtent API, I just moved the SealRequest
definition to shared.thrift and is used by both store and admin.
Since now we include shared.thrift, there was a name collision with
ListDestinations and so had to rename it to ListLoadedDestinations.

Note: The StartUpgrade() APIs to hook with the deployment framework will be added later when we address the drain during deployment.

Abandoning this PR.. have a recent PR with uptodate master.


jsdom update

Can someone update jsdom to version 2.0.0?
Zombie js have problem with html5 dom elements.
Regards

jsdom is now actually at v3, it'll be great to have zombie updated.
(if only it was not written in coffeescript ;)

Master is now using JSDOM 3.1.0 and you can get the pre-release from npm, but see CHANGELOG for breaking changes.


Getting com.google.gson.stream.MalformedJsonException on all API calls

I have a strange problem: on our development machines, all calls to the MangoPay API work very well, but on our test server I get this exception for ALL calls to the API:
com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 25 path $
Would anyone know where that could come from and how to address that?
Thanks a lot!

never mind, it was a completely unrelated config issue. No clue why it manifested itself in such a cryptic way

The issue is back, in fact it's not a config issue in the end. It appears to be intermittent - which means it is also unrelated to the server itself. If I let the server run long enough, at some point the problem occurs, and then there is no turning back, once this error happens, ALL subsequent API calls fail. The only option is to restart the server.
So any idea/help would indeed be much appreciated.

Hello @thonier and sorry for this late answer.
I guess this issue is always not recurring one on your side?
We will try to reproduce and understand what happen on SDK / Server side, and fix what could/should be fixed if relevant.
Thanks for your feedback, we will keep you posted here with any useful updates.
Mickaël

Hello @thonier,
Is this issue still present, if so can you please provide some extra information?
Thank you,
Cosmin

Hi guys,
the issue has not happened in a little while, no idea what (if anything) triggers it. We are due to do some more mangopay testing this week, so we may get "lucky" and see the issue again. I will report as soon as I see anything.
Thanks.

So it does seem to happen consistently on our test server when doing a mango User creation - with the stack trace above. However if I attempt to debug it locally, all goes well, so no idea what is going on. Not sure how to get you more info on that.
Any suggestion?

Not sure if that helps, but I have compiled from source and added some debug log. It turns out the faulty message you are trying to parse (and which comes back from Mango presumably) is:
<title>403 Forbidden</title>
403 Forbidden

cloudflare
That makes no sense to me, but maybe it does to you?
Thanks

So I figured out what triggered the 403 issue, though I have no idea why.
We had the following piece of code somewhere which was sometimes called. As soon as it was, the  MangoPay SDK would instantly stop working.
          Security.addProvider(new com.sun.net.ssl.internal.ssl.Provider());
          TrustManager[] trustAllCerts = new TrustManager[]{
              new X509TrustManager() {
                  public X509Certificate[] getAcceptedIssuers() {
                      return null;
                  }
                  public void checkServerTrusted(X509Certificate[] certs, String authType) throws CertificateException {
                      return;
                  }
                  public void checkClientTrusted(X509Certificate[] certs, String authType) throws CertificateException {
                      return;
                  }
              }
          };
          SSLContext sc = SSLContext.getInstance("SSL");
          sc.init(null, trustAllCerts, new SecureRandom());
          HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
          HostnameVerifier hv = new HostnameVerifier() {
              public boolean verify(String urlHostName, SSLSession session) {
                  if (!urlHostName.equalsIgnoreCase(session.getPeerHost())) {
                      System.out.println("Warning: URL host '" + urlHostName + "' is different to SSLSession host '" + session.getPeerHost() + "'.");
                  }
                  return true;
              }
          };
          HttpsURLConnection.setDefaultHostnameVerifier(hv);

On our end we can remove this "not so safe" code anyways, but you may want to add some protection our your end to prevent possible global side effects like this one.
Thanks.

I get the same error when creating a new UboDeclaration with SDK v2.7.0:
12:05:15,548 ERROR [stderr] (default task-10) com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 18 path $
12:05:15,555 ERROR [stderr] (default task-10) 	at com.google.gson.JsonParser.parse(JsonParser.java:65)
12:05:15,555 ERROR [stderr] (default task-10) 	at com.google.gson.JsonParser.parse(JsonParser.java:45)
12:05:15,555 ERROR [stderr] (default task-10) 	at com.mangopay.core.RestTool.checkResponseCode(RestTool.java:1076)
12:05:15,555 ERROR [stderr] (default task-10) 	at com.mangopay.core.RestTool.doRequest(RestTool.java:426)
12:05:15,556 ERROR [stderr] (default task-10) 	at com.mangopay.core.RestTool.request(RestTool.java:142)
12:05:15,556 ERROR [stderr] (default task-10) 	at com.mangopay.core.APIs.ApiBase.createObject(ApiBase.java:242)
12:05:15,556 ERROR [stderr] (default task-10) 	at com.mangopay.core.APIs.ApiBase.createObject(ApiBase.java:260)
12:05:15,556 ERROR [stderr] (default task-10) 	at com.mangopay.core.APIs.implementation.UserApiImpl.createUboDeclaration(UserApiImpl.java:243)

All other calls are working fine.

Hi All,
https://github.com/Mangopay/mangopay2-java-sdk/pull/150/files
A big gson was released last autumn
This should resolve a number of these issues, please contact us if problems persist
Max


Remove users without access

Q
A

Branch?
1.x

Bug fix?
no

New feature?
yes

License
MIT

Automatically remove users that do not have access anymore.
We could also introduce a setting, so we don't accidentally delete users which are for example authors in blog posts, or the like. WDYT @bytehead ?

I like the idea of a configuration setting. Project or environment?


Add support for AllOf and AnyOf blocks

Adds a new variant for the ModelData enum to support allOf and anyOf blocks.
Signed-off-by: Matteo Joliveau<EMAIL_ADDRESS>

Thanks again! However, these models will only be available for manually creating structures. If it's ok, I'll publish the version now. Probably later there will be some kind of macro for this, or it will be used for serde(flatten).

@Rexagon yes it's perfectly fine, thank you! I needed it while manually implementing the trait for a pagination wrapper so that it generates a custom schema for each generic T.
I encountered the same issue as #10 and this is the best way I found to work around it
e.g.:
struct Page<T> {
  cursor: String,
  items: Vec<T>,
}

// Page<User> where User: OpgModel

"UserPage": {
  "allOf": [
    {
      "type": "object",
      "properties": {
        "cursor": {
          "description": "cursor",
          "type": "string",
          "format": "opaque",
          "example": "MQ=="
        }
      },
      "required": [
        "cursor"
      ]
    },
    {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/components/schemas/User"
          }
        }
      },
      "required": [
        "items"
      ]
    }
  ]
},


iOS 6 does not work with gdx-pay 0.9.2 GDX version 1.8.0 RovoVM version 1.12.0

Tried this today with a non-consumable purchase and it did not work at all. Listeners seem to get either very delayed or not called at all.
The problem build is: xCode 6.4.2 built on Mars.2
RovoVM version 1.12.0
GDX version 1.8.0
gdx-pay: 0.9..2
Frequent crashing. General mayhem. I've rolled back to 0.8.0 (libgdx version 1.7.0 robovm version 1.8.0) for iOS which appears to work perfectly so far.
P.S. I'm running an iPod touch with iOS 6. Quite old, I know, but I'm sure some people still have them.

Hi,
I have no Apple devices any more with iOS versions older than 8.1, so I cannot test on versions older than that one.
Do you have any error message or stack trace?
22-07-2015 one of Robovm developers wrote:
"Technically we can support iOS 6, but our official support starts with iOS 7."
https://groups.google.com/forum/#!topic/robovm/13C4zRGT3Vg
So I think that anything older than iOS 7 might cause crashes.

That's a problem of RoboVM that doesn't support anything older than iOS 7. Cannot fix on our end.


QnA + LUIS

any example of working code of LUIS and QnA in node js? would be very helpful.

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

ID: 3041fcf6-3b37-8d88-4d16-73ad0f841b78
Version Independent ID: 76c146ee-7c51-9486-9a76-cac90ca9b674
Content: Integrate QnA Maker and LUIS - Microsoft Cognitive Services - Azure
Content Source: articles/cognitive-services/QnAMaker/Tutorials/integrate-qnamaker-luis.md
Service: cognitive-services
GitHub Login: @nstulasi
Microsoft Alias: saneppal

@vivekjainAco Hi, thanks for your feedback here. I have assigned the author to update the document properly.
@nstulasi Hi, this is a doc-enhancement issue, can you please check it and update the document as necessary? Thanks a lot!

Hello @YutongTie-MSFT! I discovered that you can implement QnA + LUIS in two different ways. One is referenced in this documentation, and as @vivekjainAco said it would be very helpful have it in Node.js because I spent days to find Node.js functions. But it will also help show the example that you can connect Qna+LUIS at the same level.
Thanks :D

Was this ever updated with the Node.js functions for doing this? I'm looking to implement this in a bot I'm working on. Thank you!

@retrospct This doc is for Bot SDK 3.x. Are you looking for a 4.x version? Or are you saying that even as a 3.x, the doc as written doesn't work?

@retrospct @vivekjainAco  @elena20ruiz This document has been corrected to work with Azure Bot Service using Bot Framework 3.x SDK. A 4.x version is in planning. Please let me know if you have any issues with the current document as written.

@diberry Thanks Dina!
@vivekjainAco We will now proceed to close this thread. If there are further questions regarding this matter, please respond here and @YutongTie-MSFT and we will gladly continue the discussion.


prepare for v1.3 development

The 'Check CRD version updated failure is expected:
old_version=1.2.4
new_version=1.3.0
CustomResourceDefinitionSchemaVersion in pkg/k8s/apis/cilium.io/v1alpha1/version.go to be updated only in case of modifying the files pkg/k8s/apis/cilium.io/client/crds/v1alpha1/*.yaml


When regminer executes the test cases, some processes cannot be killed.

Describe the bug
When regminer executes the test cases, some processes cannot be killed. I found that these processes belong to the alibaba/fastjson project. This will cause possible memory leaks on the system where regminer is deployed.
To Reproduce
Run regminer on alibaba/fastjson
Expected behavior
A large number of test processes that should be killed still exist, causing the system memory to fill up.
Screenshots

Desktop (please complete the following information):

OS: Ubuntu 20.04
JDK1.8

A process details ：
sr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -jar /root/miner/cache_projects/alibaba_fastjson/1787_buggy/target/surefire/surefirebooter1212182608490289421.jar /root/miner/cache_projects/alibaba_fastjson/1787_buggy/target/surefire/surefire3991562707289642302tmp /root/miner/cache_projects/alibaba_fastjson/1787_buggy/target/surefire/surefire_03840091706907279078tmp

it seems also appear in other projects

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -jar /root/miner/cache_projects/jmrozanec_cron-utils/105_buggy/target/surefire/surefirebooter8526133856542306248.jar /root/miner/cache_projects/jmrozanec_cron-utils/105_buggy/target/surefire/surefire5016071015820502919tmp /root/miner/cache_projects/jmrozanec_cron-utils/105_buggy/target/surefire/surefire_03261721006994409905tmp


Removing Parameters associated type from the Endpoint protocol

Endpoint protocol includes an associated type named Parameters but I don't understand what this type contributes in this case, I mean, we can define an endpoint as a struct which implements Endpoint protocol like:
private struct MockEndpointWithParameters: Endpoint {

    let name: String
    let age: Int

     ...
 }

so you will instantiate the endpoint like
let endpoint = MockEndpointWithParameters(name: "Daniel", age: 20)

we could remove the function where Parameters are being used and just include a couple of properties to the protocol:
public protocol Endpoint {
    associatedtype RequestBody = Empty
    associatedtype ResponseBody = Empty
    associatedtype Auth: _EndpointAuth = EndpointAuth.None

    /// The HTTP method of the endpoint.
    var method: HTTP.Method { get }

    var path: String { get }

    var queryItems: [URLQueryItem] { get }

    /// Serializes the request body into the given URLRequest.
    func serializeBody(_ body: RequestBody, into request: inout URLRequest) throws

    /// Deserializes the response body from the received data.
    func deserializeBody(_ data: Data) throws -> ResponseBody
}

and then we could even remove the corresponding parameters param from the request method.

Solved in https://github.com/nomasystems/nclient/pull/8

Solved in https://github.com/nomasystems/nclient/pull/8


[bug]: MacOSX/M1 Flux workflow 5.0.0: TypeError: BFloat16 is not supported on MPS

Is there an existing issue for this problem?

[X] I have searched the existing issues

Operating system
macOS
GPU vendor
Apple Silicon (MPS)
GPU model
Mac M1PRO
GPU VRAM
64GB
Version number
5.0.0
Browser
Safari
Python dependencies
2024-09-30 18:17:29,099]::[InvokeAI]::ERROR --> Error while invoking session d89a3487-6d47-47c4-a615-81c1b00afe3f, invocation 334ced98-d3a4-4e20-b1e6-5130a4af608a (flux_denoise): BFloat16 is not supported on MPS
[2024-09-30 18:17:29,099]::[InvokeAI]::ERROR --> Traceback (most recent call last):
File "/Users/massa/AI/.venv/lib/python3.11/site-packages/invokeai/app/services/session_processor/session_processor_default.py", line 129, in run_node
output = invocation.invoke_internal(context=context, services=self._services)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/massa/AI/.venv/lib/python3.11/site-packages/invokeai/app/invocations/baseinvocation.py", line 290, in invoke_internal
output = self.invoke(context)
^^^^^^^^^^^^^^^^^^^^
File "/Users/massa/AI/.venv/lib/python3.11/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File "/Users/massa/AI/.venv/lib/python3.11/site-packages/invokeai/app/invocations/flux_denoise.py", line 98, in invoke
latents = self._run_diffusion(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/massa/AI/.venv/lib/python3.11/site-packages/invokeai/app/invocations/flux_denoise.py", line 115, in _run_diffusion
flux_conditioning = flux_conditioning.to(dtype=inference_dtype)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/massa/AI/.venv/lib/python3.11/site-packages/invokeai/backend/stable_diffusion/diffusion/conditioning_data.py", line 47, in to
self.clip_embeds = self.clip_embeds.to(device=device, dtype=dtype)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: BFloat16 is not supported on MPS
[2024-09-30 18:17:29,107]::[InvokeAI]::INFO --> Graph stats: d89a3487-6d47-47c4-a615-81c1b00afe3f
Node   Calls   Seconds  VRAM Used
flux_model_loader       1    0.001s     0.000G
flux_text_encoder       1    0.000s     0.000G
rand_int       1    0.000s     0.000G
flux_denoise       1    0.004s     0.000G
TOTAL GRAPH EXECUTION TIME:   0.005s
TOTAL GRAPH WALL TIME:   0.006s
RAM used by InvokeAI process: 4.11G (+0.000G)
RAM used to load models: 0.00G
RAM cache statistics:
Model cache hits: 0
Model cache misses: 0
Models cached: 0
Models cleared from cache: 0
Cache high water mark: 0.00/0.00G
What happened
TypeError: BFloat16 is not supported on MPS
What you expected to happen
Render image
How to reproduce the problem
Any standard FLUX1.0 workflow (Flux Dev Quant, Flux Schnell Quant) to standard invoke with prompt.
Additional context
Happens every time.
Discord username
No response

5.0.2 has the same problems.

If we assume the endpoint of this is to get flux working, then you'll need to upgrade torch to a nightly version, that should l resolve the error your getting, but you'll bump into another error about float64 not being supported, you'll need to edit
that reference in invokeai/backend/flux/math.py from float64 to float32.
That should get the full versions of Flux.1 [dev] and Flux.1 [schnell] working.
Quantised versions, you're out of luck, the library used to support those isn't compatible with MacOS (and I believe Windows, AMD GPU's and Intel GPU's too ,some of that might be out of date)

I'm getting this error when trying to use flux : RuntimeError: "arange_mps" not implemented for 'BFloat16'
Is there a fil I should modify? I updated to torch nightly.

Torch nightly should work, unless the release of 2.5.0 has changes what's in the nightly release,  the fix was merged into the repository as https://github.com/pytorch/pytorch/pull/136754 and I've used nightly to work around this for a few weeks now.
Having said that, I created a pull release for working around that issue using PyTorch 2.4.1 which was approved a few minutes ( https://github.com/invoke-ai/InvokeAI/pull/7113 ) ago so hopefully the next release will have that in.
If you bring that in a suggest that into grab the code from https://github.com/invoke-ai/InvokeAI/pull/7140 which is currently waiting approval as that'll stop the t5encoder being loaded in as float32 on Macs.

I still can't use Flux on Mac even in 5.4.0:
[2024-11-05 08:17:00,624]::[InvokeAI]::INFO --> Patchmatch initialized
[2024-11-05 08:17:02,135]::[InvokeAI]::INFO --> Using torch device: MPS
[2024-11-05 08:17:02,641]::[uvicorn.error]::INFO --> Started server process [16036]
[2024-11-05 08:17:02,641]::[uvicorn.error]::INFO --> Waiting for application startup.
[2024-11-05 08:17:02,642]::[InvokeAI]::INFO --> InvokeAI version 5.4.0

Result: black images. No error messages.

Have you set precision tp bfloat16 ?

No I have not. Where do I do that?

In your invokeai.yanl file...
mine looks like
# Internal metadata - do not edit:
schema_version: 4.0.2

# Put user settings here - see https://invoke-ai.github.io/InvokeAI/features/CONFIGURATION/:
outputs_dir: /Users/Vargol/invokeai/outputs
vram:  1
device: mps
precision: bfloat16

That works (using invokeai.yaml). Many thanks! 🙏

Not to dig this up but I'm having issues following the "steps" in here.
I'm trying to FLUX dev and getting the same BFloat16 is not supported on MPS issue -- so I try to upgrade torch, but when I try to do that it only goes up to 2.2.2, and refuses to "find" a version above that, despite 2.5.0 and now 2.5.1 being released.
Any ideas on what the issue might be?

Not to dig this up but I'm having issues following the "steps" in here.
I'm trying to FLUX dev and getting the same BFloat16 is not supported on MPS issue -- so I try to upgrade torch, but when I try to do that it only goes up to 2.2.2, and refuses to "find" a version above that, despite 2.5.0 and now 2.5.1 being released.
Any ideas on what the issue might be?

Sounds like you're still on a oldish version of InvokeAI (torch 2.4.1 as default came be a release or two including rc's after Flux was added to InvokeAI)  and  pip is hitting a hard requirement for a lower version torch, maybe from torchvision.
Try
pip uninstall torch torchvision
pip install torch==2.4.1 torchvision==0.18.1

I do not recommend torch 2.5.1 it has a massive issue with MPS , using way more memory and  30% slower. That was 'fixed' in the nightlies  which use a touch more memory that 2.4.1 but are ~ 10% faster than even 2.4.1
if you want to try a nightly try
pip uninstall torch torchvision
pip install --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cpu

@Vargol thanks for your reply! I just tried both things (in the invokeai venv, as I assumed that was needed) and still no luck:
When I try this:
pip uninstall torch torchvision
pip install torch==2.4.1 torchvision==0.18.1

My terminal returns this:
ERROR: Could not find a version that satisfies the requirement torch==2.4.1 (from versions: 2.0.0, 2.0.1, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2)
ERROR: No matching distribution found for torch==2.4.1

I'm not sure why but it seems to think that the most recent version is 2.2.2 - is there a way I can force it to check elsewhere? or could I point it to install a package I'd downloaded manually instead, and make it accept that its version is higher than 2.2.2?
When trying the nightly route with:
pip uninstall torch torchvision
pip install --pre torch torchvision --index-url https://download.pytorch.org/whl/nightly/cpu

I get an error as well:
ERROR: Could not find a version that satisfies the requirement torch (from versions: none)
ERROR: No matching distribution found for torch

What version of MacOS are you on ? I suspect you're going to be on a 13.x

Are you on Intel or did you use Brew from before it was properly supported Apple Silicon, Brew encouraged people to set their terminal to run via X86 emulation which makes everything run from terminal install the x86 versions and torch 2.2.2 was the last version that supported x86.
I you still have the logs from pip installing 2.2.2 look for a line like this (only for 2.2.2)
Using cached torch-2.5.1-cp311-none-macosx_11_0_arm64.whl (63.9 MB)
Using cached torchvision-0.20.1-cp311-cp311-macosx_11_0_arm64.whl (1.8 MB)
and see if its installing  ...arm64.whl  or  something intel-ish like x86_64.whl

I think that's it - I installed Brew on an intel machine and just migrated that with everything to Apple Silicon.
I ran brew config and it definitely looks intel-ish: it reports that the OS is macOS: 15.1-x86_64
I'll see if I can change that in place or just re-install; though that might take a while as I have a few things using Brew.
In the meantime, I'm trying to run this in Stability Matrix -- It's downloading the model now so we'll see in a bit but in looking at the python packages in the image, it looks like it has torch 2.4.1; so fingers crossed.
I'll report back.

Update - I can confirm that my issue is that my version of brew got carried through to my Apple Silicon system from my Intel based Macbook Pro; and so that limits my version of pytorch to 2.2.2 as @Vargol mentioned.
My solution currently is to run InvokeAI through Stability Matrix - It's very simple and I'm not mad at all to not be running it "natively".
@Vargol I'm not sure about the hows/whos/wheres/whens but it may be worth noting that as an installation method. It effectively runs containerized with full access to Apple Silicon GPUs.
The fix I'd have to carry out to run it natively in case anyone would like to have confirmation in the future, would be to uninstall brew, and all the packages that brew installed and then reinstall brew on the Apple Silicon chip to get the correct version, then re-install from there. That's not the most effective solution for me at the moment so I'll carry on using Stability Matrix.


Understanding your tutorial using the Norman (2019) data ...

I got CPA 0.8.2 and followed the tutorial "Predicting single-cell response to unseen combinatorial CRISPR perturbations". The goal is to predict gene expression response to perturbation responses of X+Y when you have seen single cells from X and Y.
I can reproduce all the results from the tutorial, but I have difficulties to understand some points :-(

adata.obs['split'] is filled randomly with 'train', 'valid' and 'test' values and then used for training the CPA model. But if the goal is to predict the effect of perturbations X+Y when I have only seen perturbations X and Y separately, then I should not provide X+Y in the training data !? So, is the construction of adata.obs['split'] correct ??

I thought the whole point of CPA is to disentangle the effects of different perturbations in such a way that I can later apply such perturbations in different combinations. However, the model.predict() method that is used in the tutorials does not take any parameters to indicate which perturbations should be predicted. How does CPA know which perturbations to apply?  And how can I specify that?

It seems I'm missing here something important and I'm grateful for any help!

Ah, okay, thanks for that information.
But the cond_harm column takes a single value and not a list, which means that I can only apply a single perturbation to the basal latent representation. Is that correct ?
And the content of dosage_key are strings like '1.0+1.0' (and not float values). Then, how can I specify a new value (e.g. 1.5) in a way that CPA understands it?
Thanks

You can apply combinations of perturbations. CPA uses strings with the following format for specifying perturbations and dosage values in the adata:

The value of the cond_harm column:

"PERT1" --> A single perturbation (e.g. "SGK1")
"PERT1+PERT2" --> Combination of perturbations PERT1 and PERT2 (e.g. "FOXL2+HOXB9")
So you can specify your combination of perturbations using the + character as the split between different perturbations and CPA will understand them.

The same thing applies to the dosage column. The dosages are given to the model as strings of the following format:

"1.0" --> Dosage 1.0 when we have one perturbation. (e.g. "1.5" or any other number)
"1.0+1.5" --> Dosages 1.0 and 1.5 for PERT1 and PERT2 respectively.
CPA will split these strings using the + character and converts the string numbers to floats ("1.0+1.5" --> [1.0, 1.5])

It is actually done in the setup_anndata method of the model:
https://github.com/theislab/cpa/blob/c63d5cf5cfc70c410ca9d95fb3b92fc71018c6f1/cpa/_model.py#L294-L317
As you can see in the code, setup_anndata creates lists of perturbation ids and respective dosages from the given strings in the perturbation and dosage columns of adata.obs and saves them in adata.obsm and uses this as the input data to the model, for example:

If you check your adata after running setup_anndata you will see the following obsm values:

obsm: 'X_pca', 'X_umap', 'perts', 'perts_doses', 'deg_mask', 'deg_mask_r2'

Here perts is the list of perturbation IDs which is used to retrieve perturbation embeddings from the PerturbationNetwork and pert_doses is the respective dosages.
1 perturbation:

ID zero for perturbations is used for padding because vectors need to be the same length.

2 perturbations:

I hope this helps and again, free to reply if there are further issues.

Very good, that's what I was looking for !
Actually, I only now looked at your "Batch Correction in Expression Space" tutorial with the description of custom_predict( ) and how to use it. That is obviously the function I need !
Many thanks

I think we can close this issue...

I am sorry, but I have to reopen this :-(
Looking at custom_predict I see that it allows me to select individual categorical covariates  that I want to add, but it only allows me to add all or none perturbations. So that means if I want to add individual perturbations, I have to follow your advice from above !?
I think, I'm also confused what the difference is between perturbations and categorical covariates. I thought perturbations would be continuous variables, but in many of the tutorials the perturbation comes in form of discrete values (IFN stimulation or not, gene knockout or not, etc). Does that mean these tutorials could have been written differently by declaring those 'perturbations' as categorical covariates ??
Thanks


IOError

Traceback (most recent call last):
File "Inspy.py", line 28, in
start_logger(args.company)
File "C:\InSpy-master\lib\logger.py", line 6, in start_logger
handler = logging.FileHandler('./logs/{}{}.log'.format(company.replace(' ', ''), time_format.replace(' ', '_')))
File "C:\Python27\lib\logging_init_.py", line 920, in init
StreamHandler.init(self, self.open())
File "C:\Python27\lib\logging_init.py", line 950, in _open
stream = open(self.baseFilename, self.mode)
IOError: [Errno 22] invalid mode ('a') or filename: 'C:\InSpy-master\logs\acme_2018-12-03_00:11:38.log'

the same as me in win10 python=2.7 after running InSpy acme --domain acme.com --email first.last --xml file


PR fixes following issue(s)
Fixes #26769
Media
Type of change

New feature (non-breaking change which adds functionality)

Testing
How Has This Been Tested?

[x] Manual
[ ] JUnit
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

New Features

Implemented auto-commit functionality for Git-connected applications to automatically commit changes after certain events.
Added progress tracking for auto-commit operations.
Introduced new analytics event tracking for auto-commit actions.

Enhancements

Improved Git utilities with additional checks for migration requirements and auto-commit settings.
Enhanced event handling for auto-commit processes, including DSL migration and file system operations.

Bug Fixes

Fixed an issue where an empty input set in GsonUnorderedToOrderedConverter could cause errors.

Documentation

Marked GsonCollectionAdapter as deprecated, indicating it will be removed in future releases.

Tests

Added new test cases for auto-commit functionality, ensuring robustness and reliability.
Expanded test coverage for Git utility methods and event handling related to auto-commit.

Refactor

Deprecated unused code to streamline the codebase and prepare for future cleanup.

I have one comment, instead of fetching the entire app resource from the file system, can we just read page data? Although majority of the size comes from widget, we can still save about ~30% of IO. What are your thoughts on this?

@AnaghHegde Thank you for pointing this out. I completely agree with the idea. Bringing this change This will take sometime because we need to refactor the JSON construction code. I'll create a separate PR for that as the current PR is blocking the UI development.

/ok-to-test sha=9e6ec0d

/ok-to-test sha=c60aab2

/ok-to-test sha=498b941

/ok-to-test sha=129ea27

/ok-to-test sha=950e65e

/ok-to-test sha=cece270

I have one comment, instead of fetching the entire app resource from the file system, can we just read page data? Although majority of the size comes from widget, we can still save about ~30% of IO. What are your thoughts on this?

@AnaghHegde Thank you for pointing this out. I completely agree with the idea. Bringing this change This will take sometime because we need to refactor the JSON construction code. I'll create a separate PR for that as the current PR is blocking the UI development.

Can you please create github issue for this, so that we will not miss this?


Exception while simulating the effect of invoking 'comments/count'

I'm getting this error which disappears when I restart Meteor; then everything works until I refresh the page.
I've just put in the comments as per docs, no custom templates, settings, schema changes or anything:
Am I missing something? How can I go about debugging this? (I'm new to Meteor)
template:
`
{{> commentsBox id=_id}}
`
Packages:
accounts-password           1.1.4
aldeed:autoform             5.8.1
aldeed:collection2          2.8.0
aldeed:simple-schema        1.5.3
arkham:comments-ui          0.2.14
blaze-html-templates        1.0.1
cfs:gridfs                  0.0.33
cfs:standard-packages       0.5.9
dburles:collection-helpers  1.0.4
dburles:google-maps         1.1.5
ecmascript                  0.1.6*
es5-shim                    4.1.14
fourseven:scss              3.4.1
iron:router                 1.0.12
jquery                      1.11.4
mdg:geolocation             1.1.0*
meteor-base                 1.0.1
mobile-experience           1.0.1
momentjs:moment             2.11.1
mongo                       1.1.3
session                     1.1.1
standard-minifiers          1.0.2
tracker                     1.0.9
zurb:foundation-sites       6.1.2
Stack Trace:
Meteor.makeErrorType/errorClass@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:525:15
check@http://localhost:3000/packages/check.js?9c4972d3f4fe56cd455d3022e70b5195e642fc41:61:15
["comments/count"]@http://localhost:3000/packages/arkham_comments-ui.js?419d3591a620751f1206be4dec71c1d26e1df0cc:479:7
.apply/stubReturnValue<@http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3911:20
.withValue@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:971:17
.apply@http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3902:31
.call@http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3780:12
Template.commentsBox.rendered@http://localhost:3000/packages/arkham_comments-ui.js?419d3591a620751f1206be4dec71c1d26e1df0cc:1386:5
runTemplateHooks@http://localhost:3000/packages/aldeed_template-extension.js?198fda9390ae7785a7535751677cd8247508c9eb:417:5
templateExtensionMasterHook@http://localhost:3000/packages/aldeed_template-extension.js?198fda9390ae7785a7535751677cd8247508c9eb:366:5
fireCallbacks/<@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3330:9
Template._withTemplateInstanceFunc@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3671:12
fireCallbacks@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3326:3
Template.prototype.constructView/<@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3419:5
Blaze.View.prototype.onViewReady/fire/</<@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:1780:11
Blaze._withCurrentView@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:2211:12
Blaze.View.prototype.onViewReady/fire/<@http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:1779:9
Tracker._runFlush@http://localhost:3000/packages/tracker.js?7776276660c988c38fed448d8262b925dffb5bc3:523:11
onGlobalMessage@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:365:11
EventListener.handleEvent*usePostMessage@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:374:5
@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:403:3
@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:256:2
@http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:11:2

Do you only have this error with Meteor? Also what OS do you use?

Yes, only meteor. I'm on OSX 10.10 but it happens with my staging deployed app (meteor.com) as well. The stack trace above if from the browser but the server is spitting out something very similar.

i am using development environment as webstrom and windows 10
i used this code:

User Review

        {{> commentsBox id=_id }}

and configured code:
Comments.ui.config({
template: 'bootstrap' // default 'semantic-ui'
});
it gives exception like this in browser:
Exception while simulating the effect of invoking 'comments/count' errorClass {message: "Match error: Expected string, got object", path: "", sanitizedError: errorClass, errorType: "Match.Error"}errorType: "Match.Error"message: "Match error: Expected string, got object"path: ""sanitizedError: errorClassstack: (...)get stack: get stack()set stack: set stack()proto: Middle Error: Match error: Expected string, got object
at check (http://localhost:3000/packages/check.js?9c4972d3f4fe56cd455d3022e70b5195e642fc41:61:15)
at Meteor.methods.comments/count (http://localhost:3000/packages/arkham_comments-ui.js?2fcac61af1bd536c1deb35fe513ce8d1c95a7f80:478:7)
at http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3911:25
at _.extend.withValue (http://localhost:3000/packages/meteor.js?9730f4ff059088b3f7f14c0672d155218a1802d4:971:17)
at _.extend.apply (http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3902:54)
at _.extend.call (http://localhost:3000/packages/ddp-client.js?250b63e6c919c5383a0511ee4efbf42bb70a650f:3780:17)
at Template.commentsBox.rendered (http://localhost:3000/packages/arkham_comments-ui.js?2fcac61af1bd536c1deb35fe513ce8d1c95a7f80:1385:12)
at runTemplateHooks (http://localhost:3000/packages/aldeed_template-extension.js?198fda9390ae7785a7535751677cd8247508c9eb:417:10)
at templateExtensionMasterHook (http://localhost:3000/packages/aldeed_template-extension.js?198fda9390ae7785a7535751677cd8247508c9eb:366:5)
at http://localhost:3000/packages/blaze.js?9391df93ba5076c2cfc61ee68724eb79b65f00d9:3330:22
and on terminal like this:
Exception from sub comments/reference id pmmaWvR8CjMrqy7YE Error: Match error: Expected string, got object
at check (packages/check/match.js:33:1)
at [object Object].Comments.get.collection.find.referenceId (packages/arkham_comments-ui/lib/model.js:439:1)
at [object Object].prepareOptions (packages/reywood_publish-composite/packages/reywood_publish-composite.js:440:1)
at [object Object].handler (packages/reywood_publish-composite/packages/reywood_publish-composite.js:408:1)
at maybeAuditArgumentChecks (livedata_server.js:1698:12)
at [object Object]..extend.runHandler (livedata_server.js:1023:17)
at [object Object]..extend.startSubscription (livedata_server.js:842:9)
at [object Object]..extend.protocol_handlers.sub (livedata_server.js:614:12)
at livedata_server.js:548:43
Sanitized and reported to the client as: Match failed [400]
Exception while invoking method 'comments/count' Error: Match error: Expected string, got object
at check (packages/check/match.js:33:1)
at [object Object].Meteor.methods.comments/count (packages/arkham_comments-ui/lib/model.js:431:1)
at maybeAuditArgumentChecks (livedata_server.js:1698:12)
at livedata_server.js:708:19
please give some advise to change something if needed.
thank you...

Which version of meteor do you use?

I am using meteor 1.2.1

Can you provide reproduction steps? Can you try creating a new app from start and seeing if the error also occurs?

ok I will try and then tell you..
thank you for consideration.

I'm currently trying to do a repo to reproduce. For what it's worth, I've noticed a few things so far:

I get tons of errors (template not found etc) when no accounts package is installed – which does make sense I suppose.
I got the error when I didn't have the accounts-ui package installed but adding that package to my original project didn't fix the error there...

okay, I'll create a new issue for that.

I ended up implementing comments with the public api in the package (stripped down features though, I didn't need all of them) which works fine. It's probably not a big help but might work for anyone else looking for a workaround in the meantime.

I'm working on v1 of this package and will have a look soon at if there are any problems when adding that version to an empty meteor project.

Please test this behaviour with 1.0

I've tested this locally and couldn't reproduce it, please provide a repository or steps with 1.0

this error seems to be like there yet
this is what I'm getting in my console
Exception while simulating the effect of invoking 'comments/count' Object { stack: "Meteor.makeErrorType/errorClass@htt…", message: "Match error: Expected string, got u…", path: "", sanitizedError: Object, errorType: "Match.Error" } Meteor.makeErrorType/errorClass@http://localhost:3000/packages/meteor.js?hash=e3f53db3be730057fed1a5f709ecd5fc7cae1229:566:20
require<.node_modules.meteor.check["match.js"]</exports.check@http://localhost:3000/packages/check.js?hash=63d7478b74cadc04d378bc2266ea8bd1bf6849d8:67:15
commentsCount@http://localhost:3000/packages/arkham_comments-ui.js?hash=39ba789aefd7ac4287f1dbc5bef3ffe8edebeabc:1046:7
.apply/stubReturnValue<@http://localhost:3000/packages/ddp-client.js?hash=bc32a166cd269e06a394f9418e0024d805bab379:3973:20
.withValue@http://localhost:3000/packages/meteor.js?hash=e3f53db3be730057fed1a5f709ecd5fc7cae1229:1077:17
.apply@http://localhost:3000/packages/ddp-client.js?hash=bc32a166cd269e06a394f9418e0024d805bab379:3964:31

Please create a new issue if this keeps persisting


Update default configurations for wholestagetransform

What changes were proposed in this pull request?
this patch sets the default value of spark.gluten.sql.columnar.wholestagetransform to true in the configuration page, to align with the value in code.
The non wholestage transform code path is buggy and we probably do not allow uses to set this to false
Signed-off-by: Yuan Zhou<EMAIL_ADDRESS>How was this patch tested?
no tests required

related: https://github.com/oap-project/gluten/issues/799


gnomeExtensions.system-monitor: unbreak with newer GNOME Shell

Motivation for this change
https://discourse.nixos.org/t/installing-gnome-system-monitor/8057
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[x] Tested running GNOME Shell 3.36 with the extension (the applet appears in the panel)
[x] Opened the extension's preferences and tweaked some settings successfully
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/installing-gnome-system-monitor/8057/4


Associate crashes with user info

Details
Associate crashes with user info.
Fixed Issues
$ https://github.com/Expensify/App/issues/42651
PROPOSAL: https://github.com/Expensify/App/issues/42651#issuecomment-2133987993
Testing
To test native crashes:
Add a new option in TestToolMenu:
<TestToolRow title="Test crash">
<Button
    small
    text="Test crash"
    onPress={() => {
        crashlytics().crash();
    }}
/>
</TestToolRow>

To test JS crashes:
Just add <Check></Check> anywhere, like in TestToolsMenu.tsx.
Update firebase.json to set crashlytics_debug_enabled to true.
Note that local logs will show what data is being sent to Firebase, we can use that to verify the changes. Then, once it is on staging, then someone can check on Firebase (using the troubleshoot option).
Native crash would not work on iOS debug build because we are on an old version. See https://github.com/invertase/react-native-firebase/issues/6226
PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

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

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

@ShridharGoel don't we need the crash buttons in Troubleshoot section to test it on staging?

@ShridharGoel you've got lint errors here

@ShridharGoel we have a couple of checks failing and a conflict!

@ShridharGoel you've got failing tests here

hmmm on the Android AdHoc build, the Native Crash button isn't doing anything...

If a config change in firebase.json is needed for the forced crash to work, can we hide the button unless the config is enabled?

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

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

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[ ] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[ ] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If any new file was added I verified that:

[ ] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[ ] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[ ] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[ ] I verified that all the inputs inside a form are aligned with each other.
[ ] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[ ] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[ ] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

@ShridharGoel i enabled that.

@getusha what's the status here?

@getusha Did you build the app with the new config?

Yes, i just did and it's still not working.

It's working after the change.
@ShridharGoel it's only needed for debug builds right?

And reassure is failing.

@getusha thanks for your review. Looks like all your comments have been addressed and it's ready for another review

Note that local logs will show what data is being sent to Firebase, we can use that to verify the changes.

@ShridharGoel i am not seeing any logs that shows the data being sent
https://github.com/user-attachments/assets/54421051-4538-4811-abfd-7a67d32fbee5

Bump @ShridharGoel

@ShridharGoel i'll check it thanks, we have a couple of comments ^

@ShridharGoel lets add steps for staging, otherwise mark this as No QA

@getusha can you take a look at @ShridharGoel's changes?

lgtm i will need to confirm the logs from logcat

@ShridharGoel could you please update the PR description? thanks!

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[x] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

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

[x] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[x] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

Android: mWeb Chrome

iOS: Native

iOS: mWeb Safari

MacOS: Chrome / Safari

MacOS: Desktop

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/roryabraham in version: 9.0.15-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/roryabraham in version: 9.0.15-9 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


Supperputty hangs if session was cut by reboot

What steps will reproduce the problem?
1. open few sessions to the same server and to others (I had around 8 session
in total).
2. open VNC in one of the servers (I had 2 superputty sessions for that server).
3. reboot from vnc but not from superputty.

What is the expected output? What do you see instead?
I receive "Network error" and application just hangs, stop responding.

What version of the product are you using? On what operating system?
OS: Windows7 x86
Superputty: <IP_ADDRESS>

Please provide any additional information below.

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 2 Jan 2013 at 7:56

Closing this issue but all hope is not lost! We still want to help.
See: https://github.com/jimradford/superputty/wiki/Legacy-Imported-Issues on how to help us to help you!


feat: adding winston logger

Added a basic implementation of a logger through winston. Log messages are suppressed by default unless the specified environment variables in the README are set. I've gone ahead and updated some unit tests that broke after this change, added unit tests for the logger itself, and replaced all console.log references throughout the code.
Checklist

[x] npm test passes (tip: npm run lint-fix can correct most style issues)
[x] tests are included
[x] documentation is changed or added (please see README)

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

We should make sure the libraries we use are using Winston or we configure them with the logging environment variables.
Why winston rather than debug

Regarding winston vs debug, it's worth noting that Microsoft has chosen debug as their standard for Node/JS/TS logging:
https://azure.github.io/azure-sdk/typescript_implementation.html#general-logging

Thanks @mkistler, @germanattanasio. This is the first time I hear about debug. Do we feel like that should be the chosen logging method? I went with winston since in my experience it's a pretty flexible logger and I have not had any issues with it. Though I do see debug is more lightweight, but similar in concept to what I have done with winston and the use of environment variables.

As far as dependency logging, the core ones that @dpopp07 mentioned to me seem to not have logging enabled by us.

@jorge-ibm will the SDK work in the browser or react-native sort of environment? I think that's why Microsoft went with debug.

@germanattanasio I want to say browser support was recently added, but correct me if I'm wrong @dpopp07 . If that's something we should consider, then yes I think winston would be an issue since it doesn't look like browser is supported yet . (it's in their roadmap.)

We've always had browser support, what we did recently was add a way to prevent an issue with a Node-only module. I think we would have to add another patch like that for the logger if we go with winston. Maybe that is reason enough to consider going with debug, although winston looks more flexible overall.

Sounds like debug is probably more safe to use then. I will look into implementing that instead of winston. Thanks everyone!


[5.6] Re-add class name to '__allTests' for test discovery

Motivation:
In https://github.com/apple/swift-package-manager/pull/3992 the class
name was stripped from the static array of tests (i.e.
__allTests_CLASSNAME became __allTests). The class name ensured the
variable was uniquely named. Without it, in a test class which is
derived from another, it is not unique and results in compile-time
errors.
Modifications:

Reintroduce the class name
Add tests

Result:
Derived test classes do not result in compilation errors on Linux.
(cherry picked from commit 27cd3dff9d162ac456ac5fc8cbd674259d7de943)

@swift-ci please smoke test

@swift-ci please smoke test


Climatology bug reported in ExtData2G

User @christophkeller reported a bug in ExtData2G under very specific conditions. Just summarizing here so I remember.
This applies to the following.

You have monthly files from 2000-2019 with this  template and valid range specified in the file

 template: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.%y4.nc
 valid_range: "2000-01-01T00:00/2019-12-01T00:00"

You specify using them as a climatology and only updating once a month so that before or after the valid range it should treat them as a climatology for either 2000 or 2019

 gcc_monthly_clim:      update_reference_time: "0", update_frequency: P1M, time_interpolation: False, extrapolation: clim}

You run a replay that has a longer than 3 hour predictor window and start a run at 2018-12-31T21:00:00, and run with a 6 hour predictor length. The user reported after rewinding and start the "normal" forward propogation the model crashed and ExtData2G gave this error

GCMRun:  Rewinding Clock 1-Model TimeStep ... 20181231_2100z

Continue  AGCM Replay ...
...
Time not found on file: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemi
stry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc
Target time:         2018          12          31          21           0
           0
pe=00780 FAIL at line=00184    ExtDataClimFileHandler.F90               <Time not found on file: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc>

This does not happen starting at say 2017-12-31T:21:00:00 so is clearly some corner case related to climatologies.

I will attempt to reproduce via ExtDataDriver.x

Interesting, I setup a configuration that reproduces this replay scenario, although I do not see a crash, I do see incorrect behavior after the rewind:
   EXTDATA: VAR2D updated L bracket with: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2018.nc at time index  12
   EXTDATA: VAR2D updated R bracket with: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc at time index   1
 TestDriver Date: 2018/12/31  Time: 21:15:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 21:30:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 21:45:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 22:00:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 22:15:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 22:30:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 22:45:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 23:00:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 23:15:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 23:30:00    4.0%Memory Committed
 TestDriver Date: 2018/12/31  Time: 23:45:00    4.0%Memory Committed
   EXTDATA: VAR2D updated L bracket with: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc at time index   1
   EXTDATA: VAR2D updated R bracket with: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc at time index   2
 TestDriver Date: 2019/01/01  Time: 00:00:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 00:15:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 00:30:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 00:45:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 01:00:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 01:15:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 01:30:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 01:45:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 02:00:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 02:15:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 02:30:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 02:45:00    4.0%Memory Committed
 TestDriver Date: 2019/01/01  Time: 03:00:00    4.0%Memory Committed
 Rewinding Clock
   EXTDATA: VAR2D updated L bracket with: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc at time index  12
   EXTDATA: VAR2D updated R bracket with: /gpfsm/dnb52/projects/p10/dasilva/fvInput/ExtData/chemistry/CEDS/v2021-04-21/sfc/0.1/MEK_anthro_CEDS_x3600_y1800_t12.2019.nc at time index   1
 TestDriver Date: 2018/12/31  Time: 21:15:00    4.0%Memory Committed

As one can see, after the rewind it uses the wrong brackets to do the update in that it used time index 12, from the 2019 file, when it should used the 2018 file.

I have a branch with a proposed fix, that seemed to fix the bad behavior I was seeing, @christophkeller is going to test this on his end before I make a PR.