eclipse integration

I followed  these instructions but Eclipse doesn't recognise  ino files as C++ file
Menu:Projet>build Projet works and compile fine
but I don't have PlatformIO command like upload under Menu:Projet>build Projet
I found the Make Target command thought and I can upload but this code
/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the Uno and
  Leonardo, it is attached to digital pin 13. If you're unsure what
  pin the on-board LED is connected to on your Arduino model, check
  the documentation at http://www.arduino.cc

  This example code is in the public domain.

  modified 8 May 2014
  by Scott Fitzgerald
 */

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin 13 as an output.
  pinMode(13, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(13, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(100);              // wait for a second
  digitalWrite(13, LOW);    // turn the LED off by making the voltage LOW
  delay(100);              // wait for a second
}

has Eclipse showing  multiple  errors :
Description	Resource	Path	Location	Type
Invalid arguments '
Candidates are:
void digitalWrite(unsigned long int, unsigned long int)
'	test.ino	/zeroEclipse/src	line 25	Semantic Error
Invalid arguments '
Candidates are:
void digitalWrite(unsigned long int, unsigned long int)
'	test.ino	/zeroEclipse/src	line 27	Semantic Error
Invalid arguments '
Candidates are:
void pinMode(unsigned long int, unsigned long int)
'	test.ino	/zeroEclipse/src	line 20	Semantic Error
Symbol 'HIGH' could not be resolved	test.ino	/zeroEclipse/src	line 25	Semantic Error
Symbol 'LOW' could not be resolved	test.ino	/zeroEclipse/src	line 27	Semantic Error
Symbol 'OUTPUT' could not be resolved	test.ino	/zeroEclipse/src	line 20	Semantic Error

Please take a look at PlatformIO IDE
Try "Right Click" on the project in Eclipse, then Make Targets > Build...

Also, you can add "Targets View" via Eclipse Menu: Windows > Show View > Make Targets

OK Platfformio commands works but Eclipse show errors for all Arduino specifics like pinMode, digitalWrite, OUTPUT, etc.
What is missing ?

Please add the line on the top of file
#include <Arduino.h>

Thx it works

I'm seeing the same error even after inclusions, and multiple index rebuilds/Eclipse restarts with the Blink example. Other projects suffer the same fate. I'm using Eclipse Mars.2 - is it considered compatible with Platform.IO?

@dinvlad What is the extension of your main file? It should be *.cpp.

Yes, it's *.cpp. I also tried .ino but that didn't help. Thanks

@dinvlad

You should use *.cpp. Rename to .cpp
Try to rebuild C/C++ index . Menu: Project > C/C++ Index > Rebuild
Please give me your screenshot like mine

Yes, I did rebuild indices many times. Sorry but in the end I've decided to use Visual Studio/Atmel Studio since they provide a smoother experience out of the box and more importantly, support debugging (at the cost of being Windows-specific). Also of note that Atom IDE didn't have this issue.

Also moving to Visual Micro to have the debugging working

@deladriere which boards do you debug?

@dinvlad we don't force to use PlatformIO or any IDE. However, we would be thankful if you help us to resolve your issue. Could you provide screenshot from step 3?
Thanks!

@ivankravets Arduino Zero

@ivankravets Here it is. I'm using official Python distribution 2.7.10 64-bit, Eclipse Mars.2 (4.5.2), and PlatformIO installed using pip. I also installed CDT 8.6.0, though it wasn't required for it to work.
Btw it was a bit premature to say we completely moved to VS, since I'm still planning to use the excellent PlatformIO for CI with Jenkins, just not for IDE. Thanks a lot for your efforts!

@deladriere we have OpenOCD package and you can debug your project in any IDEs which is listed in supported list by PlatformIO. If you are interested in it, we can help and explain. In any case, we are working with our IDEs Partners and PlatformIO users will receive debug feature very soon.

@dinvlad Do you use the latest CDT plugin? I don't see CDT Cross GCC Built-in Compiler Settings.
Please download the latest Eclipse IDE for C/C++ Developers and try to generate new project.

@ivankravets great! would it support "programmer-based" debugging, or purely software/USB-serial, and in the latter case would there be any limitations compared to the former (like the number of breakpoints, ability to trace etc.)?
There was no need to install a new copy of IDE (I had one configured for Java), I just enabled "CDT Optional Features->C/C++ GCC Cross Compiler Support" through "Install New Software" and had to check the cross-compilation flag from above manually (even after creating a fresh Eclipse project using pio from the command line), then copied the command string for cross-compiler from your screenshot and clicked "C/C++ Index->Freshen all files". The errors are now gone!

@dinvlad

would it support "programmer-based" debugging

Hardware-based debugging. GDB<->PlatformIO Debug Server via (OpenOCD, STLink, etc)

would there be any limitations compared to the former (like the number of breakpoints, ability to trace etc.)?

No any limitations. We are 100% open source.

The errors are now gone!

Great! :+1: Thanks a lot that reported it. I hope that this information will be useful for our community.
Happy Coding! :blush:

Sweet! It turns out that VisualMicro's Intellisense doesn't fully support Arduino 1.6.7 (yet) so I might be to square one with PlatformIO/Eclipse! Especially that it's getting the free hardware debugging support! Is that available on the development branch that I could test now?

Is that available on the development branch that I could test now?

Which boards are you going to debug?

@ivankravets Mega 2560 R3. I also have Atmel-ICE debugger if that helps (but could use another one if needed)

@dinvlad
Please read my article Building and debugging Atmel AVR (Arduino-based) project using Eclipse IDE+PlatformIO. Scroll to the bottom of article and use avarice instead simulavr. Also, take a look at this article.
GDB is located in ~/.platformio/packages/toolchain-atmelavr/bin/avr-gdb.

ivankravets thanks, very informative!
Unfortunately, it looks like my programmer is "too fresh" and is not yet supported by AVaRICE. Apparently it's using CMSIS-DAP/EDBG protocol to wrap USB communication, and that is thus far only supported by Atmel Studio and AVRdude. I got it working with both, but will be stuck with Atmel Studio for debugging for the time being. In any case, Eclipse/PlatformIO is my primary IDE now for the bulk of development!

Hmm, does using CMSIS/EDBG mean that it's a unified interface that should be compatible with OpenOCD? Then this debugger could benefit from that new ecosystem instead of AVaRICE?

Happy to report (partial) success!
Turns out AVaRICE has just introduced support for EDBG protocol on their development branch: http://svn.code.sf.net/p/avarice/code/trunk/avarice/NEWS
I've now successfully compiled it for Windows using bare Cygwin installation with its stock libusb-devel and libhidapi-devel packages and INSTALL-FROM-CVS readme from svn folder (however, kudos goes to http://www.avrfreaks.net/forum/atmel-ice-avarice-eclipse-and-debugging-ubuntu).
After that AVaRICE appears to start successfully (either from Cygwin shell or Windows CMD if you add C:\cygwin\bin to your PATH). For connection to EDBG, use the new '--edbg' key, e.g.
avarice.exe --edbg --ignore-intr :4242
Atmel-ICE and programmed device should then be detected automatically. There's no need to fuss around with libusb filters as suggested at the end of the installation, it just works! It's also helpful to keep Atmel Studio open in case an upload or debugging session 'bricks' the device (the installation steps from above don't break its compatibility).
The rest of instructions are the same as provided in your article.
Now I can start the debugging session from Eclipse and it even stops at an initial breakpoint, however I see messages about XML memory maps that I still have to troubleshoot. Hopefully that won't be much extra work though.

@dinvlad great news! :+1:
Please open separate issue to update AVaRICE binary in package. Also, please link to this issue.


requesting bindings for TextExtents

Could the bindings for cudaFont.TextExtents be added?
I see that cudaFont has GetSize and OverlayText exposed, but not TextExtents
https://github.com/dusty-nv/jetson-utils/blob/master/cuda/cudaFont.h
class cudaFont(builtins.object)
 |  Bitmap font overlay rendering with CUDA
 |
 |  Methods defined here:
 |
 |  GetSize(...)
 |      Return the size of the font (height in pixels)
 |
 |  OverlayText(...)
 |      Render the font overlay for a given text string
 |
 |  __init__(self, /, *args, **kwargs)
 |      Initialize self.  See help(type(self)) for accurate signature.
 |

I'm trying to debug an issue where I get
[cuda]   cudaDeviceSynchronize()
[cuda]      an illegal memory access was encountered (error 700) (hex 0x2BC)
[cuda]      /jetson-inference/utils/codec/gstEncoder.cpp:717

Exception ignored in: 'cupy.cuda.function.Module.__dealloc__'

I think this happens when I use jetson_utils.cudaFont.OverlayText and yolov8
and I'm looking into creating a minimum working example for that.
    return torch.ops.torchvision.nms(boxes, scores, iou_threshold)
  File "/usr/local/lib/python3.10/dist-packages/torch/_ops.py", line 854, in __call__
    return self_._op(*args, **(kwargs or {}))
RuntimeError: CUDA error: an illegal instruction was encountered
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.

  File "cupy_backends/cuda/api/runtime.pyx", line 144, in cupy_backends.cuda.api.runtime.check_status
cupy_backends.cuda.api.runtime.CUDARuntimeError: cudaErrorIllegalInstruction: an illegal instruction was encountered

I'm wondering if I can prevent the cudaDeviceSynchronize if I don't draw when it get's too close to an edge.
I can rail the top left position, and if I could find the size of the overlay I could skip the overlay if it would go out of bounds on the bottom right position.
I understand that this may not be the fix but I'm looking to experiment.
I'm on jetson_utils 1.0.0
>>> import jetson_utils
>>> jetson_utils.VERSION
'1.0.0'

Hi @teresi, sorry for the delay, this was added in https://github.com/dusty-nv/jetson-utils/commit/4152d8acbaa7fc867521d1e7dc4e850f5a28b364

much appreciated, thank you


Is it possible to throttle this app?

I installed this with no problems then I read the takes about an hour with a 3090, which I have a 3090, but my GPU starts crunching at full speed mode and I would rather not have an hour of full speed.
I don't know if this is possible and I know it would take longer to be batched or throttled, but if there is a way to process in chunks in a que or even a pause between the 88 images I think it would be a little less disruptive for people on their home PC's.
Thanks

Thanks for the suggestion. We have released the multi-GPU inference code with context-parallel and PAB under VideoSys (https://github.com/NUS-HPC-AI-Lab/VideoSys/pull/232). If everything goes well, the PR will be merged.
We are also working on other noise schedulers to reduce the inference steps. Hope we can release it soon.

Thanks for the update.


Contradiction in the docs about max number of database/containers?

In the Cosmos DB service quota page, there is a section about resource limits that states the maximum number of databases/containers on the account is 500 with a footnote that says the limit cannot be increased.

² This limit cannot be increased. Total count of both with an account. (1 database and 499 containers, 250 databases and 250 containers, etc.)

In a later section about per-account limits, it states the same, but, with a different footnote that says the limit can be increased.

¹ You can increase any of these per-account limits by creating an Azure Support request.

This seems to be contradicting each other. Can you please help clarify this? Also, if the maximum number of databases/containers can be increased, what is the hard limit?

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

ID: e00a0946-e2b2-9a5f-f823-fb1ab1a662ef
Version Independent ID: 33e279f8-b757-048a-005b-b85392f9dfa2
Content: Service quotas and default limits - Azure Cosmos DB
Content Source: articles/cosmos-db/concepts-limits.md
Service: cosmos-db
GitHub Login: @seesharprun
Microsoft Alias: sidandrews

@jeffreylin91
Thanks for your feedback! We will investigate and update as appropriate.

Hi @seesharprun,
Could you please look into this document request, thanks

Hi @seesharprun, could you please help with this issue?

@seesharprun, @RamanathanChinnappan-MSFT, & @shaktisingh-msft, could you please help with this question?

The article has been updated to reflect a hard limit of 1,000 max. 500 is the soft limit prior to an Azure support request.
#please-close


Android-Specific Error Encountered in Passkey Registration Process

Hello,
I'm currently integrating this library into my React Native application to enable passkey functionality. I have followed all the configuration steps outlined in the README.md, including setting up the associated domain and other relevant settings.
The implementation works flawlessly on iOS (version 17.2), where the passkey creation and usage are functioning as expected. However, I am encountering a problem on the Android platform. Despite a successful build and the appearance of the passkey creation popup on Android, an error occurs during the registration process. The error message is as follows:
{
  "error": "Native error",
  "message": "androidx.credentials.exception.CreateCredentialCustomException:"
}

This issue is puzzling, as it seems to be specific to the Android environment, and I'm unsure of the underlying cause. I would greatly appreciate any insights or suggestions on what might be leading to this error. Could there be a step I'm missing, or is it potentially a bug within the library when used on Android?
Thank you in advance for your assistance and guidance. 🙏

Hi @yakirbitan,
Thank you for reporting this! I don't recall ever encountering this error during development, so I'm happy to look into it for you.
I just need some further clarification:

What Android version are you using?
Can you give me an example passkey request that triggers this error?
Please double check if you've set up Digital Asset Links correctly!

Hi @yakirbitan,
Thank you for reporting this! I don't recall ever encountering this error during development, so I'm happy to look into it for you. I just need some further clarification:

What Android version are you using?
Can you give me an example passkey request that triggers this error?
Please double check if you've set up Digital Asset Links correctly!

@f-23 Thanks for your motivation to help 🙏
Android Version: 14
Device: Pixel 7 API 34
Model: sdk_gphone64_arm64
Passkey Request:
{
  "attestation": null,
  "authenticatorSelection": {
    "requireResidentKey": false,
    "residentKey": "discouraged",
    "userVerification": "preferred"
  },
  "challenge": "kpPEPXgP7D1wjV6MlRBPSUz+nCtJisjOD+vywQMJkL8=",
  "excludeCredentials": [],
  "extensions": {
    "credProps": true
  },
  "pubKeyCredParams": [
    {
      "alg": -7,
      "type": "public-key"
    },
    {
      "alg": -257,
      "type": "public-key"
    }
  ],
  "rp": {
    "id": "localhost",
    "name": "Rewire"
  },
  "timeout": 1800000,
  "user": {
    "displayName": "Passkey Test",
    "id": "2HzoHm_hY0CjuEESY9tY6-3SdjmNHOoNqaPDcZGzsr0",
    "name": "Passkey Test"
  }
}

I double-checked everything in the Digital Asset Links in Android:
  GET https://<mydomain>/.well-known/assetlinks.json

[
  {
    "relation": [
      "delegate_permission/common.handle_all_urls",
      "delegate_permission/common.get_login_creds"
    ],
    "target": {
      "namespace": "android_app",
      "package_name": "com.rewire.app",
      "sha256_cert_fingerprints": [
        SHA_HEX_VALUE // this was replaced with the real SHA_HEX_VALUE
      ]
    }
  }
]

Moreover, this is the popup:

The error came from line 34 (link):
val result = currentActivity?.let { credentialManager.createCredential(it, createPublicKeyCredentialRequest) }

This is the information I got from the debugger with Android Studio:

It shows that there is an error related to Google Password Manager but without an explanation of what causes it.

@f-23,
I appreciate your willingness to help with the issue I've encountered. To facilitate a more detailed investigation, I've created a simplified React Native project that replicates the issue using your library. Unfortunately, the same error persists, hindering the passkey functionality on Android devices. The project is available at: https://github.com/yakirbitan/passkey
Error encountered:
{
  "error": "Native error",
  "message": "androidx.credentials.exception.CreateCredentialCustomException:"
}

I have verified the assetlinks.json configuration thoroughly, ensuring it aligns with the expected setup. The verification command outputs confirm that the digital asset links are correctly associated:
Copy code
➜ passkey git:(main) adb shell pm get-app-links com.google.credentialmanager.sample
com.google.credentialmanager.sample:
  ID: 1def815a-7fb5-4d00-8098-c20220144ef3
  Signatures: [FA:C6:17:45:DC:09:03:78:6F:B9:ED:E6:2A:96:2B:39:9F:73:48:F0:BB:6F:89:9B:83:32:66:75:91:03:3B:9C]
  Domain verification state:
    www.glitch.me: 1024
    passkeys-codelab.glitch.me: 1024

Additional details for your reference:

React Native version: v18.19.0
NPM version: v10.2.3
Note: Java home might need to be configured to match your system. Example path: "org.gradle.java.home=/Users/yakirbitan/Library/Java/JavaVirtualMachines/corretto-17.0.9/Contents/Home"

I conducted a test on an Android platform without React Native. I "implemented" a passkey feature using a different repository recommended in the Android documentation (https://github.com/android/identity-samples/tree/main/CredentialManager). This implementation was successful on the same device and with the same assetlinks.json configuration, suggesting the issue may lie within your library.
I'm eager to resolve this as quickly as possible and would greatly appreciate any further insights or suggestions you might have. Could there be a specific aspect of the library's integration with Android that I'm overlooking, or might there be an underlying issue within the library itself?
Thank you for your continued support and guidance.

@yakirbitan Thank you! Unfortunately I'm having a hard time fully reproducing your setup on my end, so I wasn't able to reproduce this issue either.
On another note, is there a reason why your request contains attestation: null instead of attestation: 'none'?

@yakirbitan Thank you! Unfortunately I'm having a hard time fully reproducing your setup on my end, so I wasn't able to reproduce this issue either.
On another note, is there a reason why your request contains attestation: null instead of attestation: 'none'?

@f-23 we are also facing the exact same issue.
We also tried to apply your suggestion attestation: null instead of attestation: 'none' but it resulted in same error.

@f-23 also running into this error and I made some progress: I tracked it down to be (in my case at least) caused by a "bad" userId field: Android requires this to be a valid base64-encoded string (like you have here for example). The error I was getting before (same error as the one posted by OP):
{
  "error": "Native error",
  "message": "androidx.credentials.exception.CreateCredentialCustomException:"
}

I looked at Android debug logs with Android Studio and spotted the following line:
[CreateRemotePasskeyOperation] Operation failed. [CONTEXT service_id=68 ] eibg: java.lang.IllegalArgumentException: bad base-64

I fixed this with https://github.com/r-n-o/passkeyapp/commit/ff75582460ff0662f99dcc462ba8169c229e512c. Now I'm getting a different error when creating passkeys:
[Error: private key must be 32 bytes, hex or bigint, not undefined]

Click to see the full log from Android Studio

14:21:28.043  I  [RegistrationRequestHandler] Registering Discoverable Credential
14:21:28.043  I  [AuthenticateChimeraActivity] Flow to background [CONTEXT service_id=287 ]
14:21:28.151  E  Failed to find provider info for subscribedfeeds
14:21:28.151  E  Failed to find provider info for subscribedfeeds
14:21:28.179  I  [Fido2RequestController] Inside RegistrationOperation.Callback#onRegistrationResult. response: AuthenticatorAttestationResponse{keyHandle=5EF4764B099D3345A7971969AD31A6C1, clientDataJSON=7B2274797065223A22776562617574686E2E637265617465222C226368616C6C656E6765223A226E686B5158664535394A6239375679794E4A6B7644695875634D45766C746475766372446D47724F444859222C226F726967696E223A22616E64726F69643A61706B2D6B65792D686173683A513669443672576479514F5A7A77426546774555445877695A434B614E446C425F5051365F4F456B413045222C22616E64726F69645061636B6167654E616D65223A2278797A2E746B68716C6162732E706173736B6579617070227D, attestationObject=A363666D74646E6F6E656761747453746D74A068617574684461746158945E602CEDC7BE56AD17170C518E1A1955544EB3BF6FDE132393A099CD1A7F38295D00000000EA9B8D664D011D213CE4B6B48CB575D400105EF4764B099D3345A7971969AD31A6C1A50102032620012158209BFA8791517BB8C05B6CDCDF36F582B45601C2CF56460BF981DBBAE85A952B3122582014D78020BDEBAB0A8A7A5A72350504393FAC8DD88FAF406AD82435AF6D8CE252, transports=[internal, cable]}, type: screen_lock, didCreateDiscoverableCredential: true, unsignedOutputs: UnsignedOutputs{dpk=Optional.of(com.google.android.gms.fido.fido2.api.common.AuthenticationExtensionsDevicePublicKeyOutputs@3c1), prf=Optional.absent()}
14:21:28.180  I  [Fido2ApiImpl] Inside Fido2RequestController.Callback#onSecurityKeyResultReceived. response: AuthenticatorAttestationResponse{keyHandle=5EF4764B099D3345A7971969AD31A6C1, clientDataJSON=7B2274797065223A22776562617574686E2E637265617465222C226368616C6C656E6765223A226E686B5158664535394A6239375679794E4A6B7644695875634D45766C746475766372446D47724F444859222C226F726967696E223A22616E64726F69643A61706B2D6B65792D686173683A513669443672576479514F5A7A77426546774555445877695A434B614E446C425F5051365F4F456B413045222C22616E64726F69645061636B6167654E616D65223A2278797A2E746B68716C6162732E706173736B6579617070227D, attestationObject=A363666D74646E6F6E656761747453746D74A068617574684461746158945E602CEDC7BE56AD17170C518E1A1955544EB3BF6FDE132393A099CD1A7F38295D00000000EA9B8D664D011D213CE4B6B48CB575D400105EF4764B099D3345A7971969AD31A6C1A50102032620012158209BFA8791517BB8C05B6CDCDF36F582B45601C2CF56460BF981DBBAE85A952B3122582014D78020BDEBAB0A8A7A5A72350504393FAC8DD88FAF406AD82435AF6D8CE252, transports=[internal, cable]}, type: screen_lock, didCreateDiscoverableCredential: true, unsignedOutputs: UnsignedOutputs{dpk=Optional.of(com.google.android.gms.fido.fido2.api.common.AuthenticationExtensionsDevicePublicKeyOutputs@3c1), prf=Optional.absent()}, userPermissionForAllowList: false
14:21:28.180  I  [RequestController] Timeout Runnable is removed, and timer is stopped.
14:21:28.186  I  [RequestController] Timeout Runnable is removed, and timer is stopped.
14:21:28.186  I  [FidoApiImpl] updateTransaction is called for pause
14:21:28.186  E  [FidoApiImpl] pauseSecurityKeyRequestController should not be called when SecurityKeyRequestController is null.
14:21:28.211  E  'error during passkey creation', [Error: private key must be 32 bytes, hex or bigint, not undefined]
14:21:28.214  E  console.error: error during passkey creation Error: private key must be 32 bytes, hex or bigint, not undefined, js engine: hermes, stack:
                 _construct@1:106548
                 Wrapper@1:106202
                 _callSuper@1:104191
                 SyntheticError@1:105679
                 reactConsoleErrorHandler@1:105340
                 ?anon_0_@1:667898
                 asyncGeneratorStep@1:86463
                 _throw@1:86765
                 tryCallOne@53:15
                 anonymous@139:26
                 anonymous@1:259314
                 _callTimer@1:258313
                 _callReactNativeMicrotasksPass@1:258457
                 callReactNativeMicrotasks@1:260386
                 __callReactNativeMicrotasks@1:101731
                 anonymous@1:100867
                 __guard@1:101605
                 flushedQueue@1:100778
                 invokeCallbackAndReturnFlushedQueue@1:100721

I think that's progress, it's a different error! 🎉

Notes which may help future readers of this thread:

If you are using Expo, make sure to configure expo to build an APK and sign it with a debug keystore (see this on how to create a debug keystore):"android":  {
  "buildType": "apk",
  "credentialsSource": "local"
}

If you are testing on a simulator you need to log into a Google account on the simulator and configure PIN encryption to test passkey functionality. A good test to see if your simulator is set up correctly: visit webauthn.io from the Chrome browser and try to sign up / sign in with a passkey before testing your APK
If you are testing on a real device, enable developer mode and pair your device with Android Studio (see this) to get debug logs via LogCat. That's really helpful to figure out what's going on.

@f-23 also running into this error and I made some progress: I tracked it down to be (in my case at least) caused by a "bad" userId field: Android requires this to be a valid base64-encoded string (like you have here for example). The error I was getting before (same error as the one posted by OP):
{
  "error": "Native error",
  "message": "androidx.credentials.exception.CreateCredentialCustomException:"
}

I looked at Android debug logs with Android Studio and spotted the following line:
[CreateRemotePasskeyOperation] Operation failed. [CONTEXT service_id=68 ] eibg: java.lang.IllegalArgumentException: bad base-64

I fixed this with r-n-o/passkeyapp@ff75582. Now it's working and I can create passkeys just fine! 🎉 🎉 🎉

Great work @r-n-o
Your fix helped us to resolve our issue and now its working on Android 🙏🏼

And
"androidx.credentials:credentials-play-services-auth:1.2.2"
"androidx.credentials:credentials:1.2.2"

updated androidx credentials version, it's fixed for me.

May I also add that CredentialManager actually expects a base64url encoding on fields like challenge. You can see it in the docs.

This should be fixed in version 3. It also includes improved error logging which could potentially make it easier to track down issues like this in the future.

{"error": "Native error", "message": "androidx.credentials.exceptions.domerrors.SecurityError@7040a2d"}


PMP register subset flexibility

(Looking at this again because of sPMP, which should be consistent with some of this.)
The ratified 20190608 specification was quite clear about the relationship between PMP entries and CSRs and allows an implementation to provide, say, 8 or 12 address comparators.

Up to 16 PMP entries are supported. If any PMP entries are implemented, then all PMP CSRs
must be implemented, but all PMP CSR fields are WARL and may be hardwired to zero.

The current specification says this instead:

Up to 64 PMP entries are supported. Implementations may implement zero, 16, or 64 PMP entries;
the lowest-numbered PMP entries must be implemented first. All PMP CSR fields are WARL
and may be read-only zero.

Changing "PMP CSRs" to "PMP entries" in the second sentence makes it much less clear that an implementation is allowed to provide 8 or 24 address comparators; "CSR is implemented" has a relevant meaning (although "CSR exists" would be a better match with the rest of the document), but "PMP entry is implemented" only appears in this section and could be interpreted in several ways.  Assuming that this change is intentional, can we state that a PMP entry is considered to be "implemented" if the corresponding pmpaddrX and pmpcfgY CSRs exist, whether or not the fields are writable?
I am interpreting "CSR fields are WARL" to require the L, A, and RWX fields to be able to contain all documented values if not read-only zero, since there is no language allowing an implementation to provide subsets of values like there is for e.g. mtvec.  The language for PMP address registers likewise authorizes tying certain bits to zero but not, for instance, requiring PMP addresses to be primes.

In general, the PMP grain is 2^G+2^ bytes and must be the same across all PMP regions.

I believe this should be "same across all PMP entries" since the grain affects the PMP address register in all modes, including A=OFF.
(Do we need the freedom for the number of writable address bits and whether L, A, or RWX are implemented to vary between PMP entries where the pmpaddrN or pmpNcfg is writable?  Do we need the freedom for the set of writable pmpaddrN CSRs to be nonconsecutive?)

If no PMP entry matches an S-mode or U-mode access, but at least one PMP entry is implemented, the access fails.

Does this sentence apply if an implementation decodes all pmp* registers as read-only zero?  Would that be considered implementing the PMP entries or not implementing the PMP entries?

In the newer wording , the second sentence is more consistent with the first sentence in referring to PMP entries.  The last sentence remains as is and is what allows (in both the older and newer texts) one to implement less than a full 16 or 64 address comparators.
Regarding "CSR fields are WARL", the more definitive arch statement is the actual definitions of each CSR - which explicitly and more precisely indicates what fields are individually and separately WARL.  This, for example, makes clear that the R, W, and X bits are separate WARL fields (not one 3-bit WARL field).
Regarding PMP grain, that sentence is immediately preceded by "Although the PMP mechanism supports regions as small as four bytes, platforms may specify coarser PMP regions."  In other words, the second sentence is being consistent with the first sentence in talking about "regions".  Practically speaking, "region" is synonymous with "entry".  This text (for better or worse) talks in the more conceptual term of regions (as expressed by PMP entries) since it is talking about the size of a region (whereas talking about the size of an entry would be less clear).
As far as possibly hardwiring all "implemented" entries, that would still count as implementing  the 16 or 64 entries that one would be claiming to implement (although a user of the CPU core might be unhappy about that implementation).  The more telling question is what is the difference, for example, between implementing 16 and 64 entries?
And the answer is that implemented" CSRs can be accessed without causing an exception (and may or may not return hardwired values depending on the implementation), whereas "unimplemented" CSRs are reserved and can potentially result in an exception on an attempted access.

It isn't quite that simple, naturally.
" L, A, and RWX fields to be able to contain all documented values if not
read-only zero"
is definitely not the case, e.g.
R and W form a "collective" WARL field which makes R=0, W=1 not legal, but
the other 3 combinations are legal
The A field is allowed to have any set of values be legal. For example, the
possible legal values might only be "Off" and "NAPOT" , or "Off" and "Tor"
TOR (and "Off" is always legal, since it is the required reset value.
As for the number of entries: if any entries are implemented, then at least
16 are guaranteed to be accessible without causing an exception.
If the 17th was implemented, then the 17th through 64th must be accessible
without causing an exception. Any number of those could be RdOnly0
(and it is probably not uncommon for an implementation to have, say 8
writable and 8 RdOnly0).
I thought that "lower entries are implemented first" meant that any that
were not RdOnly0 had to be lower numbered than the ones that were RdOnly0 -
but I don't think that is supported by the wording, though I think it is
the intent (and makes it nearly impossible for architectural. compatibility
tests,
though the tests will still assume that)
On Wed, Jan 31, 2024 at 1:34 PM gfavor @.***> wrote:

In the newer wording , the second sentence is more consistent with the
first sentence in referring to PMP entries. The last sentence remains as is
and is what allows (in both the older and newer texts) one to implement
less than a full 16 or 64 address comparators.
Regarding "CSR fields are WARL", the more definitive arch statement is the
actual definitions of each CSR - which explicitly and more precisely
indicates what fields are individually and separately WARL. This, for
example, makes clear that the R, W, and X bits are separate WARL fields
(not one 3-bit WARL field).
Regarding PMP grain, that sentence is immediately preceded by "Although
the PMP mechanism supports regions as small as four bytes, platforms may
specify coarser PMP regions." In other words, the second sentence is being
consistent with the first sentence in talking about "regions". Practically
speaking, "region" is synonymous with "entry". This text (for better or
worse) talks in the more conceptual term of regions (as expressed by PMP
entries) since it is talking about the size of a region (whereas talking
about the size of an entry would be less clear).
As far as possibly hardwiring all "implemented" entries, that would still
count as implementing the 16 or 64 entries that one would be claiming to
implement (although a user of the CPU core might be unhappy about that
implementation). The more telling question is what is the difference, for
example, between implementing 16 and 64 entries?
And the answer is that implemented" CSRs can be accessed without causing
an exception (and may or may not return hardwired values depending on the
implementation), whereas "unimplemented" CSRs are reserved and can
potentially result in an exception on an attempted access.
—
Reply to this email directly, view it on GitHub
https://github.com/riscv/riscv-isa-manual/issues/1212#issuecomment-1920007686,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHPXVJUSLKUEFJTEH44MGQLYRK2GBAVCNFSM6AAAAABCSETDFOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRQGAYDONRYGY
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Hash up to 8 bytes at once with FxHasher

See https://github.com/rust-lang/rust/pull/51019

r? @michaelwoerister

The only problem I see here does not have to do with the PR directly: Since this is a standalone crate now, it should have tests and integrate with travis. Seeing that all tests pass makes approving a PR much simpler.

I think the version number needs to be bumped so we can publish on crates.io.

I'll merge this because it was already tested as part of rustc_data_structures. The next PR will have to add tests and CI integration though.


Add static analysis

composer create-project laravel/laravel
cd laravel/
composer require thepinecode/policy
composer require --dev nunomaduro/larastan
php artisan code:analyse -l max -p vendor/thepinecode/policy/src/

e.g. $this->app::VERSION -> $this->app->version() see vendor/laravel/framework/src/Illuminate/Contracts/Foundation/Application.php:15

Fixed. Thank you!

FYI There are more problems there, pls run the above commands.


do we need to support unload deleted acl

The issue tracker is used for bug reporting purposes ONLY whereas feature request needs to follow the RIP process. To avoid unnecessary duplication, please check whether there is a previous issue before filing a new one.
It is recommended to start a discussion thread in the mailing lists or github discussions in cases of discussing your deployment plan, API clarification, and other non-bug-reporting issues.
We welcome any friendly suggestions, bug fixes, collaboration, and other improvements.
Please ensure that your bug report is clear and self-contained. Otherwise, it would take additional rounds of communication, thus more time, to understand the problem itself.
Generally, fixing an issue goes through the following steps:

Understand the issue reported;
Reproduce the unexpected behavior locally;
Perform root cause analysis to identify the underlying problem;
Create test cases to cover the identified problem;
Work out a solution to rectify the behavior and make the newly created test cases pass;
Make a pull request and go through peer review;

As a result, it would be very helpful yet challenging if you could provide an isolated project reproducing your reported issue. Anyway, please ensure your issue report is informative enough for the community to pick up. At a minimum, include the following hints:
BUG REPORT

Please describe the issue you observed:

What did you do (The steps to reproduce)?
under the condition that don't change acl file count, for example delete an acl file and immediately add another acl file. AclFileWatchService will just load the new acl file, and ignore the deleted acl file, so it's configuration still work in rocketmq.

What is expected to see?
so do we need to add a feature to remove the deleted acl configuration?

What did you see instead?

Please tell us about your environment:

Other information (e.g. detailed explanation, logs, related issues, suggestions on how to fix, etc):

FEATURE REQUEST

Please describe the feature you are requesting.

Provide any additional detail on your proposed use case for this feature.

Indicate the importance of this issue to you (blocker, must-have, should-have, nice-to-have). Are you currently using any workarounds to address this issue?

If there are some sub-tasks involved, use -[] for each sub-task and create a corresponding issue to map to the sub-task:

sub-task1-issue-number: sub-task1 description here,
sub-task2-issue-number: sub-task2 description here,
...

don't get it. can you describe more details ?


Mark migration to Remote-backed Storage GA

Description
Mark migration to Remote-backed Storage GA
Related Issues

Check List

[x] Functionality includes testing.
[x] ~API changes companion pull request created, if applicable.~
[ ] Public documentation issue/PR created, if applicable.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Closing in favour of PR 14100 which has additional changes


Draw State: "Type mismatch" error incorrectly reported if one of the uniforms is an array

Consider the following descriptor set layout:

We will use this layout alongside the following fragment shader:

However, when creating a GFX pipeline with a vkCreateGraphicsPipeline(), the app receives a debug call-back, reporting the following error:

The call-back is wrong, as only a single binding is assigned to all four array items. Perhaps the layer implementation asserts the bindings work just like locations in GL land, where texture_data[0] would get a location 0, texture_data[1] would be assigned 1, and so on? I made that mistake myself once when I was starting to fiddle around with Vulkan. :)

I believe this should also have been fixed by #137

@DominikWitczakAMD, could you verify that #137 fixed this for you?

Chris: Sure, I'm going to have a look at this tomorrow if you don't mind

No longer reproduces. Thanks!


Question: is indentation line animation possible for vscode?

like this animation of a nvim plugin : https://github.com/echasnovski/mini.indentscope?tab=readme-ov-file

Thanks for reminding me about, I'll try to add it soon. Here is the first mention of it, issue #35 where I will put updates.


Move period inside quotation marks in about-comparing-branches-in-pull-requests#about-three-dot-comparison-on-github

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-comparing-branches-in-pull-requests#about-three-dot-comparison-on-github
This issue is intended for newcomers to the OS Docs repo! 💛
If you are veteran of the OS Docs repo and are looking for issues to work on, take a look at our help wanted section ✨
What part(s) of the article would you like to see updated?

Since the three-dot comparison compares with the merge base, it is focusing on "what a pull request introduces".

Move periods inside quotation marks to maintain consistency with other docs (and style guide)
Additional information
No response

EQD8TJ8xEWB1SpnRE4d89YO3jl0W0EiBnNS4IBaHaUmdfizE

Go jggnkk


Make a clear view of all mercenary items on GUI

Check items every 10mins - 1hr...

Refresh button if changed.
Check per ... mins/hrs
Show all items name


Small changes in swin_transformer.py  for Image size scale

Thanks for your remarkable work, when I use the pretrained model ，I found it difficult to scale the input Image size，even I use the image size like window_size*2^n , it loads failed. So I check the code, find that In Class SwinTransformerBlock code
self.register_buffer("attn_mask", attn_mask) is unnecessary，because attn_mask is not a learnable parameter, if you register it as buffer, it will hinder you change the input Image size

Hi, you can just delete the "attn_mask" in the pre-trained model. Besides, we have also provided a function for your purpose: https://github.com/microsoft/Swin-Transformer/blob/5d2aede42b4b12cb0e7a2448b58820aeda604426/utils.py#L46

Hi, you can just delete the "attn_mask" in the pre-trained model. Besides, we have also provided a function for your purpose:
https://github.com/microsoft/Swin-Transformer/blob/5d2aede42b4b12cb0e7a2448b58820aeda604426/utils.py#L46

thank you very much I will try it

Hi there, I did as u said to load pretrained model but I only can load the state_dict to model and still can not parse the image through the model due to the lack of attn_mask. Could u explain why?. In case I want to train with another image size, how can I train the model?

Hi, you can just delete the "attn_mask" in the pre-trained model. Besides, we have also provided a function for your purpose:
https://github.com/microsoft/Swin-Transformer/blob/5d2aede42b4b12cb0e7a2448b58820aeda604426/utils.py#L46
Hi there, I did as u said to load pretrained model but I only can load the state_dict to model and still can not parse the image through the model due to the lack of attn_mask. Could u explain why?. In case I want to train with another image size, how can I train the model?


ReadOnly Auth Event Listener

required for
https://github.com/ExpediaInc/apiary-data-lake/issues/86

Can you please provide some more input on why you need this? It looks like it's a metastore hook which rejects all write operations? Can't the same be achived by giving the underlying DB user only read access to the metastore DB?

This is mainly required to restrict read access certain schemas. While we are doing that, also rejecting other actions from event listener before hitting DB.

Looks good to me. Only real thing I would change is to remove the isAllowedDatabase method, but that could just be me, feel free to ignore that suggestion..

@mroark-exp yeah, it doesn't add much but it's called from two places so in some sense it's better to have it in a method


Multitouch enhancements/fixes

Fix pinch resizing bug + allow dragging while pinching

HI, Hammad.
Thank you for fixes!
💪


[Firestore] firebase-admin sdk "FieldValue.serverTimestamp" fails from v11.0.0

[READ] Step 1: Are you in the right place?
Cloud Firestore support is provided by the @google-cloud/firestore library. Therefore the easiest and most efficient way to get Firestore issues resolved is by directly reporting them at the nodejs-firestore GitHub repo.
If you still think the problem is related to the code in this repository, then read on.

For issues or feature requests related to the code in this repository
file a Github issue.
For general technical questions, post a question on StackOverflow
with the firebase tag.
For general Firebase discussion, use the firebase-talk
google group.
For help troubleshooting your application that does not fall under one
of the above categories, reach out to the personalized
Firebase support channel.

[REQUIRED] Step 2: Describe your environment

Operating System version: macOS Ventura 13.0.1
Firebase SDK version: "firebase-admin": "^11.0.0"
Firebase Product: Firestore
Node.js version: v16.17.1
NPM version: 8.15.0

[REQUIRED] Step 3: Describe the problem
Steps to reproduce:
The firestore FieldValue.serverTimestamp() fails starting from v11.0.0 of firebase-admin sdk. It was working fine till v10.3.0.

Export the code sample from index.ts file
Start firebase auth, firestore and functions emulator with cmd npm run build && firebase emulators:start
From the emulator UI of auth create a new user
See crash in terminal

i  functions: Beginning execution of "newUser"
⚠  functions: TypeError: Cannot read properties of undefined (reading 'serverTimestamp')
    at /Users/omphatak/Work/5amClub/5amClub-Cloud-Functions/functions/lib/auto/newUser.js:8:47
    at cloudFunction (/Users/omphatak/Work/5amClub/5amClub-Cloud-Functions/functions/node_modules/firebase-functions/lib/v1/cloud-functions.js:79:23)
    at /usr/local/lib/node_modules/firebase-tools/lib/emulator/functionsEmulatorRuntime.js:516:16
    at runFunction (/usr/local/lib/node_modules/firebase-tools/lib/emulator/functionsEmulatorRuntime.js:504:15)
    at runBackground (/usr/local/lib/node_modules/firebase-tools/lib/emulator/functionsEmulatorRuntime.js:515:11)
    at processBackground (/usr/local/lib/node_modules/firebase-tools/lib/emulator/functionsEmulatorRuntime.js:499:11)
    at /usr/local/lib/node_modules/firebase-tools/lib/emulator/functionsEmulatorRuntime.js:690:27
    at Layer.handle [as handle_request] (/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/layer.js:95:5)
    at next (/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/route.js:137:13)
    at next (/usr/local/lib/node_modules/firebase-tools/node_modules/express/lib/router/route.js:131:14)
⚠  Your function was killed because it raised an unhandled error.

Relevant Code:
import * as admin from "firebase-admin";
import * as functions from "firebase-functions";

export const newUser = functions.auth.user().onCreate(async (user) => {
  await admin.firestore().collection("users").doc(user.uid).set({
    createdAt: admin.firestore.FieldValue.serverTimestamp(),
  });
});

Hi @OutdatedGuy , we have seeing reports of this issue occuring sometimes when using the global admin namespace. Importing the global admin namespace is deprecated and namespaces will be removed in the future. We recommend developers to use the new modular entry points to access the various APIs of the SDK, as opposed to using the global admin namespace.
Please see the discussion for more info: https://github.com/firebase/firebase-admin-node/discussions/1959#discussioncomment-3985176

@lahirumaramba I just ran into this issue as well after upgrading to version 11.x. I'm also using the global admin namespace.

Importing the global admin namespace is deprecated and namespaces will be removed in the future

Deprecated does not mean removed. Based on your comment, it sounds like importing from the admin namespace is broken with no plans on a fix. Is there any reason why dropping support for the admin namespace isn't included in the release notes as a breaking change? Otherwise, this issue should be reopened.


Ability to lock video orientation

I think the only option right now to tell libwebrtc to not rotate the local video stream, is to enable the orientation lock on your device. You should be able to tell the library if your app only runs in portrait mode or also in landscape mode.

AFAIK there is no way to lock the video orientation in the libwebrtc Objective-C API, so there is nothing we can do in cordova-plugin-iosrtc.

Alright, I'll open an issue at libwebrtc, thanks!

Any luck getting this resolved? Can't prevent the video element on my iPhone from rotating, even though any type of rotation is locked on my app. Somehow the video element is still able to flip.


TablePagination deprecated props in 4.x.x introduced breaking changes

While prop deprecation is intended to be a non-breaking change, there is a corner case in TablePagination where renaming the onChangePage prop breaks existing code. Specifically, using TablePagination with a custom ActionsComponent is broken because the prop provided to the custom ActionsComponent has changed from onChangePage -> onPageChange.

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯

TablePagination no longer passes the custom ActionsComponent an onChangePage prop, causing the app to crash.
Expected Behavior 🤔

TablePagination should pass both onChangePage and onPageChange props to the ActionsComponent to support both the deprecated prop and the new prop.
Steps to Reproduce 🕹

The following CodeSandbox live examples contain exactly the same code, just using different MUI versions to demonstrate the breaking changes introduced in v4.12.0.
Working CodeSandbox with MUI v4.11.4: https://codesandbox.io/s/inspiring-jepsen-n2eyf?file=/src/Demo.tsx
Broken CodeSandbox with MUI v4.12.1: https://codesandbox.io/s/polished-butterfly-ym3u5
Steps:

Render a <TablePagination> component with the deprecated onChangePage prop and a custom ActionsComponent prop
Within the custom ActionsComponent, try calling props.onChangePage that worked prior to v4.12.0
Click the Next or Previous button rendered within the custom ActionsComponent
Notice that onChangePage is undefined, causing the app to crash.

Context 🔦

Your Environment 🌎

`npx @material-ui/envinfo`
System:
    OS: Windows 10 10.0.18363
  Binaries:
    Node: 14.16.0
    Yarn: Not Found
    npm: 6.14.13
  Browsers:
    Chrome: 91.0.4472.124
    Edge: Spartan (44.18362.1593.0)
  npmPackages:
    @material-ui/core: 4.12.1
    @material-ui/icons:  4.11.2
    @material-ui/styles:  4.11.4
    @material-ui/system:  4.12.1
    @material-ui/types:  5.1.0
    @material-ui/utils:  4.11.2
    @types/react:  17.0.13
    react: ^16.13.1 => 16.14.0
    react-dom: ^16.13.1 => 16.14.0
    typescript:  2.9.2

See this thread https://github.com/mui-org/material-ui/pull/23789#issuecomment-876249753

How about we do this diff:
index b027226200..e18d6edae2 100644
--- a/packages/material-ui/src/TablePagination/TablePagination.d.ts
+++ b/packages/material-ui/src/TablePagination/TablePagination.d.ts
@@ -32,7 +32,7 @@ export interface TablePaginationTypeMap<P, D extends React.ElementType> {
        * @deprecated Use the onPageChange prop instead.
        */
       onChangePage?: (event: React.MouseEvent<HTMLButtonElement> | null, page: number) => void;
-      onPageChange: (event: React.MouseEvent<HTMLButtonElement> | null, page: number) => void;
+      onPageChange?: (event: React.MouseEvent<HTMLButtonElement> | null, page: number) => void;
       /**
        * Callback fired when the number of rows per page is changed.
        *
diff --git a/packages/material-ui/src/TablePagination/TablePagination.js b/packages/material-ui/src/TablePagination/TablePagination.js
index f056923360..0e6e9a4c6a 100644
--- a/packages/material-ui/src/TablePagination/TablePagination.js
+++ b/packages/material-ui/src/TablePagination/TablePagination.js
@@ -168,6 +168,7 @@ const TablePagination = React.forwardRef(function TablePagination(props, ref) {
             ...nextIconButtonProps,
           }}
           onPageChange={onChangePage}
+          onChangePage={onChangePage}
           page={page}
           rowsPerPage={rowsPerPage}
         />
diff --git a/packages/material-ui/src/TablePagination/TablePaginationActions.d.ts b/packages/material-ui/src/TablePagination/TablePaginationActions.d.ts
index 17d76f48ea..6ebfc5f355 100644
--- a/packages/material-ui/src/TablePagination/TablePaginationActions.d.ts
+++ b/packages/material-ui/src/TablePagination/TablePaginationActions.d.ts
@@ -5,7 +5,9 @@ export interface TablePaginationActionsProps extends React.HTMLAttributes<HTMLDi
   backIconButtonProps?: Partial<IconButtonProps>;
   count: number;
   nextIconButtonProps?: Partial<IconButtonProps>;
-  onPageChange: (event: React.MouseEvent<HTMLButtonElement> | null, page: number) => void;
+  // @deprecated Use the onPageChange prop instead.
+  onChangePage?: (event: React.MouseEvent<HTMLButtonElement> | null, page: number) => void;
+  onPageChange?: (event: React.MouseEvent<HTMLButtonElement> | null, page: number) => void;
   page: number;
   rowsPerPage: number;
 }
diff --git a/packages/material-ui/src/TablePagination/TablePaginationActions.js b/packages/material-ui/src/TablePagination/TablePaginationActions.js
index bbe0a95f0e..f7ddc51791 100644
--- a/packages/material-ui/src/TablePagination/TablePaginationActions.js
+++ b/packages/material-ui/src/TablePagination/TablePaginationActions.js
@@ -13,7 +13,8 @@ const TablePaginationActions = React.forwardRef(function TablePaginationActions(
     backIconButtonProps,
     count,
     nextIconButtonProps,
-    onPageChange,
+    onPageChange: onPageChangeProp,
+    onChangePage: onChangePageProp,
     page,
     rowsPerPage,
     ...other
@@ -21,12 +22,14 @@ const TablePaginationActions = React.forwardRef(function TablePaginationActions(

   const theme = useTheme();

+  const onPageChange = onPageChangeProp || onChangePageProp;
+
   const handleBackButtonClick = (event) => {
-    onPageChange(event, page - 1);
+    onPageChange && onPageChange(event, page - 1);
   };

   const handleNextButtonClick = (event) => {
-    onPageChange(event, page + 1);
+    onPageChange&& onPageChange(event, page + 1);
   };

   return (

It should solve both the TS and the JS errors.

Two notes

Is the onPageChange?.(event, page - 1); change required (I have changed it from onPageChange && onPageChange(event, page - 1);)
We still need to make sure onPageChange is displayed as required in the docs. We can override the generated prop-types. While we are still doing TS -> prop-types -> docs, we can customize it. But once we do TS -> docs for the generation. The types change will probably not be possible.

Maybe we could do a step further and do this:
index f056923360..0e6e9a4c6a 100644
--- a/packages/material-ui/src/TablePagination/TablePagination.js
+++ b/packages/material-ui/src/TablePagination/TablePagination.js
@@ -168,6 +168,7 @@ const TablePagination = React.forwardRef(function TablePagination(props, ref) {
             ...nextIconButtonProps,
           }}
-          onPageChange={onChangePage}
+          onChangePage={onChangePage}
           page={page}
           rowsPerPage={rowsPerPage}
         />

So that there are no new props spread on the ActionsComponent.

Is the onPageChange?.(event, page - 1); change required (I have changed it from onPageChange && onPageChange(event, page - 1);)

I've added it as TypeScript is not making the params required.

We still need to make sure onPageChange is displayed as required in the docs. We can override the generated prop-types. While we are still doing TS -> prop-types -> docs, we can customize it. But once we do TS -> docs for the generation. The types change will probably not be possible.

I've updated https://github.com/mui-org/material-ui/issues/27192#issuecomment-877117148 to include this with:
index f056923360..dc4b85aed8 100644
--- a/packages/material-ui/src/TablePagination/TablePagination.js
+++ b/packages/material-ui/src/TablePagination/TablePagination.js
@@ -168,6 +168,7 @@ const TablePagination = React.forwardRef(function TablePagination(props, ref) {
             ...nextIconButtonProps,
           }}
           onPageChange={onChangePage}
+          onPageChange={onChangePage}
           page={page}
           rowsPerPage={rowsPerPage}
         />
@@ -263,7 +264,7 @@ TablePagination.propTypes = {
    * @param {object} event The event source of the callback.
    * @param {number} page The page selected.
    */
-  onPageChange: PropTypes.func.isRequired,
+  onPageChange: PropTypes /* @typescript-to-proptypes-ignore */.func.isRequired,
   /**
    * Callback fired when the number of rows per page is changed.
    *diff --git a/packages/material-ui/src/TablePagination/TablePaginationActions.d.ts b/packages/material-ui/src/TablePagination/TablePaginationActions.d.ts
index 17d76f48ea..6ebfc5f355 100644

OK, I am using new prop, onPageChange, but I've got warning in the console: Warning: Failed prop type: The prop onChangePageis marked as required inForwardRef(TablePagination), but its value is undefined.
It seems your documention is for v5, not for the current version, i.e., v4

@oliviertassinari thanks for helping me resolve the problem I was having. It's working now 😀

Why did you release breakable changes in minor version? it should be MINOR!

Closed in https://github.com/mui-org/material-ui/pull/27407


Suggestion on email and question about email

Is this service "register user using "somethingblue-api" service? or can it be using postfix?

Yobichain currently doesn't use send-in-blue API service for email. But you need to configure the sendgrid API key in EMAIL_PROVIDER_API_KEY parameter in yobichain-web/primechain_functions/config.php for email functionalities to work.
Postfix is not supported.

ok thanks for the info.
looking forward postfix for the future intergrated. i mean can send via simple postfix or postfix relay
by the way great job bro!~

Support for other mailing platforms is currently not in the roadmap. But we'll surely consider it for future releases. Thank you.


Mapping doesn't apply after operator pending mode mapping resolves

Describe the bug
I don't know if this is a bug or intended, but when using operator pending mode mappings, the resulting command will not get mapped again, even though a mapping exists.
To Reproduce

Run vim --clean
Run :omap <Space>w W in normal mode
Run :map cW dWi in normal mode
Use cW in normal mode; it works
Use c<Space>w in normal mode; it doesn't work

Expected behavior
I expect that c<Space>w will map to cW and finally to dWi, but it doesn't
Environment:

Vim version

Included patches: 1-875, 878, 884, 948, 1046, 1365-1368, 1382, 1401
Modified by<EMAIL_ADDRESS>Compiled by<EMAIL_ADDRESS>Huge version with GTK3 GUI.
After you type c you are in operator pending mode, vim is looking for omaps and won't undo that to look for possible longer map sequences.

If I am asking, it is a use case :)
Is this something that could be fixed/changed?

Yes, you can add a mapping for c<Space>w.

So you type cw, and the omap changes that to cW.  By that time the "c" is already consumed, thus you just have "W" in the input buffer, for which there is no mapping.
You'll have to add a mapping to make this work.  And no, this won't be changed, it would change existing behavior.


Fix issue 56 (MySQL server has gone away error)

Fix for issue #56
Occurs when we try to add >18000 rows to the player_game_log table at once. Break it up into 5000 chunks.

Very nice, much appreciated! One request: can this be a configurable parameter?

Added parameter --batch_size with default value 10000.


Running TRUST4 with example files (checking if everything works well)

Hello,
I am testing TRUST4 with the example files. I share my command line to ask especially for the last line "Results do not match the pregenerated example results. Please check TRUST4's version or the example files are in the folder". What does it mean? the version of TRUST4 I have installed is: trust4 1.0.11 on conda. And the example files are in the corresponding TRUST4 folder.
Thank you for your help,
Kind regards,
Silvia
(base) Ana@iMac-de-EMITB643558 TRUST4 % /Users/Ana/TRUST4/run-trust4 -b example/example.bam -f hg38_bcrtcr.fa --ref human_IMGT+C.fa
[Mon Jul 31 14:38:01 2023] TRUST4 begins.
[Mon Jul 31 14:38:01 2023] SYSTEM CALL: /Users/Ana/TRUST4/bam-extractor -b example/example.bam -t 1 -f hg38_bcrtcr.fa -o TRUST_example_toassemble
[Mon Jul 31 14:38:01 2023] Start to extract candidate reads from bam file.
[Mon Jul 31 14:38:01 2023] Finish obtaining the candidate read ids.
[Mon Jul 31 14:38:01 2023] Finish extracting reads.
[Mon Jul 31 14:38:01 2023] SYSTEM CALL: /Users/Ana/TRUST4/trust4  -f hg38_bcrtcr.fa -o TRUST_example -1 TRUST_example_toassemble_1.fq -2 TRUST_example_toassemble_2.fq
[Mon Jul 31 14:38:01 2023] Found 394 reads.
[Mon Jul 31 14:38:01 2023] Finish sorting the reads.
[Mon Jul 31 14:38:01 2023] Finish rough annotations.
[Mon Jul 31 14:38:01 2023] Assembled 394 reads.
[Mon Jul 31 14:38:01 2023] Try to rescue 0 reads for assembly.
[Mon Jul 31 14:38:01 2023] Rescued 0 reads.
[Mon Jul 31 14:38:01 2023] Extend assemblies by mate pair information.
[Mon Jul 31 14:38:01 2023] Remove redundant assemblies.
[Mon Jul 31 14:38:01 2023] Finish assembly.
[Mon Jul 31 14:38:01 2023] SYSTEM CALL: /Users/Ana/TRUST4/annotator -f human_IMGT+C.fa -a TRUST_example_final.out -t 1 -o TRUST_example  -r TRUST_example_assembled_reads.fa --airrAlignment > TRUST_example_annot.fa
[Mon Jul 31 14:38:01 2023] Start to annotate assemblies.
[Mon Jul 31 14:38:01 2023] Start to realign reads for CDR3 analysis.
[Mon Jul 31 14:38:01 2023] Compute CDR3 abundance.
[Mon Jul 31 14:38:01 2023] Finish annotation.
[Mon Jul 31 14:38:01 2023] SYSTEM CALL: perl /Users/Ana/TRUST4/trust-simplerep.pl TRUST_example_cdr3.out  > TRUST_example_report.tsv
[Mon Jul 31 14:38:01 2023] SYSTEM CALL: perl /Users/Ana/TRUST4/trust-airr.pl TRUST_example_report.tsv TRUST_example_annot.fa --airr-align TRUST_example_airr_align.tsv > TRUST_example_airr.tsv
[Mon Jul 31 14:38:01 2023] TRUST4 finishes.
(base) Ana@iMac-de-EMITB643558 TRUST4 % sh trust-example-test.sh
[Mon Jul 31 14:40:08 2023] TRUST4 begins.
[Mon Jul 31 14:40:08 2023] SYSTEM CALL: /Users/Ana/TRUST4/bam-extractor -b example/example.bam -t 1 -f hg38_bcrtcr.fa -o example_test_toassemble
[Mon Jul 31 14:40:08 2023] Start to extract candidate reads from bam file.
[Mon Jul 31 14:40:08 2023] Finish obtaining the candidate read ids.
[Mon Jul 31 14:40:08 2023] Finish extracting reads.
[Mon Jul 31 14:40:08 2023] SYSTEM CALL: /Users/Ana/TRUST4/trust4  -f hg38_bcrtcr.fa -o example_test -1 example_test_toassemble_1.fq -2 example_test_toassemble_2.fq
[Mon Jul 31 14:40:08 2023] Found 394 reads.
[Mon Jul 31 14:40:08 2023] Finish sorting the reads.
[Mon Jul 31 14:40:08 2023] Finish rough annotations.
[Mon Jul 31 14:40:08 2023] Assembled 394 reads.
[Mon Jul 31 14:40:08 2023] Try to rescue 0 reads for assembly.
[Mon Jul 31 14:40:08 2023] Rescued 0 reads.
[Mon Jul 31 14:40:08 2023] Extend assemblies by mate pair information.
[Mon Jul 31 14:40:08 2023] Remove redundant assemblies.
[Mon Jul 31 14:40:08 2023] Finish assembly.
[Mon Jul 31 14:40:08 2023] SYSTEM CALL: /Users/Ana/TRUST4/annotator -f human_IMGT+C.fa -a example_test_final.out -t 1 -o example_test  -r example_test_assembled_reads.fa --airrAlignment > example_test_annot.fa
[Mon Jul 31 14:40:08 2023] Start to annotate assemblies.
[Mon Jul 31 14:40:09 2023] Start to realign reads for CDR3 analysis.
[Mon Jul 31 14:40:09 2023] Compute CDR3 abundance.
[Mon Jul 31 14:40:09 2023] Finish annotation.
[Mon Jul 31 14:40:09 2023] SYSTEM CALL: perl /Users/Ana/TRUST4/trust-simplerep.pl example_test_cdr3.out  > example_test_report.tsv
[Mon Jul 31 14:40:09 2023] SYSTEM CALL: perl /Users/Ana/TRUST4/trust-airr.pl example_test_report.tsv example_test_annot.fa --airr-align example_test_airr_align.tsv > example_test_airr.tsv
[Mon Jul 31 14:40:09 2023] TRUST4 finishes.
Results do not match the pregenerated example results. Please check TRUST4's version or the example files are in the folder.

Did you download the example file results from the github repo? Could you please try the github version to see whether you can obtain consistent results? Thank you.

I just tested the conda version. I think this might due to the sort in the perl script. Could you please check whether the example_test_report.tsv file is the same as the example/TRUST_example_report.tsv after sorting them with bash "sort"?


E-mail addresses are compared case sensitive

Describe the bug
Saltcorn expects the e-mail address on login to be typed in the exact case as stored in the user table. This confuses frequently users if they type their mail address with a different casing. In case of the "Forgot password?" feature, it won't even display an error message if an unknown mail address is entered, but no mail will be sent.
To Reproduce
Steps to reproduce the behavior:

Create user with mixed case mail address
Log out
Try to log in with the new user but type the mail address all-lowercase
Get error: "Incorrect user or password"

then also:

Click "Forgot password?" link
Enter same mail address all-lowercase (or any other non-existent mail address)
See message "Email with password reset link sent", but no mail sent.

Expected behavior

Either use always case insensitive comparison when searching for users by mail address, or
add admin option whether mail addresses shall be case sensitive or not.

also:

Give error message when an unknown mail address is entered in the "Forgot password" form.

Screenshots
(I can provide screen shots, but I think they wouldn't really help here.)
Additional context
To my knowledge, mail addresses are technically case sensitive before the @ sign (domain names are certainly not case sensitive), but all mail providers consider mail addresses case insensitive. It would be very confusing if a mail provider would direct mail addresses only differing in the casing to different people. Hence I would consider it safe to consider mail addresses always as case insensitive. In case not everyone agrees with me here I suggest to introduce this as an admin option (although I think that makes it just unnecessarily complicated to implement).

I have been postponing this because of the security concerns around Unicode characters (see https://dev.to/jagracey/hacking-github-s-auth-with-unicode-s-turkish-dotless-i-460n) but I can look for a secure solution

Good point. I am not really an expert in this field, but I could imagine that first converting the string to punycode, then to lowercase for the comparison, in addition to using always the mail address stored in the data base for email sending and for display, would fix the security issues while keeping backwards compatibility for existing setups.


Can't load script data: Lookup.Units.UnitData

Working on some recent change requests I've been updating a Dialog.ts to add some data to be displayed from another Row. Using the code in image 1 (as I have done in a number of other dialogs), I have all of a sudden started getting the error in image 2 via browser console. Anyone have any idea why this has stopped working for me?
1:
2:

Hi z-combs,
do you have a [LookupScript] defined within your UnitDataRow?
If yes: Can you do the following:
(1) remark everything within your xyzDialog.ts which would Need the lookup
(2) clean and rebuild your solution
(3) Do a T4 transform
(4) rebuild again
(5) uncomment everything you had previously put to remarks because of this error
Hope this helps,
John

Yes the lookupscript attribute is there:

I've tried doing the transform trick quite a few times now. I went as far as completely removing all the typescript files associated with the UnitData from ServerTypings and regenerating them by doing the transform. Still not working.

Updated Serenity and having different issues, closing and opening new issue

You know there is an option of looking at URLs  that gives errors e.g. open in window and check whats wrong.


Try to resolve AppVeyor Ubuntu Errors

PR Summary
An attempt to fix the ubuntu build issues showing up on recent appveyor runs; e.g. https://ci.appveyor.com/project/PowerShell/psscriptanalyzer/builds/26600683/job/26ju29rqww40xk6y

This issue is already addressed in: #1306 1293


WIP chore: add window/linux in makefile

Build in every OS
Preposition

Rust (https://www.rust-lang.org/learn/get-started)
Tauri Preposition environment (https://tauri.app/start/prerequisites/)

npm install -g pnpm && pnpm install

Windows

pnpm tauri build
# Or
pnpm tauri build --bundles nsis
# Or
pnpm tauri build --bundles msi

Linux

pnpm tauri build
# Or
pnpm tauri build --bundles deb
# Or
pnpm tauri build --bundles rpm
# Or
pnpm tauri build --bundles appimage

Ubuntu Preposition
Tauri requires various system dependencies for development on Linux. These may be different depending on your distribution but we’ve included some popular distributions below to help you get setup.
sudo apt update
sudo apt install libwebkit2gtk-4.1-dev \
  build-essential \
  curl \
  wget \
  file \
  libxdo-dev \
  libssl-dev \
  libayatana-appindicator3-dev \
  librsvg2-dev

Next: Install Rust
curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

Node.js
Go to Node.js website, download the Long Term Support (LTS) version and install it.

Windows Preposition

Download the Microsoft C++ Build Tools installer and open it to begin installation
During installation check the “Desktop development with C++” option

Windows bundle.zip

Ubuntu
ubuntu.zip