Not working with PyInstaller

# cat h.py
print('hello')
# pyinstaller -F -c h.py
...
# ulexecve ./dist/h
[1512371] Cannot open PyInstaller archive from executable (/usr/bin/python3.10) or external archive (/usr/bin/python3.10.pkg)

Quick debug looks like pyinstaller has a bootloader that resolves the calling binary (that it tries to extract the pydata segment from) via /proc/self/exe as can be seen in pyi_path.c.
We may be able to solve this by using a prctl() call with PR_SET_MM_EXE_FILE. Based on the manpage the kernel would require us to unmap everything else first so this might be not as easy as we would hope it to be.

There are two other ways this can work. Both however require access to a writable filesystem though.
The first option is to extract the embedded archive from the PyInstaller binary, write this all to temporary storage, and then name the binary to be executed such that we can also create the binary.pkg version. If we then set _MEIPASS2 we trick the PyInstaller binary into thinking it has already unpacked its embedded archive. This is all a lot of work, we would have to write a ton of things to temporary storage although we might be able to do it by using memfds for all files and simply only writing symlinks to disk.
The second option is less reliable in very restricted scenario's but a whole lot easier. PyInstaller uses /proc/self/exe so we can attempt to replace, braindead, in the binary /proc/self/exe with a path we control that points to the binary again and not to the python executable. Given that we don't want to reassemble the ELF and all the instructions completely the easiest way is to come up with some random path that is just as long as the string /proc/self/exe. Assuming we can write to /tmp then something like /tmp/XXXXXXXXX can work. We symlink then from that filename to the memfd created binary that is only in memory and then we can execute from there.
Both options will leave at minimum a bunch of symlinks behind and the first option probably also a binary that we copied to a different location to make it all work. So we would need to fork() as well and have a watchdog process so that after the child is done doing a userland execution to unlink the files we created.
I got a proof of concept working for the /proc/self/exe trick but I want to clean it up a bit and test it on both py2/py3 and then push it out. But so far it looks like this:
gvb@caladan:~/src/ulexecve$ cat ./tmp/dist/h  | ./ulexecve.py -
[5064] Cannot open PyInstaller archive from executable (/usr/bin/python2.7) or external archive (/usr/bin/python2.7.pkg)
gvb@caladan:~/src/ulexecve$ cat ./tmp/dist/h  | ./ulexecve.py --pyi-fallback -
hello
gvb@caladan:~/src/ulexecve$

The workaround as mentioned above with the /proc/self/exe trick got merged and can be used via --pyi-fallback. A new version was also published (1.3) on pypi.org.

@vdun Can you test if in your scenario's where you used ulexecve the workaround trick alleviates some of the pain?
I'm not a fan of implementing either one of the other options as the first one can only be used under high privilege (CAP_SYS_RESOURCE) anyway and the second is a chunk of work, very specific to PyInstaller that can break with any new upgrade at the moment.
And anyone using some form of obfuscation on a PyInstaller binary can still prevent it from being run via ulexecve. But most vanilla binaries should work fine.


styloid process terms

styloid process hypoplasia (child of MP:0008023)
DEF: underdevelopment or reduced size, usually due to a reduced number of cells, of the slender needle-like pointed projection that runs downward and slightly forward from the base of the inferior surface of the petrous portion of the temporal bone where it joins the tympanic portion; it gives attachment to the styloglossus, stylohyoid, and stylopharyngeus muscles and the stylohyoid and stylomandibular ligaments
SYN: hypoplastic styloid process
SYN: hypoplastic temporal styloid process
SYN: hypoplastic processus styloideus
short styloid process
DEF: length reduction or truncation of the slender needle-like pointed projection that runs downward and slightly forward from the base of the inferior surface of the petrous portion of the temporal bone where it joins the tympanic portion; it gives attachment to the styloglossus, stylohyoid, and stylopharyngeus muscles and the stylohyoid and stylomandibular ligaments
SYN: shortened styloid process
SYN: truncated styloid process
SYN: short temporal styloid process
SYN: short processus styloideus

styloid process hypoplasia MP:0030322
short styloid process MP:0030323


wa-sqlite does not support bigints yet

https://github.com/rhashimoto/wa-sqlite/issues/66

test our casting compensation for lack of bigint support.

86509cc3775c12a0dcebcd0277bfc5d1b2146d04

maybe I'll fix this one day. For the time being it doesn't seem worth the time. I can work around it by casting on read and casting on write.
One of two things will happen in the not too distant future:

wa-sqlite will add this
the sqlite team will get their build into a usable state

which will render this task OBE.


(v3.0.0) build broken since 42bcacf due to stylelint

Passing: https://travis-ci.org/mxstbr/react-boilerplate/builds/105927079 (https://github.com/mxstbr/react-boilerplate/commit/b8987fb71d476f94d7e462f272d4399fb6344aa3)
Failing: https://travis-ci.org/mxstbr/react-boilerplate/builds/106026459 (https://github.com/mxstbr/react-boilerplate/commit/42bcacf44b393daf96739b95ea64f57803b4e4a9)
In between the two Travis jobs was https://github.com/mxstbr/react-boilerplate/commit/1a2d0b400913286d03ccc6709141dc1d90739eb4 (which never ran on Travis)
app/containers/LoginForm/styles.css
2:3     Expected indentation of 4 spaces (indentation)
3:3     Expected indentation of 4 spaces (indentation)
4:3     Expected indentation of 4 spaces (indentation)
5:3     Expected indentation of 4 spaces (indentation)
6:3     Expected indentation of 4 spaces (indentation)
7:3     Expected indentation of 4 spaces (indentation)
7:16    Unexpected unit on zero length number (number-zero-length-no-unit)
8:3     Expected indentation of 4 spaces (indentation)
8:21    Expected "#fff" to be "#FFF" (color-hex-case)
9:3     Expected indentation of 4 spaces (indentation)
13:3    Expected indentation of 4 spaces (indentation)
17:3    Expected indentation of 4 spaces (indentation)
18:3    Expected indentation of 4 spaces (indentation)
[snip]

1a2d0b400913286d03ccc6709141dc1d90739eb4 passes stylelint. The culprit is 42bcacf.

Fixed in #140, @mxstbr please review.

Merged, thanks for tracking that down!


How much disk space it could take every day for rdebug?

Hi guys, this is a really impressive tool, and I would like to know how much disk space it could take every day to record a production service?

We store recorded session at elastic, about 11285.4G.


:arrow_up: chore: upgrade revm

Description
Upgraded revm to latest git commit
Testing
Explain the quality checks that have been done on the code changes
Additional Information

[ ] I read the contributing docs (if this is your first contribution)

Your ENS/address:

Current dependencies on/for this PR:

main

PR #491   👈

This comment was auto-generated by Graphite.


Not working with ebess/advanced-nova-media-library

Error message Call to undefined method stdClass::getMedia() shown.
The problem appears to be that the resolve function in ebess/advanced-nova-media-library expects to have been passed the model and so to be able to access methods on the model.
Whereas in the getFields method in PageManagerController in outl1ne/nova-page-manager, only the model data is passed rather than the actual model.
I would imagine this could cause problems with other fields that access model relations?

 Are there any known workarounds/possible fixes for this?


⚠ Jenkins Plugins Artifactory has degraded performance

In 20c2aad, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 2762 ms

Resolved: Jenkins Plugins Artifactory performance has improved in 9004a87 after 28 minutes.


Excluding fields when writing JSON documents from Spark to Elasticsearch doesn't work

When working with Spark and using RDD.saveJsonToEs(), setting es.mapping.exclude doesn't actually exclude the field from the final document.
I've used the latest elasticsearch-spark_2.10 artifact (version 2.1.0.BUILD-SNAPSHOT taken from http://oss.sonatype.org/content/repositories/snapshots).
I've placed a small test application to reproduce this issue in https://gist.github.com/itaiy/1067deddae09c16077f0

This has been fixed in master a while back - it will be part of the upcoming Beta4. Please try it out - if the problem persists, please raise a new issue.
Thanks!


Ujjwal Sharma Profile added (username: ugwls)

I will remove the file but I can't revert the file because I removed it in my previous commit. Now, please @Panquesito7 tell me what to do.

Just copy the contents from the original file/repository, put it in your fork, submit the changes, and I'll check if all is good. 🙂

Why was this PR closed? If you close it you won't be able to get your profile added :)

The PR got too messed up that's why I myself closed the PR.
I'll open a new fresh PR with no bugs 🙂.


⚠ Bofrost.de has degraded performance

In 6959a94, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1164 ms

Resolved: Bofrost.de performance has improved in 6d3c8cb after 6 minutes.


Border color from the corner is not perfectly visible.

Border color from the corner is not perfectly visible.

An alternative is to render 2 squircles, one nested inside of the other, with the same cornerRadius.


[feature request]: Change some default parameters of disk gc

Feature Request

Currently,  the default disk gc interval is only 15 seconds,  I think we don' t need to check disk space too often. Maybe we should consider increasing it to 30s or 1m?
Currently, the disk gc has two thresholds, one is young gc threshold 100G, another is full gc threshold, 5G. They are both hardcoded and Supernode doesn' t have flags to change it. Also, I guess we need a mechanism to decide these two parameters dynamically, such as check for the total size of disk and when under 80% of total size, trigger young gc. When under 10% of disk, trigger full gc.

Any thoughts for this issue?
Currently the gc threshold is hardcoded, so if the maximum disk capacity is small, everytime the disk gc will trigger and walk through the whole path. We should make it configurable. @Starnop


isValid doesn't become false using $.ajax instead of default .save()

Environment

Ember Version: 2.13.1
Ember CLI Version: 2.13.1
Ember CP Validations Version: 3.3.2

Steps to Reproduce
This works OK
Model + validation
const Validations = buildValidations({
  username: {
    description: 'Username',
    validators: [
      validator('exclusion', {
        in: Ember.computed(function() {
          return this.get('model').alreadyTakenUsernames;
        }).volatile(),
        message: 'Already taken'
      })
    ]
  }
});

export default DS.Model.extend(Validations, {
  username: DS.attr('string'),

  alreadyTakenUsernames: [],

  setAlreadyTakenUsername: function(justTaken) {
    this.get('alreadyTakenUsernames').push(justTaken);
  }
});

Controller
actions: {
    validate() {
      this.get('model').validate().then(({ validations }) => {
        let self = this;
        this.set('didValidate', true);

        if (validations.get('isValid')) {
          let username = this.get('model').get('username');
          this.get('model').save().then(() => {
             // anything
          }).catch(() => {
             self.get('model').setAlreadyTakenUsername(username);
          });
        }
      });
    }
  }

When I click "validate", it does .save() on my model and it adds one more used username to the alreadyTakenUsernames array (let's assume all usernames are taken).
And it works, as soon as I click "submit", the username field becomes red (has-error).
And now this doesn't exactly work (should do the same thing)
If in my model I override .save() to do an $.ajax call:
save: function() {
   let data = {
     username: this.get('username')
   };
   return new Promise(function (resolve, reject) {
     $.ajax({
       dataType: 'json',
       data: JSON.stringify({ data: { attributes: data, type: "users" }}), <-- I'm doing JSONAPI
       type: 'POST',
       headers: {
         'accept': ENV.APP.vendorVersion,
         'content-type': ENV.APP.jsonContentType
       },
       success: function(response) {
         resolve(response);
       },
       error: function(xhr) {
         reject(xhr);
       }
     });
   });
 }

With a bit of tweaking I managed to get exactly the same responses between $.ajax and .save(), but still when I use $.ajax, isValid would be true and the fields don't show has-error whereas it should. It only gets has-error if I remove and add one character, for example:

username is stephane
click "submit"
username doesn't have has-error
change username to be stephan
change username to be stephane
username gets has-error

Whereas with save() it just works:

username is stephane
click "submit"
username gets has-error

Maybe .save() has an extra step that ember-cp-validations expects, a kind of "attributes refresh".
I would really appreciate some help on this one. If ^ doesn't help much, I can try to isolate the situation in a repo or fiddle, but first I wanted to know whether I wasn't forgetting anything silly. Thanks!

Okay I'm going to implement on-the-fly uniqueness validation such as exposed here https://github.com/offirgolan/ember-cp-validations/issues/125. I didn't want to do this at first for security purposes, as there is no way to involve a captcha. But I just saw Twitter does this too.
I would still find an answer to this issue interesting! Otherwise if the answer isn't obvious, feel free to close.

@stephanebruckert I'm closing the issue because it's quite old. Feel free to reopen if you still need help.


Disable Onboarding Cutomization experiment

Task/Issue URL:
Description
Steps to test this PR
Feature 1

[ ]
[ ]

UI changes

Before
After

!(Upload before screenshot)
(Upload after screenshot)

Current dependencies on/for this PR:

develop

PR #3117   👈

This comment was auto-generated by Graphite.


Returning a list as opposed to a dict while authoring an extension

If the issue is to do with Azure CLI 2.0 in-particular, create an issue here at Azure/azure-cli

Related command

While authoring a new extension I am running into this issue here :

Extension name (the extension in question)
Hybrid-Compute
My extension returns a list, however the expected value here is a dictionary. The swagger is specification here (https://github.com/Azure/azure-rest-api-specs/blob/main/specification/hybridcompute/resource-manager/Microsoft.HybridCompute/stable/2022-11-10/HybridCompute.json) is also specified for a list. How do I resolve this issue?

route to CXP team

Is there anyone in particular I should contact to have someone respond?

@ankjayant, it seems this issue is about how to authoring CLI commands, please ask questions in partner channel: https://teams.microsoft.com/l/channel/19%3A31160a5ec7e24ba0b9d58a5e812c43dd%40thread.tacv2/Azure%2520CLI?groupId=9a661795-1b01-4a5b-9dd5-be571422334c&tenantId=72f988bf-86f1-41af-91ab-2d7cd011db47


Issue for Memory (A lot of CPU or Memory is being spent in `IEnumerable.ToL...)

Description: A lot of CPU or Memory is being spent in IEnumerable<T>.ToList().
Current condition: 73% of your Memory was spent in Enumerable.ToList called from Store.Reviews.ReviewValidation.StringValidation.
Recommendations: Consider using List<T> from the start to avoid expensive calls to ToList(). Also, verify that IEnumerable<T>.ToList() isn't being...
Call Stack:
Type System.String
system.private.corelib.il!System.String.Ctor(value class System.ReadOnlySpan1<wchar>) store!ReviewHelper.<LoadDisallowedWords>g__DeserializeLocalizedTerm|0_0() store!ReviewHelper+<LoadDisallowedWords>d__0.MoveNext() system.linq.il!System.Linq.Enumerable+WhereSelectEnumerableIterator2[System.__Canon,System.__Canon].ToList()
system.linq.il!System.Linq.Enumerable.ToList(class System.Collections.Generic.IEnumerable1<!!0>) store!Store.Reviews.ReviewValidation.StringValidation(class System.String,wchar,class System.Globalization.CultureInfo) store!Store.Reviews.BackgroundReviewValidation+<ExecuteAsync>d__0.MoveNext() system.private.corelib.il!System.Runtime.CompilerServices.AsyncTaskMethodBuilder1+AsyncStateMachin

Thank you for assigning this issue to Code Optimizations Perf Agent. I'm on it!

Thank you for assigning this issue to Code Optimizations Perf Agent. I'm on it!


Generate CSRs

Hi,
Would you be interested in/willing to merge functionality generate CSRs?
The included code works for no-ops but has a bug when trying to generate the CSR. If you are interested in merging it I will put some effort in to fixing the problem :)
(Commit says its from Sept 2014. It isn't.)
thanks,

hi, sure! will be on the road the next couple of days so don't worry if you complete the prs and don't get any from me :)

wanted to say: ... any feedback from me.

I believe this one to be ready, CI permitting :)

THX, merged in release 1.9.0


VM name filter is case sensitive

Description of problem:
VM name filter is case sensitive
Version-Release number of selected component (if applicable):
<IP_ADDRESS> (Red Hat CloudForms 4.6)
How reproducible: 100%
Steps to Reproduce:

Login to the CloudForms operational portal

Create infrastructure mapping.

Navigate to Compute -> Migration -> Create infrastructure mapping -> Save

Create migrate plan

Navigate to Compute -> Migration -> Create infrastructure mapping -> specify general information -> Go to VMs -> Filter by VM

Actual results: VM name filter is case sensitive
Expected results: VM name "filter by VM" should not be case sensitive.

Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1612047


Lab missing menu item for Retention

Working through the Azure Devops lab for the White belt dojo course and for the continuous integration pieces my lab does not have a menu for retention settings causing me to be stuck

I’m running into the same error for the CI lab in instructions for step 13.
There have been multiple issues with the labs for this course so far. Response to these issues has been slow.
We should ALL be given an extension to the deadlline for completion! Mine deadline is December 20th.

Hi,
You can skip this step since the retention settings are moved to project settings and Organization settings. We will remove this step from lab.
Thanks

Thanks @sriramdasbalaji . What about the remaining steps in Task 1 (steps 14-17)? should we skip those too?


Add support for boardless ports

Adds support for listing and attempting to build the three boardless "special" ports, unix, webassembly, and windows. This includes both listing and building variants.
Only the unix port actually builds as it is the only one with a build container provided in build.py, however the others successfully attempt the build and gracefully fail as expected with "Sorry, builds are not supported for the  port at this time".
For the boardless ports, internally the board is set to the same value as the port. As this is not the case for any of the boardful (?) ports, this can be used to determine when you're handling a special port and treat it accordingly, while also providing an acceptable (albeit redundant and verbose) user experience during board listing. It may be a preferential user experience to have these all listed under the parent of "special" or similar however this may misconstrue the ports as being somehow related, which isn't the case.

Looks good, successfully tested the unix build. Thanks!


Fix typo and alignment in the Hungarian translation

The About page looks better if a long sentence is broken into two lines.

Thank you!


uischema: port composer ui schema to component schema files

closes #4253
Description
Adds component level ui schemas taken directly from Composer. Only include the form options for now.

I love that each .uischema can be defined separately :)


[5.3][CodeCompletion] Skip to '=' after completion in 'if'/'guard' pattern

Cherry-pick of #32062 into release/5.3
rdar://problem/56802036

@swift-ci Please test

@swift-ci Please nominate


makefile: Move help descriptions to prior line

Update the help target awk script to look for the target description
for help messages on the line before the target instead of on the same
line. This is a more normal style for documenting things in code and
makes the target line shorter which can matter on some of the long
lines.
This also collects multi-line messages and combines it into a single
message, although that is dubious since you would not want overly long
messages.
It now uses column(1) to format the columns rather than relying on a
fixed width of 25 for the first column.

I still need to double-check this on the Mac. The column options are available but I need to see if it works the same way.

Tested on Mac. Works fine.


fopen execution time more than 100ms after calling frequently (IDFGH-2434)

Environment
•	Chip used: ESP32D0WDQ6
•	Peripheral used: Kingston SD card(16G)
•	IDF version: v3.3
•	Power Supply: USB
Problem Description
I'm suffering fopen execution time becoming longer with its called times increasing. After calling fopen for many times (around 2000 or more), the fopen execution time increase to 110ms or more from 1ms in the beginning. However, there is no exception and it completely works as I expected. I can't find any other similar case like this and it is really hard to figure it out because it can work well but the execution time becomes longer and longer.
And if I already put some files in the directory (around 2000 files), the fopen execution time is 116ms in the beginning which is unacceptable.
I have already tested the SD card in my computer and called fopen more than 10000 times to create files in the SD card and the execution is always 5ms. So it seems not the SD card reason.
If there's a solution it would be great and I'd like to know what is the reason and how to debug like this.
Code to reproduce this issue

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <unistd.h>//usleep使用
#include <sys/unistd.h>
#include <sys/stat.h>
#include <time.h>
#include <sys/time.h>
#include "esp_vfs_fat.h"
#include "driver/sdmmc_host.h"
#include "driver/sdspi_host.h"
#include "sdmmc_cmd.h"
#include <dirent.h>
#include <sys/types.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_system.h"
#include "driver/spi_master.h"
#include "driver/gpio.h"
#include <esp_log.h>
#include "esp_err.h"
#include <esp_heap_caps.h>

static char tag[] = "sdcard";   //声明静态字符串
void sdcard_init(void){
    sdmmc_host_t host = SDSPI_HOST_DEFAULT();
    sdspi_slot_config_t slot_config = SDSPI_SLOT_CONFIG_DEFAULT();

    esp_vfs_fat_sdmmc_mount_config_t mount_config = {
        .format_if_mount_failed = true,
        .max_files = 5,
        .allocation_unit_size = 16 * 1024
    };
    sdmmc_card_t* card;
    esp_err_t ret = esp_vfs_fat_sdmmc_mount("/sdcard", &host, &slot_config, &mount_config, &card);

    if (ret != ESP_OK) {
        if (ret == ESP_FAIL) {
            ESP_LOGE(tag, "Failed to mount filesystem. "
                "If you want the card to be formatted, set format_if_mount_failed = true.");
        } else {
            ESP_LOGE(tag, "Failed to initialize the card (%s). "
                "Make sure SD card lines have pull-up resistors in place.", esp_err_to_name(ret));
        }
        return;
    }
}
void app_main(void)
{
    sdcard_init();
    DIR *dr = opendir("/sdcard/data");
    if (dr == NULL)
    {
        ESP_LOGD(tag, "no data dir, trying to create");
        mkdir("/sdcard/data", 0777);
    }
    char filename[80];
    int filenum = 0;
    char str[] = "This is runoob.com";
    while(1){
                sprintf(filename, "/sdcard/data/file-%d.bin", filenum);
                filenum++;
                FILE *fp = NULL;
                            TickType_t sticks = xTaskGetTickCount();
                fp = fopen(filename, "wb");
                            TickType_t eticks = xTaskGetTickCount();
                            int tdiff = eticks-sticks;
                            ESP_LOGI(tag,"fopen %d\n", tdiff);

                ESP_LOGI(tag,"open new file %s\n", filename);
                fwrite(str, sizeof(str) , 1, fp );
                fclose(fp);
                usleep(1000);
    }
    esp_vfs_fat_sdmmc_unmount();
}

as the picture shows, the fopen execution time is 241ms after calling around 2300 times.

Do I understand correctly that in your test the execution time seems to depend on the number of files stored on the SD card? If the number of the files is the same, will the duration of fopen call be the same, after repeated calls?

In my test, the execution time in the beginning depend on the number of files stored on the SD card. And the duration of fopen call always increases after repeated calls.

And the duration of fopen call always increases after repeated calls.

Does this happen if you don't create new files? I.e. always fopen the same file.

No. the execution time is stable if fopen donot create new files.

Does this happen if you don't create new files? I.e. always fopen the same file.
if fopen donot create new files, just shorten existed files to length zero, the execution time depends on the files stored on the SD card and wonot increase.

@SophistCedar You are not encountering a bug.  When you add files to a directory, the FAT file system has to verify that your new file does not already exist. The only way to verify it is not a duplicate is to check every existing file.  So it has to read every entry in the directory.  To reduce this latency you are going to have to reduce the number of compare operations the file system has to do.  One way is to break your single directory with 2k+ files into multiple directories with 128..256 files (one directory page, dependent on implementation of fs).
Chuck.

@stickbreaker Thank you so much.
I still have a question. If fopen existed files, how does the FAT file system work? Does it also need to read every entry in the directory to verify it is a duplicate? Or the FAT file system could find the existed file quickly without reading every entry based on certain setting. Because in my test, the fopen execution time won't increase when open the existed files after repeated calls.

@SophistCedar the file system keeps a small cache of the last accessed directory in memory.  If you are reopening the same file it does not have to load a directory page from the SDcard.  When a new file is added the file system has to:

verify the "new" file is not a duplicate name of an existing file.
Scan through every directory page associated with the current directory (/data/).
find an unused entry in a directory page to store the "new" file name.
If there is no space in the current directory page it has to add a new directory page, allocate the directory cluster from the FAT table (reusing delete clusters first), link the new directory page to the last directory page.
assign a unused cluster as the starting point for the "new" file.
to find the "unused" cluster, either the first entry in the "delete" chain of the FAT or if there are no "deleted" cluster, then it has to scan the FAT for an "unused" entry.
update the "new" file directory record with size, date.

Reusing an existing file only needs:

find the "reused" file in the directory
update the "reused" file directory record with new size and modification date.

here is a good starting point for FAT file systems on Wiki
Chuck.

@stickbreaker. Thanks. now i understand it.


Fix python doc build issue

Description
Fixes #16624
Issue was with nbconvert (older nbconvert had issue while converting ipynb )
For now pinning the versions to latest working pip versions
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[x] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage:
[x] Code is well-documented:
[x] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[x] m docs/python_docs/environment.yml

Comments
Pinning the versions isn't the correct approach. But for now it is a temp fix.

Verified it works by running

Build mxnet binary

./dev_menu.py
Choose option> 3

3. [Docker] Build the MXNet binary - outputs to "lib/"

Build python docs

./dev_menu.py
Choose option> 5

5. [Docker] Build the Python API docs - outputs to "docs/python_docs/python/build/_build/html/"

All the pip versions are latest. It so turns out the latest versions when built work correctly. So pinning those latest versions.


Read features from devices using ietf-yang-library

There is currently no way to explore per-device features or set features for specific devices.
The only mechanism is to set CLICON_FEATURE in the main config file which is static and applies to all devices.
Sometimes the only method is to set CLICON_FEATURES=:
Proposal: as part of device connect, read ietf-yang-library state from the devices and enable the features in XPath: yang-library/module-set/module/feature.
And a mechanism to set per-mount features.

https://github.com/clicon/clixon-controller/issues/131


API proposal: numeric selector

The idea is to create a new widget that allows you to build the Airbnb-like "Guests" select:

I was thinking about something like:
search.addWidget(
  instantsearch.widgets.numericSelector({
    container: '#guests',
    attributeName: 'person_capacity',
    operator: '>=',
    options: [
      { label: '1 guest', value: 1 },
      { label: '2 guests', value: 2 },
      { label: '3 guests', value: 3 },
      { label: '4 guests', value: 4 },
      { label: '5 guests', value: 5 },
      { label: '6 guests', value: 6 }
    ]
  })
);

Why is it limited to numeric values? The use case looks like it could use any kind of refinement (strings).

Why is it limited to numeric values? The use case looks like it could use any kind of refinement (strings).

We could probably build a facetSelector as well but not sure we want to mix it in a single widget: I think it's easier to understand not mixing the operator VS disjunctive VS .... Also the underlying code would be pretty different because of that operator. WDYT?

Yes, makes sense. It would be much easier to have two widgets, otherwise the underlyong code will get too messy.
You should make sure that it is possible to "undo" this filter, like allowing a value of undefined to remove the filter.

I'll add comments on the PR

:+1:


build(deps): bump github.com/cilium/ebpf from v0.9.1 to v0.9.3

Repair build failure on loongarch64.

Signed-off-by: 吴小白<EMAIL_ADDRESS>


Can not retry play audio when connection stop and re-open.

@siddhesh-tamhanekar : Can not retry play audio when connection stop and re-open.
When player running, the wifi stop and then wifi available - open again = > App can not re-play and App is hang (crash app). Please help to fix it. Thanks so much.

@hulastone
Will you please share the code snippet you are working with.
We have already created demo app which demonstrate this functionality you could download it from
http://flutter-media-player.cf


packaging for nixos

Describe the bug
Hi, I am trying to package this for nixos but I dont know about autoconf and I have some issues. Package defined in https://github.com/teto/mptcp-flake/pull/1/files#diff-443bc1da948f07bd678690aa687faa54f54cdd113290f65548842c0017049720
To Reproduce
with gcc as compiler, I get the error
autoreconf --install --symlink --force -v
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --force
libtoolize: putting auxiliary files in '.'.
libtoolize: linking file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: linking file 'm4/libtool.m4'
libtoolize: linking file 'm4/ltoptions.m4'
libtoolize: linking file 'm4/ltsugar.m4'
libtoolize: linking file 'm4/ltversion.m4'
libtoolize: linking file 'm4/lt~obsolete.m4'
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: aclocal --force -I m4
autoreconf: running: /nix/store/x5q70zjlassqa65m616cqdra18yvxl9z-autoconf-2.71/bin/autoconf --force
configure.ac:102: error: possibly undefined macro: AC_MSG_ERROR
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
autoreconf: error: /nix/store/x5q70zjlassqa65m616cqdra18yvxl9z-autoconf-2.71/bin/autoconf failed with exit status: 1

If I comment out these lines
# Enable address sanitizer support.
MPTCPD_ADD_ASAN_SUPPORT

# Enable leak sanitizer support.
MPTCPD_ADD_LSAN_SUPPORT

# Enable undefined behavior sanitizer support.
MPTCPD_ADD_UBSAN_SUPPORT

I can go further but I still get:
(ins)➜ autoreconf --install --symlink --force -v
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -I m4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --force
libtoolize: putting auxiliary files in '.'.
libtoolize: linking file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: linking file 'm4/libtool.m4'
libtoolize: linking file 'm4/ltoptions.m4'
libtoolize: linking file 'm4/ltsugar.m4'
libtoolize: linking file 'm4/ltversion.m4'
libtoolize: linking file 'm4/lt~obsolete.m4'
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: aclocal --force -I m4
autoreconf: running: /nix/store/x5q70zjlassqa65m616cqdra18yvxl9z-autoconf-2.71/bin/autoconf --force
autoreconf: running: /nix/store/x5q70zjlassqa65m616cqdra18yvxl9z-autoconf-2.71/bin/autoheader --force
autoreconf: running: automake --add-missing --force-missing
configure.ac:32: installing './compile'
configure.ac:30: installing './missing'
automake: error: cannot open < aminclude_static.am: No such file or directory
autoreconf: error: automake failed with exit status: 1

nixos is a very special distribution (yet one with the most available and fresh packages) so I must call autoconf to regenerate the configure. I am using the current master 2097bd2b00e240ee1126fa69ce525c18c95a2ec4.

I'm guessing that you're running into backward compatibility breaks introduced in Autoconf 2.70+ since the mptcpd configure script was developed against Autoconf 2.69.  I'll try to reproduce the problem on my end.

i can confirm it runs autoreconf (GNU Autoconf) 2.71. I can iterate quickly if you want me to test stuff.

I tried bootstrapping mptcpd with autoconf 2.71.  Other than replacing the deprecated AC_PROG_CC_STDC macro call with AC_PROG_CC.  It worked fine.  The change is in pull request #189.
I doubt that change will be enough to address the problems you ran into.  I'll keep digging.

actually adding autoconf-archive to the dependency fixed it. Hard to find out with the log I posted earlier but checking my inputs against the readme made me realize it. Thanks for the help.

Great!  I'm glad it was an easy fix.

I am the author of a path manager but for the out-of-tree kernel (at https://github.com/teto/quantum2/tree/main/mptcp-pm). I am looking at porting it to support linux-net-next. Meanwhile, is there a plugin for mptcpd that creates new subflows with the same IPs but different ports  ? (for simple MPTCP testing on localhost)


Add user guide link to "Find out more" in clustering user hint

Changes proposed in this pull request:

Add user guide link to "Find out more" in clustering user hint

Hi @wetneb,
Is this something normal?

I've also added the video in the work product gist, please have a look.

I also noticed that, sometimes there are hiccups in coverage statistics, which can be due to tests that aren't fully deterministic or other sorts of build variations…


[Bug] /host/ page not displaying each host's main content

Expected behavior
Hosts page ( http://localhost:1313/host/ ) should show the main markdown content from each host's markdown file.
In file "castanet/layouts/partials/hosts.html", changing this line:
{{ .Content | markdownify }}
To this..
{{ .Content }}
Seems to fix it for me.
Actual behavior
Host's images are included but the main markdown content isn't displayed ln the hosts page.
http://localhost:1313/host/
Reproduction Steps
Operating System and Version
Ubuntu
Web Browser and Version
Chrome
Hugo Version
0.68.3

This was fixed in 1.2.0

oh wait, that was for guest pages... I'll fix this right away.

This was merged into master and released with 1.3.2
Thanks for catching it!


Endless "Signing in..." with Linux while trying to join collaboration.

Describe what happened:
I used Linux (Debian) from a Chromebook. Installed VS Code the latest as found on the page. When I signed in it worked when I tried joining a collaboration that's when the problems started to happen.
I joined, got invited, then it asked me to sing in again, I did and it just kept saying signing in and never loading the collaboration.
What was your system configuration?
Product and Version [VS/VSCode]:
Latest Debian released as of 11/07/2020 (VS Code).
OS Version[macOS/Windows]:
Chromebook, Linux.
Chromebook: 86.0.4240.221 (Official Build) (64-bit).
Linux: Virtual Machine.
Live Share Extension Version:
Latest as of 11/07/2020: 1.0.3121.
Steps to Reproduce / Scenario:

Sign in with the user code.
Get invited by the host to a collaboration.
Sign in again (as it asks you to).
Will never sign in...

Please attach logs to this issue:
You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to this issue
Could not get them from my machine. It could be because it is a Linux virtual machine, please guide me on getting the logs for the Linux Debian virtual machine.
Screenshots
If applicable, add screenshots to help explain your problem.

Experiencing this on Ubuntu with the latest version of the extension.

@mfrawley-efarm Please take a look at https://github.com/MicrosoftDocs/live-share/issues/4646#issuecomment-1241110860 as this looks like the same issue.

@derekbekoe Thanks for the hint, it does indeed! Looks like it's not fully resolved but some options for the short term at least, cheers.

Closing this in favor of https://github.com/MicrosoftDocs/live-share/issues/4646


TransitRouting: Departure and arrival times are in seconds after midnight in routing results instead of HH:MM

ftr PR #574 was up 30 minutes before you reported this issue ;-)

That being said, you still have to approve the PR...


How to understand the relationship between DatasetH and Alpha158

I feel confused about this config:
        "dataset": {
            "class": "DatasetH",
            "module_path": "qlib.data.dataset",
            "kwargs": {
                "handler": {
                    "class": "Alpha158",
                    "module_path": "qlib.contrib.data.handler",
                    "kwargs": data_handler_config,
                },
                "segments": {
                    "train": ("2008-01-01", "2014-12-31"),
                    "valid": ("2015-01-01", "2016-12-31"),
                    "test": ("2017-01-01", "2020-08-01"),
                },
            },
        }

So,who can tell me  the relationship between datasetH and alpha,or dataset and datahandler?

Hi, @ctwillson
How could this doc  better resolve your confusion?
Your PR is highly welcomed  :)


IOS - Inconsistent error messages when uploading avatar images fail.

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Go to setting -> Profile
Update new avatar image with dimensions outside the allowed range
You will see a image upload failed error message

Expected Result:
The error message should have consistent behavior with the error messages on other pages (Ex: Color of text, red dot)
Actual Result:
The error message is not consistent behavior with the error messages on other pages
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[x] iOS / native
[ ] iOS / Safari
[ ] MacOS / Chrome / Safari
[ ] MacOS / Desktop

**Version Number:**1.3.35-4
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation

https://github.com/Expensify/App/assets/93399543/9c9eb158-961b-43ac-8074-bee61d2af9a4
Expensify/Expensify Issue URL:
Issue reported by: @gemma0110
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1688229503251319
View all open jobs on GitHub

I don't think this is a bug. I think it's okay that we have the modal style to use more room to explain exactly what happened with the image upload error. I would just close this one out.

@shawnborton but shouldn't it follow the same sort of design? Something as simple as having the red dot and displaying the error message in red?

I don't know that it needs to personally. We could add the error below the avatar upload button if we really want it to be perfectly consistent with other form validations. But we use this modal error elsewhere for things like attachments being incorrect, file types being wrong, etc. So I don't think this is an inconsistency bug because it's an acceptable error pattern we use elsewhere.

So you don't think the error messages should either always be written in red text with a dot or always in white text without the dot? Personally having two different ways of showing error messages seems like an inconsistency to me. But then again you are our design guy, so if you want to close this just go for it!

Well the problem here is that it's a follow up alert modal, it's not an inline error next to the form component. I could see an argument to use our red brick error style and show it directly below the avatar image though.

Ah I see what you mean. Now I understand the difference between the two error types.

I could see an argument to use our red brick error style and show it directly below the avatar image though.

Do you mean doing this just for this error or all follow-up errors? Maybe it's just easier to keep them different and close this issue. Now that I get the difference I'm not opposed to keeping the two different error message types.

Thinking more on this - I can see where it makes sense to move this error to use the RBR pattern and display it right below the avatar + camera icon. I think the error appear there after a failed image upload, and then disappear when you leave the page. cc @trjExpensify curious if you agree with that too!

Yeah, I tend to agree that the alert modal feels a little out of sorts with our in-line errors for optimistic failures and form field validation errors.
This one would be pretty straightforward to change, we already have an in-line RBR error beneath the avatar image for upload failures when offline we can re-use (just without persisting it with the X in this case). That said, if we're going to move away from the alert modal for this variation of an attachment upload failure -- we should probably do the same elsewhere like in the chat view for file type, size etc?  I don't think we even go so far as to show a preview when online, so I'm not sure where it would be in-line to. 🤔

Yeah, I wouldn't exactly know where to put things like file type or file size limit errors given that there is no natural "inline" place to put them, so they make sense to stay as alert modals.
As for this particular issue though, @flaviadefaria I think we can move forward with having the error message for the avatar be placed right below the avatar itself.

As for this particular issue though, @flaviadefaria I think we can move forward with having the error message for the avatar be placed right below the avatar itself.

@shawnborton so just to confirm, the desired outcome here is for the inline error message to be place under the avatar with the red dot and error copy saying: Please upload an image larger than....
Is this correct?

Correct!

Thanks for the proposal @dhairyasenjaliya. Overall the proposal looks good to me.
Can you please link the files where are you proposing the changes in each step.

We need to remove  on the image upload success or image removed

Can you please explain a bit about the above step. Which DotIndicatorMessage are we talking about? Where was the DotIndicatorMessage being shown. What error message are expected to be shown?

@dhairyasenjaliya Thanks for the update.
I am still expecting more details for the following step.

We need to remove on the image upload success or image removed

Can you please explain a bit about the above step. Which DotIndicatorMessage are we talking about? Where is the DotIndicatorMessage being shown. What error message are expected to be shown?

Thanks for the update @dhairyasenjaliya.
Proposal from @dhairyasenjaliya looks good to me.
🎀 👀 🎀 C+ reviewed

Also it sounds like we should remove Bug and leave this as a New Feature. Thoughts @flaviadefaria?

Payment summary:
@gemma0110 = $250 (UW)
@dhairyasenjaliya = $1000 + $500 = $1500 (UW)
@sobitneupane = $1000 + $500 = $1500 (ND)
@sobitneupane can you fill out the checklist above so that I can issue payment? Thanks!

Sorry for the delay @flaviadefaria. I could not get to it today. I will review it tomorrow.

@zanyrenney I'm heading OoO so reassigning this in the meantime. We're basically all done here and only waiting on @sobitneupane to fill this out so that payment can be issued as detailed here.

sounds good, thanks @flaviadefaria

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

Rather than a bug, it's an incosistency issue. So, the checklist doesn't apply here.

Requested payment on newDot.
https://github.com/Expensify/App/issues/22069#issuecomment-1672904900

@zanyrenney  it's still pending for me as well

PAID OUT:
@gemma0110 = $250 (paid through UW) 🏁
@dhairyasenjaliya = $1000 + $500 = $1500 (paid through UW) 🏁
@sobitneupane - please submit payment through ND. This issue and payouts are now complete.

Reviewed the details for @sobitneupane. $1,500 payment approved via NewDot based on BZ summary.


Overholt how to send the flask-security emails via Celery?

In overholt I am trying to send the flask-security emails via Celery. I am following the instructions you have provided here:
https://github.com/mattupstate/flask-security/issues/194
I cannot find anywhere in Overholt to put the following code:
@security.send_mail_task
def delay_flask_security_mail(msg):
send_flask_mail.delay(msg)
Where should it live?
thanks

I'm having trouble with this also. It seems that wherever I put it, I get circular import problems.

+1 @mcs07  were you able to get around this problem?

Did anyone find an elegant solution for this?


Allow directly specifying access_token to use in credentials

Same issue for gcloud-dotnet as submitted for direct GoogleCredentials here:
https://github.com/google/google-api-dotnet-client/issues/761
basically, there are few scenarios where you can acquire an access_token on behalf of an end user and would need to access an api as that user.

I don't think we need two issues for this - this project depends on the Google.Apis.Auth project which would be modified by that issue. (So if we fix it there, you'll be able to use that from this project.)


readme

You have two times extract_proximity in the readme. Moreover you have randomforest_distance, but the function is randomforest_dist.
You do not mention randomforest_dist in the paper, but maybe this is not a problem. I really do not know what happens in randomforest_dist, you could add a reference or better explanation in the help.
Also references in the help of the other functions.
Sorry for being very critical, but I think this could really improve the documentation.

Ha no problem. Totally fair. Criticism is the point. Will fix this and the
other issue when I get to the office. Thanks again for reviewing this.
On Wed, Oct 19, 2016 at 7:50 AM Philipp Probst<EMAIL_ADDRESS>wrote:

You have two times extract_proximity in the readme. Moreover you have
randomforest_distance, but the function is randomforest_dist.
You do not mention randomforest_dist in the paper, but maybe this is not
a problem. I really do not know what happens in randomforest_dist, you
could add a reference or better explanation in the help.
Also references in the help of the other functions.
Sorry for being very critical, but I think this could really improve the
documentation.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/zmjones/edarf/issues/51, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABEBhc49dWMz_O7SPxGPLEgj7fDxW21Nks5q1gQPgaJpZM4Ka4Fg
.

I went ahead and removed it. I'll reimplement later if needed.

You still mention extract_proximity two times.
You do not have references in some of the help files (e.g. partial_dependence); If this is intended let me know. ;)

do you mean references to articles? or links to the packages?

ok did those things. thanks


SendGrid Error

🐞 bug report
Affected Package

 The issue is caused by @sendgrid/mail
Is this a regression?

 I'm not sure, but I believe yes.
Description
 I'm not receiving any emails from SendGrid.
🔥 Exception or Error

[App] ResponseError: Bad Request
[App]     at C:\Users\User\Desktop\share\node_modules\@sendgrid\client\src\classes\client.js:146:29
[App]     at processTicksAndRejections (internal/process/task_queues.js:93:5) {
[App]   code: 400,
[App]   response: {
[App]     headers: {
[App]       server: 'nginx',
[App]       date: 'Sat, 13 Feb 2021 11:11:25 GMT',
[App]       'content-type': 'application/json',
[App]       'content-length': '80',
[App]       connection: 'close',
[App]       'access-control-allow-origin': 'https://sendgrid.api-docs.io',
[App]       'access-control-allow-methods': 'POST',
[App]       'access-control-allow-headers': 'Authorization, Content-Type, On-behalf-of, x-sg-elas-acl',
[App]       'access-control-max-age': '600',
[App]       'x-no-cors-reason': 'https://sendgrid.com/docs/Classroom/Basics/API/cors.html'
[App]     },
[App]     body: { errors: [Array] }
[App]   }
[App] }

🌍  Your Environment
NodeJS Version:

v14.15.4

Anything else relevant?

Could you try running the new master branch?  See if upgrading it fixed.

sure


With vite it's give below error. not work with Vite typescript template

Steps to reproduce

take latest vite tempalte
integration commit-graph package.
It's stopped working, and the error below is given.

I could not reproduce the issue. Here are the steps I followed:

create a vite react typescript template:

npm create vite@latest my-vite-project --template react-ts

In vite.config.ts, I added the following:

 import { defineConfig } from "vite";
import react from "@vitejs/plugin-react";
import { nodePolyfills } from "vite-plugin-node-polyfills";

export default defineConfig({
  plugins: [react(), nodePolyfills()],
  define: {
    "process.env": {}, // Mock environment variables
    "process.argv": [], // Mock an empty argument list
    "process.platform": '"browser"', // Mock platform as 'browser'
  },
});

Installed the package and render the graph using some sample data in App.tsx:

import { CommitGraph } from 'commit-graph';
import './App.css'

export const twoBranches = [
{
   commit: { author: { name: "liuliu", date:<PHONE_NUMBER>000 }, message: "Merge pull request #3 from main" },
   parents: [{ sha: "4ttu5nqqifptnuqo6bk1hps3lu484jnu" }, { sha: "qvsacjqo5q72mcg512ahhqj7hjmtmec0" }],
   sha: "euu20mq1b1d9ct2grotrka8jogsh6apl",
 },
 // Additional commits...
];

function App() {

 return (

Commit Graph Example

     <CommitGraph commits={twoBranches} branchHeads={[]}/>

 );
}

export default App

run the project:

npm run dev

The commit graph renders as expected without any errors.
The configuration mocks process properties to make the package compatible with the browser environment.
If you're still facing issues, ensure all dependencies are up to date and try clearing your node_modules and .vite cache.
rm -rf node_modules .vite
npm install
npm run dev


Do Temurin binaries ship with some form of JavaFX?

Question
I am trying to run a software called MCASelector, and when I ran it for the first time, it presented me with this error:
Please install JavaFX for your Java version (17.0.7) to use MCA Selector.

I didn't find anything very conclusive on Google, only this migration guide, which said it shipped with OpenJFX since JDK 11, and this forum post that says it doesn't ship with JavaFX, so they seem to be in conflict. I don't really know enough about Java to know which is correct, or how to proceed if Temurin does ship with something JavaFX-adjacent and MCASelector isn't detected.
Context
Java version:
openjdk version "17.0.7" 2023-04-18
OpenJDK Runtime Environment Temurin-17.0.7+7 (build 17.0.7+7)
OpenJDK 64-Bit Server VM Temurin-17.0.7+7 (build 17.0.7+7, mixed mode)

Your operating system and platform: macOS Ventura 13.4, Apple Silicon (ARM64)

You need to download JavaFX from the Gluon Website (https://gluonhq.com/products/javafx/). Look for the JavaFX SDK downloads. There will be different versions available for different versions of Java. Download the one that matches your Java version (17.0.7). Once the download is complete, extract the zip file. You need to add JavaFX to your Java installation. This typically involves adding a 'path' to your JavaFX lib folder to the Java command you use to start MCA Selector. For example, if you have JavaFX installed in path-to-javafx-sdk-17.0.7/lib, you might start the program with a command like:
java --module-path path-to-javafx-sdk-17.0.7/lib --add-modules javafx.controls,javafx.fxml -jar path-to-mca-selector/MCA_Selector.jar

Note: You will need to replace path-to-javafx-sdk-17.0.7/lib and path-to-mca-selector/MCA_Selector.jar with the actual paths on your system.

JavaFX is an important part of Java per se. Although it is possible to get the four modules from Gluon this is more than cumbersome and user unfriendly to the max IMHO.
Using Java as a system wider runtime environment (and not as a runtime being only used by a specific Java application) it is important to have the JavaFX infrastructure available via it as is the case with awt and swing. Not supporting and supplying JavaFX is a major disbenefit to the Java community IMHO and not necessary as can be seen by other OpenJDK distributions like Liberica (https://bell-sw.com/pages/downloads/) and the like.
Leaving out JavaFX as the most modern Java GUI system from such an important distribution as Temurin/Adoptium is not understandable and effectively harming Java, splitting it up into too many versions making adoption very difficult, the opposite of what "Adoptium" was intended for.

@ronyfla Liberica full JDK with bundled JavaFX is nice for local applications. However, it is quite problematic if your build is integrated with CI, simply because most CI vendors use plain OpenJDK flavors.


Give a helpful error when tsconfig.json has "excludes" without "exclude" property

There's definitely always going to be people who type in 'excludes' instead of 'exclude' (https://github.com/Microsoft/TypeScript/issues/4939#issuecomment-1430313820), so let's actually be helpful in that case.
In addition, in a language service context, maybe we should still figure out what the user means and just pretend they wrote 'exclude' in addition to showing the error.

Thanks @YuichiNukiyama


Trigger new master build

@hklai: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

release-upgrade-tests-1.0.2
58281727b62aa5fd57bf7cd35f5e58e18679a4c4
link
/test release-upgrade-tests-1.0.2

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hklai: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

release-upgrade-tests-1.0.2
58281727b62aa5fd57bf7cd35f5e58e18679a4c4
link
/test release-upgrade-tests-1.0.2

release-upgrade-tests-1.0.1
58281727b62aa5fd57bf7cd35f5e58e18679a4c4
link
/test release-upgrade-tests-1.0.1

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Fix JSON comparison in ServiceInfoTest

Use jsonunit for more robust assertion

@taicki PTAL

Current coverage is 65.29% (diff: 100%)

Merging #246 into master will decrease coverage by 0.18%

@@             master       #246   diff @@
==========================================
  Files           287        287
  Lines         11110      11110
  Methods           0          0
  Messages          0          0
  Branches       1628       1628
==========================================
- Hits           7275       7254    -21
- Misses         3060       3084    +24
+ Partials        775        772     -3

Powered by Codecov. Last update 471543e...b059cec

Thank you, @taicki !


release download-java action on GH marketplace

Initially requested here: https://github.com/typelevel/download-java/issues/22
Steps

[ ] accept the marketplace developer agreement

for reference, these are the terms

[ ] ~draw the rest of the owl~ release the action, with the Publish this release to the GitHub Marketplace box checked

I can accept the terms, but wanted to give everyone a chance to look over them if they so desire, cc @typelevel/steering

Does anybody have a summary of responsibilities and liabilities compared to the status quo?  Those terms are a lot to digest.  I want to help, but I also don't want to get sued by a certain JDK provider whose CEO bought a Hawai`ian island.

Yow -- yeah, while some of that is just standard boilerplate, there's a lot there we'll need to understand properly.

Perhaps a helpful heuristic, the ASF signed it: https://issues.apache.org/jira/browse/LEGAL-537

Does it get signed as Typelevel?  I am struggling with who the "Developer" is, since we're neither an individual nor a company.

"Developer" means you, and you are the company or individual who has created the software, content, and digital materials for use in connection with GitHub and accessible via Marketplace.

I read through it, and I don't see anything atypical, nor can I find anybody complaining about it online.

Secondhand legal advice from a colleague asking an expert:

The feedback I got was that if there is a legal structure in place the governance document needs to specify who/roles allowed to enter into agreements with 3rd parties and any of those individuals can sign. If there is no legal structure it's not really legally possible to sign an agreement without getting everyone to sign.

It would be interesting to find examples of another organization like us in the program: more than a person, less than a corporation.

As of sbt-typelevel v0.5.0-RC1 we are no longer using the download-java action, so it is effectively deprecated. If somebody wants to continue to use it outside of sbt-typelevel they could always fork the repo and publish to marketplace themselves?

Upstream issue is closed, so we can close this too.

https://github.com/typelevel/download-java/issues/22

The abstract question may come up again, but agree the specific is addressed.


[DOC-7830] Add more details about finalization, migrations, and how to monitor progress

[DOC-7830] Add more details about finalization, migrations, and how to monitor progress
Previews:
src/current/cockroachcloud/upgrade-to-v24.1.md
src/current/v24.1/upgrade-cockroach-version.md

Requesting changes as a number of the variables aren't displaying correctly, and I find step 6 a bit confusing. The comments on the self-hosted doc apply to all versions ofc.
Also, I wasn't able to comment in-line, but Step 3 in the self-hosted doc is referring to Step 5 (including the manual finalization in step 5) when I think it means Step 6.

Good catch, the variables were not working on some Cloud pages because they were missing the page.prev_version variable. That's been fixed. I also moved the capture statements up to the top, right after the page-level variables.


Make can::Id usable as key in BTreeMap and HashMap

Implement Ord and Hash for can::Id to make it usable as key in BTreeMap and HashMap

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @therealprof (or someone else) soon.
Please see the contribution instructions for more information.

I think having Ord for StandardId and ExtendedId makes perfect sense.
For can::Id the question is if Ord should be implement according to CAN bus arbitration rules. In that case the automatic derive would not work.

Does that mean that
Id::Standard(StandardId::ZERO) > Id::Standard(StandardId::MAX) should be true? Thus small number meaning important means "large"? :)

If in that case, would it not make more sense if the ordering was the same for all three types?

Unfortunately arbitration rules are a bit more complex than that if I understand the CAN specification correctly.
When two messages are transmitted at the same time the ID with the first dominant bit (0bit) wins.
To compare standard and extended ids you would need to shift the standard ID by 18bits to align them with the MSB of the extended ID and also account the IDE bit.
Example:
Std(0) < Ext(0) < Ext(1337) < Std(1) < Ext(555555) < Std(4)

Oh, ok thanks
I will have a closer look at the protocol :)

So something more like
impl Ord for Id {
    fn cmp(&self, other: &Self) -> core::cmp::Ordering {
        let split_id = |id: &Id| {
            let (standard_id_part, ide_bit, extended_id_part) = match id {
                Id::Standard(StandardId(x)) => (*x, 0, 0),
                Id::Extended(x) => (
                    x.standard_id().0,
                    1,
                    x.0 & ((1 << 18) - 1), // Bit ID-17 to ID-0
                ),
            };
            (standard_id_part, ide_bit, extended_id_part)
        };

        split_id(self).cmp(&split_id(other))
    }
}

Looks good to me now. Can you please fix the two tests too:
failures:
    can::id::tests::cmp_extended
    can::id::tests::cmp_standard

I hope I have put the documentation in the right place. Otherwise please let me know.
The failing test have been removed, they were forgotten left overs from my first attempt

Anything more I can do?


Merge into uni-titlepage

There is a maintained package for cover pages at https://github.com/komascript/uni-titlepage

Wrong repo. Should go to https://github.com/latextemplates/scientific-thesis-cover


Add gcs-transport as separate transport module

This PR adds GCS transport as separate module.

Note: All schema changes require discussion. Please link the issue for context.

[ ] Your change modifies the core OpenLineage model
[ ] Your change modifies one or more OpenLineage facets

If you're contributing a new integration, please specify the scope of the integration and how/where it has been tested (e.g., Apache Spark integration supports S3 and GCS filesystem operations, tested with AWS EMR).
One-line summary:
Checklist

[x] You've signed-off your work
[x] Your pull request title follows our guidelines
[x] Your changes are accompanied by tests (if relevant)
[x] Your change contains a small diff and is self-contained
[ ] You've updated any relevant documentation (if relevant)
[ ] Your comment includes a one-liner for the changelog about the specific purpose of the change (not required for changes to tests, docs, or CI config)
[ ] You've versioned the core OpenLineage model or facets according to SchemaVer (if relevant)
[x] You've added a header to source files (if relevant)

SPDX-License-Identifier: Apache-2.0
Copyright 2018-2024 contributors to the OpenLineage project

The uploaded jar -> https://app.circleci.com/pipelines/github/OpenLineage/OpenLineage/12758/workflows/fc5ee695-8de6-438a-8277-5105f0e7456f/jobs/301427/artifacts still contains lots of unshaded jars. One needs to relocate indirect dependencies as well.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 85.70%. Comparing base (31f51c5) to head (543da2c).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3077   +/-   ##
=======================================
  Coverage   85.70%   85.70%
=======================================
  Files          54       54
  Lines        3112     3112
=======================================
  Hits         2667     2667
  Misses        445      445

Flag
Coverage Δ

85.70% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


mysql query error

dependencies
[dependencies.sqlx]
git = 'https://github.com/launchbadge/sqlx.git'
features = ['mysql']

when I try query：
println!("123");
let pool = sqlx::MySqlPool::new("mysql://xxx:xxx@xxx:xxx/rimer").await?;
let mut conn = pool.acquire().await?;
println!("456");
sqlx::query(r"DELETE FROM rimer_trigger_job WHERE job_id = ?")
    .bind(job_id)
    .fetch_one(&mut *conn)
    .await?;
println!("789");

I got the following error：
123
456
thread 'test_schedule_job' panicked at 'called `Result::unwrap()` on an `Err` value: NotFound', src/libcore/result.rs:1165:5

Issue #22  is not resolved

@liangyongrui you're not returning anything from the DELETE; fetch_one() expects exactly one row returned in the result. Use .execute() instead for purely side-effecting queries.

@abonander Thank you very much, I succeeded!


chore : add .nvmrc

Pull Request type

Build-related changes

PR add .nvmrc to specify the required node version, the issue has been described in #367.
What is the current behavior?
The user has to manually download the ideal node version and look into package.json for the right node version.
What is the new behavior?
The right node version is installed with a simple nvm use command, no need to find it via package.json, a smoother DX with no breaking changes.
Does this introduce a breaking change?
No

Other information
solves #367

lgtm 🚀


Error after install

File "EmailChecker.py", line 4, in
from imap_tools import MailBox, AND
ModuleNotFoundError: No module named 'imap_tools'
Traceback (most recent call last):

Try running:
sudo pip3 install imap_tools
in your terminal. Then rerun the installer script install.sh . Thanks for using my program!


[cpackget]  add -f packs.txt: does not check if the required/dependent pack is installed already

Describe the bug
The pack ARM.V2M_MPS3_SSE_310_BSP.pdsc triggers the installation of additional packs due to this requirements:
<requirements>
    <packages>
      <package vendor="ARM" name="CMSIS" version="5.9.0"/>
      <package vendor="ARM" name="DMA350" version="1.0.0"/>
    </packages>

If just the pack DMA350 is missing cpackget downloads also the CMSIS 5.9.0 pack.  This is wrong.  The tool should check before downloading if a pack exists already.
To Reproduce
Steps to reproduce the behavior:

Remove the packs V2M_MPS3_SSE_310_BSP and DMA350 from the computer. But ensure that CMSIS.5.9.0 is installed on your computer.
Enter: >cpackget add -f packs.txt

Content of packs.txt:
<EMAIL_ADDRESS><EMAIL_ADDRESS>
The tool now installs the missing packs, but also CMSIS.5.9.0 which is already on the computer.
Expected behavior
CMSIS.5.9.0 should not be downloaded/installed
Environment (please complete the following information):

OS: Windows 10

Additional context
File packs.txt

Fixed, see https://github.com/Open-CMSIS-Pack/cpackget/pull/175
cpackget internally sets max version to "_" if unused. This wasn't checked on semver compare.


Implement Trie API

Currently put on hold as waiting for us to extend/refactor/polish our Trie implementation, on which the Trie API depends.
Is generally almost ready, so if very necessary, could also be force-completed prematurely.


bug: The options in three dots menu of comments ,are not working

Describe the bug
The options in three dots menu of comments ,are not working
To Reproduce
Steps to reproduce the behavior:

Go to any video
Comment something
Try delete and copy , both are not working

Expected behavior
It should delete the comment made by the user and copy the comment text as well
Screenshots or GIFs
https://github.com/code100x/cms/assets/68186313/1f0458ba-6282-40f9-8f0b-bd98d3c29b47
Info (please complete the following information):

Browser Chrome Latest

#355

#355 I have made a Pull request , that will fix these . Please check it out .

Looked  now at https://app.100xdevs.com/, delete is working


Teams / Boards

Now that GH is free for Teams any thoughts about setting up a team with a board for tracking tasks?

Hi @adamhill, is this what you mean?
https://github.com/weeklyxamarin/WeeklyXamarin.mobile/projects/1


Blog Entry based placeholder

Hi Yakky,
it would be cool, to set the placeholder functionality for each item in the blog dynamically.
Now it's an all or nothing thing. If I decide to use BLOG_USE_PLACEHOLDER = False I've no chance to add a PDF File, images or other content. In most of the cases the customer does'nt need more than BLOG_USE_PLACEHOLDER = False functionality. But if he needs it...
Therefore a dynamic change of the behaviour for each blog entry would be really cool.
Regards
Thomas

Actually the label BLOG_USE_PLACEHOLDER is a bit misleading. The only hard action it does is to hide / show the post_text field in the admin. The other action is a check in templates, but it's easy to override it.
Instead of :
{% if use_placeholder %}

{% render_placeholder post.content %}

{% else %}

{% render_model post "post_text" "post_text" %}

{% endif %}

You can write:
{% if post.post_text %}

{% render_model post "post_text" "post_text" %}

{% else %}

{% render_placeholder post.content %}

{% endif %}

By using this, if the post_text field is empty, the placeholder is used; as soon as post_text is populated the placeholder goes away.
Or just use

{% render_model post "post_text" "post_text" %}

{% render_placeholder post.content %}

And then you have both fields available, for different scopes

Ok!
I'll change the admin with a simple checkbox / jquery function to show/hide the text field. I think there is also a change in the cms_plugin model needed. The extra model field can also be used to change the template behaviour.
What do you think?

Why a change in the cms_plugin model should be needed?
I am not a big fan of adding boolean flags when it's possible to use model data

you are right - it's possible to show/hide the text field like the other groups (info, imaggine, seo)

Closing this as non issue


Handle definitions that cannot be run on GPU device.

This PR requires https://github.com/omnisci/omniscidb-internal/pull/4955

The check you introduce covers a lot more. So, remove the one from lines 187-190.
if omnisci.version >= (5, 5) and nb_version >= (0, 52):
        pytest.skip(
            f'forbidden ufunc not required for OmniSciDB {omnisci.version} '
            f'and Numba {nb_version}')

rbc/tests/test_omnisci.py (Lines 187-190)


Channel path should be omitted, when empty.

path attribute for source should be omitted, when empty

On Ubuntu 17.04, with libvirtd and related packages at 2.5.0-3ubuntu5.4, when using the terraform provider, I was getting the following error:

libvirt_domain.domain[2]: 1 error(s) occurred:

libvirt_domain.domain.2: Error creating libvirt domain: virError(Code=1, Domain=10, Message='internal error: process exited while connecting to monitor: e file=/var/lib/libvirt/images/volume-2,format=qcow2,if=none,id=drive-virtio-disk0 -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -chardev socket,id=charchannel0,path=,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=org.qemu.guest_agent.0 -spice port=5901,addr=<IP_ADDRESS>,disable-ticketing,seamless-migration=on -device cirrus-vga,id=video0,bus=pci.0,addr=0x2 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 -object rng-random,id=objrng0,filename=/dev/random -device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x6 -msg timestamp=on
2017-08-16T21:05:12.395632Z qemu-system-x86_64: -chardev socket,id=charchannel0,path=,server,nowait: Failed to make a temporary socket name in /tmp: Permission denied')

Apparently, the cause of was the following snippet in the domain definition:
<channel type='unix'>
  <source mode='bind' path=''/>
  <target type='virtio' name='org.qemu.guest_agent.0'/>
  <address type='virtio-serial' controller='0' bus='0' port='1'/>
</channel>

And in particular, the fact that the path attribute was present, but left with an empty value.
https://wiki.libvirt.org/page/Qemu_guest_agent#Setting_QEMU_GA_up and https://libvirt.org/formatdomain.html#elementCharChannel do talk about omitting it when empty, but do not specify what exactly it means when it is present, but empty.

Coverage remained the same at 56.978% when pulling 114641e0edfa811a6fedff11d91532e4b3bcd85c on xalkina:master into 1ec3dcdefd17561926eee63f59460e015af91d78 on dmacvicar:master.

Coverage remained the same at 56.978% when pulling 034dc7105bfa2a38a1461f7733e294ac00068cfa on xalkina:master into 1ec3dcdefd17561926eee63f59460e015af91d78 on dmacvicar:master.

Coverage remained the same at 56.978% when pulling 034dc7105bfa2a38a1461f7733e294ac00068cfa on xalkina:master into 1ec3dcdefd17561926eee63f59460e015af91d78 on dmacvicar:master.

This was not meant to include changes in README.md.
Still a newbie with github... :-(


Increase test timeout for MetadataFieldPerformanceTest.testManyMetadataAdds()

Description
As others have noticed, the MetadataFieldPerformanceTest.testManyMetadataAdds() test has been prone to random failures recently. It seems we are bumping up against the 0.3ms average time limit we've set for adds.
This is a tiny PR that only makes two changes:

Increases that limit from 0.3ms to 0.4ms, as we are barely bumping up against that time limit.
Ensures that metadata adds are also logged (in MetadataValueServiceImpl). We already log updates and deletes, but strangely adds are not logged.  This is not necessary for this PR (so if others disagree, I could remove it).  However, I felt this change could help us better debug why this time limit has increased by knowing when adds occur...as currently they are not visible in logs.

NOTE: For what it's worth, it's good to see that the separate MetadataFieldPerformanceTest.testManyQueries() method is still passing its performance checks, as that's the more important performance test (as it verifies all the findByElement() metadata methods are super quick).  This MetadataFieldPerformanceTest.testManyMetadataAdds() is primarily testing when new metadata is created (which is less frequent & has a smaller performance impact).

https://github.com/DSpace/DSpace/pull/8088 has a variation of this, I'll need to back out that change if this gets merged first, but, I think this is a better change, so 👍 +1

Merging as this is at +1


[stable/kube-slack] Make kube-slack compatible with EKS 1.16

fixes https://github.com/helm/charts/issues/22582

/assign @jstriebel

/ok-to-test

last request @Alien2150 can you squash the commits?

@cpanato thx for the feedback. Should be 1 commit now :)

And news? @cpanato it's already 1 week ago :)

Any news on this please ?


Problem_Statement_5

Consider two numbers. Show that the sum of the divisors of one number is equal to the sum of the other number and vice versa.
If 220 & 284 are two numbers:
First we find the proper divisors of 220: 1, 2, 4, 5, 10, 11, 20, 22, 44, 55, 110
If you add up all of these numbers you will see that they sum to 284.
Now find the proper divisors of 284: 1, 2, 4, 71, 142 These sum to 220, and therefore 220 & 284 are amicable numbers.

Hello I am komal from SY comp CCEW ,I want to work on this.

Assigned you the issue.. Happy Contributing!

Submitted!

Hi @komalvhanmane, you already have one issue assigned at the moment, so we are going to unassign this issue as according to our instructions one at a time. After your first PR is merged, we can assign you this issue if nobody else has commented for it

I am Shreya Amritkar from SY IT CCEW. Please assign me this issue.

I am Sanskruti Kanphade Comp SY. Please assign me this issue

I am Shreya Amritkar from SY IT CCEW. Please assign me this issue.

Hello Shreya, looks like you haven't registered on the google form provided by the club on your official mail id. Please do so as issues won't be assigned to unregistered candidates. After registration, you can look for other issues on our repository.

I am Sanskruti Kanphade Comp SY. Please assign me this issue

Assigned this issue to you. Happy Contributing!


Fix link to API documentation in contributing.md

The link in the contributing file points to a dead link, which is inconsistent with the link in the main README.md file, which seems to work.  So just making a simple tweak to the CONTRIBUTING.md file =)

@moberst thanks!


ValueError: Tried to convert 't' to a tensor and failed.

ValueError: Tried to convert 't' to a tensor and failed. Error: Argument must be a dense tensor: range(0, 3) - got shape [3], but wanted [].
I have such a problem.  but i dont know how to solve it, can you help me .thanks a lot!

I have same problem too.

I solve this problem by change file "object_detection\utils\learning_schedules.py" line 186:
"range(num_boundaries)" -> "[i for i in range(num_boundaries)]"


Extract route strategy creation to protected method to allow extension

This PR creates a protected method in DefaultRouteBuilder to allow customization of the default Route implementation. This way, anyone who want to use a Route implementation instead of FixedMethodStrategy can only override this method.
Changelog

Extract route creation to a method.

sounds great! thanks, @mariofts


Incorrect scroll behaviour

Describe the bug
With the same code for fetch messages on the first page load, if the last message belongs to the current user, then scroll works correctly. If the last message belongs to another user, then scroll works incorrectly. See screenshots below.
Steps to reproduce

Load a lot of messages.
The last message shoul belongs to another user.
Textarea does not scroll to the bottom.

Expected behavior
Textarea should scroll to the bottom, as for the case, when the last message belongs to the current user.
Screenshots

Device (please complete the following information)
MacBook Pro 15"

The same scroll issue when the current user loads a page and does nothing. Opponent sends a message. Current user receives this message.

Thanks, will fix this ASAP

I cannot reproduce. Are you testing with latest version 0.8.0?
If yes, can you reproduce the issue using this repo: https://github.com/antoine92190/vue-advanced-chat-sandbox
Or maybe it's related to the textarea heigh which is too big on your side. Is the size of the textarea smaller when running the repo I sent above? This is what I have on my side:

Yes, I've tested on 0.8.0 version.
Moreover, the same behaviour with your repo: https://github.com/antoine92190/vue-advanced-chat-sandbox

Ok so this happens on your side without any action/click from you right? And if you scroll down you see the "NEW" message right?

Oh sorry, the repo I sent you is use vue-advanced-chat 0.7.8
I updated the version, could you retest after running npm install and confirm the issue is still there?

The same with 0.8.0
Just refresh the page and have this screenshot. No actions/clicks. Scroll down and see the "NEW".

Fixed in https://github.com/antoine92190/vue-advanced-chat/commit/5f635ed2aa5fc2765398019d23cf14b46c395ae6
Could you install the last GitHub version of the chat by running npm i https://github.com/antoine92190/vue-advanced-chat/tarball/master and let me know if it works?

It works correctly with this version: https://github.com/antoine92190/vue-advanced-chat/tarball/master

But if the browser console is closed. If it opened and located at the bottom, it works like before.

And if not set this.messagesLoaded = true that means you have pagination and can load more messages, scroll works incorrectly too.

I can fix that by adding this crutch, but I guess would be better move something like this under the hood.
P.S. with the same crutch I can fix scroll after receiving message from another user.

P.S. with the same crutch I can fix scroll after receiving message from another user.

You mean the scroll issue when the console is opened at the bottom?

P.S. with the same crutch I can fix scroll after receiving message from another user.

You mean the scroll issue when the console is opened at the bottom?

Yes. Moreover, it works with old version, e.g. 0.7.8

I cannot reproduce.
I updated https://github.com/antoine92190/vue-advanced-chat-sandbox, could you check if you can reproduce there?
Otherwise can you tell me how to reproduce using the repo above?

I still think the issue may be because of your textarea height, and it's probably coming from your own project as your screenshot using my repo has the correct textarea height: https://github.com/antoine92190/vue-advanced-chat/issues/143#issuecomment-791891925

Use this repo: https://github.com/antoine92190/vue-advanced-chat-sandbox

Move rooms array from mounted() to data()

data() {
        return {
            currentUserId: 1234,
            rooms: [
                {
                    roomId: 1,
                    roomName: 'Room 1',
                    avatar: 'https://66.media.tumblr.com/avatar_c6a8eae4303e_512.pnj',
                    users: [
                        { _id: 1234, username: 'John Doe' },
                        { _id: 4321, username: 'John Snow' }
                    ]
                }
            ],
            messages: [],
            messagesLoaded: false
        }
    },

Change senderId in addMessages to another. Example:

addMessages(reset) {
            const messages = []
            for (let i = 0; i < 30; i++) {
                messages.push({
                    _id: reset ? i : this.messages.length + i,
                    content: `${reset ? '' : 'paginated'} message ${i + 1}`,
                    senderId: 12345,
                    username: 'John Doe',
                    date: '13 November',
                    timestamp: '10:20'
                })
            }
            return messages
        },

Refresh the chat page in your browser.

Could you check if latest version npm i https://github.com/antoine92190/vue-advanced-chat/tarball/master works?

No, it doesn't work. Steps to reproduce above.

It's working on my side. I updated https://github.com/antoine92190/vue-advanced-chat-sandbox with your reproducible steps, let me know if you have the issue there. Don't forget to run npm install to make sure you are using the latest version.

fetchMoreRooms() {
let rooms = []
setTimeout(() => {
if (this.a > 3) return (this.roomsLoaded = true)
            this.a++
            for (let i = 0; i < 10; i++) {
                rooms.push({
                    roomId: Math.random(),
                    roomName: 'Room 1',
                    avatar: 'https://66.media.tumblr.com/avatar_c6a8eae4303e_512.pnj',
                    users: [
                        { _id: 1234, username: 'John Doe' },
                        { _id: 4321, username: 'John Snow' }
                    ]
                })
            }

            this.rooms = [...this.rooms, ...rooms]
        }, 1000)
    }

Fixed in https://github.com/antoine92190/vue-advanced-chat/commit/30e5b5b8386b2390359850aed6adf33d21e32fcf
You can test with latest version npm i https://github.com/antoine92190/vue-advanced-chat/tarball/master


Exporter very high %CPU

Hello,
I have ~20 containers running on my 8core physical host (misc applications, Prometheus exporters etc), including the Synology Backup Exporter, latest image.
The issue I have is this application / exporter is using 10x the CPU compared to all the rest. I think it's a bit odd. I have visualized it with Grafana here:

And with Linux Cockpit here:

Is there anything that can be done about the heavy utilization, or is it expected behavior?

hey there!
i just merged the fix from @zxjinn and updated the image at docker hub

Yep, latest is with the legacycode for dsm6

Yep, latest is with the legacycode for dsm6

CPU load looks much better now!

Do you have any Grafana dashboard to share?


Refer to original source metadata in source XML and JSON

closes #120
Here is a preview of how the files are listed in the source XML and JSON files:

Here you go (accessible until 1 week from now)

@maawoo what happens if there are two source scenes? Won't there be double keys in the metadata?

@maawoo what happens if there are two source scenes? Won't there be double keys in the metadata?

The XML and JSON files are generated for each source scene individually. So duplicate keys shouldn't be an issue.
Feel free to check this example: https://upload.uni-jena.de/data/6508122e960422.78001587/S1B_IW_ORB__1SDV_20211114T190517_029588_0387F4_28RDT_7A8C.zip

Of course. Monday morning I guess 😅.


Update state and attributes when event received from TahomaClient

[x] I have read the README, including the Advanced section regarding debugging.

Is your feature request related to a problem? Please describe.
I'm developing a lovelace card for my Somfy raffstores, and would like to sync the animation of it as the raffstore goes up or down.
The 30 seconds update of the integration is terrible rear for it. In the worst case when I open one of my raffstore it takes 30 seconds to update the image in the raffstore card (in that time in reality the raffstore is 2/3 part opened at that time). I checked in pyhoma the TahomaClient.fetch_events method what happens when I open a raffstore. When I opened the raffstore an event almost immediatly fired with the following device states:

core:MovingState=true
core:TargetClosureState=0

When the raffstore fully opened another event also received immediatly with the following state:

core:MovingState, false

When the first time the raffstore opens I could measure the time (from code) between the two events and next time I can animate raffstore image synchronized with reality.
Can integration update cover state and attributes when an event arrives from TahomeClient?
Describe the solution you'd like
Update HA cover state and attributes when event received from TahomaClient.
Additional context
Maybe should_poll has to be set to false in cover entity (possibly in all tahomaentity) and async_schedule_update_ha_state function should be used to force HA to update state when event received from TahomaClient.
As I see integration uses DataUpdateCoordinator. I have never used DataUpdateCoordinator in my integrations so maybe async_schedule_update_ha_state won't work in this architecture.

Actually what you described is already what we do. See

What you described is already what we do. See https://github.com/iMicknl/ha-tahoma/blob/master/custom_components/tahoma/coordinator.py
Can you check the event you see is well of type device changed?
If yes, it probably means we have to modify cover.py to handle the state variable you gave.

OK there are multiple issues:

I used position slider to set position to 0 (close) or to 100 (open). In that way state never changes to closing or opening. Can integration change this behaviour? If target position is 0 then set the state to closing, and if target position is 100 than set state to opening during the operation.
The recorder logs of closing the raffstore (by pressing close button, not setting position to 0), contains an "open" state which is missleading (it should be closing):

timestamp
state
attributes

2021-06-13 17:22:44.206931
open
{"current_position": 100, "current_tilt_position": 100, "rssi_level": 58.0, "core:NameState": "Ebedlo", "core:PriorityLockTimerState": 0, "core:StatusState": "available", "core:DiscreteRSSILevelState": "normal", "core:RSSILevelState": 58.0, "core:MovingState": true, "core:ClosureState": 0, "core:OpenClosedState": "open", "core:SlateOrientationState": 0, "core:Memorized1PositionState": 100, "core:SecuredPositionState": 0, "core:TargetClosureState": 0, "friendly_name": "Ebedlo", "supported_features": 655, "device_class": "blind"}

2021-06-13 17:25:19.592901
closing
{"current_position": 100, "current_tilt_position": 100, "rssi_level": 58.0, "core:NameState": "Ebedlo", "core:PriorityLockTimerState": 0, "core:StatusState": "available", "core:DiscreteRSSILevelState": "normal", "core:RSSILevelState": 58.0, "core:MovingState": true, "core:ClosureState": 0, "core:OpenClosedState": "open", "core:SlateOrientationState": 0, "core:Memorized1PositionState": 100, "core:SecuredPositionState": 0, "core:TargetClosureState": 0, "friendly_name": "Ebedlo", "supported_features": 655, "device_class": "blind"}

2021-06-13 17:25:21.054993
closing
{"current_position": 100, "current_tilt_position": 100, "rssi_level": 58.0, "core:NameState": "Ebedlo", "core:PriorityLockTimerState": 0, "core:StatusState": "available", "core:DiscreteRSSILevelState": "normal", "core:RSSILevelState": 58.0, "core:MovingState": true, "core:ClosureState": 0, "core:OpenClosedState": "open", "core:SlateOrientationState": 0, "core:Memorized1PositionState": 100, "core:SecuredPositionState": 0, "core:TargetClosureState": 100, "io:PriorityLockOriginatorState": null, "io:PriorityLockLevelState": null, "friendly_name": "Ebedlo", "supported_features": 655, "device_class": "blind"}

2021-06-13 17:25:43.186836
open
{"current_position": 54, "current_tilt_position": 0, "rssi_level": 58.0, "core:NameState": "Ebedlo", "core:PriorityLockTimerState": 0, "core:StatusState": "available", "core:DiscreteRSSILevelState": "normal", "core:RSSILevelState": 58.0, "core:MovingState": true, "core:ClosureState": 46, "core:OpenClosedState": "open", "core:SlateOrientationState": 100, "core:Memorized1PositionState": 100, "core:SecuredPositionState": 0, "core:TargetClosureState": 100, "friendly_name": "Ebedlo", "supported_features": 655, "device_class": "blind"}

2021-06-13 17:26:14.197069
closed
{"current_position": 0, "current_tilt_position": 0, "rssi_level": 58.0, "core:NameState": "Ebedlo", "core:PriorityLockTimerState": 0, "core:StatusState": "available", "core:DiscreteRSSILevelState": "normal", "core:RSSILevelState": 58.0, "core:MovingState": true, "core:ClosureState": 100, "core:OpenClosedState": "closed", "core:SlateOrientationState": 100, "core:Memorized1PositionState": 100, "core:SecuredPositionState": 0, "core:TargetClosureState": 100, "friendly_name": "Ebedlo", "supported_features": 655, "device_class": "blind"}

In reality the actual closed state reached at about 17:26:00 (it is not reported by HA). I have ran a TahomaClient in console parallel during closing operation. Here is the "log" from it (closed state reached at 17:26:02):

timestamp
device_states

1623604952725
device_states: core:MovingState=false

1623605120179
device_states: core:TargetClosureState=100, core:MovingState=true, io:PriorityLockOriginatorState=None, io:PriorityLockLevelState=None

1623605140497
device_states: core:SlateOrientationState=100, core:ClosureState=46, core:OpenClosedState=open

1623605160724
device_states: core:ClosureState=95, core:OpenClosedState=open

1623605162951
device_states: core:ClosureState=100, core:OpenClosedState=closed, core:MovingState=false

If you check core:TargetClosureState values in first table don't look good. In the last two row the core:TargetClosureState should be 0.
Notice: between the last two row there is about 31 seconds. This is probably the 30 seconds update interval of HA (I have a RPI 3B which is not fast so probably thats why the 1 second difference). I think closing states from TahomaClient received well until HA periodical (30 sec) update not run. After the first periodical update the events from TahomaClient of closing operation not handled by the integration or by HA.

If you check core:TargetClosureState values in first table don't look good. In the last two row the core:TargetClosureState should be 0.

To clarify, all the attributes like core:xxxxx are directly retrieved from Somfy (overkiz) servers. We don’t alter them. We just map them to HA. So core:TargetClosureState cannot be wrong. It’s what we receive.

The recorder logs of closing the raffstore (by pressing close button, not setting position to 0), contains an "open" state which is missleading (it should be closing):

Are you also refering here to a core:xxxx attribute?
Can you confirm, when you open and close through HA, your device behaves correctly?
Can you please also share the firmware of your device. You can find it within the device details. It look like Firmware: io:HorizontalAwningIOComponent

I used position slider to set position to 0 (close) or to 100 (open). In that way state never changes to closing or opening. Can integration change this behaviour?

Got it. That’s indeed not supported.
Indeed, apparently, we can use
{ "name": "core:TargetClosureState", "type": 1, "value": "11" },
      { "name": "core:MovingState", "type": 6, "value": "true" },

And look at these values within https://github.com/iMicknl/ha-tahoma/blob/master/custom_components/tahoma/cover.py#L318

@laszlojakab Can you please have a look into https://github.com/iMicknl/ha-tahoma/pull/460/files ? You can directly edit the files on your system.
Or download the component here: https://github.com/iMicknl/ha-tahoma/archive/refs/heads/enhancement/use_target_closure.zip
I tested with my own covers, and when setting the position I can well see the opening/closing state.

@laszlojakab Can you please have a look into https://github.com/iMicknl/ha-tahoma/pull/460/files ? You can directly edit the files on your system.
Or download the component here: https://github.com/iMicknl/ha-tahoma/archive/refs/heads/enhancement/use_target_closure.zip
I tested with my own covers, and when setting the position I can well see the opening/closing state.

Tested. It looks OK for me too.

The recorder logs of closing the raffstore (by pressing close button, not setting position to 0), contains an "open" state which is missleading (it should be closing):

Are you also refering here to a core:xxxx attribute?
No, HomeAssistant cover state at 2021-06-13 17:25:43.186836.

Can you confirm, when you open and close through HA, your device behaves correctly?
Yes.

Can you please also share the firmware of your device. You can find it within the device details. It look like Firmware: io:HorizontalAwningIOComponent

Firmware: io:ExteriorVenetianBlindIOComponent


osmpy getting stuck in katana function

S2-py version: osmpy==0.2.0
Python version: Python 3.8.10
Operating System: Ubuntu 20.04.1 LTS

Description
I am trying to find the ways within the given polygon.
Program is getting stuck.
What I Did
import osmpy
from shapely import wkt
boundary = wkt.loads('POLYGON((37.8413 -122.2790,37.8545 -122.2790,37.8545 -122.2963,37.8413 -122.2963,37.8413 -122.2790))')

query = """[out:json];    way["highway"](poly:"{boundary}");    out body geom;"""
res = osmpy.get(query, boundary)
print(f"{res}")

Further when I was looking at the library found the following function katana being called recursively and not exiting.

The coordinates are supposed to be set as longitude latitude, so katana cannot handle incorrect input.
This works:
boundary = wkt.loads('POLYGON((-122.2790 37.8413,-122.2790 37.8545,-122.2963 37.8545,-122.2963 37.8413,-122.2790 37.8413))')

query = """[out:json];    way["highway"](poly:"{boundary}");    out body geom;"""
res = osmpy.get(query, boundary)


feat: update ECS config and apply standards

Bump ECS config.
Note it changed quite a lot a files and we might want to add this commit in the .git-blame-ignore-revs file.
It also removed to full namespace from the docblocks, I don't if this cause issues when generating API reference? @gchtr

I see we are no longer prefixing the docblock return types with the full namespace. Could this have a negative impact in the symbol discovery of IDE's?

No, since they're referenced in imports: https://github.com/timber/timber/blob/77bdbdb0640c3057fd6489f43d08b266e39e474c/src/Factory/PagesMenuFactory.php#L5
I just wonder if the doc generation tool is able to compute the FQCN or is it parsing the doc block as is, example:

I've just tested the doc generation in combination of your branch and the docs still seem to compile the correct paths :)

@gchtr , can you take a final look at this?

It also removed to full namespace from the docblocks, I don't if this cause issues when generating API reference? @gchtr

It’s not a problem, because the reflections still work and generate fully qualified names, apparently.
It only doesn’t work for hook documentation. There, the types have to be generated from the DocBlock. As you can see in the following screenshot, we could have Post or Environment, but wouldn’t know whether this comes from Timber or Twig.

These hook DocBlocks are parsed by looping over the tokens in https://github.com/timber/teak/blob/a5af1504cadb8e5d2277069165caf948d1d0c012/lib/Compiler/HookReference.php#L62-L70. I guess I could somehow also derive the types from the variables that are present before a hook appears. I’ll have to check this out. I created an issue for this in https://github.com/timber/teak/issues/3.
For now, I think it’s a tradeoff we can live with, because it only affects some few filters in https://timber.github.io/docs/v2/hooks/filters/.

Thanks @gchtr for the details about doc generation. There should be a way to grab the FQCN, let me know if I can help.