text:
Add extension to process some text-mode macros

This PR creates an extension that allows \text{} and other similar macros to process text-mode macros within their argument.  This has been a long-standing request; see #1736, #1758, #1770, #1473, #243, #346.

Would it be ok to move this into an independent extension?

Would it be ok to move this into an independent extension?

To clarify, I don't mean not to have this in the core. I'm suggesting something like the process for the mhchem extension.

Would it be ok to move this into an independent extension?

To clarify, I don't mean not to have this in the core. I'm suggesting something like the process for the mhchem extension.

Are you saying you would like to maintain this extension?  I'm not sure quite what you are suggesting.
I've been a little unhappy about the mhchem extension being both part of the core and a separate extension.  This came about because of an historical accident:  I had implemented a (simplified) work-alike for the mhchem extension, which was put into the core, but later the original author asked to rewrite it, and that was done as a separate extension.  But because my original version was in core, we needed to maintain it there as well.  This has lead to some difficulties in keeping things up to date.
If you are looking to make this a third-party extension, I could see that as a possibility, but I'm leery of another mixed third-party-in-core arrangement.

The advantage of maintaining extensions in separate repositories is that they can have releases independently of the (very slow) core. For example, there are technically 5 open PRs about extensions waiting for attention at this time.
Also, I'm also not suggesting a "third party" repository, just a separate one so that this can at least be pulled in via npm with github references.

OK, I see what you are saying.  I will talk to Volker about it and see what we come up with.
Of course, because we are working hard on v3, the v2 updates have been unusually delayed.  I expect that once v3 is out, updates will be more timely.

authors: dpvc pkra

repo: mathjax/MathJax


text:
Tracking app installs

Here is the code that crashes my app inside the MainActivity onCreate():
TrackHelper.track().download().with(tracker);
The rest of the tracker works fine so far, I am seeing events on the server.  Below is the tombstone from the crash.

2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: Build fingerprint: 'lge/judypn_lao_com/judypn:8.1.0/OPM1.171019.026/182641107dd05.FGN:user/release-keys'
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: Revision: '12'
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: ABI: 'arm64'
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: pid: 30328, tid: 30328, name: id.piwiktestapp  >>> com.android.piwiktestapp <<<
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x68
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG: Cause: null pointer dereference
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x0   0000000000000000  x1   0000007f657a8f28  x2   0000000000000003  x3   0000007fc00387cc
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x4   0000000000000007  x5   0000007fc00386b8  x6   0080000000000000  x7   607560694b21ff3a
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x8   0000000012ce1f24  x9   0000000000000000  x10  0000000000000000  x11  000000005d140000
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x12  0000000000000000  x13  000000000000005d  x14  0000000012ce1ea0  x15  0000000000000000
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x16  0000007ee33ca5a8  x17  0000007f6549e7c0  x18  0000007ee3c00080  x19  0000000012ce1f18
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x20  0000000000000006  x21  0000000000000006  x22  0000000c00000000  x23  0000000400000000
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x24  0000007fc00388d0  x25  0000007fc00388d4  x26  0000007ee3af3b80  x27  0000007fc00388cc
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     x28  0000007fc0038c60  x29  0000007fc0038840  x30  0000007ee3032dec
2018-11-12 14:09:53.601 30355-30355/? A/DEBUG:     sp   0000007fc0038810  pc   0000007ee3156e84  pstate 0000000020000000
2018-11-12 14:09:53.608 30194-30194/? I/MirrorLink_UPnP: loadPredefinedAppInfo : loaded app num:8
2018-11-12 14:09:53.608 30194-30194/? I/MirrorLink_UPnP: /data/data/com.lge.mirrorlink/files
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG: backtrace:
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #00 pc 00000000003bae84  /system/lib64/libart.so (art::mirror::MethodType::NumberOfVRegs()+112)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #01 pc 0000000000296de8  /system/lib64/libart.so (art::interpreter::InvokeBootstrapMethod(art::Thread*, art::ShadowFrame&, unsigned int)+536)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #02 pc 0000000000296950  /system/lib64/libart.so (_ZN3art11interpreter14DoInvokeCustomILb0EEEbPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+336)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #03 pc 00000000002ab26c  /system/lib64/libart.so (_ZN3art11interpreter17ExecuteSwitchImplILb1ELb0EEENS_6JValueEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameES2_b+62696)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #04 pc 00000000002751f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+700)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #05 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #06 pc 0000000000295470  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb1EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+1600)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #07 pc 00000000002b0c64  /system/lib64/libart.so (_ZN3art11interpreterL8DoInvokeILNS_10InvokeTypeE2ELb0ELb1EEEbPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+1120)
2018-11-12 14:09:53.609 30355-30355/? A/DEBUG:     #08 pc 00000000002ac5e8  /system/lib64/libart.so (_ZN3art11interpreter17ExecuteSwitchImplILb1ELb0EEENS_6JValueEPNS_6ThreadEPKNS_7DexFile8CodeItemERNS_11ShadowFrameES2_b+67684)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #09 pc 00000000002751f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+700)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #10 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #11 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #12 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #13 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #14 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #15 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #16 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #17 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #18 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #19 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #20 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #21 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #22 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #23 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #24 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #25 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #26 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #27 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #28 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #29 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #30 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #31 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #32 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #33 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #34 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #35 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #36 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #37 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #38 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #39 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #40 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #41 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #42 pc 0000000000531a68  /system/lib64/libart.so (MterpInvokeDirect+304)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #43 pc 000000000053a514  /system/lib64/libart.so (ExecuteMterpImpl+14484)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #44 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #45 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #46 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #47 pc 0000000000531a68  /system/lib64/libart.so (MterpInvokeDirect+304)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #48 pc 000000000053a514  /system/lib64/libart.so (ExecuteMterpImpl+14484)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #49 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #50 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #51 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #52 pc 0000000000531c24  /system/lib64/libart.so (MterpInvokeStatic+224)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #53 pc 000000000053a594  /system/lib64/libart.so (ExecuteMterpImpl+14612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #54 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #55 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #56 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #57 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #58 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #59 pc 00000000002750f8  /system/lib64/libart.so (art::interpreter::Execute(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame&, art::JValue, bool)+444)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #60 pc 000000000027ad00  /system/lib64/libart.so (art::interpreter::ArtInterpreterToInterpreterBridge(art::Thread*, art::DexFile::CodeItem const*, art::ShadowFrame*, art::JValue*)+216)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #61 pc 0000000000294c74  /system/lib64/libart.so (_ZN3art11interpreter6DoCallILb0ELb0EEEbPNS_9ArtMethodEPNS_6ThreadERNS_11ShadowFrameEPKNS_11InstructionEtPNS_6JValueE+664)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #62 pc 00000000005308b0  /system/lib64/libart.so (MterpInvokeVirtual+612)
2018-11-12 14:09:53.610 30355-30355/? A/DEBUG:     #63 pc 000000000053a414  /system/lib64/libart.so (ExecuteMterpImpl+14228)

Hm... this is a crash in native code and the library uses no native code. :question:
I'd say debug this further by setting break points to narrow down what triggers it.
Start with setting one before and after checksum calculation, you are using that, right?
https://github.com/matomo-org/piwik-sdk-android/blob/master/piwik-sdk/src/main/java/org/piwik/sdk/extra/DownloadTracker.java#L85
And maybe a break point before it goes to opening the URLConnection.

Stale

source: gharchive/issue

repo: matomo-org/piwik-sdk-android

license_type: permissive

license_source: github-api


text:
listen_forever always waits the maximum amount of time between sync retries

See this line: https://github.com/matrix-org/matrix-python-sdk/blob/master/matrix_client/client.py#L375 which sets the value for bad_sync_timeout to 5000 seconds (probably intended to be milliseconds?), and this line: https://github.com/matrix-org/matrix-python-sdk/blob/master/matrix_client/client.py#L386 which calls time.sleep with that value. Note that time.sleep expects seconds, not millis.
This means that if _sync fails with an HTTP 500, the client will always wait self.bad_sync_timeout_max seconds (currently 1 hour) before retrying.
It looks like there's supposed to be some exponential backoff logic between retries, but because the initial timeout is set so high it always selects the ceiling of one hour.

Probably related to #129 and #131, but I haven't dug into any of these issues deeply enough to say for sure. @bjlaub, would you mind updating your issue description with permalinks to the appropriate lines of code. Since master has changed since you filed this issue, hard to tell exactly what you were referring to.

I've had a look at the exponential backoff algorithm in listen_forever.
It's not as bad as it looks. The retry time will be 5000 seconds only if the first ever sync fails. If it keeps failing, it goes to retry every 3600 seconds (1 hour).
If it succeeds, the timeout resets back to 5 seconds. It will double each time it fails, up to the maximum of 3600, and resets back to 5 as soon as it succeeds again.
So all in all, it's not too bad, but it's not right either. I agree that it is most likely that 5 was meant instead of 5000 in https://github.com/matrix-org/matrix-python-sdk/blob/aa17a6a902b0928b3eee2ebd1bd9c8c7ef95c27b/matrix_client/client.py#L424
@non-Jedi could you do the honours and edit this, or should I make a whole PR for this very simple change?

Maybe you've got a better idea of the wider context. I'm scared to touch that line because I really don't get the logic. Why is bad_sync_timeout set to an entirely different value a few lines lower in the midst of the loop?
https://github.com/matrix-org/matrix-python-sdk/blob/aa17a6a902b0928b3eee2ebd1bd9c8c7ef95c27b/matrix_client/client.py#L429

That line is inside a try block, directly after the sync attempt. So if the sync fails, an exception is thrown, and that line is never reached.
If the sync repeatedly does not succeed, it will keep skipping that line and keep doubling the delay as per the code in the except block.
If the sync succeeds at any time, that line is reached and the delay is reset to a low value of 5 seconds.

In short, the whole thing is doing exponential back-off.
Sync fails? Retry in 5 seconds. Still fail? Wait 10 seconds. Then 20, 40, 80, 160 and so on, up to one hour.

authors: Matrixcoffee bjlaub non-Jedi

repo: matrix-org/matrix-python-sdk

license_source: bigquery


text:
First cut of a module to automatically set new push rules when new users register

This work is happening in the context of the Tchap mainlining. See https://github.com/matrix-org/matrix-dinsic/issues/856 for more information about why this specific module is needed.
The mypy failure is expected since https://github.com/matrix-org/synapse/pull/12406 hasn't been released in a stable version of Synapse yet. It passes locally when using that PR's branch.
Ideally the module should check for invalid push rules at startup but implementing a push rules parser sounds like a pretty big job, and I'm not sure it'd be worth it.

I don't have access to the issue you linked for context, but I wonder whether we should be using the 'server-default rules' mechanism built in to push rules, perhaps exposing it as a config option? (as grim as config options can be).

Removing the request for review because this is not actually the right way to resolve this issue.
Also, @reivilibre:

the 'server-default rules' mechanism built in to push rules

What are you referring to by this?
If you're suggesting allowing the config to change the server's default push rules, this sounds like a bad idea to me because

we don't want existing rules to change under the feet of users who already exist
Synapse's default push rules are defined by the spec
the push rules code in Synapse is very non-trivial to hack into

I've updated the module to change the push rule's actions instead of creating a new one, which is a better approach to the problem this module is trying to solve.

If you're suggesting allowing the config to change the server's default push rules, this sounds like a bad idea to me because

we don't want existing rules to change under the feet of users who already exist

This is fair enough but I wasn't sure whether this was a requirement or not without context.

Synapse's default push rules are defined by the spec

The spec defines a minimal set of default rules, but specifies that homeservers are able to specify others, so I don't think this point is pertinent here.

the push rules code in Synapse is very non-trivial to hack into

Adding server-default push rules doesn't seem that difficult, though. It's not as though you need to hack into the way they're evaluated :).

This is fair enough but I wasn't sure whether this was a requirement or not without context.

Yeah, I was under the impression that everyone in the Synapse team had access to that repo, but that's not the case :/
I've asked for its access to be broadened.

but specifies that homeservers are able to specify others

I've missed that. In this case, it might not be too bad (but in general my experience with adding "simple" things to the push rules management code of Synapse has been that it's never as simple as you initially believe it to be).
However, the goal of this work is to mainline https://github.com/matrix-org/synapse-dinsic/pull/60, which is about modifying existing push rules rather than creating new ones (hence the change of editing actions vs creating new rules), and it feels to me like more work to do that with additional server-side rules (instead of automatically modifying existing ones).

Another issue with using configurable server-side rules is that if you change them they're not automatically sent to clients of existing users, despite the new rules applying to them as well. So the notification rules would get out of sync between the clients and the server until the clients hit the "clear cache and reload" (or equivalent) button.

source: gharchive/pull-request

authors: babolivier reivilibre

repo: matrix-org/synapse-patch-push-rules


text:
How to integrate inside a TabBarViewController

Trying to add this view as one of my storyboard tabs but have issue with init (no way to call it from storyboard) and when I call from tab code it hides the tab bar.
Any suggestion?

Did you find any solution?

repo: matteogobbi/MGSpotyViewController

license: mit


text:
Bump golang deps to fix intoto import

Summary
This PR bumps the intoto module to import at the current HEAD because transient dependencies are
not working with the prerelease tag.
Ticket Link

Self-approving this to fix import conflict in the builder

repo: mattermost/cicd-sdk


text:
Update migrating.rst

Add mmetl tool to the Slack migration docs

Summary

Ticket Link

Thanks, @svelle. I committed your suggestion. Have added @grundleborg for final review as his repo is mentioned.

authors: justinegeffen wiersgallak

repo: mattermost/docs


text:
Require 2: QA Review before merging

As discussed in today's Developer Meeting, we're going to block all changes on a 2: QA Review step, done concurrently with 2: Dev Review. Not every pull request requires an exhaustive QA review, but it is the PM or QA tester's responsibility to determine this.
(Labels in GitHub to be updated once this PR is approved.)

I updated the labels on the repos

authors: jwilander lieut-data


text:
windows-build-tools

added a lighter option to build the libpng dep on windows.

@justinegeffen i merged your suggestions (thanks!) and answered your question, unless I missunderstood something. Can you take a second pass?


text:
Update corporate-proxy.md

Updated deprecated links

Summary

Ticket Link

Hello @Sayanta66,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

@justinegeffen can you give the docathon label?


text:
WIP [MI-2393]: Integrate mm-ui-lib in LinkModal

Ticket ID
https://brightscout.atlassian.net/browse/MI-2393
Description

Add mm-ui-lib  Modal in LinkModal
Add Dialog for successful linking and error
Add input and DropDown component

Screenshots

This has been put on hold for now, we can revisit it later if needed.


text:
People product init profile view layout

Summary
overall layout and map for the profile view section.
The map loads the user already defined timezone, this can be enhanced later.
Ticket Link
Mattercon contrib
Related Pull Requests
n/a
Screenshots

Release Note
NONE

Commenting out the map for now only because of CI not passing because of D3 import stuff

authors: calebroseland pvev

repo: mattermost/mattermost-webapp


text:
[MM-48412] Webapp: UI discrepancy on tooltip shaded overlay when RHS is expanded

Summary

Nullifying the overlay for crt_threads_pane_tutorial_tip.tsx to fix the bug described in MM-48412. This is just a temporary fix to remove the buggy behavior. A new ticket MM-48647, https://mattermost.atlassian.net/browse/MM-48647, has been created to investigate this further and come up with a better resolution.
Ticket Link

MM-48647
Screenshots

https://user-images.githubusercontent.com/20505926/204050470-8b8efb29-acad-4a91-a9b7-87d6d585a1d3.mov
Release Note
NONE

Hello @MattSilvaa,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.
Per the Mattermost Contribution Guide, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement?
Once you have signed the CLA, please comment with /check-cla and confirm that the CLA check is green.
This is a standard procedure for many open source projects.
Please let us know if you have any questions.
We are very happy to have you join our growing community! If you're not yet a member, please consider joining our Contributors community channel to meet other contributors and discuss new opportunities with the core team.

E2E tests not automatically triggered, because PR has no approval yet. Please ask a developer to review and then try again to attach the QA label.

/check-cla

/check-cla

@MattSilvaa Tour tip component has this interactivePunchOut.
https://github.com/mattermost/mattermost-webapp/blob/33d602b3e5e790eb925794157f1e19f0fabefc07/packages/components/src/tour_tip/tour_tip.tsx#L69
I think it’s working as expected could you please check and try to fix that? Instead of removing the cutout.

https://user-images.githubusercontent.com/20505926/206618362-307bf14a-4444-4f49-936d-bd0ba0ccaca9.mov
I'm getting close to fixing it. Need to figure out why useMeasurePunchouts seems to be one step behind. Any pointers would be appreciated. Also, could someone please confirm the desired behavior for when someone clicks out of the tip box (i.e. to expand the window)?

Hello! Would love to work together to get this PR merged. Please let me know what I can do. Thank you!

I'll reach out to them. It was a bit chaotic around here in December between our regular release and the holidays, so this might've been missed

Screen.Recording.2022-12-08.at.7.33.32.PM.mov
I'm getting close to fixing it. Need to figure out why useMeasurePunchouts seems to be one step behind. My current approach is adding a boolean on whether the rhsContainer is expanded as an additional dependency to useMeasurePunchout. Any pointers would be appreciated. I would be happy to schedule a call and maybe pair program or at lest discuss my approach. Also, could someone please confirm the desired behavior for when someone clicks out of the tip box (i.e. to expand the window)? Do we want the background to follow the container or should it be dismissed?

IMO i think it should be dismissed.
As for the expansion-animation: this is purely CSS, so the overlay should ideally follow the same approach.

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!

@MattSilvaa if you need help feel free to reach out to me when you are ready.

@michelengelen would you have time to work on it this weekend?

Updated logic: It maintains the interactive punchout but the background gets dismissed when user clicks outside of tour tip.
https://user-images.githubusercontent.com/20505926/216856610-daa888e0-eeab-4464-97c9-9fd01fedd4f4.mov

@michelengelen would you have time to work on it this weekend?

I am sorry @MattSilvaa ... I missed that notification last week ... I am generally not working on weekends, but if it is not possible for you to work during the week we can arrange something this weekend if that is ok with you?

Thanks @MattSilvaa

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!

/e2e-test

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

/e2e-test

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

/update-branch

koox00
koox00 approved these changes
Re-request review
@furqanmlk
furqanmlk
furqanmlk approved these changes
Re-request review
@AshishDhama
AshishDhama

@MattSilvaa Still looks good to me. Thanks foe the heads up.

@pvev Could you please take a look, as you have done changes related to backdrop.

/update-branch

@pvev Any feedback on this PR? If not, I'd love to get this merged ASAP 😄

@pvev Any feedback on this PR? If not, I'd love to get this merged ASAP 😄

hey @MattSilvaa thank you for your contribution and sorry for the late response. I think this is fine for a temporary fix to this issue. I was taking a look to all the steps you took before arriving to this solution and I think the problem you had before when the size value was behind one step was because when the tourtip re-rendered it was still getting the size of the rhsContainer before the redrawn was finish. For a long term solution something like mutationObserver over the element can be used and I think it might work but that would definitely require more work and deeper revision.

@pvev Thank you! I definitely agree that we can do something better in the future, and I'm definitely willing to continue to work on that with the team.
I'm not an authorized user to merge these changes, would you mind merging it for me? 😄

@furqanmlk Should we force merge this?

@furqanmlk Should we force merge this?

@AshishDhama @furqanmlk if no objections, I can merge this one

/update-branch

/e2e-test

@furqanmlk Should we force merge this?

@AshishDhama @furqanmlk if no objections, I can merge this one

All look good. Just let me quickly review e2e results

Successfully triggered E2E testing!
GitLab pipeline | Test dashboard

@pvev friendly reminder this is still open 😄

@pvev friendly reminder this is still open 😄

@MattSilvaa hey! sorry for the delay on this, but master branch is currently blocked. I will let you know when we can get this merged! Thank you for your help and your patience with this PR! 🤟

Hey there!, Thank you for your PR.
Webapp is now part of mattermost monorepo now at https://github.com/mattermost/mattermost-server/tree/master/webapp Would you be interested in opening the PR over there?

@M-ZubairAhmed hey! Definitely, I will open it today and then close this one. Thank you!

authors: AshishDhama M-ZubairAhmed MattSilvaa furqanmlk hmhealey mattermod mattermost-build michelengelen pvev


text:
MM-14297 Match DM sidebar and channel switcher visibility check

Summary
This will fix auto-closed DMs showing up under "My Channels" in the quick channel switcher when they should show up in the "Other Channels" section (as they are not open in the sidebar). The fix is to use the same function isDirectChannelVisible that is used in sidebar visibility for the channel switcher.
Relies upon https://github.com/mattermost/mattermost-redux/pull/787
Ticket Link
https://mattermost.atlassian.net/browse/MM-14297

As far as I know yes


text:
MM-18541 Size list padding dynamically

Currently, the left padding for lists is a fixed width, so larger numbers get cut off. To make it dynamically-sized with pure CSS, you aren't able to have the bullets right-aligned, so we have to do work out the padding manually (or do something crazier like switching the list to a table).
I'm actually quite happy with how the formula to calculate that worked out. I didn't know about the ch unit or that you could size things in CSS based on the width of a character before now.
Ticket Link
https://mattermost.atlassian.net/browse/MM-18541
Screenshots

That's about right, although to be exact, it would say 9999 and have a margin of 7ch to fit the numbers, period, and a bit of whitespace

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

Hey @hmhealey, looks like the alignment is still a bit off in a few cases as currently seen on the SpinWick above:
 (see the 999/1000 and 99999/100000 entries). Admittedly those are unlikely situations, but do point to the possibility of being off.
I think the challenge with the ch unit is it depends on the font – if the font is fixed-width (like courier), then it can absolutely be used to define a consistent width to hold text, but if it is a variable-width font (like open sans), then it kinda falls flat. Even if only one character has a slightly different width to all the others, that can mess up the overall measurement.
I took a few minutes to play around with lists and css and came up with the following based on some searching and experimenting for your consideration: https://jsfiddle.net/owdbs72r/2/. The markup is still list-based, but the css converts to tables and uses counters and content selectors to re-introduce the list numbers. Any lists that start with 1 don't need to have any additional html attributes and any lists that start with a greater number need a style attribute to reset the list count (they would need an attribute to set the initial list number regardless).
I'd be more inclined to use a CSS approach over JS calculations so the browser can take care of the details, though admittedly doing character-based padding is kinda cool ... I honestly didn't realize that existed!
Let me know what you think!

I'll take a look at the CSS solution. It definitely sounds interesting, and pure CSS would be a bit nicer, although I am a bit worried it might be too magic. Then again, that might just be because I don't understand the properties used for it.
I wouldn't be opposed to sticking with the JS solution though. Since we have a set font and we're only using a limited subset of characters for list indices (0-9, period, and space), chances are that the current method would work fine enough. The main reason I'd lean towards sticking with this for now is that it's easier to understand how it works right in JS since we are close to code complete, although I don't know if it's necessary for this to go into 5.18.
@esethna Thoughts on moving this to 5.19 or 5.20 so that we have more time to do it right? This solution is already a bit involved for a bug fix, and it's worked the same way since at least 5.14, probably earlier.

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit 8a549018bf503536c834c0e90e1985b2cb2e7a9e.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

That's fine, moving it to v5.19

New commit detected. SpinWick will upgrade if the updated docker image is available.

Test server creation failed. See the logs for more information.

New commit detected. SpinWick will upgrade if the updated docker image is available.

I've updated this to use the technique that Dean found, so I've re-requested reviews on it. This now also involves a marked.js change so that we don't have to calculate the initial index of the list any more.
The PR for that is here: https://github.com/mattermost/marked/pull/17

And here's a screenshot of how it appears with the updated changes. It looks pretty much the same.

Mattermost test server updated with git commit ba4c910e5d14fc7c95a1ab469d53c5ffbe82df9e.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

Google Docs does it a little differently, adding enough spaces for the tens place initially to the right. Once the list hits 100, then enough space is added for the ten-thousands place it seems:

Yeah, they aren't styling it quite the same way since they're not using a fixed width for their list numbers. For another point of reference, GitHub does the same thing we do without this ticket.

a
b
c

a
b
c

Looks good @hmhealey! I noticed one more CSS tweak that we should probably make. Sub numbered bullets have padding added by a CSS rule with more specificity that is making them look way more indented now that we are using ::before. The rule from dev tools is:
.post__body ol li ol {
    font-size: 1em;
    margin: 0;
    padding: 0 0 0 20px;
}

We need to override the left padding for any ol's that now have the markdown__list class.

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit 5632027d0ad85ac211505bea8b63ec853afb8e92.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

will delete this test server because i need to deprecate the cluster that is running, will spin a new test server soon

Test server destroyed

Creating a new SpinWick test server using Mattermost Cloud.

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit c326a20ca4a761b87779bdb800e1e932f4790d91.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

New commit detected. SpinWick will upgrade if the updated docker image is available.

I removed that rule for ordered lists so it now indents those as it did before. I posted screenshots below of the new code (the light theme) and the old code (the dark theme)
New:

Old:

Mattermost test server updated with git commit 4eae19bd6ee5de24ae50ea9a266bd4e6165f0654.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit aec19015fa0a518ccdb666367fc7d93a62da9070.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit 368fe40bbda0f8196b1456807f15516ec553a4a3.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

New commit detected. SpinWick will upgrade if the updated docker image is available.

Mattermost test server updated with git commit d22766f77ec87882141fb643ebf42aa66b375b6d.
Access here: https://mattermost-webapp-pr-4328.test.mattermost.cloud

authors: bradjcoughlin cpanato deanwhillier esethna hmhealey mattermod


text:
MM-23366-Fix favourite channel tooltip position

Summary
Fixes the toggling of the add/remove from favourites tooltip in the channel header
Ticket Link
https://mattermost.atlassian.net/browse/MM-23366
Fix versions
Queued

/update-branch

Mattermost test server created! :tada:
Access here: https://mattermost-webapp-pr-5073.test.mattermost.cloud

Account Type
Username
Password

Admin
sysadmin
Sys@dmin123

User
user-1
User-1@123

Test server destroyed

@nevyangelova Is this a regression introduced in v5.22?

@amyblais its not a regression.

I've re-added the cherry-pick label because this will need to be cherry-picked into the release-5.23 branch once that's created after 5.22 is done.

/cherry-pick release-5.23

authors: amyblais hmhealey mattermod nevyangelova


text:
Fixes MM-25783 :  Selecting an emoji shows hidden text

Summary

Removes selection for text of emoji

Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/14779
JIRA https://mattermost.atlassian.net/browse/MM-25783
Related Pull Requests
none
Screenshots

/update-branch

@M-ZubairAhmed
Error trying doing the automated Cherry picking. Please do this manually

@deanwhillier Kind reminder to cherry pick this.

authors: M-ZubairAhmed amyblais deanwhillier mattermod


text:
feature: unify channel navigator in web and desktop app

Summary
this PR aims at unifying the channel navigator between web and desktop app when the global header is enabled.
there is also a small fix included that aligns the header info burger button.
Ticket Link
MM-37834
Release notes
NOENE

@michelengelen the test server failed

@matthewbirtch probably due to the failing tests .... will fix them and then start a new spinwick

@deanwhillier please re-review and merge when everything is fine.

authors: matthewbirtch michelengelen


text:
Automated cherry pick of #8649

Cherry pick of #8649 on cloud.
/cc  @AshishDhama

/release-note-none

authors: amyblais mattermost-build


text:
MM-40736 : Removed leading whitespace causing header description bug

Summary
Removed header description bug where leading whitespace caused markdown code block

[x] fixed block to trim leading/trailing whitespace
[x] refactored method to remove early return call

Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/19314
Related Pull Requests
N/A
Screenshots

before
after

Release Note
NONE

Hello @scottaudet,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

Thanks @hmhealey. The header is given to the UI in a markdown component so the spaces trigger the code block functionality of a .md file. Realistically, a user shouldn't be able to make an all space header and any leading/trailing spaces don't change the comprehension of the name. I'm glad that this fix can help! I fixed the linting issues so hopefully this CI passes.

/update-branch

/e2e-test

Triggering e2e testing with options:
<nil>

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/150986

Thanks @scottaudet
When adding only one line code block to header description, outline is added, but it does not show the whole code block on hover
@hmhealey would this be out of scope here? Something similar is present on daily, wasn't sure if it would be fixed here or needs to be filed separately

Yeah, that's out of scope. That's an existing issue around us simply allowing a lot of Markdown stuff in the header that probabaly doesn't make sense, but we've never bothered fixing it since it's a lot of work.

/update-branch

/e2e-test

Triggering e2e testing with options:
<nil>

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/155528

Thanks @scottaudet
Tested, looks good to merge

Verified creating channel header description with leading white spaces renders as expected, with whitespaces removed.
E2E failed to trigger last time, re-running again before approving.

E2E report looks good, no PR related failures.

authors: M-ZubairAhmed hmhealey jgilliam17 mattermod scottaudet


text:
not working with new architecture on RN 0.75

When compiling in XCode I get following errors:

'react/renderer/components/iostextinput/conversions.h' file not found
'react/renderer/components/iostextinput/primitives.h' file not found
'react/renderer/components/text/BaseTextProps.h' file not found

We have not upgraded to 0.75 yet but PR's are welcomed :)

commenting so i can subscribe to this –
we really wanna use this in our app (Photodare.ca) but Expo is including RN 0.75 in Expo 51 and getting past the ton of breaking changes in expo 50–>51 took us MONTHS, so I'm nervous about using this in case expo forces .75 with SDK 52
I'm our designer who happens to do a lot of front end development, unfortunately not skilled enough to commit back on this

authors: enahum nickpagee rogerkerse

repo: mattermost/react-native-paste-input

license: MIT


text:
Added StreamingResponse

Hey guys!
I've added a new Response type which doesn't meddle with the before sending it (adding headers, sending errors in the error file template, etc.). It also uses streams to get data.
I plan to use this to remove assumptions the core makes (CORS enabled, Server Name, default file handling, error handling) to make seasocks more flexible while keeping seasocks easy to use.

Just incorporated your suggestions. Thanks for reviewing!

Sweet! Thanks!

More PRs on the way!

Awesome! I'm happy to add you as a collaborator - for small fixes just
commit; else I'd be happy to review PRs still just for code reviewage.
On Mon, Apr 17, 2017 at 12:28 AM Martin Charles notifications@github.com
wrote:

More PRs on the way!
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/mattgodbolt/seasocks/pull/70#issuecomment-294407916,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmsdfEt2LpuIyieHLkBIu9SMjb6Qgt0ks5rwvhvgaJpZM4M76Me
.

authors: caffinatedmonkey mattgodbolt

repo: mattgodbolt/seasocks


text:
The angular scroll-glue directive seems to not handle images very well

When an image has been added to the chat, it loads out of view, rather than scrolling to the bottom of the div. We are using scroll-glue for this, and may need to see why it doesnt like images

I actually think this issue is caused because of how we are loading in the messages.

I'm using scroll-glue and having the same problem on iOS.

authors: kmckee matthewcodes

repo: matthewcodes/ping


text:
PhantomJS no longer being maintained, switch to chrome headless instead

PhantomJS no longer being maintained, switch to chrome headless instead.
PhantomJS announcement: https://github.com/ariya/phantomjs/issues/15344
Chrome headless: https://github.com/GoogleChrome/puppeteer

Agreed, I'd like this to be the first thing that's done. See: #252

repo: matthewmueller/x-ray


text:
quick assignment not possible

structure is counter-intuitive -- trying to apply this with a simple keydown, which requires me to write a whole function to wrap, otherwise it's triggered twice.
perhaps there should be objects dedicated to:
keydown
keyup
for quick access

this should also ignore repeat

right now, a simple function looks like this:
keyboardMapper.keyranges.Key.A = function(e, item, direction){if(direction&&e.repeat)next()}

repo: matthewscharles/keyboard-mapper


text:
v0.0.66-0.0.67: Blocked by Windows Defender

I downloaded bsky v0.0.66-0.0.67 from releases on Windows 10.
At that time Windows Defender will block and delete the .zip file.

This does not happen with bsky v0.0.63. You can work around this issue.

This is due to heuristic malware detection of Windows Defender, which is often a false positive. I actually do not have this problem in my environment Windows 11.

authors: fu-sen mattn

repo: mattn/bsky


text:
Error "cannot start a transaction within a transaction" on cached connection

Assuming we run this piece of code:
			ctx, cancel := context.WithCancel(ctx)
			tx, err := db.BeginTx(ctx, nil)

it is possible to get at the same time context.Cancelled error and started transaction. This will happen only if we cancel context very fast.
This happens because context cancellation is inherently racy as performed not in same go-routine where statement is executed.
Proposed fix #765

@azavorotnii If I understand your bug report correctly, this is not a bug with BeginTx specifically, but rather some faulty logic in (*SQLiteStmt).exec.
https://github.com/mattn/go-sqlite3/blob/590d44c02bca83987d23f6eab75e6d0ddf95f644/sqlite3.go#L1893-L1905
The existing code erroneously concludes that if we called sqlite3_interrupt, then the pending operation will definitely fail so it doesn't bother looking at the result. This is flawed (1) because of the inherent raciness, and (2) because the SQLite docs themselves say that sqlite3_interrupt will not necessarily interrupt a pending operation. "If an SQL operation is very nearly finished at the time when sqlite3_interrupt() is called, then it might not have an opportunity to be interrupted and might continue to completion." https://www.sqlite.org/c3ref/interrupt.html
I believe the correct fix would be to not just discard what gets pulled from resultCh and instead only return ctx.Err() if we receive SQLITE_INTERRUPT from the actual operation.
I have also sent a question to the SQLite mailing list about the behavior when BEGIN gets interrupted to see if we need to explicitly roll back in that case or not.

I believe the correct fix would be to not just discard what gets pulled from resultCh and instead only return ctx.Err() if we receive SQLITE_INTERRUPT from the actual operation.

@rittneje that was my initial thought, but for some reason instead of SQLITE_INTERRUPT I got SQLITE_DONE. That could be race in my test setup though. Let me check again.

@rittneje done as you proposed. I did mistake in my initial test, now it should be stable.

authors: azavorotnii rittneje


text:
Fixed typo: HasPrefox -> HasPrefix

This is breaking travis ci tests for me at https://travis-ci.org/apexskier/httpauth/jobs/53216483#L122

:+1: on getting this merged. Breaking our tests as well.

I should let the first one of these pull requests go first. Duplicate of #178. (sorry for not checking!)

authors: amdprophet apexskier


text:
Fix: sanity check against errors array

Issue #12

Hi @devilcius,
This project is no longer maintained and I am no longer able to test the validity of pull requests.
Would you be willing to take over maintaining this project if you are an active user?
Matt

Hi Matt,
Yes, I am an active user and I'd love to maintain this project.
Marcos
On Mon, Mar 7, 2016 at 11:01 AM, Matt Oakes notifications@github.com
wrote:

Hi @devilcius https://github.com/devilcius,
This project is no longer maintained and I am no longer able to test the
validity of pull requests.
Would you be willing to take over maintaining this project if you are an
active user?
Matt
—
Reply to this email directly or view it on GitHub
https://github.com/matto1990/PHP-Last.fm-API/pull/16#issuecomment-193187525
.

--
EOM

Thanks Marcos! I've added you as a collaborator on this project. Feel free to merge in this pull request and make any changes as you go along.


text:
Depthstillation on real dataset

Good evening,
I'd like to reproduce your depthstillation process, but on real dataset called CADDY in order to evaluate some models (pwcnet and raft).
I already extracted the depth maps through MIDAS and depthstilled them, but it seems that the metrics of the models that i trained on these depthstilled data are worsening a lot...
I'm attaching, from top to bottom, computed flow, depth map, original and depthstilled images.
Do you see something strange in them? Any tips about the use case?
Thanks in advance!

Hi @Salvatore-tech,
a few questions:

how many images did you use for training?
are all the images taken in underwater conditions? In our experience, having a large variety in terms of image context helps

Hi @mattpoggi,

I depthstilled 4432/30000 on CADDY at the moment, because it is not a quick process with the hw i have
Yes all the images of the dataset are taken underwater... do i need additional preprocess to use them? (the depthstilled flow i attached above seems not showing great issues despite the underwater env)

I'm attaching a screenshot of the results with RAFT when trained on syntetic dataset and also on dCADDY and as you can see in yellow, the results are not encouraging...
If we compare the first and the second raw on KITTI, the EPE and Fl are worsening a lot.
Between the first and third raw on SINTEL there is no clear trend (sometimes a bit better, sometimes not).

I'm afraid the main problem is the image content, which is very similar in all the frames used...

Do you think that a feature extraction could lead to better result?
I'm thinking to freeze the weights till the last layer when using the dCADDY

authors: Salvatore-tech mattpoggi

repo: mattpoggi/depthstillation


text:
🛑 API appointment - PROD is down

In 37152d2, API appointment - PROD (https://appointment.prod.api.eflow.com.ar/swagger) was down:

HTTP code: 0
Response time: 0 ms

Resolved: API appointment - PROD is back up in bc23313.

repo: mauribesson/upptime


text:
🛑 VQ PROD CR is down

In 7925975, VQ PROD CR (http://democr.sidesys.co.cr/virtualqueue/index.html) was down:

HTTP code: 0
Response time: 0 ms

Resolved: VQ PROD CR is back up in 80dbf85 after 23 minutes.


text:
2 Mavlink-router interference

This is an odd use case that I’m hoping someone can help me with.
I have a drone using mavlink router to support intercomponent communication and I use mavlink router on the ground station to have multiple ground stations.
At about 2 minutes, the communication will cease to be 2 way. The messages are still being sent up to the drone but the drone no longer routes messages down.
Can two mavlink routers work together in this configuration?

As long as they are running in different machines, should work.  How is the communication between GCS and drone, radio or IP-based?   If it's IP, you don't need mavlink-router in the GCS and can just add additional endpoints.

It is radio based.
I appreciate the response.  After some more testing it seems that it might be the way mavlink-router and QgroundControl interact on Linux.  The problem, in the best way I can describe it is:  QGroundControl tries to take over the control of the radio port /dev/ttyUSBX and when it does there is a chance that mavlink-router will screw up the endpoints.
to be more specific, it will start to see the components on the plane (comp id 240 & 243) as targets for the radio.  When that happens that is when the communication from those sources ceases to the ground station.
If I have one mavlink-router (as opposed to two) or I turn off the SiK radio autoconnect the problem then disappears.  Unfortunately, I work in a research lab and the pilots insists the Sik radio autoconnect or they will not fly (for safety reasons).
Would you have an idea as to why this behavior shows up?

If both QGC and mavlink-router try to control a single device, then there is no way it can work since they will each consume part of the messages.  You must assign that device to each QGC or mavlink-router, but not both. Sik can still "autoconnect", but if you are bridging the connection with mavlink-router, it's mavlink-router who should control it.
If you want QGC to be the first to receive, then you have to make QGC be the bridge. It may have an option to do that (I know mavproxy has the --out to allow connecting other GCSs).

It seems to me, that this question is answered. Please comment, if I should re-open it.

repo: mavlink-router/mavlink-router


text:
add pr on usethis for interaction functions

turns out these functions would better exist only in usethis in the first place.
among other reasons, this avoids having to rebuild functions that are unexported from usethis.

[x] browse_workflow() as per #72
[ ] edit_workflow() as per #51
[x] browse_ghactions() as per #17

pending as per https://github.com/r-lib/usethis/pull/629


text:
Can i reduce particular column size.

Hi sir,
How can i reduce particular column size.
Ex. s.no - Column.S to width 75px

Hi, currently you can only set relative size via ColumnSize (S, M, L) and there's no feature to set absolute values to column widths. There's though a PR with that capability though to finalised yet. You can track fiexed with feature here: https://github.com/maxim-saplin/data_table_2/issues/47

authors: Govindbetterlives maxim-saplin


text:
Patch 2.0.2

Just leaving this as a reminder that CDPR patched the game to 2.0.2 today, so the mod does not work.

Thanks for the quick fix!

repo: maximegmd/CyberEngineTweaks


text:
sub_filter is not working

Hello.
I have a problem with sub_filter
It is not working in site-nginx.conf and rocket-nginx conf.
I hope you can help me with this problem.
Have a nice day.

For the test, I use the standard Nginx configuration for WordPress .
I need to change the theme name and time zone.
Example:
sub_filter 'ThemeName_v5.5.3' 'MyThemeName';
sub_filter '+00: 00 "' '' +03: 00" ';
sub_filter_once off;
Since the pages are packed in gzip format, Nginx cannot replace them.

This does not help. Please include all your configuration files for that site.
Thank you.

repo: maximejobin/rocket-nginx


text:
fix: search_entities default "format" value is invalid

The example given in readme doesn't work, this should fix it.
Url generated : https://www.wikidata.org/w/api.php?action=wbsearchentities&search=Ingmar Bergman&language=fr&limit=10&format=20
Error returned :
"error": {
        "code": "unknown_format",
        "info": "Unrecognized value for parameter 'format': 20",
        "*": "See https://www.wikidata.org/w/api.php for API usage"
    }

Dsl I used GitHub directly : some tests should be added.

thanks for spotting it!

tests added at 62818e8

Bonjour Max,
nice to see you're actively supporting this module !
I'll try to contribute more as I'm toying with it.
A+

authors: Offirmo maxlath

repo: maxlath/wikidata-sdk


text:
Ondrej-php PPA fixes/enhancements for Ubuntu

Hi,
I've been doing work to get mayflower-php working with the ondrej-php PPA. It appears ondrej/php5.5 and ondrej/php5.6 are now deprecated and he has combined PHP 5.5, 5.6 and 7.0 into one repo. This completely breaks the module as it currently is. I've also put in some fixes so that it actually adds the PPA before it even tries to install the packages (in packages.pp, pear.pp and dev.pp).
Please test and let me know if all works as it should. I've tested it on Ubuntu 14.04 (Trusty) with versions 5.5, 5.6, and 7.0 with the PPA.

Oh I should note, this is what I've got in hiera:
php::globals::php_version: '5.6'
php::manage_repos: true
php::fpm: true
php::dev: true
php::composer: true
php::pear: true
php::phpunit: false

I think the tests are incorrect because:
Failures:

php::fpm on ubuntu-12.04-x86_64 when called with no parameters should contain Service[php5-fpm] with ensure => "running"
Failure/Error:
should contain_service('php5-fpm').with({
'ensure' => 'running',
})
expected that the catalogue would contain Service[php5-fpm]
./spec/classes/php_fpm_spec.rb:18:in `block (5 levels) in <top (required)>'

It looks like services are now handled by php::fpm::service

I will work on fixing the tests as the pathnames and service names have changed for Ubuntu and using ondrej-php

I've squashed my 19 commits into a single commit to make it easier.

Thanks @tdm4, that's looking good! Could anybody test this and report back here?

also, please rebase after the merge of #192

a bit of documentation would also be nice :newspaper:

@mmoll where's best to put documentation?

@tdm4 in this case just in the README as further or updated examples

@mmoll Do you think we could deprecate php::repo::ubuntu::ppa ? Seeing as how it dependent on version, and version is what people really would rather change rather than figuring out which repo to select?

@tdm4 yes, that makes sense. However, I'd rather want to merge this PR very soon and then you could work on removing php::repo::ubuntu::ppa. As we're bumping the major version anyway, we don't need to care about compatibility. :boom:

@mmoll sounds good to me! 👍

merged, thanks @tdm4!

@mmoll Great! Thanks for merging it!

repo: mayflower/puppet-php


text:
implement desiredTagId

Before issuing a pull request, please see the contributing page.

🎉 ㊗ 🏆


text:
Integration with pre-commit (add a .pre-commit-hooks.yaml file)

Thanks for writing pytlint-ignore! I'm trying it out now and I'd like to integrate it with pre-commit https://pre-commit.com/ both locally and in the GitLab CI pipeline. This will require me to write a repository local hook because the "official repository for the linter doesn't have the pre-commit metadata". This isn't necessarily a big problem, but it's pretty simple for that metadata to be added to this repo as a .pre-commit-hooks.yaml file. Would you be open to adding that metadata file, please?

Sure, I guess it would be pretty much like this?
https://github.com/PyCQA/pylint/blob/main/.pre-commit-hooks.yaml

@mbarkhau yes, that should work... the only uncertainty is around the passing of the configuration file. Here's a local hook that works, written by a student who is working with me:
  - repo: local
    hooks:
      - id: pylint-ignore
        name: pylint-ignore
        entry: pylint-ignore --rcfile=.pylint-ignorerc  # --update-ignorefile
        language: system
        types: [python]
        require_serial: true

As you can see, we were explicitly coding the rcfile into entry: because we believe that pylint-ignore doesn't search for a default config file but has to be passed one explicitly as an argument. Also, the only way to generate pylint-ignore.md for all Python files in a directory hierarchy appeared to be to execute pre-commit run --all-files with the --update-ignorefile flag uncommented. Executing pylint-ignore -rcfile=.pylint-ignorerc . doesn't work unless there's an __init__.py file present, behaviour originating from pylint.
On the positive side, this entry in .pre-commit-config.yaml functioned correctly locally and in a Docker container on the CI pipeline.
I think the outstanding question is how pylint-ignore sources an rcfile by default?

If I remember correctly, all arguments to pylint-ignore (except for its own arguments --update-ignorefile and --ignorefile) are simply passed through to pylint and should behave exactly as documented for the pylint command

Thanks, that simplifies matters! The How it Works section gave the impression that a config file (setup.cfg is given as a "minimal config") had to be passed. So, the local hook above really only needs entry: pylint-ignore. I think that a .pre-commit-hooks.yaml file
- id: pylint-ignore
  name: pylint-ignore
  entry: pylint-ignore
  language: python
  types: [python]
  require_serial: true

would work. If you can wait until next week, I should then have some time to try it with [pre-commit try-repo](pre-commit try-repo) on a clone of this repo.

A little late in the week, but I just tried the proposed .pre-commit-hooks.yaml above in a clone and it worked a treat:
$ pre-commit try-repo ~/pylint-ignore --all-files
[INFO] Initializing environment for pylint-ignore.
===============================================================================
Using config:
===============================================================================
repos:
-   repo: pylint-ignore
    rev: 1bba22c0feea07b9113d176dc0b2dbce8b3b44f4
    hooks:
    -   id: pylint-ignore
===============================================================================
[INFO] Installing environment for pylint-ignore.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
pylint-ignore............................................................Passed

The only change that I might suggest is amending the name: entry to
  name: pylint

so that the hook shows it's running pylint (which it is). That's somewhat a cosmetic suggestion.
Otherwise, I'd consider this all good to go. It's so small it hardly seems worth a PR, but I'd be happy to raise one if you prefer?

I've spent half an hour now trying to learn how this works and I'm aborting now. Please prepare a PR which includes documentation.

authors: jamesquilty mbarkhau

repo: mbarkhau/pylint-ignore


text:
LiteCollection.Delete(Query) does not match id

I expected the following two lines to do basically the same thing, yet LiteCollection.Delete(Query) does not delete anything and  LiteCollection.Delete(BsonValue) does
collection.Delete(Query.EQ("Id", @event.Id)); //nothing gets deleted
collection.Delete(@event.Id); //one item deleted, as expected
Event.Id is a Guid, event was inserted like this:
collection.Insert(@event);
collection.EnsureIndex(e => e.Id, new IndexOptions() { Unique = true });

Hi @CaptBrick, Id is a special field. So, when LiteDB convert your class to Document, your Id field (or any field marked as BsonId) use _id. In this case, you can use:
collection.Delete(Query.EQ("_id", 123));

I've tripped over this behavior myself in the past. I was able to solve it rather quickly, but found it pretty confusing. I believe it would be sensible to make Id less of a special case, and let it behave just like other fields.

@nerai, I believe in this case LiteDB will throw an duplicate key exception (in Dictionary) or override you x property with _id property (as _id field). I used _id to be more MongoDB like. Primary key is a special unique index. I need this index to update/delete any document.

@nerai +1 It is really confusing

authors: CaptBrick mbdavid nerai

repo: mbdavid/LiteDB


text:
Fixing test builds for devices with softdevices.

Previously, .hex files were not copied when building source as a library.
This prevents builds that pre-compile source as a library and then includes the build directory as the only source (because there is no softdevice present). This PR adds an option to copy hex files when compiling source as a library. This is currently being used when compiling tests within test.py
Please review @0xc0170 and @screamerbg
FYI @pan-

What about static libraries, like there are bootloaders as static libs or just another software that can't be open sourced , but has to be included in the build?

Can we copy hex files by default?

Can we copy hex files by default and drop the parameter? This is for library builds afterall.

Can we copy hex files by default and drop the parameter? This is for library builds after all and do not affect application build.

I was hesitant to do this because I wasn't sure if the build_library function was used throughout the tools or just in this case. If you're confident this won't cause issues then I'm fine with making it the default behavior.

@bridadan see comments above. Dont modify build lib. its legacy

@mbed-bot: TEST
HOST_OSES=windows
BUILD_TOOLCHAINS=GCC_ARM,ARM
TARGETS=NRF51822,NRF51_DK

The build bot didn't try and build the tests locally, but I just tried. I'm getting the following linker error when building for the NRF51822 with GCC_ARM for many of the tests:
* NRF51822::GCC_ARM::RTOS_1
        Building project basic (NRF51822, GCC_ARM)
        Link: basic
        C:/Users/bridan01/Documents/dev/mbed/build/mbed/TARGET_NRF51822/TOOLCHAIN_GCC_ARM/NRF51822.ld:133 cannot move location counter backwards (from
 20004330 to 20003800)

@c1728p9 Do you know if this is because the tests are too big to fit in the ROM? I'm not familiar with this error

@bridadan To makes mbed BLE works with the RTOS work, the main stack size has been changed.
Apparently there is not enough memory left for the NRF51822, when this test is build.
Let me have a look, maybe it is possible to gain memory from elsewhere.

Thanks!! 👍

This is still not propagated to Nordic's repository and they cannot use it.
@sg- @pan- @bridadan

@screamerbg Do we need to resolve this? Or maybe @pan- can help them rebase/update their fork?

@bridadan You don't need do it, I will just cherry-pick your commit.

authors: 0xc0170 bridadan pan- screamerbg sg-

repo: mbedmicro/mbed


text:
Rename mbed_conf.h to mbed_config.h

Following the pattern of "device_has" to "DEVICE_", "features" to "FEATURE_", the mbed config system should map to mbed_config.h

@mbed-bot: TEST
HOST_OSES=windows
BUILD_TOOLCHAINS=GCC_ARM,ARM,IAR
TARGETS=K64F,KL25Z

@mbed-bot: TEST
HOST_OSES=windows
BUILD_TOOLCHAINS=GCC_ARM,ARM,IAR
TARGETS=K64F,KL25Z

Please read https://github.com/mbedmicro/mbed/pull/1957#discussion_r67345547, where it was proposed. I would go with the full name as here.
cc @bogdanm

Unfortunately we have used mbed_config.h in a different context in the past, see here:
https://github.com/mbedmicro/mbed/blob/master/tools/toolchains/__init__.py#L501
I don't think this previous mechanism was ever really adopted by our users, but keeping it in place is the best option for backward compatibility, I think.

https://github.com/mbedmicro/mbed/commit/1a1dafe44c643000c941ad9fef6bfc55dd22b0c3
Not sure this was ever documented as a feature, at least I cant find anything other than the commit message (and google confirms). I think this would be a safe change to revert given we now have a more complete and documented config system unless you know specifically of user projects using this mechanism.

I don't know of any users of this, no. It was designed to be mbed's "equivalent" to autoconf's config.h and HAS_CONFIG_H, but we never really documented it, and if there are some users of this, they aren't many. I don't have any strong objections against removing it. Also, we might want to keep the idea of defining MBED_HAS_CONFIG_H automatically if a mbed_config,h was generated by the config system.

I don't know of any users of this, no.

Hidden feature :-) Let's use mbed_config.h.

Also, we might want to keep the idea of defining MBED_HAS_CONFIG_H automatically if a mbed_config,h was generated by the config system.

Does Config define a macro like MBED_CONF if it's active and there's at least one config value within the app? That would be sufficient? It does not matter if the config comes via -D or preinclude? I would imagine having MBED_HAS_CONFIG if it would be a regular header so users or us have to include it in the app somewhere:
#ifdef MBED_HAS_CONFIG
#include "mbed_config.h"
#endif

Any other use cases?

Hidden feature :-) Let's use mbed_config.h.

Sure, but then let's also remove the previous logic related to mbed_config.h

Any other use cases?

Not sure. Let's leave it out for now and add it later if needed.

Now has_config is completely removed

@mbed-bot: TEST
HOST_OSES=windows
BUILD_TOOLCHAINS=GCC_ARM,ARM,IAR
TARGETS=K64F,KL25Z

authors: 0xc0170 bogdanm screamerbg sg-


text:
bug fixes for tokenizer readme

There were some bugs in tokenizer example code in readme. The code was changed to working code.

@dulajsan  Thank you for the contribution 👍

authors: dulajsan mbejda

repo: mbejda/Node-OpenNLP


text:
ng-change directive not working with tags-input

<tags-input ng-model="tags" ng-change="onChange()"></tags-input>

The onChange() method is not called when the "tags" model changes.

For whatever reason, the on-tag-added and on-tag-removed is not working. Here is my html:
    <tags-input ng-model="server.ldapUserGroups"
                class="col-lg-12"
                key-property="name"
                display-property="name"
                placeholder="Add a group"
                length="50"
                on-tag-added="checkFields('groups');"
                on-tag-removed="checkFields('groups');"
                add-from-autocomplete-only="true">
        <auto-complete
               source="loadLdapUserGroups($query)"
               display-property="name">
        </auto-complete>
    </tags-input>

what am I doing wrong?

@robtcallahan do you have a plunkr demonstrating this? At a glance this looks ok.

how a can watch current printing tag?

i have faced same issue  so you can use ngKeyup instead of ngChange .it will work fine

I tried making a simple example based on this comment I'm having issues with these as well, they always seem to lag behind, I am always getting the ngModel how it was before the latest event, it looks like this event happens before the ngModel is updated.
Here's how my code looks like
<tags-input ng-model="firstCtrl.tags"
            on-tag-added="otherCtrl.tagChanged(tags)"
            on-tag-removed="otherCtrl.tagChanged(tags)">
</tags-input>

I'm trying to get the list of tags to stay updated on another controller.

authors: LoganBarnett Uncle-Bens fresjitendra mazurroman obahareth robtcallahan

repo: mbenford/ngTagsInput


text:
Allow duplicates in DropDown.

Hello, I am current using v3.0.0 and i am not sure how would i display duplicate values in multiselect dropdown after going through the documentation.

what do you need duplicates for?

This issue was selected to be spring-cleaned by a script. More information can be found here.
If anyone thinks this was a mistake and this issue should be reopened, please leave a message below explaining why. Before doing so, please consider reading the CONTRIBUTING file.

authors: akhil10x5 mbenford stefanheimann


text:
Fixing closeOnEsc functionality && preserving the styling of #app and body elements

Fixing issues #54 & #59 & #61

Can someone merge this, please? We need really need this fix!

@plindelauf just published 2.0.2

@mc-mosa Thanks a lot for making all the fixes.

authors: mbj36 mc-mosa plindelauf


text:
For people that are using d3 with web components.

It is simply an import.html with the following content:
<script src="d3.min.js" charset="utf-8"></script>

When working with web components, every component that uses d3 will import it through:
<link rel="import" href="../d3/import.html">

This will prevent importing d3 more than once.

Sorry, but this feels like unnecessary baggage and I do not think it is appropriate to put it in the D3 repository. If people are using web components with D3, they should create their own import.html as needed.

authors: boJackEden mbostock

license: ISC


text:
Create startup dot py to launch application with

startup dot py is the entry point into the performance manager
processing event loop. its main processes schedules repeated calls to a
function that will check the metadata table for unprocessed parquet
files. if it finds them, they are passed to process_vehicle_positions,
a function that converts vehicle position gtfs_rt parquet files into row
entries in the vehicle position events table using the same logic that
was in (the now deleted) load_vp_events dot py script. the performance
manager image is now launched with a startup dot py invocation.

A few comments on this. Big ones being moving the MetadataLog SELECT into the library file and the merge logic on the existing and new events.

LGTM

authors: mzappitello rymarczy

repo: mbta/lamp


text:
The ; command can't handle values bigger then 255

When I execute the ; command on values bigger than 255 or lower than 0 I get the message "in `chr': 256 out of char range (RangeError)".
I would expect either unicode (not sure what negative values would mean) or the character modulo 256.
A third possibility would be to write into the doc that values outside of [0,255] can't be handled.
I would prefer modulo 256 because that would make it easier to output a linebreak with M 8 ;

I'll give this some thought, but modulo 256 sounds good.
On Mon, Sep 28, 2015 at 9:39 PM, Etoplay notifications@github.com wrote:

When I execute the ; command on values bigger than 255 or lower than 0 I
get the message "in `chr': 256 out of char range (RangeError)".
I would expect either unicode (not sure what negative values would mean)
or the character modulo 256.
A third possibility would be to write into the doc that values outside of
[0,255] can't be handled.
I would prefer modulo 256 because that would make it easier to output a
linebreak with M 8 ;
—
Reply to this email directly or view it on GitHub
https://github.com/mbuettner/hexagony/issues/2.

Well, right now the documentation implies that the ; command outputs characters. Therefore, the choices are:

Change it so that it says bytes instead. Then you can’t output non-ASCII characters except by implementing a UTF-8 encoder in Hexagony. Then you still have to decide whether values outside the range of a byte should be moduloed or throw an error.
Change it so that it actually outputs any Unicode character. Then the interpreter has to assume an output encoding, meaning you can no longer use Hexagony to output any byte stream.

I've gone ahead with this change and made the I/O work with bytes instead of characters. Output is taken modulo 256 as suggested.

authors: Etoplay Timwi mbuettner

repo: mbuettner/hexagony


text:
HiDPI causes unsaved changes to be lost on window resize

Using Atom 0.207.0 and higher at least, on linux.
How to reproduce:
With the hidpi plugin enabled, I open a file and type some edits into it.  (In my case, I'm editing js / html files)  Then resize the window.
Expected result:  Bigger window, same files open exactly as before.
Actual result: Bigger window, same files open, but all unsaved changes are gone.

The problem is that after a DPI change, the current buffer will have rendering errors unless it is reloaded.  By default atom-hidpi closes the current buffer and reopens it.  On my computer (also linux, running gnome-shell) if there are changes atom asks me if I would like to save them before reopening the file.  If you are not seeing that prompt then there is definitely a problem.  What desktop environment / window manager are you using?
I've been thinking for awhile that closing and reopening files (even when it properly asks you to save changes) is not a good default because data can be lost if the user accidentally clicks "No" when it asks "FILE_NAME has changes, would you like to save them?".  I think I will disable the reopening feature by default and users who understand the risks can re-enable it.
It would also reduce the frequency of this problem if atom-hidpi only reopened the current file when the scale-factor actually changes.
Ideally I find a way to fix the rendering issues without reopening the current file, but so far I have not found any other solutions.

Hi!
I'm using KDE with the default (Kwin) window manager. I don't get a prompt of any kind.
The 'only reopen on scale-factor change' would definitely solve it for me. My scale factor almost never changes after I've started editing... I basically have two modes, plugged into monitor or only on laptop screen - so by the time I open Atom, I'm already in whatever mode I'm trying to be in about 98% of the time.
I'm the author of minimap-autohide... so I've done a bit of atom plugin coding.  Maybe there's a way to trigger the screen-refresh without closing the buffer.  You can do that with CTRL-ALT-R... and from the command palette you can use 'window:reload' - and a reload will keep unsaved changes...... So perhaps when scale-factor changes you can trigger that using atom.commands.dispatch or something?
Let me know if I can help in any way!

I have actually already tried that.  When I trigger the reload, it prompts me to save any changes.  If there are multiple files with changes, it prompts me to save all of them.  I chose to just reopen the current file because then you only need to deal with one prompt.
I am going to assume KDE is a special case.  I am currently installing it and I will investigate further.  For now, release c07bce029469544215e1469e39c455ad7e7be876 disables the reopen feature by default and adds 'only reopen on scale-factor change'.  Let me know if there are any problems.  I am going to close this issue and open another one for a better fix for the rendering errors.

I think I just figured out why I don't get a prompt... and it is not kwin. I am also using the save-session plugin.  If I have both save-session and hidpi enabled, I don't get a prompt and my changes are lost. if I disable save-session, but leave HiDPI enabled, I get the save changes prompt just as you described.
I'd guess that save-session disables the prompt in favor of it's own handling of the window close... but since you don't close the window, the changes simply get lost.  (That's just a guess, not based on code digging)
anyway - Wanted to let you know since it doesn't appear to be a KDE issue after all.

Thats good to know.  Thanks for investigating.

authors: izadmin mcanders

repo: mcanders/atom-hidpi


text:
feat: add superjson so dates are auto stringified and parsed

Signed-off-by: Logan McAnsh logan@mcan.sh

📝Changed routes:

/
/sneakers/[id]

(view full size)
(view full size)

Commit 6dd3800389e3cdc39d765f954c3b4961f68a6da5 (https://snkrs-git-superjson.mcansh.now.sh).

repo: mcansh/snkrs


text:
Enhancement Request to pass in an existing connection...

I am looking to implement a LDAPS authorization in our website, but our hosting provider is Heroku which does not provide static IPs. The issue I am running into, is that the partners I want to provide the authorization to want to open up their firewall on port 636 for a specific IP address. Heroku has a proxy based add-on from partners like QuotaGuard where you can route your traffic via their proxy server and the proxy server will be a static IP. QuotaGuard also provides a SOCKS server. (This is my first time with SOCKS).
So, what I thought I needed to do was create the SOCKS socket via socksv5 package and then pass that existing connection to LDAPJS, but I don't see a way I can do this.
I do see that I can pass a string to the createClient API as socketPath, but that seems to be a string to create the connection and not a way to pass an existing connection.
I think if there was a parameter like "connectedSocket", similar to socketPath, but instead of trying to do the net.connect, it would just set the socket to this existing socket, would provide what I need.

@sgaylord hey there, we are in the same situation, how did you solve yours in the end? Thanks in advance.

The need changed so I did not have to find a solution on this.  I did learn that on Heroku there are add on services that you can use to redirect your requests through a relay to simulate a single IP address source.  If we had to solve this issue, this is the route I was going to take.

⚠ This issue has been locked due to age. If you have encountered a recent
problem that seems to be covered by this issue, please open a new issue.
Please include a minimal reproducible example
when opening a new issue.

authors: jsumners neemah sgaylord

repo: mcavage/node-ldapjs


text:
🛑 ChatGenie Client API is down

In d727561, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 49d25f7.


text:
🛑 ChatGenie Client API is down

In 40d3258, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in c7ca184.


text:
🛑 ChatGenie Client API is down

In 5116043, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in a0d995c.


text:
🛑 ChatGenie Client API is down

In d61adae, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in b72fd35.


text:
🛑 ChatGenie Client API is down

In 97f4cf1, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in aeab0de.


text:
🛑 ChatGenie Client API is down

In ce271be, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 5f1f038 after 52 minutes.


text:
🛑 ChatGenie Client API is down

In d2ff9c3, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 992b3f0 after 22 minutes.


text:
🛑 ChatGenie Client API is down

In 57cb7f4, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in f02fd5c after 27 minutes.


text:
🛑 ChatGenie Client API is down

In 3610d04, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 1430c9e after 25 minutes.


text:
🛑 ChatGenie Client API is down

In 572878d, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in aa6d5f0 after 17 minutes.


text:
🛑 ChatGenie Client API is down

In 1567c56, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 60cdb81 after 36 minutes.


text:
🛑 ChatGenie Client API is down

In f30d3cd, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 358125a after 1 hour, 33 minutes.


text:
🛑 ChatGenie Client API is down

In 241aa69, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 1fbb593 after 9 minutes.


text:
🛑 ChatGenie Client API is down

In b7a1f34, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 7d71ea8 after 28 minutes.


text:
🛑 ChatGenie Client API is down

In 5ea481d, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in c526dbc after 29 minutes.


text:
🛑 ChatGenie Client API is down

In 2632cc8, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 47e0674.


text:
🛑 ChatGenie Client API is down

In aecaa37, ChatGenie Client API ($CHATGENIE_CLIENT_API) was down:

HTTP code: 0
Response time: 0 ms

Resolved: ChatGenie Client API is back up in 387d55f.


text:
test vectors only valid when nonce doesn't advance?

i'm having trouble understanding the test vectors versus how nonce works.
as far as i understand the noise spec, every read and write will advance the nonce by one,
but the test vectors only work out if the nonce never advances. is this intentional or is my math wrong?

In transport mode the nonce will increase by one, which should be the case since we call into_transport_mode() in the vector test code. What math isn't working out?

finally figured it out. the snow tests don't advance the nonce at all. i think they should, but it doesn't really matter.
the cacophony tests DO advance the nonce, but only after the 3rd message, because they assume tcp where transport starts in nonce 0, i guess.
All of the tests now work out for me, thanks.

@aep ah, maybe you're referring to the fact that the snow vectors don't generate transport messages while other libraries do?

authors: aep mcginty

repo: mcginty/snow


text:
🛑 GitHub Mirror is down

In 68e68a4, GitHub Mirror (https://gh.chapro.xyz) was down:

HTTP code: 500
Response time: 60 ms

Resolved: GitHub Mirror is back up in 7a63f92 after 10 minutes.

repo: mchaNetwork/status


text:
🛑 GitHub Mirror is down

In 3d3dfa6, GitHub Mirror (https://gh.chapro.xyz) was down:

HTTP code: 500
Response time: 200 ms

Resolved: GitHub Mirror is back up in f6e12bf after 5 minutes.


text:
🛑 GitHub Mirror is down

In 6167e31, GitHub Mirror (https://gh.chapro.xyz) was down:

HTTP code: 500
Response time: 43 ms

Resolved: GitHub Mirror is back up in aec02b9 after 57 minutes.


text:
Allow disco in one project to monitor a set of other projects

It seems that disco deployed as a service can only discover resources from that project.
I would prefer to deploy disco in a dedicated project, and then give it read access on the project(s) I want to monitor.
This would allow me to not "pollute" my production projects and to easily uninstall it (by deleting the project)

Disco uses the access granted to the service account under which it runs to discover projects/services. That very use-case you described is supported by granting the SA from one project the necessary rights in the other project.
Created new issue to track this #60

The docs for cross project disco service discovery have been updated.
https://github.com/mchmarny/disco/blob/main/docs/SERVICE.md#deployment
TLDR; granting the disco service account created by the deployment Viewer role on any other project will make the services in that project discoverable to disco.

authors: mchmarny steren

repo: mchmarny/disco


text:
Add Docker environment & web demo

Hey @mchong6! 👋
I really enjoyed playing with JoJoGAN. This pull request makes it possible to run your model inside a Docker environment, which makes it easier for other people to run it.  We're using an open source tool called Cog to make this process easier.
This also means we can make a web page where other people can try out your model! View it here: https://replicate.ai/mchong6/jojogan
Claim your page here so you can edit it, and we'll feature it on our website and tweet about it too. We have added some examples to the page, but do claim the page so you can own the page, customize the Example gallery as you like, and push any future updates to the web demo.
In case you're wondering who I am, I'm from Replicate, where we're trying to make machine learning reproducible. We got frustrated that we couldn't run all the really interesting ML work being done. So, we're going round implementing models we like. 😊

Thanks I appreciate it :)

Thanks for merging @mchong6!


text:
Deploy to Vercel button deploys old Chatbot UI Lite

How would I deploy the new version? This is what I see when following the Deploy to Vercel button

This bug was fixed recently.
Did you use an old local version of the link?
The one on the readme right now should be correct.

authors: mckaywrigley xoelop

repo: mckaywrigley/chatbot-ui


text:
Unable to add targets to several NPCs

Hello, first of all, thanks for this awesome plugin.
I downloaded both Citizens 2 and Sentinel (last versions) and everything is working fine, but,
When creating 2 NPCs, giving them a sword and then typing "/sentinel addtarget zombie" it says "Must have an NPC selected". I tried to do "/npc sel" and every of these commands but it's still telling me the same error.
Can anyone help me please ? Sorry if it's logical but I really can't get it, even with tutorials,
Thanks in advance to everyone that will try to help me :)

Add /trait sentinel
The error message is clearer in more recent builds

I already did it. Weirdly replacing "/trait sentinel" by "/trait Sentinel" worked.
Thanks for your answer.


text:
Please consider adding support for GGUF Flux.dev

Feature Idea
Basically, this: https://civitai.com/models/647237/flux1-dev-gguf-q4-q5-q8
Q8 seems to be superior in quality to fp8 while having a similar resource usage, which would be great for us on 16GB cards.
Thanks!
Other
No response

I am waiting to test as well :D

+1, Q8 seems like a good middle ground between FP16 and FP8, being much closer to FP16 quality wise.

There's a comfy custom node for it https://github.com/city96/ComfyUI-GGUF

Added! relevant docs here  https://github.com/mcmonkeyprojects/SwarmUI/blob/master/docs/Model Support.md#gguf-quantized-models

@mcmonkey4eva thanks, it works great!

Sorry to barge in but autoinstallation did not work for me, anything I can do? I don't get the popup :(

make your own issue post or ask on discord @ https://discord.gg/q2y38cqjNw

repo: mcmonkeyprojects/SwarmUI


text:
implementing sagas

Great work!
Do you have any plan to implement sagas on your current repo?
If all api calls are performed through sagas, it will be perfect.

Hey @binzailani3136
Would you be interested in submitting a PR to show how it's done?

repo: mcnamee/react-native-starter-app


text:
Your project is started with a tab view , How can i change it to a login screen

Your project is started with a tab view , How can i change it to a login screen and i don't need a tab view i need to add a plain page after login. Kindly solve my problem.

You can check her how I'm doing it
https://github.com/interglobalvision/app-andamiaje-co/blob/dev/src/native/routes/index.js

Nice one @mixcas

authors: antosmaman mcnamee mixcas

repo: mcnamee/react-native-starter-kit


text:
Required fields support

Added required field support.
Example:

const fastJson = require('fast-json-stringify')
const stringify = fastJson({
  title: 'schema with required field',
  type: 'object',
  properties: {
    str: {
      type: 'string',
      required: true
    },
    num: {
      type: 'number'
    }
  }
})

If the required field is not provided, fast-json-stringify will throw an error.
Required feedback 😄

Good job, one nit :)

THx! :)

authors: delvedor mcollina

repo: mcollina/fast-json-stringify


text:
Boost performance

I was able to improve the performance of sonic-boom between 57% to 561% (!).
Overview of the test results

Green means a performance enhancement, red a performance degradation.
Test environment
MacBook Pro (mid-2015) running MacOS Mojave

Tested versions

Module
Version

Nodejs
8.14.0 (carbon), 10.14.1 (dubnium) and 11.3.0

sonic-boom
0.6.3

flatstr (included via sonic-boom)
1.0.8

Tests
The benchmark test script is available at: https://gist.github.com/KurtPattyn/9d2a14760e16d0f0fde5e633db1f038f
Types
4 types of tests were conducted:

Small Text
The text The quick brown fox jumps over the lazy dog is written to the output (sonic-boom.write()).
Larger Text
A JSON.stringified() package.json is written to the output (length: 1447 bytes).
Few Concats (10)
The text aaaaa is concatenated 10 times and then written to the output.
Many Concats (300)
The text aaaaa is concatenated 300 times and then written to the output.

Tests 3 and 4 are typical for the pino logger, where a log string is created by concatenating strings.
Test 3 represents log messages with a small context object and a simple message (like pino.info({ userId: 123 }, 'User logged in to %s', serverName);).
Test 4 represents log messages with either a deep context, a 'complex' log message or both (like: pino.info(require('package.json'), "The %s test has run %d times with result %j", testName, testCount, testStats);).
Subjects Under Test
The following modules were tested:

Boom not optimized
This is the version as currently published.
Boom optimized
This is an adapted version of Boom where a flatstr()-call has been added in the write() method.
Boom not optimized+
This is the Boom version as currently implemented, but with an adaptation to flatstr. The node version check in flatstr has been commented out (this has only effect on node versions < 10; the V8 FlatString is also called for Node versions < 10).
This change affects the flatstr call in the actualWrite method of Boom.
Boom optimized+
Boom has been adapted as in 2, and flatstr has been adapted as in 3.

Conclusion
Adding the flatstr()-call to the write()-call has a significant impact on the performance (the more concats, the more the gain).
For Node v8.14.0 adapting flatstr to use the V8 FlatString call, gives another boost to the performance.

Added PR: https://github.com/mcollina/sonic-boom/pull/20

repo: mcollina/sonic-boom


text:
missing tab means Bandage can't read mccortex GFA

Not sure what the spec says, but Bandage expects a tab, not a space, after the initial H on line 1.
Currently Mccortex outputs a space.

Actually Ryan Wick says the spec requires a tab

Just fixed in develop branch. Thanks Zam.

OK thanks! Should I used develop then in general?

Yes, probably best to use develop. Develop occasionally breaks but is more current. Master shouldn't break but is missing latest commits.

authors: iqbal-lab noporpoise

repo: mcveanlab/mccortex


text:
[BUG]: Input box Text cannot visible

Is there an existing issue for this?

[X] I have searched the existing issues

What went down?
Hello @mdazfar2 ,

In this project  subscription input box cannot text visible
please assign me..

Screencast from 2024-07-08 14-03-21.webm
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[ ] I'm a VSoC'24 contributor
[X] I want to work on this issue

@sivaprasath2004 I am noticing that you raise issues again and again without checking anything.

This time you have raised a duplicate issue; it was already raised by someone else.
Look at all the issues, see which ones are available and which ones are not, and create issues accordingly.
You guys raise issues to get points but don't try to enhance the website
This is not the way to work on open source.


text:
Audio setup

With all the recent changes in mind, what are the proper settings to have just one audio stream? Let's say I just want to keep Universal Audio (2 channels, aac) and leave out the rest.

Universal audio always aims to create an extra stream so that’s probably not ideal. Just use the general audio options but set codec and max channels.

Is it possible to disable Universal Audio then? I couldn't find a way to do it so far.

Yep. Just don’t put any codecs

Thank you. Have a nice evening :)


text:
Create dhcp6test package

Create a dhcp6/dhcp6test package akin to net/http/httptest, with types like Recorder and Server (test server).  This will clean up some of the current tests, and make it easier to test Handler types.
This may also require throwing out some or all of mux_test.go and server_test.go, and rewriting them in package dhcp6_test instead, to avoid circular imports.

Added in 0793981d11d4584bc9fb72c529576bcf16014436.