nit: Exception message is not completely right

Current Implementation
https://github.com/corona-warn-app/cwa-app-android/blob/90c49ae4ee75659cc96b603d0e0440e0dc0edcd3/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/storage/tracing/TracingIntervalRepository.kt#L52

Suggested Enhancement

if (to < from) throw IllegalArgumentException("to cannot be after or equal from")

Expected Benefits

Invalid exception message can make it harder to analyze errors.

A bit late to the party, but shouldn't it be "to cannot be before from"?


ENTESB-17738: Use community version of camel-salesforce-maven-plugin

Salesforce tests passed despite other failures. I also verified the effective pom and it looked good. Hence merging this PR.


Model constructure should group cell of the same type together into cell groups.

This appears to be a big change:

The type of the cell is only know at the moment we are already in the creation of the cell_group (with a range of gids to create)
a. miniapp.cpp search for distribute_cells
b. model.hpp see the constructor

I suggest adding a load balancer to our setup which would perform the current distribute cells but does more depending on the recipe.

Q. Would it be possible to have a indirect mapping between the gid as known in the recipe (user level)
and what we do internally? This would allow us to shuffle the neurons around with more ease.
Steps:

Refactor current functionality to add a tested loadbalancer
have the loadbalancer return cell_ranges with grouped neurons <- would need gid remapping

Depends on the cell_kind being available on the cell.

I would break this task into some smaller tasks:

implement a level of indirection between the recipe cell ordering and the ordering used by the NestMC library
implement a load balancer, which would also require
a method for assigning "weights" to cells that the load balancer would use to guide its decisions about where to place cells. This is non trivial, e.g. what if a cell has higher or lower overheads on CPU/GPU, or if a particular type of cell doesn't show any performance benefit until a minimum number are grouped together on the GPU.

sam [3:59 PM]
Yep. Doing this properly needs the global permutation between public and internal gids, heuristics for load balancing, and all the associated communication and mapping. It's a lot of work.
[4:00]
In the shorter term, I'm advocating that whatever recipe is generating these various cell types, groups them contiguously in ways that don't load balance too badly.
[4:00]
Then the model would just group contiguous cells of the same type up to the group size (or per-cell type group size.)
[4:03]
As a partial workaround, this simple but brittle procedure can be augmented with a recipe -> recipe translator that performs all the appropriate permutations given the number and types of nodes, and keeps the permutation for translation back again. This would be at the user (miniapp) level rather than nestmc library level.
[4:03]
That would only be a stop-gap though before doing it properly in nestmc itself.
bcumming [4:07 PM]
I am on this when I get back :wink:
[4:09]
You are right that to do this right, we need some internal cell numbering that is different from the cell numbering that the user who supplies the model ueses.
As sam says, for now we just group cells of the same type together in the order they are supplied by the recipe.

I will break up the work: First with a simple version that groups cells at the recipe level.

The cell-renumbering and load balancing work was finished in #326 and #334.


Scanner timeout in standby mode

Hi, just need some advice regarding the following
When the LiDAR is in standby mode, either after the stopMeas command has been called (I am using SickScanApi with python 3.12) or before the point cloud messages have been published, the TCP receive thread finishes after an inconsistent amount of time I get the following error

Is there a way to override or change the timeout period that causes the TCP receive thread to trigger and deinitialize the scanner? If so, how can this be achieved?
Also is there a certain time after which this is expected?
Thanks in advance

Thanks for your feedback. The sick_scan_xd driver monitors the lidar telegrams and restarts and reinitializes after a timeout of 150 seconds by default. You can disable the monitoring with message_monitoring_enabled=False and/or setting the timeout to the max. value<PHONE_NUMBER> in the launchfile:
<param name="message_monitoring_enabled" type="bool" value="False" />     <!-- Enable message monitoring with reconnect+reinit in case of timeouts, default: true -->
<param name="read_timeout_millisec_kill_node" type="int" value="2147483647"/> <!-- 150 sec pointcloud timeout, ros node will be killed if no point cloud published within the last 150 sec., default: 150000 milliseconds -->

See https://github.com/SICKAG/sick_scan_xd/blob/develop/USAGE.md#driver-states-timeouts for details.

Thank you for your response. We’ve encountered the same error both during startup and intermittently during measurements. Could this issue be related to a network problem?

Thank you for your reply. Network problems can indeed cause timeout errors.
Wireshark is a powerful network diagnostic tool. Start Wireshark, select the ethernet interface used for the lidar connection and watch the network traffic between sick_scan_xd and your lidar. As long as the lidar is sending data via tcp (or udp in case of multiScan or picoScan), sick_scan_xd should not timeout. If Wireshark does not see any tcp data from the lidar, the most likely cause is a network error.
If you encounter sick_scan_xd timeout errors while your lidar is still sending data, please let us know. In this case, please save and send a complete sick_scan_xd logfile and the network traffic captured by wireshark as a pcapng file.
Which lidar are you using? If you are using an older version of the sick_scan_xd driver, we recommend that you update to the latest version 3.5.

Thank you for your reply. We are in the middle of testing and if the problem persists I will let you know
We are using LMS41xxx

Hi @rostest, I'm working with @jashangills on this topic. We're still seeing these intermittent TCP issues and trying to narrow down the cause.
In our deployment environment we are encountering this issue intermittently during an active measurement (possibly standby too).

In this instance, no stop command has been issued by the software - the TcpRecvThread finishing is unexpected.
Things we have tried:

Swapping Lidar power source.
Reducing callback rate (mean filter >1). All other indicators suggest software is keeping up.
Disabling the message monitoring via the launch file.
Running the same code (same driver/python versions) on another PC (separate network). All ok.
Capturing traffic using Wireshark:

Shows Lidar TCP messages do stop.

Exit seems graceful (FIN, ACK) messages?

Raw pcapng file. Note: lidar should be scanning during the entirety of this recording, but stops mid way through due to issue above.

Lidar IP is at .102
troubleshooting-lidar-timeout-12-no-stop.pcapng

Currently our next step is to bypass the network/switch and go straight Lidar to PC. Is there any other troubleshooting steps you might be able to suggest?
Thanks!

Thanks for following up and further information! Your investigation and procedure look very solid and thorough.
The pcapng file shows the last scandata from the lidar at time 27.1394 followed by a [FIN] message from the PC (i.e. sick_scan_xd) to the lidar at 27.1399:

This does not look like an exit due to timeouts. Can you see some error message or any other reason that might have caused this exit? Did sick_scan_xd stop and exit or re-initialize the TCP socket? Can you post the full logfile (i.e. the console output your screenshot shows including previous messages), if it is still available?

Thanks @rostest,
Here is a full screen capture of the console output, but unfortunately no text log. (Interleaved other app messages).

It seems to be only the TcpRecvThread message. No additional exit or re-initialise messages.
After the TcpRecvThread message the app still runs, but no more pointclouds are generated.

Thanks for your reply. The output in the screenshot is unexpected; there should be some error or informational messages before sick_generic_laser and TcpRecvThread exit.
To reduce complexity and narrow down potential errors, please update to the latest release 3.5 (if not already done), rebuild the sick_scan_xd library and run sick_scan_xd_api_test.py on your target:
export LD_LIBRARY_PATH=.:./build:$LD_LIBRARY_PATH
export PYTHONPATH=.:./python/api:$PYTHONPATH
python3 ./test/python/sick_scan_xd_api/sick_scan_xd_api_test.py ./launch/sick_lms_4xxx.launch hostname:=<IP_ADDRESS> 2>&1 | tee -a sick_scan_xd_api_test_lms_4xxx.log

The python script sick_scan_xd_api_test.py just initializes the lidar, registers callbacks for point cloud and log messages and prints a short text in the callbacks. Can you reproduce the error in this reduced test case? If so, please post a full logfile of the console messages. Is your target the NVIDIA Jetson Xavier as mentioned in #376?

Hi @rostest,
Appreciate the help so far.
Attached are the results from running the above. This is three runs, they all ended prematurely I think due to segmentation faults (not caught in logs) but visible in console.
run_1_sick_scan_xd_api_test_lms_4xxx.log
run_2_sick_scan_xd_api_test_lms_4xxx.log
run_3_sick_scan_xd_api_test_lms_4xxx.log
The SickScanApiSendSOPAS is causing a segmentation fault as per this issue https://github.com/SICKAG/sick_scan_xd/issues/376 - Could the TcpRecvThread issue be related? I'll run through the gdb steps and see where that leads too.
I commented out the SickScanApiSendSOPAS command and it runs ok. I've run some longer tests with no TcpRecvThread issue, but need to do more testing to rule it out as it's quite intermittent at times.

Thanks for your reply. The logfiles do not show abnormalities. This issue can indeed be related to #376.

Hi @rostest,
Looks like were still seeing the TcpRecvThread exiting early issue. Although it is looking like an interaction with the OS or other parts of our code. We don't see it in the sick_scan_xd_api_test or even our own simplified examples.
It seems to reliably occur when we call a specific function in our overall application (a function that's working with a copy of the point cloud data). This function in theory shouldn't interact with the sick_scan_api thread or data.
We added the diagnostic call-back and these are the messages we see:

Is there any way to determine where the exit status code = 4 came from?

Thanks for your reply. A diagnostic message with status code = 4 just means that sick_scan_xd is currently exiting. Just a thought: Did you make a deep copy of the scan data received in the python API callback? Note that the memory of the scan data buffer (type ctypes.POINTER) is released after the callback has been executed. Using a shallow copy instead of a deep copy may produce unexpected results. See https://github.com/SICKAG/sick_scan_xd/blob/develop/doc/sick_scan_api/sick_scan_api.md#usage-example for the memory layout and deep copies of the point cloud.

Thanks @rostest,
Confirming we are using a deep copy of the scan buffer. I've also ran the problematic function using hard-coded data, not from the lidar thread and the issue is still present.
It does seem like an interaction in the background (OS/HW/?) is causing the tcp thread to exit. I'll continue to do more troubleshooting in the background. Otherwise we may have to temporarily disable the problematic function as a workaround for the time being.

Hello
We encountered the same issue. And we noticed that is wasn't pretty fixed when the topic was closed 2 weeks ago.
Please can you reopen it in order to discuss about it.
Thank you very much

@Babs13400 Thanks for your feedback. The issue is reopened for further discussion.
If you encounter issues with the sick_scan_xd driver, please provide more details, especially:

What lidar and OS are you using?
Does sick_scan_xd work as expected when using sick_scan_xd_api_test.py?

If yes: Please describe the error in detail and provide the necessary information and sample code to reproduce the error.
If not: Please provide a complete logfile from start until the error occures.

Thank you for this information. An unexpected termination of point cloud messages after a few hours can have several reasons.
Does the error also occur when running the small test program sick_scan_xd_api_test.cpp? Does sick_scan_xd generate any error messages or warnings during the run, or can you provide a complete logfile from start to error?
Is the LMS511 still sending scan data telegrams after the error? Please use Wireshark to monitor the network traffic between the lidar and sick_scan_xd:

Download and install Wireshark (installer or portable version) from https://www.wireshark.org/download.html
Start Wireshark and select the interface for TCP communication with the lidar.
Observe the network traffic - is the lidar still sending TCP packets to your Windows PC?

If possible, please send a screenshot.

Hello
Thanks for your help. We successfully fixed our issue. It was related to the network switch used in our Sytem.
Actually their was several devices that share the same switch and our LMS511used it as well.
And when we plug the scanner directly in the PC network board, we no longer observe PointCloudMsg paquet error.
Thank you for your Help.
Additional question before closing the topic :
I read some topics in the project telling that the API doesn't support multiple scanners using without ROS.
So my question is, how SOPAS achieve this ?
Actually when we use SOPAS, we can retrieve and display one or several scanners data at the same time.
Thank you very much

Thanks for the information. To run multiple lidars simultaneously, we recommend using ROS or running sick_scan_xd in multiple and separate processes, such that each process serves one sensor. The reason for this is that the sick_scan_xd library is not fully thread-safe. See Start multiple nodes for more details.

Hello
Thank you for your reply. So my question is how SOPAS ET achieves running
several Scanners at the same time.
Thank you
Le mar. 29 oct. 2024, 09:04, rostest @.***> a écrit :

Thanks for the information. To run multiple lidars simultaneously, we
recommend using ROS or running sick_scan_xd in multiple and separate
processes, such that each process serves one sensor. The reason for this is
that the sick_scan_xd library is not fully thread-safe. See Start
multiple nodes
https://github.com/SICKAG/sick_scan_xd?tab=readme-ov-file#start-multiple-nodes
for more details.
—
Reply to this email directly, view it on GitHub
https://github.com/SICKAG/sick_scan_xd/issues/361#issuecomment-2443508543,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BL5PCPPYD4DDHLRRIUNZGCLZ546R7AVCNFSM6AAAAABK4PTTZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBTGUYDQNJUGM
.
You are receiving this because you were mentioned.Message ID:
@.***>

SOPAS ET and sick_scan_xd are independent software programs with different approaches and implementations. Please contact SICK support for questions about SOPAS ET or feature requests for sick_scan_xd.

Hello. Thanks for you reply. You can consider the topic completed for my
part.
Cheers
Le mar. 29 oct. 2024, 13:51, rostest @.***> a écrit :

SOPAS ET and sick_scan_xd are independent software programs with different
approaches and implementations. Please contact SICK support for questions
about SOPAS ET or feature requests for sick_scan_xd.
—
Reply to this email directly, view it on GitHub
https://github.com/SICKAG/sick_scan_xd/issues/361#issuecomment-2444125483,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BL5PCPII3H2ESAAJOJ3E5RLZ56AEVAVCNFSM6AAAAABK4PTTZ2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINBUGEZDKNBYGM
.
You are receiving this because you were mentioned.Message ID:
@.***>


fix multiple scope changes

This fixes autosaving has_many associations.
reload here ensures the after_update callback uses the record in the database instead of the one in memory, which is outdated.

@vliegenthart I think these changes have already been absorbed in other forms on master. Can you check if you still have this problem by running your tests against master?

@vliegenthart @zhengjia Let me know if this is still an issue. I am closing this now, but will reopen if you verify if this is still an issue.


Can not translate messages from the FileUploadFile validator.

use Zend\Validator\File\UploadFile;

$inputFilter->add([
  'name'       => 'IMAGE_INFRACTION',
  'type'       => 'Zend\InputFilter\FileInput',
  'required'   => true,
  'filters' => [
    ['name' => 'StripTags'],
    ['name' => 'StringTrim'],
    ['name' => 'FileRenameUpload',
      'options' => [
        'target'                        => './data/upload',
        'useUploadName'       => true,
        'useUploadExtension' => true,
        'overwrite'                   => true,
        'randomize'                 => false,
      ]
    ]
  ],
  'validators' => [
    [
      'name'         => 'FileUploadFile'
      'options'      => [
        'messages' => [
          UploadFile::INVALID   => 'xxx.',
          UploadFile::IS_EMPTY => 'yyy.',
        ],
      ],
    ],
  ],
]);

Does not work and always gives the message "No file was uploaded"
I modified my code to have a general translation of my module:
module.php
  public function onBootstrap(MvcEvent $event)
  {
...
    $eventManager = $event->getApplication()->getEventManager();
    $moduleRouteListener = new ModuleRouteListener();
    $moduleRouteListener->attach($eventManager);

    $i18nTranslator = new I18nTranslator();
    $i18nTranslator->setLocale('fr_FR');
    $translator = new Translator($i18nTranslator);
    $translator->addTranslationFile('phpArray', 'vendor/zendframework/zend-i18n-resources/languages/fr/Zend_Validate.php', 'default', 'fr_FR');
    AbstractValidator::setDefaultTranslator($translator);
  }

Does not work and always gives the message "No file was uploaded".
For my other validators, everything works (I have not yet tested all the validators ... :-)
Best regards

@MarshMalloW0007
The current result is correct because the constants UploadFile::INVALID and UploadFile::IS_EMPTY do not exist.
See: https://github.com/zendframework/zend-validator/blob/e633fe68f6dbfafe201bb6f10ea29657992b7b4e/src/File/UploadFile.php#L24-L33
https://github.com/zendframework/zend-validator/blob/e633fe68f6dbfafe201bb6f10ea29657992b7b4e/src/File/UploadFile.php#L38-L50

Hello Froschdesign,
That's right.
At first, I tried to modify the messages in my Form file but only the message 'No file was uploaded' remained in English.
Then I modified my Module.php to include a general translation. Again, everything is translated except 'No file was uploaded'.
For the issue, I tried quickly to recreate my initial Form, with the error you raised :-)
I attach a screenshot of my web form and my Module.php
FYI, I'm using ZF3.
Module.php.txt

@MarshMalloW0007

At first, I tried to modify the messages in my Form…

This means you must use the existing constants of the class Zend\Validator\File\Upload and not any constants.

Again, everything is translated except 'No file was uploaded'.

I think this is a problem in the translation files of zend-i18n-resources because the message is different between the validator and the translation file.
As workaround you can set the message with the correct constants for your input-filter.

To solve the problem, we must write a script to check all message identifier in the translation files. This must be done at https://github.com/zendframework/zend-i18n-resources
Thanks for reporting!

Related to https://github.com/zendframework/zend-i18n-resources/issues/43


feat(algo/optim/lbfgsb): implement L-BFGS-B algorithm

Checklist

[x] Have you followed the guidelines for contributing?
[x] Have you checked that there aren't other open pull requests for the same issue?
[x] Have you linked the issue(s) you are working on?

If the change is related to the source code, tests, or build environments, please also check the following:

[x] Does ./scripts/run_clang_tools.sh pass without any warnings?
[x] Have you built the project locally without any warnings and errors?
[x] Does all tests (if new tests are added, including the new ones) pass?

If you added new feature(s), then also check the following:

[x] Did you also add corresponding tests?

Linked Issues
Link the tracking issue(s) of this PR, with the auto-close keywords here:

Closes #373.

TODO: license text


Remote SSH Connection Crashed after openning a Jupyter Notebook on the remote server

Does this issue occur when all extensions are disabled?: No

VS Code Version: 1.83.1
OS Version: Windows 11 latest

Steps to Reproduce:

Open up a remote ssh connection to a remote server
Open a Jupyter Notebook stored on that remote server. It can be a brand new Notebook or something already existed.
VSCode crashed with "Cannot reconnect. Please reload the window."

It could be a problem with VSCode, or the Python / Jupyter extension. This did not happen with VSCode 1.83.0 so something in the update could have messed things up.

Same issue here.  I've found that some workspaces (such as selecting the parent directory) appears to avoid the issue.  The "Cannot reconnect.  Please reload the window." error only occurs when you actually select a kernel.  I don't have any .vscode configuration in either of these workspaces, so I'm not really sure what the issue is.

After downgrading to VSCode 1.83.0, I'm still facing the same issue

After downgrading to VSCode 1.83.0, I'm still facing the same issue

You need to first remove the .vscode_server folder on the remote server, then reinstall vscode on your local computer with the older version, and then reinstall the extensions on remote server (Python, Jupyter, etc.). The problems go away after I did these steps

I'm seeing the same problem when connecting to Remote-SSH as well as WSL. occurs in both "code" and "code-insiders" (from MS App Store). Specifically occurs for me when attempting to "Select Kernel".

same problem

I just encountered the same issue. When I was selecting the Jupyter kernel, the SSH connection began to disconnect. At the same time, I noticed through the 'htop' command in the terminal that the CPU usage began to spike significantly as the SSH connection was interrupted.

I have the same problem since yesterday. I can work on other files via vscode ssh connection. However, when I open any Jupyter notebook, it asks for the password again and the connection times out.

Same issue here, specifically when saving-as a new notebook created with the "Create: New Jupyter Notebook" shortcut. Breaks my connection to WSL in every open window. Only quick fix I've found is to restart VSCode entirely

Have the same problem, but neither reloading, nor reinstall made any impact.

Same issue here - can't use at all.

same problem here

Discovered the solution that worked for me (local: macOS Ventura 13.6, M1, remote server: Ubuntu 22.04.3 LTS x86_64).

Backup settings.json (if you've made any local configurations).
Close VS Code locally and remotely.
Completely delete VS Code from your local machine via steps in #42603103.
Deleted VS Code server from your remote server via:

sudo apt purge code (deleted VS Code from your remote server)
rm -rf .vscode-server (delete VS Code server folder from your $HOME directory)
sudo apt autoremove (delete everything that have not been previously deleted including all dependencies of VS code)
!!NOTE!! use this command carefully as it will erase all dependencies that have not been deleted previously from your system.
rm -rf .ipython (perhaps this command is not required, but I executed it in the pipeline)

Download version of July 2023 (version 1.81) on your local machine.
!!Disable!! as VS code make autoupdates in background #50162685.
Configure clean VS code as new one (copy settings.json, install required extensions, etc.)
Establish remote connection with your remote server via ssh from VS Code toolkit.
Install all extensions that are required on your remote server.

Again, this solution worked for me, but I cannot assure that it will work for all mac users.

Discovered the solution that worked for me (local: macOS Ventura 13.6, M1, remote server: Ubuntu 22.04.3 LTS x86_64).

Backup settings.json (if you've made any local configurations).
Close VS Code locally and remotely.
Completely delete VS Code from your local machine via steps in #42603103.
Deleted VS Code server from your remote server via:

sudo apt purge code (deleted VS Code from your remote server)
rm -rf .vscode-server (delete VS Code server folder from your $HOME directory)
sudo apt autoremove (delete everything that have not been previously deleted including all dependencies of VS code)
!!NOTE!! use this command carefully as it will erase all dependencies that have not been deleted previously from your system.
rm -rf .ipython (perhaps this command is not required, but I executed it in the pipeline)

Download version of July 2023 (version 1.81) on your local machine.
!!Disable!! updates as VS code make autoupdates in background #50162685.
Configure clean VS code as new one (copy settings.json, install required extensions, etc.)
Establish remote connection with your remote server via ssh from VS Code toolkit.
Install all extensions that are required on your remote server.

Again, this solution worked for me, but I cannot assure that it will work for all mac users.

Yep, similar to my solution on windows or linux above. The important thing is to delete the .vscode_server folder from remote and uninstall local 1.83.1 vscode, then downgrade to 1.83.0 and reinstall everything on remote. It sucked because I have to use about 10 remote servers daily.

This is also happening on version 1.82.2 on a remote connection to a Ubuntu 22.04 host.

Open ipynb with extensions disabled -> fine
Open ipynb with extensions enabled -> Crashes right after activating extensions, before even selecting kernel
Have tried deleting all extensions and reinstalling them, worked shortly at one point but then started crashing again

We figured out it was caused by Pylance extension killing the remote extension host process (see details in https://github.com/microsoft/pylance-release/issues/4983). The Pylance team has fixed this issue in Prerelease and it working on a recovery release for stable. To mitigate/workaround this issue before the fix lands:

Open an empty Remote SSH window (Remote indicator -> Connect to Host ... -> Pick the remote)
Downgrade the Pylance extension to previous version (a week ago) or disable it for now

We will keep you posted once there is a new Pylance release.

My solution is downgrading the jupyter extention to v2023.10.1002931100 (but I dont know my last jupyter version, just downloaded the second version from vscode office website), that works for me.


Unexpected consumer crash upon SASL authentication timeout

Describe the bug
When our Kafka cluster is under load, we sometimes see this error from our kafka.js consumer:
KafkaJSSASLAuthenticationError: SASL SCRAM SHA512 authentication failed: Request SaslAuthenticate(key: 36, version: 1) timed out
    at SCRAM.authenticate (/app/node_modules/kafkajs/src/broker/saslAuthenticator/scram.js:158:21)
    at async Object.authenticate (/app/node_modules/kafkajs/src/broker/saslAuthenticator/scram512.js:6:31)
    at async SASLAuthenticator.authenticate (/app/node_modules/kafkajs/src/broker/saslAuthenticator/index.js:73:5)
    at async /app/node_modules/kafkajs/src/network/connection.js:139:9
    at async Connection.authenticate (/app/node_modules/kafkajs/src/network/connection.js:315:5)
    at async Broker.connect (/app/node_modules/kafkajs/src/broker/index.js:111:7)
    at async /app/node_modules/kafkajs/src/cluster/brokerPool.js:319:9
    at async BrokerPool.findBroker (/app/node_modules/kafkajs/src/cluster/brokerPool.js:257:5)
    at async BrokerPool.withBroker (/app/node_modules/kafkajs/src/cluster/brokerPool.js:274:22)
    at async Cluster.findGroupCoordinatorMetadata (/app/node_modules/kafkajs/src/cluster/index.js:385:28)
    at async /app/node_modules/kafkajs/src/cluster/index.js:346:33
    at async ConsumerGroup.[private:ConsumerGroup:join] (/app/node_modules/kafkajs/src/consumer/consumerGroup.js:167:24)
    at async /app/node_modules/kafkajs/src/consumer/consumerGroup.js:335:9
    at async Runner.start (/app/node_modules/kafkajs/src/consumer/runner.js:84:7)
    at async start (/app/node_modules/kafkajs/src/consumer/index.js:243:7)
    at async Object.run (/app/node_modules/kafkajs/src/consumer/index.js:304:5)

This error appears to be classified as a non-retriable error, the CRASH event is emitted from the consumer, with therestart attribute set to false in the event payload. This appears unexpected, because this is the kind of error that should be recoverable by retrying to connect (hoping that the load spike on the broker has subsided and that we won't hit a timeout during authentication again).
My guess is that this issue stems from the fact that instances of KafkaJSSASLAuthenticationError are always classified as KafkaJSNonRetriableError (since it inherits from it here). I suspect that timeouts as part of SASL authentication should be classified differently, they should be retriable by nature (as opposed to cases where the credentials are not accepted).
To Reproduce
We hit high load on our Aiven Kafka cluster during rebalancing events, or when under high load (high message rate). Issue is most frequent when CPU is at or close to 100% for all brokers.
When load is high and we instantiate a new consumer client, we sometimes see the above error get logged and the consumer is unable to start consuming.
Expected behavior
The kafka client consumer should be retrying to connect to the broker when hitting a timeout error during SASL authentication. I understand that kafka.js has retry logic with a maximum nb of attempts, it makes sense that the client would give up reconnecting after hitting this maximum nb of attempts.
Observed behavior
The consumer emits a crash event with the restart attribute set to false. The consumer does not try to reconnect automatically.
Environment:

OS: Debian 11 (bullseye)
KafkaJS version: 2.2.3
Kafka version: 3.2 (using Aiven Kafka with SASL authentication enabled)
NodeJS version: 16.19.1

Additional context
Add any other context about the problem here.

Do we have any recommendation on how to avoid this issue?

Is there any workaround until this issue is solved?


Fix handling of message offsets in ae pre-processing and timeseries stage

Description
Use mess_offset & mess_count
I opened up https://github.com/nv-morpheus/Morpheus/issues/822 to get proper tests in place.
Checklist

[x] I am familiar with the Contributing Guidelines.
[ ] New or existing tests cover these changes.
[x] The documentation is up to date with these changes.

/merge


Android Emulator Checkup -  Unable to find any Android Emulators

While checking - maui-check command,  I am getting this error.

I am using VS 2022, and when checking Tools->Andriod-> SDK , I can see that Emulator is installed. What I am missing here?.

I think you have to create at least a android virtual device using Android Device Manager in Visual Studio.
"Android Emulator checkup" section does not check Android Emulator itself.
This description in maui-check is misleading.
Refer to my screenshot.
Also, you should install webview2.

The latest version of maui-check has some fixes for android emulators, please try updating and log a new issue if you still find problems.


Fix travis

This removes the BluePy submodule in order to get Travis CI working. It also greatly simplifies the Travis file.  Fixes #95 .
It looks like BluePy was originally a submodule because GitHub had a more up to date version, which was required by the Ganglion board. PyPi now has version 1.2.0, and thus this should not be an issue.
Separately, requirements.txt should probably be updated from having bluepy==1.0.5 to bluepy>=1.0.5 or something similar. I do not have a Ganglion board to test which minimum version is actually required.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@89f74e3). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #96   +/-   ##
=========================================
  Coverage          ?   29.11%
=========================================
  Files             ?        9
  Lines             ?     1590
  Branches          ?        0
=========================================
  Hits              ?      463
  Misses            ?     1127
  Partials          ?        0

Continue to review full report at Codecov.

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

YES!!!! I <3 you @ikmckenz


Fix core rels namespace

There's a typo in the declaration of the core properties relationship type.
See, for example, https://msdn.microsoft.com/en-us/library/windows/desktop/dd742699.aspx, for the correct definition.

Google Drive and Open Office apparently see no problem in the file generated by axlsx, but RubyXL complains:
require 'rubyXL'
require 'axlsx'

Axlsx::Package.new do |p|
  p.workbook.add_worksheet(name: "Test") do |sheet|
    sheet.add_row ['test']
  end
  p.serialize('test.xlsx')
end

RubyXL::Parser.parse('test.xlsx')

$ ruby test.rb
*** WARNING: storage class not found for docProps/core.xml (http://schemas.openxmlformats.org/officeDocument/2006/relationships/metadata/core-properties)
WARNING: RubyXL::WorkbookRoot is not aware what to do with RubyXL::GenericStorageObject

Hi!, Sorry for the insane delay - my rwj has me up to my ears in challenging, but fun work. The schema used to validate the package should be getting pulled from the ECMA spec, which considering the size, could certainly have problems - and even more likely, I simply made a mistake. If you have the time - can I ask you to confirm that the ECMA spec's core properties definition is in line with your changes here?
I'd love to merge this and give RubyXL one less problem for folks trying to parse packages from this library.

I'm not sure I know where to pull that information from, but there are examples in section J.4.1 Understanding the Type of Document of the document Ecma Office Open XML Part 1 [4th edition]. Also, take a look at OpenPackagingConventions-XMLSchema.zip, which accompanies part 2 of the spec.

relationship's xsd defines type as:
 <xsd:attribute name="Type" type="xsd:anyURI" use="required" />

core defines it's namespace, and targetNamespace as
xmlns="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"

These schema are defined in Part 2's OpenPackagingConventions-XMLSchema
Your patch is absolutely correct! Thank you.

Great! I was not sure about that because while the core properties schema is defined as:
http://schemas.openxmlformats.org/package/2006/metadata/core-properties,
the related relationship schema seems to be:
http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties,
but I could not find anywhere why there's such a difference.

Hmm.. making me think!
Do you have the xsd handy for those to types? If hey are identical, everything should continue to validate properly, if they are different, maybe not!

The example containing relationships in the path can be found in section J.4.1 Understanding the Type of Document of the pdf inside ECMA-376 4th edition Part 1.
opc-coreProperties.xsd (which is available in ECMA-376 4th edition Part 2) is as follows:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
  xmlns="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
  xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:dcterms="http://purl.org/dc/terms/" elementFormDefault="qualified" blockDefault="#all">

  <xs:import namespace="http://purl.org/dc/elements/1.1/"
    schemaLocation="http://dublincore.org/schemas/xmls/qdc/2003/04/02/dc.xsd"/>
  <xs:import namespace="http://purl.org/dc/terms/"
    schemaLocation="http://dublincore.org/schemas/xmls/qdc/2003/04/02/dcterms.xsd"/>
  <xs:import id="xml" namespace="http://www.w3.org/XML/1998/namespace"/>

  <xs:element name="coreProperties" type="CT_CoreProperties"/>

  <xs:complexType name="CT_CoreProperties">
    <xs:all>
      <xs:element name="category" minOccurs="0" maxOccurs="1" type="xs:string"/>
      <xs:element name="contentStatus" minOccurs="0" maxOccurs="1" type="xs:string"/>
      <xs:element ref="dcterms:created" minOccurs="0" maxOccurs="1"/>
      <xs:element ref="dc:creator" minOccurs="0" maxOccurs="1"/>
      <xs:element ref="dc:description" minOccurs="0" maxOccurs="1"/>
      <xs:element ref="dc:identifier" minOccurs="0" maxOccurs="1"/>
      <xs:element name="keywords" minOccurs="0" maxOccurs="1" type="CT_Keywords"/>
      <xs:element ref="dc:language" minOccurs="0" maxOccurs="1"/>
      <xs:element name="lastModifiedBy" minOccurs="0" maxOccurs="1" type="xs:string"/>
      <xs:element name="lastPrinted" minOccurs="0" maxOccurs="1" type="xs:dateTime"/>
      <xs:element ref="dcterms:modified" minOccurs="0" maxOccurs="1"/>
      <xs:element name="revision" minOccurs="0" maxOccurs="1" type="xs:string"/>
      <xs:element ref="dc:subject" minOccurs="0" maxOccurs="1"/>
      <xs:element ref="dc:title" minOccurs="0" maxOccurs="1"/>
      <xs:element name="version" minOccurs="0" maxOccurs="1" type="xs:string"/>
    </xs:all>
  </xs:complexType>

  <xs:complexType name="CT_Keywords" mixed="true">
    <xs:sequence>
      <xs:element name="value" minOccurs="0" maxOccurs="unbounded" type="CT_Keyword"/>
    </xs:sequence>
    <xs:attribute ref="xml:lang" use="optional"/>
  </xs:complexType>

  <xs:complexType name="CT_Keyword">
    <xs:simpleContent>
      <xs:extension base="xs:string">
        <xs:attribute ref="xml:lang" use="optional"/>
      </xs:extension>
    </xs:simpleContent>
  </xs:complexType>

</xs:schema>

Additionally, this is the content of opc-relationships.xsd:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<xsd:schema xmlns="http://schemas.openxmlformats.org/package/2006/relationships"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  targetNamespace="http://schemas.openxmlformats.org/package/2006/relationships"
  elementFormDefault="qualified" attributeFormDefault="unqualified" blockDefault="#all">

  <xsd:element name="Relationships" type="CT_Relationships"/>
  <xsd:element name="Relationship" type="CT_Relationship"/>

  <xsd:complexType name="CT_Relationships">
    <xsd:sequence>
      <xsd:element ref="Relationship" minOccurs="0" maxOccurs="unbounded"/>
    </xsd:sequence>
  </xsd:complexType>

  <xsd:complexType name="CT_Relationship">
    <xsd:simpleContent>
      <xsd:extension base="xsd:string">
        <xsd:attribute name="TargetMode" type="ST_TargetMode" use="optional"/>
        <xsd:attribute name="Target" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="Type" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="Id" type="xsd:ID" use="required"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>

  <xsd:simpleType name="ST_TargetMode">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="External"/>
      <xsd:enumeration value="Internal"/>
    </xsd:restriction>
  </xsd:simpleType>
</xsd:schema>

Now I understand what's happening.
There's nothing to do with namespaces. They're all being given correctly when building the xlsx files, and that's why the schema validates despite my issue with RubyXL.
Nevertheless, the Type attribute of the Relationship element inside _rels/.rels contains an invalid value.
ECMA-376 4th edition Part 2 defines, in section <IP_ADDRESS>, the structure of a Relationship element. The annotation for Type states:

The package implementer shall require the Type attribute to be a URI that defines the role of the relationship and the format designer shall specify such a Type. [M1.27]

Table F-3 (Annex F) lists valid relationship types:

Core Properties | http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties
Digital Signature | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/signature
Digital Signature Certificate | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/certificate
Digital Signature Origin | http://schemas.openxmlformats.org/package/2006/relationships/digital-signature/origin
Thumbnail | http://schemas.openxmlformats.org/package/2006/relationships/metadata/thumbnail

Strict parsers like RubyXL need the exact type to find the core properties file. Others might be more lenient and just assume the one at docProps/core.xml.
The constant Axlsx::CORE_R, which this commit modifies, defines such type (and not any kind of namespace, as the comment before the definition in the source file implies).

Let's roll with it!


A question about rl training function

for action, p, r, b in zip(indices, probs, reward, baseline):         advantage = r - b         avg_advantage += advantage         losses.append(-p.log_prob(action)                       * (advantage/len(indices))) # divide by T*B
I have a question about this piece of code.
If I didn't get it wrong, the variable b here is tensor with gradient enabled, so optimizing tensors in losses will actually both optimize reward by changing policy weights and minimizing the advantage by maximizing baseline. I can't understand why the baseline is optimized here, because as far as I know, the baseline should only be optimized during the training of the critic.
Actually I used this training function in a different summarization task, and I found that the avg_advantage is always dropping.
Thank you very much.

I changed r-b to (r-b).item(), and it seems alright.

Thanks for pointing this out! I think your solution should work as intended. I will test how this affect the results when I have time.


Can you please add support for IOS app development?

Can you please add support for IOS app development?

We try to keep VS Code lean and we think the functionality you're asking for is great for a VS Code extension. Maybe you can already find one that suits you in the VS Code Marketplace. Just in case, in a few simple steps you can get started writing your own extension. See also our issue reporting guidelines.
Happy Coding!


brain-score.org (user:134) | Add new plugin(s): models: [resnet18_imagenet21kP] resnet18_imagenet21kP: [ | public:False

Plugin-only changes from brain-score.org submission. Generated via Jenkins job create_github_pr, build 66. Plugins added: models: [resnet18_imagenet21kP] resnet18_imagenet21kP: [

Deferring to model's multiple more recent PRs (#546, #547, #548, #549, #550, #552, #574)


[Suggestion] Landing Page for Product Drives

Is there an existing request for this feature?

[X] I have searched the existing issues

Is there a pain point in the app driving this feature request?
It seems that banks are looking to gather more information on people who are interested in donating
Desired Behavior
Each product drive will come with a sharable landing page that has a customizable title and background. When you click on the link to go to the landing page, you are able to enter your name and email as interested in participating. Information entered into the landing page is collected and displayed as interested participants under a specific product drive.
Criteria for Completion

When you create a product drive : you are prompted to give a custom title and background (color or img) to the landing page (landing page is optional)
When a product drive is created : a landing page for the product drive is also created
When you click on the landing page you are presented with the correct customized title + background + fields to enter name and email
When information is submitted on the landing page, it is recorded and displayed under "interested individuals"

Anything else?
--
Code of Conduct

[X] I've read the Code of Conduct and understand my responsibilities as a member of the Ruby for Good community

This one, i think  the core team would need to weigh the potential extra support pain, and probably reach out to the stakeholders regarding priority within the ~200 things we need to work on.   Adding it to our behind-the-scenes "needs developer discussion" pile.

Making a note to follow up with the stakeholders with the question "How could the product drive functionality be improved?", rather than taking this forward specifically, as it may be more than what they need.


In ServerQueryRequest and ColumnValueSegmentPruner, replace BrokerRequest with QueryContext

ColumnValueSegmentPruner can directly use the Predicate in QueryContext instead of creating new ones for each segment
This PR is based on #5483, and shows how the QueryContext can help simplify the code and reduce the repetitive work.

Codecov Report

Merging #5538 into master will decrease coverage by 0.11%.
The diff coverage is 70.65%.

Impacted Files
Coverage Δ

...quota/HelixExternalViewBasedQueryQuotaManager.java
67.87% <0.00%> (ø)

...org/apache/pinot/common/function/FunctionInfo.java
73.33% <ø> (ø)

...java/org/apache/pinot/common/segment/ReadMode.java
66.66% <ø> (ø)

...org/apache/pinot/common/utils/CommonConstants.java
39.02% <0.00%> (+0.92%)
:arrow_up:

...troller/helix/core/retention/RetentionManager.java
80.28% <0.00%> (+1.11%)
:arrow_up:

...he/pinot/controller/util/AutoAddInvertedIndex.java
0.00% <0.00%> (ø)

.../org/apache/pinot/core/common/BaseBlockValSet.java
3.03% <0.00%> (-1.32%)
:arrow_down:

.../java/org/apache/pinot/core/common/DataSource.java
100.00% <ø> (ø)

...data/manager/realtime/DefaultSegmentCommitter.java
80.00% <ø> (ø)

...e/data/manager/realtime/SplitSegmentCommitter.java
0.00% <ø> (-63.64%)
:arrow_down:

... and 465 more

Continue to review full report at Codecov.

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


Error 42410 in test mode

I'm getting this error in test mode in the console and don't know why this happens. This is the implementation:
$request = new \Paymill\Request($this->$paymillPrivateKey);
$transaction = new \Paymill\Models\Request\Transaction();
$transaction->setAmount($this->cartService->getCheckoutSum());
$transaction->setCurrency('EUR');
$transaction->setToken($token);

try {

    $response = $request->create($transaction);
    $transactionId = $response->getId();

} catch (\Paymill\Services\PaymillException $e) {

    $e -> getResponseCode();
    $e -> getStatusCode();
    $e -> getErrorMessage();
    $e -> getRawError();

}

I could find the following "hint" by your support staff:

When the initiated transaction is not completed within 5min the status will change to failed with response code 42410: Initiation of transaction expired.

Which is exactly what happens here. But how can I complete the transaction? To me the line $response = $request->create($transaction); does complete it, no?

After some debugging, I found that this exception is thrown, which confuses me even more.


Store index on local variable reads and writes

Right now we just keep around the information that something is a local variable read or write, but not the scope it was found in or the index within the local table. We will need these pieces of information in the compiler, and it would be faster to do it in the parser when we already have to iterate through the list.

Not sure this is necessary now that we have constant pools and lookup is much faster.


Can't type into field

I can't type characters into the angucomplete-alt input field, but I can paste characters. If I paste chars, the lookups/dropdown works as it does on the demo page.
I've copied/pasted example 1 into my app because my own implementation had this problem and I wanted to go with something that I know works elsewhere. Neither mine nor the pasted example will accept typed chars. I know all the "wiring" is right because everything works as it should on both mine and the pasted example when I paste chars into the input.
Any ideas why I would not be able to type into the field? Other inputs on the form work fine. Just the angucomplete-alt input won't accept key strokes.
Thank you,
Dan

Do you see any errors in dev console?
What browser are you using?
Can you create a jsbin or plnkr example?

Thank you for your reply.
No errors in the dev console.
Using Chrome Version 44.0.2403.157 (64-bit) on OS X 10.10.5
It works in plunkr, same code does not work in my app.
My app is complex (multiple modues, ui-router, custom services, etc.), so it's hard for me to simplify the situation. I am fairly new to angular and web app dev, but not new to coding.
I was hoping someone may have had a similar experience and could give me a clue as to what might be causing it. I don't think it's necessarily the angucomplete-alt plugin, but I don't know what else to try or do.
Thank you,
Dan


[Compare]: api to neuroconv_endpoint

Trying to get a good changelog view of the api branch (which this is a copy of) but where it inherits from a different base

@garrettmflynn Also note that after PR #9 was merged, the base for this automatically became main

Closing after updating the UI with new text (#19), reimplementing Python API changes (#21, #23), and tackling the SODA purge (#14) in separate PRs


Recording does not work.Outputs "T"

Hi,
Thanks for your i2s examples.
When I try read-mono-mic-write-internal-flash example it outputs
exec(open('./read-mono-mic-write-internal-flash.py').read(),globals()) T
and does nothing till I stop program (and sd part remains empty).
I've ESP32 DevKit and SPH0645 MEMS. What is wrong with my setup (or why I'm false)?
If you help me, I'll be glad.
Edit: I've tried with different board. (ESP32 Lite CH340)
This time I faced with an error about I2S. I guess "T" stands for Traceback, the main error was
cannot import name I2S

Hi,
I'll try to help.
But, I need to better understand what you are trying to do.
Some questions:

where do you see the output exec(open('./read-mono-mic-write-internal-flash.py').read(),globals()) T?
e.g.  in the REPL?
How did you run the example?  e.g.  copy the file to main.py?  or run it with the REPL using ctrl-E and ctrl-D?

For the problem with the ESP32 Lite

From the REPL, can you run from machine import I2S with no errors?

First of all about your note; I tried also SPH0645 example (write it to SD) and got same result. Thanks for your interest.
I'm using yPyCraft V1.1, so wrote the example to the flash then run it (it's under the device section)
In REPL I wrote from machine import I2S, output is same ImportError: cannot import name I2S.
However I saw this example in different ESP32 board, normally with my ESP, I only saw ... T part, but I assume Micropython Terminal did not give me full output. T does not mean anything, it should continue with Traceback error ................ cannot import name I2S

All I can think right now is somehow your ESP32 build does not include the required I2S commit.  Note that none of the MicroPython official releases include the I2S pull request I submitted
Here the commit that adds the I2S feature to the ESP32:
https://github.com/miketeachman/micropython/commit/6b023290f6dbccfdb427857120cd12c292e622f2
I suggest to check your ESP32 build to make sure this commit is included.

@miketeachman do you have a recommended build and step-by-step instructions for this?
I also try it with 8mb psram version and I guess they need different firmwares.

@xastx I followed the instructions here:
https://github.com/micropython/micropython/tree/master/ports/esp32
After you get the ESP32 build running, add the I2S commit files and re-build.

@miketeachman thanks, I'm gonna try it on my Pi monday.

@miketeachman since I'm unfamiliar with the environment, I failed.
First I completed first 4 steps in this link https://docs.espressif.com/projects/esp-idf/en/latest/get-started/index.html#introduction
Then I stucked at make SDKCONFIG=sdkconfig.myboard part in your instructions link. I do not know what should I do.
Shame on me :/

Getting a working build is often difficult.  I would place a bet that NO-ONE gets a MicroPython build running without some problem(s) along the way.  If you have the interest to keep trying, I suggest asking for some help on the MicroPython forum, in the ESP32 discussion topic.
https://forum.micropython.org/viewforum.php?f=18
Most of the people who follow this ESP32 topic have figured out how to make a build and would help you to get your build running.

@miketeachman do you know how can I solve this error? I have pyparsing, checked via import pyparsing
ast@lenovo:~/esp/micropython/ports/esp32$ make
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
GEN build/esp32.common.ld
Traceback (most recent call last):
  File "/home/ast/esp/esp-idf/tools/ldgen/ldgen.py", line 22, in <module>
    from fragments import FragmentFileModel
  File "/home/ast/esp/esp-idf/tools/ldgen/fragments.py", line 20, in <module>
    from sdkconfig import SDKConfig
  File "/home/ast/esp/esp-idf/tools/ldgen/sdkconfig.py", line 18, in <module>
    from pyparsing import Word, printables, Combine, Literal, hexnums, quotedString, Optional, nums, removeQuotes, oneOf, Group, infixNotation, opAssoc
ModuleNotFoundError: No module named 'pyparsing'
Makefile:788: recipe for target 'build/esp32.common.ld' failed
make: *** [build/esp32.common.ld] Error 1

It is really difficult to help ...but, here is a guess.    You might have two or more Python installations on your machine (e.g.  Python 2.7 and Python 3.6).   The MicroPython build is using a Python installation (e.g.  Python 2.7) that does not have the pyparsing package installed...but when you run Python at the prompt, you run a different python version (e.g.  Python 3.6) that has pyparsing installed.

Hi! After all this time, I finally got my working build (with your commits). On Windows, I was using yPyCraft V1.1, but now I'm on Linux. Can you tell me how to flash your py code to my ESP32 board by using ESP-IDF? I checked hello_world example in ESP_IDF Programming Guide, but its not directly py code (make build, make flash etc). When I use ampy to flash i2s code, it does not recognize i2s which is normal. Where should I put the py code then build it?

ACHIEVED! Thanks. Lastly can you please share how can I access SPIFFS and download this record, via manual or automatically. I couldn't find appropriate FTP or HTTP py code to transfer my file. esp-idf/examples/protocols/http_server/file_serving/ code works for me, but I'm looking for a code to combine with this record example. Do you use this? https://github.com/loboris/MicroPython_ESP32_psRAM_LoBo/wiki/ftpserver Sincemy module is different, I didn't build this. I only have ESP-IDF with your modified commits.

Thank you, I finally succeeded! Since 6 months past, your commit lines are little bit different from up-to-date Makefile lines, but ok. Previously, I was working on Pi, now I switched to Linux laptop. Works fine. I might open another issue to improve recording quality (samplerate etc.) Now I'm trying it with different ratios.


Added new DO fields and made "name" a required parameter for machine.

Also made vpcId optional given that it's either vpcId or subnetId that
is required.

Assuming tests pass, LGTM

LGTM

Green build and 2 LGTMs. merging


fix(esbuild): override aws-sdk with a non-existing version to completely exclude it

Current dependencies on/for this PR:

main

PR #4   👈

This comment was auto-generated by Graphite.


Fix Datetimes on Search Page

 Purpose
Make registration dates display the time they were created and not the current time. Address this trello card:
https://trello.com/c/PgBEhyUK/45-date-registered-displays-current-date-and-time
  Changes
Uses date_created attribute for the the time the registration was created opposed to the somewhat counter-intuitively date_registered which refers to the date the registration of project was created.
 Side Effects
None that I know of.

This doesn't look correct; why would we display the date registered as the project creation date?

I believe it's the date the node was created, not the original project.

I think you are using the wrong key; why not use date_registered? https://github.com/CenterForOpenScience/osf.io/blob/93ea883ff58102caae868450b906dc8cb3793c55/website/search/elastic_search.py#L193

@sloria I just realized that, but all my registered_dates are null, so I have the same problem.

@Johnetordoff See the code I linked to. The key is date_registered.

Yeah initially I thought that was the problem, but really I am just getting null values for date_registered, look:

I've confirmed through manual testing that date_created is the creation date of the original project, which is not what we want.

@Johnetordoff This indicates the bug is in our ES code, then.

ES?

Elastic Search. Indeed, format_result was not accessing the registration date correctly. I've fixed this in https://github.com/CenterForOpenScience/osf.io/commit/fbe50be9759b6ee8a9bc41390590725702cf7ce8


Fixed test using dict headers

Also added test to ensure we allow dictionaries implicitly
Related to #183

\o/ This is magnificent, thank you @LuRsT! :sparkles:


Use bytes.Reader instead of bytes.Buffer

In some places a *bytes.Buffer is used where a *bytes.Reader would be suitable.
A bytes.Buffer is a 102-byte struct while a bytes.Reader is merely 38-bytes in size.


Standardize error messages

As of this moment, the summary screen scanning has two approaches. The old SummaryContent and the one without this. This difference results in different error messages. The goal would be to standardize, then improve error messages, so that the website "troubleshooting" could be improved.

Rust 1.73 modified the panic messages. This multi-line approach was actually considered, but was not implemented due to the lack of precedence.

Apart from the Failed to scan RbySummaryN: XXX message, everything else is now kinda the same.


Reserve the original file name with filename parameter in fetch uri which is generated and returned by saveas request

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


The dot doesn't work

Type: Bug
In VSCode after the last update I am not able to use the dot character. I am able to use ">", but the dot itself does not work. It doesn't work in an open file, as well as when naming a file. I can't give the file extension.
What I get is: command '' not found
VS Code version: Code 1.78.0 (252e5463d60e63238250799aef7375787f68b4ee, 2023-05-03T20:09:00.748Z)
OS version: Windows_NT x64 10.0.22000
Modes:
Sandboxed: No

System Info

Item
Value

CPUs
AMD Ryzen 5 1600 Six-Core Processor             (12 x 3850)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
31.95GB (14.32GB free)

Process Argv
--crash-reporter-id ea555c77-79db-4208-a784-41472d3f93cf

Screen Reader
no

VM
0%

Extensions (22)

Extension
Author (truncated)
Version

TabOut
alb
0.2.2

npm-intellisense
chr
1.4.4

path-intellisense
chr
2.8.4

bracket-select
chu
2.0.2

doxdocgen
csc
1.4.0

vscode-eslint
dba
2.4.0

vscode-html-css
ecm
1.13.1

prettier-vscode
esb
9.12.0

auto-rename-tag
for
0.1.10

copilot
Git
1.85.75

vscode-gutter-preview
kis
0.30.0

CodeFasterKeymap
lea
1.4.2

lintel
mfl
1.3.4

dotenv
mik
1.0.1

vscode-scss
mrm
0.10.0

color-highlight
nau
2.5.0

material-icon-theme
PKi
4.27.0

vscode-react-refactor
pla
1.1.3

comment-divider
sta
0.4.0

autoimport
ste
1.5.4

sass-indented
syl
1.8.26

vscode-todo-highlight
way
1.0.5

(1 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383:30185418
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscorecescf:30445987
pythondataviewer:30285071
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
cmake_vspar411:30581797
vsaa593:30376534
pythonvs932:30410667
cppdebug:30492333
vsclangdf:30486550
c4g48928:30535728
dsvsc012:30540252
pynewext54:30695312
azure-dev_surveyone:30548225
2e4cg342:30602488
pyind779:30671433
89544117:30613380
pythonsymbol12:30671437
a9j8j154:30646983
6233i204:30730053
vsccsb:30705552
azdwalk:30721579
pythonms35:30701012
pythonfmttext:30731395
pythoncmvfstr:30731969
fixhidewlkth:30730051
pythongtdpath:30731978

/needsMoreInfo
Please check your keybindings.json file to see if it includes mapping for ..
Is it reproducible with all extensions disabled?
You can try this with F1 and >Developer: Reload Window With Extensions Disabled
And you can also follow https://github.com/microsoft/vscode/wiki/Keybinding-Issues then if needed.

Thanks for creating this issue! We figured it's missing some basic information or in some other way doesn't follow our issue reporting guidelines. Please take the time to review these and update the issue.
Happy Coding!

Indeed. I have a key bind for the dot sign.
[
{
"key": ".",
"command": ""
},
]
This is weird. I don't know how this happened. Thanks for help.

Duplicate of #181469?


Dev twa ogm improve

This PR improves the twa OGM to support MOPs use case. It also closes issue #1382 once approved.

twa==0.0.5 is now accessible at https://pypi.org/project/twa/0.0.5/


Can't hit the breakpoint for JavaScript project which created from func cli

OS: Win10
Build Version: 20200804.3
Repro Steps:

Create a JavaScript project from func cli --> Open the created project in VS Code.
Click "Yes" when prompting a dialog.
Set breakpoint in index.js file --> F5.
Expand the Local Project tree view and right click on the function --> Select "Copy Function Url".
Paste the url into a browser.
Check the result.

Expect:
The breakpoint should be hit.
Actual:
The breakpoint is not hit.
More Info:
This issue does not reproduce on Mac.

Nathan says he can repro on Windows. Will look into it

Same problem as https://github.com/microsoft/vscode-azurefunctions/issues/2261


Feature request: custom log formatter

Use case
Allow customers to bring their own custom log formatter for logging
Solution/User Experience
Provide functionality similar to Python and Typescript implementations.
Alternative solutions
No response
Acknowledgment

[X] This feature request meets Powertools for AWS Lambda (.NET) Tenets
[ ] Should this be considered in other Powertools for AWS Lambda languages? i.e. Python, Java, and TypeScript

release version 1.4.2


Template is broken

Is your feature request related to a problem? Please describe.
The template is currently broken regarding GitHub Actions (and maybe something else as well I've forgotten since fixing it).
Describe the solution you'd like
See https://github.com/puttehi/slacktube/pull/12 for what it took to fix. I have also locked to Python 3.10 everywhere in an earlier commit to main. Untested with older versions. Might require more finagling with dependencies.
In short:

Use nox-poetry as pip doesn't support poetry export format for --constraint anymore.
Use flakeheaven instead of flakehell as flakehell doesn't support newer flake8 versions and is an unmaintained, deprecated project replaced by the community fork.

Describe alternatives you've considered

Version lock pip to an older version
Remove poetry

Additional context
Original action after initial commit

Linting job logs
Run pip install pre-commit
  pip install pre-commit
  pre-commit run --all-files
  shell: /usr/bin/bash -e {0}
  env:
    pythonLocation: /opt/hostedtoolcache/Python/3.7.15/x64
    LD_LIBRARY_PATH: /opt/hostedtoolcache/Python/3.7.15/x64/lib
Collecting pre-commit
  Downloading pre_commit-[2](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:2).20.0-py2.py[3](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:3)-none-any.whl (199 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 199.5/199.5 kB 11.3 MB/s eta 0:00:00
Collecting cfgv>=2.0.0
  Downloading cfgv-3.3.1-py2.py3-none-any.whl (7.3 kB)
Collecting pyyaml>=5.1
  Downloading PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_6[4](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:4).manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl ([5](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:5)9[6](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:6) kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 596.3/596.3 kB 5[7](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:7).7 MB/s eta 0:00:00
Collecting toml
  Downloading toml-0.10.2-py2.py3-none-any.whl (16 kB)
Collecting importlib-metadata
  Downloading importlib_metadata-5.0.0-py3-none-any.whl (21 kB)
Collecting nodeenv>=0.11.1
  Downloading nodeenv-1.7.0-py2.py3-none-any.whl (21 kB)
Collecting identify>=1.0.0
  Downloading identify-2.5.9-py2.py3-none-any.whl (9[8](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:9) kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [9](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:10)8.8/98.8 kB 32.4 MB/s eta 0:00:00
Collecting virtualenv>=20.0.8
  Downloading virtualenv-20.16.7-py3-none-any.whl (8.8 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.8/8.8 MB 98.1 MB/s eta 0:00:00
Requirement already satisfied: setuptools in /opt/hostedtoolcache/Python/3.7.15/x64/lib/python3.7/site-packages (from nodeenv>=0.11.1->pre-commit) (47.1.0)
Collecting distlib<1,>=0.3.6
  Downloading distlib-0.3.6-py2.py3-none-any.whl (468 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 468.5/468.5 kB 79.6 MB/s eta 0:00:00
Collecting platformdirs<3,>=2.4
  Downloading platformdirs-2.5.4-py3-none-any.whl (14 kB)
Collecting filelock<4,>=3.4.1
  Downloading filelock-3.8.0-py3-none-any.whl ([10](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:11) kB)
Collecting typing-extensions>=3.6.4
  Downloading typing_extensions-4.4.0-py3-none-any.whl (26 kB)
Collecting zipp>=0.5
  Downloading zipp-3.10.0-py3-none-any.whl (6.2 kB)
Installing collected packages: distlib, zipp, typing-extensions, toml, pyyaml, platformdirs, nodeenv, identify, filelock, cfgv, importlib-metadata, virtualenv, pre-commit
Successfully installed cfgv-3.3.1 distlib-0.3.6 filelock-3.8.0 identify-2.5.9 importlib-metadata-5.0.0 nodeenv-1.7.0 platformdirs-2.5.4 pre-commit-2.20.0 pyyaml-6.0 toml-0.10.2 typing-extensions-4.4.0 virtualenv-20.16.7 zipp-3.10.0

Notice:  A new release of pip available: 22.3 -> 22.3.1
Notice:  To update, run: pip install --upgrade pip
[INFO] Initializing environment for https://github.com/pre-commit/pre-commit-hooks.
[INFO] Initializing environment for https://github.com/timothycrosley/isort.
[INFO] Initializing environment for https://github.com/psf/black.
[INFO] Initializing environment for local:darglint~=1.8.0,flake8-annotations~=2.6.2,flake8-bandit~=2.1.2,flake8-blind-except~=0.2.0,flake8-bugbear~=21.9.2,flake8-builtins~=1.5.3,flake8-docstrings~=1.6.0,flake8-logging-format~=0.6.0,flake8~=3.9.2,flakehell~=0.9.0.
[INFO] Installing environment for https://github.com/pre-commit/pre-commit-hooks.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
[INFO] Installing environment for https://github.com/timothycrosley/isort.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
[INFO] Installing environment for https://github.com/psf/black.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
[INFO] Installing environment for local.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
Check Toml...............................................................Passed
Check Yaml...............................................................Passed
Debug Statements (Python)................................................Passed
Check for merge conflicts................................................Passed
Check JSON...........................................(no files to check)Skipped
Fix End of Files.........................................................Passed
isort....................................................................Passed
black....................................................................Failed
- hook id: black
- exit code: 1

Traceback (most recent call last):
  File "/home/runner/.cache/pre-commit/repo4vif_n5t/py_env-python3.7/bin/black", line 8, in <module>
    sys.exit(patched_main())
  File "/home/runner/.cache/pre-commit/repo4vif_n5t/py_env-python3.7/lib/python3.7/site-packages/black/__init__.py", line [12](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:13)82, in patched_main
    patch_click()
  File "/home/runner/.cache/pre-commit/repo4vif_n5t/py_env-python3.7/lib/python3.7/site-packages/black/__init__.py", line 1268, in patch_click
    from click import _unicodefun  # type: ignore
ImportError: cannot import name '_unicodefun' from 'click' (/home/runner/.cache/pre-commit/repo4vif_n5t/py_env-python3.7/lib/python3.7/site-packages/click/__init__.py)

flakehell................................................................Failed
- hook id: flakehell
- exit code: 1

Traceback (most recent call last):
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/bin/flakehell", line 8, in <module>
    sys.exit(entrypoint())
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flakehell/_cli.py", line 40, in entrypoint
    exit_code, msg = main(argv)
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flakehell/_cli.py", line 32, in main
    return COMMANDS[command_name](argv=argv[1:])
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flakehell/commands/_lint.py", line 12, in lint_command
    app.run(argv)
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flake8/main/application.py", line 363, in run
    self._run(argv)
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flake8/main/application.py", line 350, in _run
    self.initialize(argv)
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flake8/main/application.py", line 330, in initialize
    self.find_plugins(config_finder)
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flakehell/_patched/_app.py", line [16](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:17)3, in find_plugins
    self.check_plugins = FlakeHellCheckers(local_plugins.extension)  # this line is changed
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flakehell/_patched/_plugins.py", line 67, in __init__
    local_plugins=local_plugins,
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flakehell/_patched/_plugins.py", line 47, in __init__
    self._load_entrypoint_plugins()
  File "/home/runner/.cache/pre-commit/repoh_hmq108/py_env-python3.7/lib/python3.7/site-packages/flake8/plugins/manager.py", line [25](https://github.com/puttehi/slacktube/actions/runs/3532141950/jobs/5926133006#step:4:26)4, in _load_entrypoint_plugins
    eps = importlib_metadata.entry_points().get(self.namespace, ())
AttributeError: 'EntryPoints' object has no attribute 'get'

Error: Process completed with exit code 1.

Thanks for the template though. It was fun fiddling with CI/CD things for a change :)

First of all, sorry for the late response and thanks to you for taking the time to contribute to the repo with this issue.

Regarding the use of nox-poetry, it is already implemented in the develop branch.
About using flakeheaven, I haven't implemented it yet, as it is not compatible with flake8 > 5 and I am also planning to replace flake8 completely in favor of ruff.

I will try to work on it in the next few weeks.


Guides: Category data isn't appearing in the list of guides

If you look at http://spring.io/guides and view the HTML, you'll notice that every guide has a [] listed. This is supposed to contain the categories for each guide to serve the filter. This data appears to be empty for every guide.

I've found a bug.
The tagMultimap attribute (in the GettingStartedGuides repository) should not be implemented as shared state, as its values are only populated for a given guide if this very guide has been loaded with the find method.
The list of guides metadata should be properly computed and cached.

A possible fix is to remove the projects metadata information from the document itself and move that to the repository description, much like we're doing right now with Guide title :: Guide subtitle. Turning that into Guide title :: Guide subtitle :: spring-boot,spring-framework should work. The trick is to move that information some place where we can get it from the repository API: https://api.github.com/orgs/spring-guides/repos


helix: primary cursor should be differentiated

In helix, you can have multiple cursors operating on different selections in a file. You can cycle between them and remove selections. At any one time, one of the selections is considered to be primary and you can use keybindings to keep or dismiss it.
For example:

(Dracula_at_night)

(Ayu_dark)
Both these themes give the ability to differentiate between primary and secondary selections (with varying subtlety). They both rely on ui.cursor and ui.cursor.primary, and ui.selection and ui.selection.primary being visually distinct.
In stylix's helix config ui.cursor is defined and ui.cursor.primary is not. Also, ui.selection and ui.selection.primary are both defined as base02.
Here's what that looks like with the stylix config:

(Stylix)

Thanks for this excellent bug report!
Currently, Stylix delegates Helix' theming to https://github.com/tinted-theming/base16-helix:
https://github.com/danth/stylix/blob/a2d66f25478103ac9b4adc6d6713794f7005221e/modules/helix/hm.nix#L4-L6
Consider patching the upstream theme and then submitting a Stylix PR to update the base16-helix input.


Checkify exception only reports error from one device (not all)

Description
When running with four hosts and four devices on each host, I see an "errs" returned by pmap of checkify that looks like the folllowing:
Error(at mapped index 0: before: pmean_input_ok failed step @12290 (`check` failed)
at mapped index 1: after:neg_delta_params has NaN @12290 (`check` failed)
at mapped index 2: after:neg_delta_params has NaN @12290 (`check` failed)
at mapped index 3: after:neg_delta_params has NaN @12290 (`check` failed))

However, an errs.throw() (as recommended in JAX docs) only shows one of these four errors:
 Top-level exception: after:neg_delta_params has NaN @12290 (`check` failed)
  ...
  jax._src.checkify.FailedCheckError: after:neg_delta_params has NaN @12290 (`check` failed)

I consider this behavior to be a bug.  No reasonable person would expect the exception string to omit the errors from three our of four devices on that host.  The exception string should contain all four errors.
System info (python version, jaxlib version, accelerator, etc.)
HEAD at google as of May 15, 2024.  Running on TPU.  (Four hosts, four devices per host).

An additional clarification.  The code looks essentially like the following:
errs, returns = jax.pmap(jax.experimental.checkify(step_fn, ..), ...)(state, batch, rng)
print(errs). # shows all four errors (one error from each device)
errs.throw()  # shows only one error (from one device) -- not what is expected

Thanks for the report! This code is a few years old now and the author is no longer working on the JAX project. I took a look and I found that where the extra errors are removed is in the _reduce_any_error function:
https://github.com/google/jax/blob/a820387a79041d795b72188710fbf52caefc2602/jax/_src/checkify.py#L445-L457
If I turn this function into an identity:
def _reduce_any_error(error: Error):
  return error

then err.throw() shows all the errors instead of just the first.
I'm not sure of the other implications of that, but if someone wants to explore this further, then understanding the intent of that helper function is probably where to start.

Thanks, Jake! @sharadmv and I worked closely with Lena on checkify, so I think we can debug this.
I think this was the intended behavior at one point; indeed that's what _reduce_any_error does! But we can re-evaluate it.
@billmark for prioritization purposes: is this blocking your work in some way? Or just a preference you wanted to surface?

It is not blocking my work any more, but I think it is critical to address this issue for other users, either by a code change or a documentation change.
In the meantime, to help others...
The idiom implicitly recommended by the jax documentation is the following:
errs, returns = jax.pmap(jax.experimental.checkify(step_fn, ..), ...)(state, batch, rng)
errs.throw()

That idiom doesn't work properly -- it ignores errors from all but one device.  Instead, I use a variant of the following:
errs, returns = jax.pmap(jax.experimental.checkify(step_fn, ..), ...)(state, batch, rng)
if errs.get_exception() is not None:
  print(errs)
  raise RuntimeError("Checkify caught an exception; see output above for details")

For what it's worth, I think the current behavior is defensible: e.g. if you have 64 shards that all error, it's not terrible to only see one error in the traceback.

I respectfully disagree.  The current behavior is terrible, and just caused me to waste an enormous amount of time.
When trying to track down a NaN with checkify's "float" check, one device typically has the "original" error, but all devices have a NaN error, since the NaN's later propagate via collective operations.  I was seeing the error from the collective operation without realizing that there was a "hidden" error from another device that was the original cause of the NaN.
At a bare minimum, the exception needs to state that it is reporting e.g. only one out of 64 errors and that the other errors may be different.  The checkify documentation here  would also need to discuss this case.  I'll call this solution A.
The best solution ("solution B") would be to de-dup the errors, so that the message would say something like:  64 errors on 64 devices, of two different types.  Error #1 (devices 0, 2, 3):  XXX.  Error #2 (device 1):  YYY.
Solution "C" is to just dump all 64 of the errors.
Solution "D", currently implemented, is to arbitrarily choose one of the errors to display, without any indication that others are being suppressed.  This solution is terrible, particularly since it is not documented.
I would rank the solutions as follows:
Best: Solution B (but it may be too complicated to implement)
Next best: Solution C
Next best: Solution A
Worst: Solution D, the current one.

To clarify my example above:  All devices had a NaN error, but there were two different source-code locations for the error.  This is critical information!


Private fields only used in nullish coalescing assignment are incorrectly seen by the compiler as being never read

Bug Report
🔎 Search Terms
private fields never read nullish coalescing assignment

🕗 Version & Regression Information
This does not look to be a regression as the earlier version of Typescript from the Playground that supports both private fields and nullish coalescing assigment (that would be 4.0.5) already exhibits this behavior.

⏯ Playground Link

Playground link with relevant code
💻 Code

class X {
    #pending: Promise<void> | undefined; // '#pending' is declared but its value is never read.(6133)
    doSomethingSynchronouslyAndPlanifySomethingElseAsynchronously() {
        console.log('This part is sync.');
        this.#pending ??= Promise.resolve().then(() => {
            this.#pending = undefined;
            console.log('This part is async and called only once for all the calls to the method during the same microtask tick.')
        });
    }
}

🙁 Actual behavior
Private fields that are only used in nullish coalescing assignments are incorrectly seen by the compiler as being never read under noUnusedLocals.
🙂 Expected behavior
The nullish coalescing operator should correctly count for a "read" operation. Interestingly, it does so if the field is not private. The above code with a standard public field instead of a private one correctly does not raise a compiler error under noUnusedLocals.

Making the field public actually bypasses this check entirely (because then someone else might want to read it), fwiw.
In most cases of compound assignment (e.g. +=) this error would be correct; the value is never read, except by the assignment operation itself.  The intent of the error is that you have a variable which is assigned to but whose value never affects anything else (except its own value); null coalescence is unique though in that ??= is short-circuiting, so the value is actually observable.

Duplicate of #44802.


Angular 2

I don't know if I just don't understand webpack or if there is an issue loading packages in the angular 2 template but I am not able load the material 2 package.

Could you provide additional details on these, what error message, webpack configs etc.

@laskoviymishka
I am not receiving any errors its just not rendering the Material 2 styles and/or functionality (its behaving like webpack isn't loading the files at all) but I can look in the vendor.js and see all the components included. I am fairly new to web pack so this might be user error. here is where i am including the files.
`var path = require('path');
var webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var extractCSS = new ExtractTextPlugin('vendor.css');
var isDevelopment = process.env.ASPNETCORE_ENVIRONMENT === 'Development';
module.exports = {
resolve: {
extensions: ['', '.js', '.css']
},
module: {
loaders: [
{ test: /.(png|woff|woff2|eot|ttf|svg)$/, loader: 'url-loader?limit=100000' },
{ test: /.css/, loader: extractCSS.extract(['css']) }
]
},
entry: {
vendor: [
'style-loader',
'@angular/common',
'@angular/compiler',
'@angular/core',
'@angular/http',
'@angular/platform-browser',
'@angular/platform-browser-dynamic',
'@angular/router-deprecated',
'@angular/platform-server',
'@angular/router-deprecated',
'@angular2-material/core',
'@angular2-material/button',
'@angular2-material/card',
'@angular2-material/checkbox',
'@angular2-material/icon',
'@angular2-material/input',
'@angular2-material/list',
'@angular2-material/progress-bar',
'@angular2-material/progress-circle',
'@angular2-material/radio',
'@angular2-material/sidenav',
'@angular2-material/toolbar'
]
},
output: {
path: path.join(__dirname, 'wwwroot', 'dist'),
filename: '[name].js',
library: '[name][hash]'
},
plugins: [
extractCSS,
new webpack.ProvidePlugin(
{
'@angular2-material/core': 'vendor/@angular2-material/core',
'@angular2-material/button': 'vendor/@angular2-material/button',
'@angular2-material/card': 'vendor/@angular2-material/card',
'@angular2-material/checkbox': 'vendor/@angular2-material/checkbox',
'@angular2-material/icon': 'vendor/@angular2-material/icon',
'@angular2-material/input': 'vendor/@angular2-material/input',
'@angular2-material/list': 'vendor/@angular2-material/list',
'@angular2-material/progress-bar': 'vendor/@angular2-material/progress-bar',
'@angular2-material/progress-circle': 'vendor/@angular2-material/progress-circle',
'@angular2-material/radio': 'vendor/@angular2-material/radio',
'@angular2-material/sidenav': 'vendor/@angular2-material/sidenav',
'@angular2-material/toolbar': 'vendor/@angular2-material/toolbar'
}),
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.DllPlugin({
path: path.join(__dirname, 'wwwroot', 'dist', '[name]-manifest.json'),
name: '[name][hash]'
})
].concat(isDevelopment ? [] : [
new webpack.optimize.UglifyJsPlugin({
compress: { warnings: false },
minimize: true,
mangle: false // Due to https://github.com/angular/angular/issues/6678
})
])
};`
and I have also attempted it like this
`var path = require('path');
var webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
var extractCSS = new ExtractTextPlugin('vendor.css');
var isDevelopment = process.env.ASPNETCORE_ENVIRONMENT === 'Development';
module.exports = {
resolve: {
extensions: ['', '.js', '.css']
},
module: {
loaders: [
{ test: /.(png|woff|woff2|eot|ttf|svg)$/, loader: 'url-loader?limit=100000' },
{ test: /.css/, loader: extractCSS.extract(['css']) }
]
},
entry: {
vendor: [
'style-loader',
'@angular/common',
'@angular/compiler',
'@angular/core',
'@angular/http',
'@angular/platform-browser',
'@angular/platform-browser-dynamic',
'@angular/router-deprecated',
'@angular/platform-server',
'@angular/router-deprecated',
'@angular2-material/core',
'@angular2-material/button',
'@angular2-material/card',
'@angular2-material/checkbox',
'@angular2-material/icon',
'@angular2-material/input',
'@angular2-material/list',
'@angular2-material/progress-bar',
'@angular2-material/progress-circle',
'@angular2-material/radio',
'@angular2-material/sidenav',
'@angular2-material/toolbar'
]
},
output: {
path: path.join(__dirname, 'wwwroot', 'dist'),
filename: '[name].js',
library: '[name][hash]'
},
plugins: [
extractCSS,
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.DllPlugin({
path: path.join(__dirname, 'wwwroot', 'dist', '[name]-manifest.json'),
name: '[name][hash]'
})
].concat(isDevelopment ? [] : [
new webpack.optimize.UglifyJsPlugin({
compress: { warnings: false },
minimize: true,
mangle: false // Due to https://github.com/angular/angular/issues/6678
})
])
};
`

@jmurphzyo can you try to import styles via require in your app component, and then include it to your app root?
import '@angular2-material/core';

or
var styles = require('@angular2-material/core');
@ng.Component({
  selector: 'app',
  template: require('./app.html'),
  styles: [styles]
})

@laskoviymishka I figured it out.... some how tsc got ran on this project and webpack wasn't getting the updates when I added material2...... Dumb mistakes number one time sync of programming!

So this issue could be closed?

I will for now... going to do more testing and will change to open if there is still an issue


Allow building with ghc-9.2

hi @angerman it seems there are iohk-nix and haskell.nix problems in CI. Any chance you could look at them?

when building TypeScript NPM Package

unpacking source archive /build/dc03db8b910aabba75931e524368df14eb9f7852.tar.gz
error:
       … while evaluating the attribute 'shell'

         at /home/runner/work/cardano-addresses/cardano-addresses/jsapi/default.nix:8:3:

            7|
            8|   shell = cardano-addresses-js-shell;
             |   ^
            9|

       … while evaluating the attribute 'packages.x86_64-linux'

         at /nix/store/ddm4xvz1gbbd1hbjaxmfsbzd6gzyglz2-source/default.nix:74:51:

           73|             {
           74|               ${key} = (attrs.${key} or { }) // { ${system} = ret.${key}; };
             |                                                   ^
           75|             }

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: list index 0 is out of bounds

       at «none»:0: (source not available)
Error: Process completed with exit code 1.

I have this error when starting nix develop shell on this branch:
 yura@fractal  ~/projects/cardano-addresses   erikd/ghc-9.2  nix develop
error:
       … while evaluating the attribute 'packages'

         at /nix/store/w34a3j05pqqmsk4y3vbpzbf4klhacx03-source/lib/attrsets.nix:366:7:

          365|       inherit name;
          366|       value = f name (catAttrs name sets);
             |       ^
          367|     }) names);

       … while evaluating a branch condition

         at /nix/store/w34a3j05pqqmsk4y3vbpzbf4klhacx03-source/lib/attrsets.nix:419:9:

          418|         let here = attrPath ++ [n]; in
          419|         if tail values == []
             |         ^
          420|         || pred here (head (tail values)) (head values) then

       (stack trace truncated; use '--show-trace' to show the full trace)

       error: builder for '/nix/store/cbkqf7pp8q54k7fp2fsrhkb371d6r1ni-haskell-project-plan-to-nix-pkgs.drv' failed with exit code 1;
       last 10 log lines:
       > http-types-0.2.0, http-types-0.1.1, http-types-0.1 (has the same
       > characteristics that caused the previous version to fail: excludes
       > 'bytestring' version <IP_ADDRESS>)
       > [__5] fail (backjumping, conflict set: bytestring, http-types, jsaddle-warp)
       > After searching the rest of the dependency tree exhaustively, these were the
       > goals I've had most trouble fulfilling: bytestring, jsaddle, jsaddle-warp,
       > http-types, cardano-addresses-jsapi, cardano-addresses-jsapi:test,
       > cardano-addresses
       > Try running with --minimize-conflict-set to improve the error message.
       > )
       For full logs, run 'nix log /nix/store/cbkqf7pp8q54k7fp2fsrhkb371d6r1ni-haskell-project-plan-to-nix-pkgs.drv'.

Run 'cabal update' to get the latest list of available packages.
Warning: Requested index-state 2023-01-14T00:00:00Z is newer than
'hackage.haskell.org'! Falling back to older state (2023-01-13T21:42:37Z).
Resolving dependencies...
make-install-plan: dieVerbatim: user error (Error: make-install-plan: Could not resolve dependencies:
[__0] trying: cardano-addresses-3.12.0 (user goal)
[__1] next goal: bytestring (dependency of cardano-addresses)
[__1] rejecting: bytestring-<IP_ADDRESS>/installed-<IP_ADDRESS> (constraint from
project config /build/tmp.wYPNrhXVAP/cabal.project requires >=0.11.4)
[__1] trying: bytestring-<IP_ADDRESS>
[__2] trying: cardano-addresses-jsapi-3.12.0 (user goal)
[__3] trying: cardano-addresses-jsapi:*test
[__4] next goal: jsaddle-warp (dependency of cardano-addresses-jsapi *test)
[__4] rejecting: jsaddle-warp-<IP_ADDRESS> (conflict: bytestring==<IP_ADDRESS>,
jsaddle-warp => bytestring>=<IP_ADDRESS> && <0.11)
[__4] skipping: jsaddle-warp-<IP_ADDRESS>, jsaddle-warp-<IP_ADDRESS>,
jsaddle-warp-<IP_ADDRESS>, jsaddle-warp-<IP_ADDRESS>, jsaddle-warp-<IP_ADDRESS>,
jsaddle-warp-<IP_ADDRESS>, jsaddle-warp-<IP_ADDRESS>, jsaddle-warp-<IP_ADDRESS>,
jsaddle-warp-<IP_ADDRESS> (has the same characteristics that caused the previous
version to fail: excludes 'bytestring' version <IP_ADDRESS>)
[__4] trying: jsaddle-warp-<IP_ADDRESS>
[__5] next goal: http-types (dependency of jsaddle-warp)
[__5] rejecting: http-types-0.12.3 (conflict: jsaddle-warp =>
http-types>=0.8.6 && <0.10)
[__5] skipping: http-types-0.12.2, http-types-0.12.1, http-types-0.12,
http-types-0.11, http-types-0.10 (has the same characteristics that caused the
previous version to fail: excluded by constraint '>=0.8.6 && <0.10' from
'jsaddle-warp')
[__5] rejecting: http-types-0.9.1 (conflict: bytestring==<IP_ADDRESS>, http-types
=> bytestring>=<IP_ADDRESS> && <0.11)
[__5] skipping: http-types-0.9, http-types-0.8.6, http-types-0.8.5,
http-types-0.8.4, http-types-0.8.3, http-types-0.8.2, http-types-0.8.1,
http-types-0.8.0, http-types-<IP_ADDRESS>.1, http-types-0.7.3, http-types-0.7.2,
http-types-0.7.1, http-types-0.7.0, http-types-0.6.11, http-types-0.6.10,
http-types-0.6.9, http-types-0.6.8, http-types-0.6.7, http-types-0.6.6,
http-types-<IP_ADDRESS>, http-types-0.6.5, http-types-0.6.4, http-types-0.6.3,
http-types-0.6.2, http-types-0.6.1, http-types-<IP_ADDRESS>, http-types-0.6.0,
http-types-0.5.3, http-types-0.5.2, http-types-0.5.1, http-types-0.5,
http-types-0.4.1, http-types-0.4.0, http-types-0.3.1, http-types-0.3.0,
http-types-0.2.0, http-types-0.1.1, http-types-0.1 (has the same
characteristics that caused the previous version to fail: excludes
'bytestring' version <IP_ADDRESS>)
[__5] fail (backjumping, conflict set: bytestring, http-types, jsaddle-warp)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: bytestring, jsaddle, jsaddle-warp,
http-types, cardano-addresses-jsapi, cardano-addresses-jsapi:test,
cardano-addresses
Try running with --minimize-conflict-set to improve the error message.
)

Superceeded by #231


About USDⓈ-M Futures And  COIN-M Futures

Hi vivienld:
Does the project has plans to develop SDKs for "USDⓈ-M Futures" and "COIN-M Futures" ?

Hi,
Binance removed Futures features for french residents making it impossible to test for me. I will have to see if a VPN can solve this issue or if my account is tagged as French.
I will first release v3 this weekend and then concentrate on the proxy server, trading strategies and trading bots.

If you want to implement it yourself, you can propose a pull request but I will advise you to wait for v3 release before.

The architecture of Binance4j is very elegant. I am looking forward to the V3 version. At the same time, I want to try to expand the functions related to Futures features based on this architecture;

Thank you, v3 will be released at the end of the week once I come back from holidays.

hi , when will v3 be released?

Wednesday I will release a snapshot but documentation won't be ready as I was dealing with COVID.

Hi,How are you doing? COVID is ok?
I have tried to write the code of the futures part. I see that the comments of the binance4j project are very standard. What plugin is used to generate it?

Hi,
I feel better, thank you. I will probably finish V3 next week. There is no plugin for comments, only for copyright with intellijidea integrated copyright plugin. If you have any question about the project's coding structure, don't hesitate.

This project is great. Are you still work on the project?


feat: withDensity of an s-finite measure is s-finite

But do you agree that in the end the result should be true without any assumption? In this case, it could we worth adding a TODO in the docstring, and using a lemma name showing more clearly that it is an auxiliary statement towards a more general result. If you only use it with measurable functions, I am also not sure it's worth stating the auxiliary result for ae-measurable functions.

Yes I agree that it is true more generally! I will add a TODO and keep only the result for measurable instead of ae-measurable for now.
This auxiliary lemma will then be used to prove that every measure absolutely continuous with respect to an s-finite measure is s-finite, and at that point I'll come back to this to add an instance for s-finiteness of μ.withDensity f.

bors r+
Thanks!


Does not work with Ember 2.1+ and Ember-Simple-Auth 1.0

It appears I'm in a dependency "hell" of sorts.  I have upgraded to Ember 2.1 and ESA 1.0 and now ESA-Token will not load properly as it has a dependency on ESA 0.8.0 which is incompatible with Ember 2.1+.
Maybe I'm just ignorant of dependency management in ember/npm/bower as well...
Any workarounds or advice?  I'm using JWT and really don't want to bake my own authenticator when this one works just peachy :smile_cat:
Thanks!

Nevermind...just saw #100   .. sorry about that...  I'm blind as well as ignorant.  :no_mouth:


Update CI test infra

We've been running the codebase through saved data we compare against pickled results.  We should move toward running the codebase against the prior version, whether actual package or specified commit hash.
We can do this by pip install-ing in the CI (from version or hash), running the same data through current codebase and older version, and then comparing the results.  For now, we can pull the data but probably in the future we should save the data to avoid issues with data providers.

The CI workflow has been updated to handle this, see series of commits ending at 807a74eea9ad8ca338bf57b88000b99d3db9b389.

Doing a similar setup for the vol limited arb tests will be very time-intensive since it doubles the total time.  Might be best to do the manual test data generation through workflow dispatch (as we do currently) and have a separate workflow to just run the actual test separate from the main CI.