Error in Docker based python environment creation on AML

Package Name: azureml-sdk
Package Version: 1.31.0
Operating System: Ubuntu 18.04
Python Version: 3.7.10

Describe the bug
When submitting a job to AML Compute Target with docker based python environment, step "azureml-logs/55_azureml-execution" fails with the following error:
AzureMLCompute job failed.
FailedStartingContainer: Unable to start docker container
	FailedContainerStart: Unable to start docker container
	err: WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: Running hook #1:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: mount error: file creation failed: /mnt/docker/overlay2/1b3ad7a17baaf26506a5654fedaf3d30bbe78b73b5364a272e01787fd9b864ba/merged/run/nvidia-persistenced/socket: no such device or address: unknown.

	Reason: WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: Running hook #1:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: mount error: file creation failed: /mnt/docker/overlay2/1b3ad7a17baaf26506a5654fedaf3d30bbe78b73b5364a272e01787fd9b864ba/merged/run/nvidia-persistenced/socket: no such device or address: unknown.

	Info: Failed to setup runtime for job execution: Job environment preparation failed on <IP_ADDRESS> with err exit status

To Reproduce
Steps to reproduce the behavior:
# Save this in current directory as train.py
import torch
print(torch.cuda.is_available())

from azureml.core import Experiment, ScriptRunConfig, Environment
from azureml.core.conda_dependencies import CondaDependencies
from azureml.core.runconfig import DockerConfiguration

env = Environment(name="env")
conda_deps = CondaDependencies()

conda_deps.add_channel("pytorch")
conda_deps.add_conda_package("pytorch==1.7.1=py3.7_cuda10.1.243_cudnn7.6.3_0")
conda_deps.add_conda_package("cudatoolkit==10.1.243")
conda_deps.add_conda_package("pip")
conda_deps.add_conda_package("python==3.7.0")
conda_deps.add_pip_package("scikit-learn~=0.24")
conda_deps.add_pip_package("transformers>=4.4.2")

env.python.conda_dependencies=conda_deps
env.docker.base_image = 'mcr.microsoft.com/azureml/openmpi3.1.2-cuda10.1-cudnn7-ubuntu18.04'
docker_config = DockerConfiguration(use_docker=True)

compute_target = workspace.compute_targets["compute-target-name"] # Standard_NC6s_v3

src = ScriptRunConfig(source_directory=".",
                      script='train.py',
                      compute_target=compute_target,
                      environment=env,
                      docker_runtime_config=docker_config)
experiment = Experiment(workspace=workspace, name="test-exp")
experiment.submit(src)

Expected behavior
The experiment should run and print True to the stdout.
Screenshots
NA
Additional context
Here are some logs:
20_image_build_log.txt
55_azureml-execution-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txt
65_job_prep-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txt
75_job_post-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txt

Handed off to DataCompute/Runtime/Compute
From: msftbot[bot] @.>
Sent: Friday, June 25, 2021 4:36 PM
To: Azure/azure-sdk-for-python @.>
Cc: azureml-github @.>; Mention @.>
Subject: Re: [Azure/azure-sdk-for-python] Error in Docker based python environment creation on AML (#19500)
Thanks for the feedback! We are routing this to the appropriate team for follow-up. cc @azureml-githubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fazureml-github&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691131907|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=yWlDROy6fk%2F%2BKdNQ9y1bvKXJjzU4xqHIqiv9XyfpZok%3D&reserved=0.
Issue Details

Package Name: azureml-sdk
Package Version: 1.31.0
Operating System: Ubuntu 18.04
Python Version: 3.7.10

Describe the bug
When submitting a job to AML Compute Target with docker based python environment, step "azureml-logs/55_azureml-execution" fails with the following error:
AzureMLCompute job failed.
FailedStartingContainer: Unable to start docker container
    FailedContainerStart: Unable to start docker container

    err: WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.

docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: Running hook #1:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: mount error: file creation failed: /mnt/docker/overlay2/1b3ad7a17baaf26506a5654fedaf3d30bbe78b73b5364a272e01787fd9b864ba/merged/run/nvidia-persistenced/socket: no such device or address: unknown.
    Reason: WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.

docker: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: Running hook #1:: error running hook: exit status 1, stdout: , stderr: nvidia-container-cli: mount error: file creation failed: /mnt/docker/overlay2/1b3ad7a17baaf26506a5654fedaf3d30bbe78b73b5364a272e01787fd9b864ba/merged/run/nvidia-persistenced/socket: no such device or address: unknown.
    Info: Failed to setup runtime for job execution: Job environment preparation failed on <IP_ADDRESS> with err exit status

To Reproduce
Steps to reproduce the behavior:
Save this in current directory as train.py
import torch
print(torch.cuda.is_available())
from azureml.core import Experiment, ScriptRunConfig, Environment
from azureml.core.conda_dependencies import CondaDependencies
from azureml.core.runconfig import DockerConfiguration
env = Environment(name="env")
conda_deps = CondaDependencies()
conda_deps.add_channel("pytorch")
conda_deps.add_conda_package("pytorch==1.7.1=py3.7_cuda10.1.243_cudnn7.6.3_0")
conda_deps.add_conda_package("cudatoolkit==10.1.243")
conda_deps.add_conda_package("pip")
conda_deps.add_conda_package("python==3.7.0")
conda_deps.add_pip_package("scikit-learn~=0.24")
conda_deps.add_pip_package("transformers>=4.4.2")
env.python.conda_dependencies=conda_deps
env.docker.base_image = 'mcr.microsoft.com/azureml/openmpi3.1.2-cuda10.1-cudnn7-ubuntu18.04'
docker_config = DockerConfiguration(use_docker=True)
compute_target = workspace.compute_targets["compute-target-name"] # Standard_NC6s_v3
src = ScriptRunConfig(source_directory=".",
                  script='train.py',

                  compute_target=compute_target,

                  environment=env,

                  docker_runtime_config=docker_config)

experiment = Experiment(workspace=workspace, name="test-exp")
experiment.submit(src)
Expected behavior
The experiment should run and print True to the stdout.
Screenshots
NA
Additional context
Here are some logs:
20_image_build_log.txthttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-python%2Ffiles%2F6718528%2F20_image_build_log.txt&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691141929|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=D2i6kJ90FQUL6sMhQg%2BfIH%2FHRIU5Kjf8DD1gqODxbTA%3D&reserved=0
55_azureml-execution-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txthttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-python%2Ffiles%2F6718530%2F55_azureml-execution-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txt&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691141929|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=qvzfYdkx0BHRTYb2%2FW0yuvWcyyaA0fYgDzxFzkfKsvc%3D&reserved=0
65_job_prep-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txthttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-python%2Ffiles%2F6718532%2F65_job_prep-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txt&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691151895|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=ZQ1FBQLej6Qa7tbaq5sE0tFvLu3Vg3xGyp5dj8Pmir8%3D&reserved=0
75_job_post-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txthttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-python%2Ffiles%2F6718533%2F75_job_post-tvmps_c0b9a69eacd833c39d52bd1c08966426f895191550edefd1affad1331377c5a4_d.txt&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691151895|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=adzPscTnjE7MDDLghvvPMWl4a8qLXp9VtjLmLPcHNMc%3D&reserved=0
Author:
mohit-sh
Assignees:
Labels:
ML-Compute, Machine Learning Compute, Service Attention, customer-reported, question
Milestone:

You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAzure%2Fazure-sdk-for-python%2Fissues%2F19500%23issuecomment-868819524&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691161899|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=toqTWFnmIJaYPOr5U2Bgq%2FAh8yPzpkYgUu4yn7O9hH8%3D&reserved=0, or unsubscribehttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAOVYYXWTCCWS7WQVL7X5543TUTSC7ANCNFSM47KPGX7Q&data=04|01|Neehar.Duvvuri%40microsoft.com|faabb651d65c4b8d6bd708d93818d794|72f988bf86f141af91ab2d7cd011db47|1|0|637602501691161899|Unknown|TWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D|1000&sdata=kvi0vFeU7XDAhacVFuq5qeemo3msmREA11XGB6Gq%2FIQ%3D&reserved=0.


[Code health] Rename Place(Type) to Feature(Type) throughout

What's the current status of this?
Grep + Github search are only returning two instances of 'place' in react comps (restricted to web/).

@scolsen Good call, thanks for pointing this out. Fixed!


Examples in PowerShell or C#

Hi,
I'm very excited to see REST in OpsMgr. Hope there will be a new version with more functionality in SCOM 2019 ~
I've some knowledge about PowerShell and a bit of C#. It would be great if you could provide a small example for every section. A perfect start would be 'Data/Tasks' as I have already a plan for a new Management Pack I'd like to author :smile:
For the interopability with other systems a few examples 'in curl' would be very helpful, too! :wink:
Thanks in advance
Ruben

@Juanito99 - Thanks for the feedback and suggestions to help improve our documentation.  I'll take these and record them for consideration while new content is being developed to further show how to work with the API in OpsMgr. #please-close as this is not a doc issue.

@MGoedtel - That would be very useful for me and I guess many other seasoned devs :+1:
I will try to place a comment on the web page. - Last week it did not work on my machine.


fix links and image names

Codecov Report

Merging #860 into master will increase coverage by 0.43%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #860      +/-   ##
==========================================
+ Coverage   77.73%   78.16%   +0.43%
==========================================
  Files          52       52
  Lines        5492     5497       +5
==========================================
+ Hits         4269     4297      +28
+ Misses       1223     1200      -23

Impacted Files
Coverage Δ

vent/core/rq_worker/watch.py
45.81% <100%> (+0.59%)
:arrow_up:

vent/api/plugins.py
81.12% <100%> (-0.32%)
:arrow_down:

vent/menus/tools.py
73.55% <0%> (-0.37%)
:arrow_down:

vent/api/menu_helpers.py
93.11% <0%> (+0.4%)
:arrow_up:

vent/menus/main.py
79.21% <0%> (+0.78%)
:arrow_up:

vent/api/actions.py
78.27% <0%> (+1.2%)
:arrow_up:

vent/menus/ntap.py
57.6% <0%> (+4.8%)
:arrow_up:

vent/core/network_tap/ncontrol/rest/nlist.py
100% <0%> (+33.33%)
:arrow_up:

Continue to review full report at Codecov.

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


matrix snr and sde values

Hi Martin,
As I am running my .yaml file with MATRIX (attached), I am noticing that all signals that are recovered have an SNR and SDE of 20 and 2000, respectively, and all signals that are not recovered do not provide and SNR and have an SDE of 0.
I am wondering if this is a bug that you have also come across, or if these values are to be expected?
Thank you!
KIC6923677.yaml.txt

Great, thank you.

Sure! MATRIX is still running the file I attached in my first message, so I don't have the full csv report for it yet. However, I have had this issue with other runs so I am attaching a different yaml file (same star, less dense grid) and its corresponding csv report.
KIC6923677.txt
a_tls_report.csv
Thanks so much!

Hi Martin,
Sorry for the delayed response. I haven't been able to upgrade to the latest version of MATRIX on the cluster I've been using for the past few months, and I naively uninstalled the current version before attempting to do so, so I have not had a working version of MATRIX for the past 2 weeks. Hopefully I will have an update for you soon.
As for your previous comment, I was also doubtful about being able to spot planets around these stars,  but I ran injection and recovery tests on some non-variable red clump stars and the results show that short-period hot jupiters are detectable. So I am hopeful.
I also wanted to let you know that I am presenting preliminary results at a conference in 2 weeks and am including you as a co author on my poster. Please email me at<EMAIL_ADDRESS>if you have any questions about that.
Thank you for all of the help!


Define entropy as nan by default

The case no_of_items == 3 is not fetched by the current approach, but
it can happen that users have defined their own metrics inside the history
object where this case can happen. Then, this code throws local variable 'acc_entropy' referenced before assignment. Furthermore, defining the
entropy values in the beginning gives also cleaner code.
Signed-off-by: Timo Korthals<EMAIL_ADDRESS>

Pull Request Test Coverage Report for Build 430

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.4%) to 91.527%

Files with Coverage Reduction
New Missed Lines
%

talos/utils/validation_split.py
2
83.33%

Totals

Change from base Build 414:
0.4%

Covered Lines:
929

Relevant Lines:
1015

💛  - Coveralls

Thanks! :)
As of last week, there is available a preview to the v.0.6.0 version where entropy.py is entirely rethought. What do you think?

Thanks! :)
As of last week, there is available a preview to the v.0.6.0 version where entropy.py is entirely rethought. What do you think?

This looks better and more generic. Also tested your v.0.6.0 against my examples, which worked without issues.
However, I'd recommend accepting my PR, since it does not change the API (therefore, it is v.0.4.9 compliant) but fixes a crucial issue in the entropy calculation.

I reverted the third commit so that all checks pass again.

Thanks :) Ok sure, that approach does make sense. Can you make the PR to daily-dev (currently it's to master) and I'll merge it.
As a small background related with this, basically the process is that there is roughly a week lag between daily-dev, dev, master, and production (pypi) so we have a nice month (at least) before something goes from initial commit/merge to production.
Closing this one in the meantime.


Create report visualizer

Related to #77
Convert stdout read fraction report to a visualization.

forum x-ref

forum xref

forum x-ref

forum x-ref

This information is straightforward to write out from the R side, as long as there is a defined file format to use. My assumption is that is the way to go, since it sounds like you want that information as an artifact that can be visualized with other Q2 functions?

Yup! I think our plan at this point is to write it out as something like SampleData[DADA2Stats] or similar. This would be an artifact viewable as metadata and could be used with qiime metadata tabulate or wherever else metadata can be used. The only real work will be mapping the filepaths to sample IDs, but that's very simple also.


Bullet points - strange formatting

When user downloads the plan - the bullet points appear to be strange, see image below.
Would you be able to look into what have triggered this and find a fixture for this?

Unable to replicate on Live or Test servers. @magdalenadrafiova  is going to contact person who raised issue. It might be a specific template.
Test_Funny_characters.docx
Test_Funny_characters.pdf

We have other admins now having the same issue.
They are using Chrome and the characters appear after they simply ‘download’ the template as Word and open it (no typing etc)
Let me know if we need to know something more .

@magdalenadrafiova Is it possible to get a copy of the downloaded templates.

@johnpinto1 I would suggest looking at that particular plan's answer in the database to see if there is any odd formatting (e.g. maybe the user did a copy-paste from Word that had some extra HTML markup).
I did a quick test in DMPTool and could not replicate the issue so I think it may be related to that specific template/plan.

@magdalenadrafiova and @briri  for that input. Will check.

Hi, the .pdf downloads correctly, the word doc has the funny characters. John is looking at it now.

The Word docx @dsisu provided is attached
Some_TU_Delft_test.pdf
Some_TU_Delft_test.docx
I can read the Word docx correctly on a Linux machine, but the same docx in Windows replaces bullet points with ∉ characters

@briri It looks like the database does not store the Bullet points (explicitly) Screen shot for data used by @dsisu in plan above in the question_options table:

We will have to think what format we want to download the options as. So, people tick boxes to select some options, what do we want these to look like in the Word doc download? If we use symbols similar to bullet points, people will imagine this is a bulleted list and may expect to be able to edit it. However it's not possible; the download isn't a bulleted list but plain text with a a bullet-like symbol in front of it. If John fixes the file so that it downloads the text as a bulleted list, then Word inserts the funny symbol in front of it, possibly to highlight it's not a list but some kind of slection. I think this is why Word is struggling. We need to figure out what do we want the selected options to download as. Maybe we could have them as text with a couple of tick symbols in front of it, to indicate these were options selected (from a list of options). Hopefully this will make sense once I've inserted some screenshots.

Sorry guys, I don't have time to format the images, please enlarge them to read my comments on the text.

What I mean by a tick symbol is something like this:

A tick symbol would hopefully remind users that what they are downloading is not a potentially editable bulleted list but a list of selections they made when they filled in the plan.

I'm going to send you the downloaded plans, which should hopefully help you work out what I mean, if the above isn't making sense.
Test_download_incl_bulletedlist.docx
Test_download_incl_plaintextwithbulletsymbols.docx

I have to go now, I'll be able to respond to any queries later in the evening.

@briri I have identified the issue. The way the gem htmltoword package formats list in Word cases the issue. The relevant code app/views/shared/export/_plan.erb.

Unless I can't find a fix I guess we will need to have @sjDCC @magdalenadrafiova @xsrust and you @briri decide on @dsisu suggestion.

We had this issue in DMP OPIDoR on our servers. I can confirm that this issue comes from the <li> tag being transformed as € sign in the Word export.
We managed to bypass this by replacing our <ul> tag by a <ol> tag.
It's not ideal but it works fine :)
Side note : the htmltoword doesn't seem to be able to export images in <img> in a Word document. It can be an issue in the future, we had some feedback from users asking to be able to export their org logo in their plan export.

Thanks @benjaminfaure for this comment.

@xsrust pionted me to this bug with htmltoword
https://github.com/karnov/htmltoword/issues/73

@briri @xsrust There is still an issue with Older Word versions of software. Will see if I can fix it with suggestion from @xsrust's link above.

ok. send in a separate PR. thanks @johnpinto1

Fix for this is in review and @dsisu tested the following file
Test_Bullets_2 (8).docx using an old Word editor see screen shoot

tested this and bullets look good now. Thanks @johnpinto1 and @benjaminfaure for advice!


You've been a long time in elite sport.

You regard yourself as a team leader. What on earth possessed you to show the way to first toime Olympians to go and act with such disregard for your teammates?

Did you ever cross your mind in the hotel room that you were doing wrong? I did cross my mind that that was a bahd idea and for that, I'm truly sorry.

Thank you for your comment Eamon, now lets get a take from James who looks loike he's been sweating his pants off.

truly sorry, tebbly sorry~ and for that, i'm truly sorry


Python: fix issue where proto submodules would not be tracked.

What
My prior commit made it such that the submodules of the interface that follow the version are imported correctly. For example if an interface is in package a.b.v1.c the python package would be converted to a.b_v1.protos.c. This solution worked for protos that were located in a.b.v1.c but not for protos that were located in a.b_v1.d in which the pb2 file would be imported from a.b_v1.protos.c rather than a.b_v1.protos.d.
This makes it such that the different submodules would be imported correctly.
For protos that are not part of the interface parent package (a.b.v1) they will simply be imported from the top level of the proto python package (a.b_v1.proto).

Codecov Report

Merging #2001 into master will increase coverage by 0.01%.
The diff coverage is 100%.

@@             Coverage Diff              @@
##             master    #2001      +/-   ##
============================================
+ Coverage     85.14%   85.15%   +0.01%
- Complexity     4966     4967       +1
============================================
  Files           456      456
  Lines         19978    19985       +7
  Branches       2098     2099       +1
============================================
+ Hits          17010    17018       +8
  Misses         2267     2267
+ Partials        701      700       -1

Impacted Files
Coverage Δ
Complexity Δ

...n/transformer/py/PythonModelTypeNameConverter.java
89.83% <100%> (+1.54%)
33 <0> (+1)
:arrow_up:

Continue to review full report at Codecov.

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


fixed by trimming the double quotes

double quotes are produced by the $msg json string.

https://github.com/consik/yii2-websocket/issues/10#issuecomment-392979722


fixes #842 - allow LogHandlers to break conversion throwing an exception

Honest question, because I can't decide...Should add this as fix or improvement in Changelog?

As it seems to be inconsistent between different situations I’d personally treat this as  a bug.
If all calls were consistently catching exceptions it could’ve been an improvement, but like this I think it’s a bug.

Alongside with the update I fixed a couple of errors in the CHANGELOG.

Thanks! 🎉


Possible to add display of compiled twig filename to twig panel?

Hi,
would it be possible to add the name of the compiled twig file to the twig panel? Sometimes when debugging things this is quite useful info and searching for the correct file in the twig cache is a pain. Thanks once again for your most excellent package.

Hi @innobrig,
Sorry for delay with answer, new job eat all time.
I agree with you, cache name is useful debug info but Twig_Profiler_Profile() not have cache name.
Cache name possible get/generate only from Twig instance.
Thank you.


"Open in terminal" isn't working

Description
Clicking on "Open in terminal" does nothing.
Also, the option is shown in a random language.

The "Terminal Applications" dropdown list is also empty.

Steps To Reproduce

Open any drive.
Click on "Open in terminal" from the ellipsis (...) menu.

Expected behavior
The selected folder should be opened in the terminal application of choice.
Files Version
Version: <IP_ADDRESS> OS Version: 10.0.22000.469
Windows Version
Windows 11 21H2 22000.469
Relevant Assets/Logs
debug.log
debug_fulltrust.log

Could you check what happens in settings if you click "edit terminals" and make any change to the file that open?

I tried changing the file and then restarted the app, still the same.

@CrypticVader can you upload your terminal configuration for Files?

I tried clearing everything in the terminal configuration file to see if that would fix the issue. I thought the contents of the file would regenerate, but it didn't.

This bug is now resolved.
I reset Files through windows app settings and used the export/import settings option in Files to retain my configuration.
Even though it worked, restoring the settings through the zip showed a dialog box in Files saying

Is the terminal configuration file still required now that it functions?

Is the terminal configuration file still required now that it functions?

Yes, the error is probably because the terminal settings were invalid.

I have attached the terminal config, but it currently functions properly.
I do not have the terminal config file when it was bugged.
terminal.zip

I have attached the terminal config, but it currently functions properly. I do not have the terminal config file when it was bugged. terminal.zip

I think we can close this now that we know the issue was caused by a bad configuration.


Theme images on the welcome page are broken

Introduced in #4414
@code-asher may have more details.

To test:

Open the welcome page
Observe broken images

The images do exist and you can open them manually so it is unclear why they fail to load.

I will probably pick this up Monday or Tuesday (might not have time today).

Verified this is still an issue

Errors observed in the console:

index.html:1 Mixed Content: The page at 'https://d9385a7a-36ed-4047-9202-43fc2176f639.vscode-webview.net/insider/dc1a6699060423b8c4d2ced736ad70195378fddf/out/vs/workbench/contrib/webview/browser/pre/index.html?id=d9385a7a-36ed-4047-9202-43fc2176f639&swVersion=2&extensionId=&platform=browser&vscode-resource-base-authority=vscode-resource.vscode-webview.net&parentOrigin=http%3A%2F%2Flocalhost%3A8080' was loaded over HTTPS, but requested an insecure element 'http://localhost:8080/static/out/vs/workbench/contrib/welcome/gettingStarted/common/media/light.png'. This request was automatically upgraded to HTTPS, For more information see https://blog.chromium.org/2019/10/no-more-mixed-messages-about-https.html
index.html:1 Mixed Content: The page at 'https://d9385a7a-36ed-4047-9202-43fc2176f639.vscode-webview.net/insider/dc1a6699060423b8c4d2ced736ad70195378fddf/out/vs/workbench/contrib/webview/browser/pre/index.html?id=d9385a7a-36ed-4047-9202-43fc2176f639&swVersion=2&extensionId=&platform=browser&vscode-resource-base-authority=vscode-resource.vscode-webview.net&parentOrigin=http%3A%2F%2Flocalhost%3A8080' was loaded over HTTPS, but requested an insecure element 'http://localhost:8080/static/out/vs/workbench/contrib/welcome/gettingStarted/common/media/dark.png'. This request was automatically upgraded to HTTPS, For more information see https://blog.chromium.org/2019/10/no-more-mixed-messages-about-https.html
index.html:1 Mixed Content: The page at 'https://d9385a7a-36ed-4047-9202-43fc2176f639.vscode-webview.net/insider/dc1a6699060423b8c4d2ced736ad70195378fddf/out/vs/workbench/contrib/webview/browser/pre/index.html?id=d9385a7a-36ed-4047-9202-43fc2176f639&swVersion=2&extensionId=&platform=browser&vscode-resource-base-authority=vscode-resource.vscode-webview.net&parentOrigin=http%3A%2F%2Flocalhost%3A8080' was loaded over HTTPS, but requested an insecure element 'http://localhost:8080/static/out/vs/workbench/contrib/welcome/gettingStarted/common/media/monokai.png'. This request was automatically upgraded to HTTPS, For more information see https://blog.chromium.org/2019/10/no-more-mixed-messages-about-https.html
light.png:1 Failed to load resource: net::ERR_FAILED
dark.png:1 Failed to load resource: net::ERR_FAILED
monokai.png:1 Failed to load resource: net::ERR_FAILED

Notes
Do the files exist?
When the images fail to load, the first question we ask is, "Do the images exist in the locations we expect them to exist?"
In upstream, they live here.
Looking at our fork, we see them here.
✅ Files exist (at least in the correct place).
Do the files exist in the build output?
When we run yarn watch, we create an /out directory. Let's check if they exist there.

(this would break for airgapped users so good thing we are fixing it)
Notes on Solution
Looking at vscode/src/vs/server/webClientServer.ts around L303, we want to use the webviewEndpoint but when we do, the iframe is blank 🤔

Fixed via https://github.com/cdr/vscode/pull/16


questions about some implementations of PLBART

in the paper, it says "We mask 35% of the tokens in each instance." But it is "--mask 0.3" in https://github.com/wasiahmad/PLBART/blob/main/pretrain/pretrain.sh. Is there something that I understand wrongly?
can the pre-process method be used in other languages, such as, C?
I use your method to train sentencepiece on some C corpus, it gives me the error:

Vocabulary size is smaller than required_chars. 50000 vs 693453. Increase vocab_size or decrease character_coverage with --character_coverage option.

Also, here are some related logs:

trainer_interface.cc(466) LOG(INFO) all chars count=5475384381
trainer_interface.cc(477) LOG(INFO) Done: 100% characters are covered.
trainer_interface.cc(487) LOG(INFO) Alphabet size=693450
trainer_interface.cc(488) LOG(INFO) Final character coverage=1

for the parameters of the fairseq-train, except reading source codes, are there any other documents to describe these options? I found https://fairseq.readthedocs.io/en/latest/command_line_tools.html, but it is incomplete. Lots of your parsmeters are not shown in that doct.
Also, do you know there are providen scripts to use fairseq to pre-train other BERT related models.
Thanks

We indeed used 0.35 but in the script, we probably set 0.3.
Yes, it should work for any data. From the error, it seems like you dataset is too small. So, you should reduce the vocab size.
I am not sure.
I do not know.

Thanks for your timely response.
We indeed used 0.35 but in the script, we probably set 0.3.
I thought that there may be not much differneces between 0.35 and 0.3
Yes, it should work for any data. From the error, it seems like you dataset is too small. So, you should reduce the vocab size.
Increase vocab_size, I thought it tells me "Increase vocab_size or decrease character_coverage with --character_coverage option. ”
I am not sure.
I do not know.
Except reading source codes of fairseq, do you have any recommendations to learn about the fairseq?

To learn about Fairseq, I think you should read the documentation. There is no tutorial that I can recommend.


How can i make a conference Call using this Sdk...? any solution Please

Hello, you can configure your server to create a conference call, you would just need to add a logic so that when a specific data is sent, it does that. i.e, caller id is conference id

Thank You for Reply
Sdk is not getting Event for participant and Please Guide me how i achive
that
On Sun, Apr 3, 2022 at 11:21 PM Diego Garcia @.***>
wrote:

Hello, you can configure your server to create a conference call, you
would just need to add a logic so that when a specific data is sent, it
does that. i.e, caller id is conference id
—
Reply to this email directly, view it on GitHub
https://github.com/diegogarciar/twilio_voice/issues/85#issuecomment-1086922152,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKLO2X4YO7KQIKVFQHBP7E3VDHVURANCNFSM5R2U57LQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

@Ahmadgnoor
See this as a start - https://www.twilio.com/docs/voice/tutorials/how-to-create-conference-calls

Closing for now.
If you have a suggestion for adding conferencing ability, feel free to open up, comment or submit a PR>


[QUARKS-195] Metrics.counter needs TStream.peek(oplet)

What's the rationale for adding the method. What does it enable that a function does not?

@ddebrunner pls see QUARKS-195 for the rationale.

I looked there and didn't see anything. It says a pipe is not correct, but nothing why a new peek method is required.

I updated QUARKS-195 to clarify things.  Please check it again.

unrelated test failure.  closing/reopening to rerun.

Changing to WIP until concerns raised in QUARKS-195 are resolved.

rerun travis-ci

rerun travis-ci

testDeadtimeDynamic failed got tuples [1,5,8] should be [1,4,6,9].  This is another timing sensitive test where an attempt has already been made to desentize it.  Gonna exclude it from travis-ci.

hmm... managed to force-push this branch when fixing up my repo following a mishap.  so this PR is now closed and I'll open a new one for this.


Is it possible to record sound created by browser using this library ?

I have a music application where user can write & play music, I am wondering if I can use this library to record the music played by browser & export it. is it possible to do that using this library. Please help

Yes, this library will allow you to record and export in Chrome and Firefox.

@benlinton Could you please share code example to achieve that?

Sure, I'll try to get to this soon.
On Fri, Oct 21, 2016 at 3:15 AM, shivrajsa<EMAIL_ADDRESS>wrote:

@benlinton https://github.com/benlinton Could you please share code
example to achieve that?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/zzarcon/microm/issues/21#issuecomment-255321699, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAuzQ5uxU4_6AYaPv38flabkJnkTi0yoks5q2HSggaJpZM4JNQJc
.


i18n for JS via sprockets

Could Sprockets provide the message bundle for the current locale from config/locales/ to JS? Sort of like what happens in https://github.com/fnando/i18n-js except rake wouldn't need to copy anything over.

If you put localization in the a JavaScript file, what happens with caching and pre-compiling. Sprockets would need to generate a specific file for each localization.


Visualstudio code giving no longer responding for every 5min

VSCode Version: Code 1.6.1 (9e4e44c19e393803e2b05fe2323cf4ed7e36880e, 2016-10-13T16:21:53.542Z)
OS Version: Windows_NT ia32 6.1.7601
Extensions: alefragnani.Bookmarks-0.14.1, alefragnani.project-manager-0.18.1, bradgashler.htmltagwrap-0.0.3, christian-kohler.path-intellisense-1.4.2, dbankier.vscode-instant-markdown-1.1.0, michelemelluso.code-beautifier-1.7.2, Zignd.html-css-class-completion-1.7.0

Steps to Reproduce:

Can you try to reproduce with our nightly insider builds? You can give our preview releases a try from: http://code.visualstudio.com/Download#insiders


[Feature]: blobstore rpc support user define unmarshal method

now  i use cubefs/blobstore/common/rpc to implemet a http service
but some query return a structure which must marshaled with my own method.
rpc package's GetWith/PutWith/PostWith method cannot support use user define method to unmarshal respond
i wish can support that

On the way


Improve isinstance check in llm_is_ready function

Description
Previous PR was merged before I addressed this comment.
Type of change

[x] Refactor

Codecov Report
Attention: Patch coverage is 0% with 1 line in your changes missing coverage. Please review.

Project coverage is 70.30%. Comparing base (10be3e2) to head (cde18cd).
Report is 29 commits behind head on main.

Additional details and impacted files

@@             Coverage Diff             @@
##             main    #1089       +/-   ##
===========================================
- Coverage   95.40%   70.30%   -25.11%
===========================================
  Files          55       55
  Lines        2352     2391       +39
===========================================
- Hits         2244     1681      -563
- Misses        108      710      +602

Files
Coverage Δ

ols/app/endpoints/health.py
63.15% <0.00%> (-36.85%)
:arrow_down:

... and 27 files with indirect coverage changes

/lgtm

/approve


[ISSUES 5049]fix MemtableBenchmark

Description
Fix the issues #5049  and introduce the JMH for benchmark.

This PR has:

[x] been self-reviewed.

[x] concurrent read
[x] concurrent write
[x] concurrent read and write

[ ] added documentation for new or modified features or behaviors.
[ ] added Javadocs for most classes and all non-trivial methods.
[ ] added or updated version, license, or notice information
[ ] added comments explaining the "why" and the intent of the code wherever would not be obvious
for an unfamiliar reader.
[ ] added unit tests or modified existing tests to cover new code paths, ensuring the threshold
for code coverage.
[ ] added integration tests.
[ ] been tested in a test IoTDB cluster.

Key changed/added classes (or packages if there are too many classes) in this PR

Coverage increased (+0.007%) to 67.72% when pulling bf5449fddeae1b567e1e34ac61ea7106ff203055 on ahuazhu:benchmark into 4beb397d9b301036a98f96d66fed406ae160bfb9 on apache:master.

Hi, JMH is under GPL2 license. https://github.com/openjdk/jmh
I don’t think we can import it directly to our code.

@HTHou Thanks for the reminder. I have rolled back the dependency for the JMH.  Just fix the ClassCastException.


Implement renderers for chunk validation tracers

Propagates changes from https://github.com/input-output-hk/ouroboros-network/pull/3506 up to the node level.

Closing as this is subsumed by #3388


unknown field stream-channel-window for key import

Bug Report
when upgrade 2.14 to master there are errors in tikv's log
What did you expect to see?
upgrade success
What did you see instead?

On 4.0 all unrecognized settings will cause failure to catch typo. All config not related to TiKV should be removed. In particular, in the [import] key only the following two keys are acceptable:
[import]
num-threads = 8
stream-channel-window = 128

If there are any other keys (probably due to mixing with TiKV Importer config), please remove them before upgrading.

@kennytm But the error shows stream-channel-window is unknown field, please investigate the root cause.

@zhangjinpeng1987 The title isn't the real error message. Only zhouqiang knows the full error message but he didn't give it to me 😒

@kennytm well, I did not have the message too,  I will try to reproduce it and then post it here

The TiKV panic when I tried to reproduce this issue.
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread 'main' panicked at 'invalid auto generated configuration file /data1/jenkins/deploy/data/last_tikv.toml, err unknown field `import-dir`, expected `num-threads` or `st
ream-channel-window` for key `import`', src/config.rs:1462:13
stack backtrace:
   0: backtrace::backtrace::libunwind::trace
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.29/src/backtrace/libunwind.rs:88
   1: backtrace::backtrace::trace_unsynchronized
             at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.29/src/backtrace/mod.rs:66
   2: std::sys_common::backtrace::_print
             at src/libstd/sys_common/backtrace.rs:47
   3: std::sys_common::backtrace::print
             at src/libstd/sys_common/backtrace.rs:36
   4: std::panicking::default_hook::{{closure}}
             at src/libstd/panicking.rs:200
   5: std::panicking::default_hook
             at src/libstd/panicking.rs:214
   6: std::panicking::rust_panic_with_hook
             at src/libstd/panicking.rs:477
   7: std::panicking::continue_panic_fmt
             at src/libstd/panicking.rs:384
   8: std::panicking::begin_panic_fmt
             at src/libstd/panicking.rs:339
   9: tikv::config::TiKvConfig::from_file::{{closure}}
             at src/config.rs:1462
  10: cmd::server::run_tikv
             at /rustc/311376d30dc1cfa622142a9f50317b1e0cb4608a/src/libcore/result.rs:818
  11: tikv_server::main
             at cmd/src/bin/tikv-server.rs:143
  12: std::rt::lang_start::{{closure}}
             at /rustc/311376d30dc1cfa622142a9f50317b1e0cb4608a/src/libstd/rt.rs:64
  13: main
  14: __libc_start_main
  15: <unknown>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

I find that check_and_persist_critical_config read last_tikv.toml and the panic may come from here. @kennytm

@zhangjinpeng1987 already reproduce. It is beacuse screenshot not full. @cwen , we also need to verify the last_tikv.toml

On TiDB an unknown field will cause warning by default, unless a "strict mode" flag is enabled.
This "strict mode" toggle cannot be implemented in TiKV yet, since #[serde(deny_unknown_fields)] is a compile-time attribute which will drop the entire parsed value on error.  We'll see something like serde-rs/serde#1609 to reach parity with TiDB.

@BusyJay @kennytm Do we need to revert commit https://github.com/tikv/tikv/commit/034379605e8805c2ce2016903e21e3bd0521f64e ? We have last_tikv configuration, which definitely may contain deleted fields. This will cause upgrade failure.

(We didn't backport #5190 to 3.0, so we have plenty of time to decide 😉)

@kennytm Yup, that's why I bring the discussion in this issue, instead of in our ONCALL channel :)

@BusyJay @overvenus PTAL

I think the ideal solution should be printing a warning and then continue to deserialize when it meets an unknown field.

I agree that we should revert it until serde-rs/serde#1609 is fixed.

ping  @kennytm


Update Repo Locations

Submit a new Plugin to Marketplace
Plugin Github repo URL:

https://github.com/Zyrohex/logseq-flow
https://github.com/Zyrohex/admonition-panels

Github releases checklist

[x] a legal package.json file.
[x] a valid CI workflow build action for Github releases. (Optional for theme plugin only).
[x] a release which includes a release zip pkg from a successful build.
[x] a clear README file, ideally with an image or gif showcase. (For more friendly to users, it is recommended to have English version description).
[x] a license in the LICENSE file.

@Zyrohex @xyhp915 both repo urls are not valid. Marketplace is cannot install this plugin now. The original repos are not valid too. Please help.

Seems like the author had deleted the plugin. Maybe we need to take it down.

Looks likely.
@Zyrohex Is there any issue?

@cnrpman - hi, no issues. Repos have been deleted.

sad to hear that


Add sha256 for valentina-studio v6.0.5

Thank you for the contribution. It was merged directly as ef2356959ba3afb62f994807ac6cd8f58a62dd44 to keep commit history cleaner. Your contribution is still credited to you.


added /api/v1.0/sir/version

the reason im doing a copy of app.config is because of PERMANENT_SESSION_LIFETIME, its a non serializable json object... we could also do a creation of the dict with a try catch of TypeError and when it fails just do a pass... I liked this solution because is simpler

Can you do the PR against the v0.18 branch, please? Can you also add your code at the bottom, after the following comment:
###################
###################
SIR
###################
###################
Trying to keep the code organized : )


stubs: avoid reaching up-tree, prefer inclusion options

This removes the explicit tree structure reference in the stubs to
locate the shims.  Instead, it expects that the SwiftShims directory
will be added to the header search path.

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

CC: @Azoy @mikeash @etcwilde

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - ca39bb5b1056e6c56430b092e65b489fd90d39d8

OSX failure: The authorization was denied since no user interaction was possible.

@swift-ci please test macOS


firebase_messaging getToken() never resolves unless _firebaseMessaging.configure() is called.

If you attempt to invoke await _firebaseMessaging.getToken() without having called _firebaseMessaging.configure() then getToken() hangs indefinitely.
It looks to me like configure() just sets up callbacks, which appear optional, so we should either throw an error if configure() invocation hasn't happened or make it truly optional.

i'm having the same problem, sporadically, but i call _firebaseMessaging.configure() in my main() before i even call runApp().
i don't call _firebaseMessaging.getToken() til my signup logic/screen, and it will occasionally hang - no response and nothing in the catchError block.

@blaneyneil is this happening on Android, iOS or both?

iOS, on an actual device.

Looks like the configure is responsible for setting the method handlers. So unless you call configure the onToken callback is never handled and awaiting the token will never return.

Like @abehaskins suggested we could return an error is the token is trying to be retrieved before the method call handlers are set.

i'm calling configure from the main entry point:
_firebaseMessaging.configure(
    onMessage: (Map<String, dynamic> message) {
      print("onMessage: $message");
      //_showItemDialog(message);
    },
    onLaunch: (Map<String, dynamic> message) {
      print("onLaunch: $message");
      //_navigateToItemDetail(message['location']);
    },
    onResume: (Map<String, dynamic> message) {
      print("onResume: $message");
      //_navigateToItemDetail(message['location']);
    },
  );

  FirebaseUser _user = await _auth.currentUser();

  runApp(MaterialApp(
    home: _user != null ? new HomeScreen() : new SplashScreen(),
    title: 'myApp',
    debugShowCheckedModeBanner: false,
    theme: mainTheme,
    routes: myRoutes,
  ));

and then only calling getToken() inside my signup screen - which is in another route.  the really odd part is that's it's sporadic.  it hangs maybe 20% of the time.

@blaneyneil could you confirm that you are using version 1.0.3 of the plugin since it updates how the token is retrieved and report if you are getting the same issue?

i am.  i know i had done a package upgrade within the last 24, and i explicitly set it to 1.0.3 earlier.  and then i got a hang upon my first test signup:
Future<String> _getPushToken() async {

  print('called _getPushToken');

  _firebaseMessaging.requestNotificationPermissions(const IosNotificationSettings(sound: true, badge: true, alert: true));

  String _token = await _firebaseMessaging.getToken();
  print('received token');
  return _token;
}

the 2nd print never executed.

this appears to be a result of where/when you call _firebaseMessaging.configure().  as noted, i was calling it in main(), before runApp(MaterialApp()) so i could listen for incoming messages.  it mostly worked.
once i started calling _firebaseMessaging.configure() prior to each each use of _firebaseMessaging.getToken() then i didn't have any problems.

For me also, getToken() hangs unless .configure() is called first.
I have it just beforehand and don't specify any message handlers, but it's necessary for it to work.
_firebaseMessaging.configure();
_firebaseMessaging.getToken().then((token) {
  // use the token
});

Got the same issue, but it also happens when I call configure first.
I'm doing it in the main method, and the app does not start at all because the future never returns. This is my code:
void main() async {
  final FirebaseMessaging firebaseMessaging = FirebaseMessaging();

  firebaseMessaging.configure(
    onMessage: onMessage,
    onLaunch: onLaunch,
    onResume: onResume,
  );

  final token = await firebaseMessaging.getToken(); // future never completes

  runApp(MyApp(token: token));
}

Looking at the source code of the plugin, it looks like there is something wrong. The future only returns if the token changes because internally it uses the first result of onTokenRefresh. But the token does not always refresh when the app starts up, so onTokenRefresh stays empty.
To get the current token, the android plugin would have to call FirebaseInstanceId.getInstance().getToken(), but it never does.
@goderbauer, I think you made the firebase_messaging plugin. Would you mind if I made a few changes to the plugin?

var pushToken = await firebaseMessaging.getToken().timeout(Duration(milliseconds: 3000);
This code works for me.

@abeisgoat
This issue has been moved to https://github.com/FirebaseExtended/flutterfire/issues/822. Any further collaboration will be done there.

Hi guys, I hope my message reaches you well. My application development encountered
Problem
FirebaseMessaging _firebaseMessaging = new FirebaseMessaging();
 _firebaseMessaging.configure();
 final pushToken =               await _firebaseMessaging.getToken().timeout(Duration(seconds: 3));
pushToken returns null when my app runs in Google Play Internal testing after uploading appbundle file with command flutter build appbundle --release. However, while I am running the app  using flutter run or in debugging mode hitting F5 in Visual Studio Code, I can get the pushToken to return the token.
Background
I have my google-services.json file included in its respective directory (android/app),
I have my FirebaseCloudMessagingAPI enabled
I have my FCM Registration API enabled
In my FirebaseCloudMessagingAPI overview, I see a banner noting _'To use this API, you may need credentials. Click 'Create credentials' to get started.' (I'm ignoring since I haven't come across tutorials showing anything regarding this)
I have two API keys, restrictions (Android apps, iOS apps)
I have the most current versions, at the time of writing, on
firebase_messaging: ^7.0.0
 firebase_core: ^0.5.0
My flutter doctor
[√] Flutter (Channel stable, 1.20.4, on Microsoft Windows [Version 10.0.18363.1082], locale en-US)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[√] Android Studio (version 4.0)
[√] VS Code (version 1.49.2)
[√] Connected device (1 available)

• No issues found!
PS C:\Users\rmorris\flutter_projects\BEL\beimo> flutter doctor -v
[√] Flutter (Channel stable, 1.20.4, on Microsoft Windows [Version 10.0.18363.1082], locale en-US)
    • Flutter version 1.20.4 at C:\src\flutter
    • Framework revision fba99f6cf9 (2 weeks ago), 2020-09-14 15:32:52 -0700
    • Engine revision d1bc06f032
    • Dart version 2.9.2

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\rmorris\AppData\Local\Android\sdk
    • Platform android-30, build-tools 29.0.3
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
    • All Android licenses accepted.

[√] Android Studio (version 4.0)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin version 49.0.2
    • Dart plugin version 193.7547
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[√] VS Code (version 1.49.2)
    • VS Code at C:\Users\rmorris\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.15.0

[√] Connected device (1 available)
    • SM J600G (mobile) • 520072cc43b1b5cb • android-arm • Android 10 (API 29)

 • No issues found!


Direction

Hello,
I like this project, however, it seems like it needs some new direction. It seems to be very disorganized with no apparent namespace or directory hierarchy, there is also a lot of code that can be optimized and made cross platform more easily by using boost (disk.cpp comes to mind.) You may also consider using cmake for a cross platform build system and other proven libraries such as gumbo (google's proven c99 html5 parser). I would be willing to provide and/or work on a lot of these things given your approval. Seems like a cool project, but a large project for any single person to undertake.

Hey @Falven, sorry, by the time you came across this project I had dropped it for other activities/projects. I just discovered your message, 7 years later! Anyway, thanks for reaching out. Cheers.


[test] Update boost python test to use the latest module

Codecov Report

Merging #748 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #748   +/-   ##
=======================================
  Coverage   91.76%   91.76%
=======================================
  Files          76       76
  Lines        9501     9501
=======================================
  Hits         8719     8719
  Misses        782      782

Continue to review full report at Codecov.

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

@jenkins-cscs retry none


Feature Request - Custom Node Properties

Hello,
Great project and awesome work. I'm very happy with this component and have had a lot of fun playing around with it.
One feature I'd love to see is the ability to define custom properties (in addition to the node_name, node_type) for a Node and the EditNode Component. Wondering if there are any workarounds other than modifying the frontend component.

Hey @ttinh. Thanks. You can store custom node properties on the data attribute of the node next to the label property. For example, StreamlitFlowNode(id='1', pos=(100, 100), data={'label': 'Node 1', 'att1': 'att1 value', 'att2': 'att2 value'}). However, there is no way to add/edit this value using the edit node modal. It can only be done from within Streamlit.


Ensure workspace can be cleaned up even if Disk has less than 500MBs of free space

Closed as being handled by server at scale

Thanks for posting this PR which helps bring clarity to the issue.
The team has had a think about this and has some suggestions for a variant on this approach:

We think the readiness check should be moved into PrepareWorkspace() rather than GetWorkspace().
CheckReadiness() could also be renamed to EnsureEnoughFreeDiskSpace() since that is all it does.
The flag to opted out of the check should be used to determine whether to call EnsureEnoughFreeDiskSpace().

(See the discussion in the shortcut story for the reasoning.)


BackEnd Tests

We need to make sure that test infrastructure is available to run locally - which means:

Adding local env vars
Creating a specific environment for tests (perhaps another dockerfile running tests will be a good solution)
Documentation to debug tests using a common IDE (I think that VSCODE should be the one since Pycharm since this feature is only available in pycharm professional)
Any other suggestions?

Adding local env vars

see comment in #1787 regarding env vars, same comment applies here - the test and dev environments are essentially the same

Creating a specific environment for tests (perhaps another dockerfile running tests will be a good solution)

done in #1820

Documentation to debug tests using a common IDE (I think that VSCODE should be the one since Pycharm since this feature is only available in pycharm professional)

TODO

@afedj can you take task 3?


Wrong filetarget archive date

Type (choose one): Bug
NLog version: (e.g. 4.5.4)
Platform: .Net 4.6.2
I think this is in relation to #2224
I tried updating to the latest versions, but still getting similar results.

Expected behaviour would be to have this archive name be 2018-05-22
Interesting thing is - that it actually did that for the first file that it encountered.

Note - that the path is different. These are logs for separate devices where logs for each device is stored in different folder.  From what I gather from Internal log and code, is that MAYBE the value for
previousLogEventTimestamp is calculated overall, for the last event in the system, but not the last log event for the current file.

Current NLog config (xml or C#, if relevant)
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.nlog-project.org/schemas/NLog.xsd NLog.xsd"
      autoReload="true"
      throwExceptions="false"
      internalLogLevel="Error" internalLogFile="c:\temp\nlog-internal.log"

      >

  <!-- optional, add some variables
  https://github.com/nlog/NLog/wiki/Configuration-file#variables
  -->
  <variable name="basedir" value="${appsetting:name=HttpLoggingDirectory}" />
  <!--
  See https://github.com/nlog/nlog/wiki/Configuration-file
  for information on customizing logging rules and outputs.
   -->
  <targets >
    <target name="asyncFile" xsi:type="AsyncWrapper" overflowAction="Grow">
      <target name="file" xsi:type="File"
              fileName="${var:basedir}\${event-properties:item=serialNo}\log.txt"
              layout="${message}"
              archiveFileName=" ${var:basedir}\${event-properties:item=serialNo}\log.{#}.txt"
              archiveNumbering="DateAndSequence"
              archiveDateFormat="yyyy-MM-dd"
              archiveEvery="Day"
              maxArchiveFiles="14"
              concurrentWrites="true" />
    </target>
  </targets>
  <rules>
    <logger name="*" writeTo="asyncFile" />
  </rules>
</nlog>

Trace details from the internal Log
2018-05-22 23:59:59.8252 Trace Opening \srmwstblog1\HttpLogging\M91803ED2172\log.txt with allowFileSharedWriting=False
2018-05-23 00:00:00.0752 Trace FileTarget(Name=file): Archive attempt for file '\srmwstblog1\HttpLogging\M91803ED2172\log.txt'
2018-05-23 00:00:00.0752 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2172\log.txt
2018-05-23 00:00:00.0752 Debug FileTarget(Name=file): Do archive file: '\srmwstblog1\HttpLogging\M91803ED2172\log.txt'
2018-05-23 00:00:00.0752 Trace FileTarget(Name=file): Archive pattern '\srmwstblog1\HttpLogging\M91803ED2172\log.{#}.txt'
2018-05-23 00:00:00.1377 Trace FileTarget: parsed date '2018-05-22' from file-template 'log.{#}.txt'
2018-05-23 00:00:00.1377 Trace FileTarget(Name=file): Calculating archive date. File-LastModifiedUtc: 05/22/2018 20:59:59; Previous LogEvent-TimeStamp: 05/22/2018 23:59:59
2018-05-23 00:00:00.1377 Trace FileTarget(Name=file): Using last write time
2018-05-23 00:00:00.1377 Trace FileTarget(Name=file): FinalizeFile '\srmwstblog1\HttpLogging\M91803ED2172\log.txt, isArchiving: True'
2018-05-23 00:00:00.1377 Info FileTarget(Name=file): Archiving \srmwstblog1\HttpLogging\M91803ED2172\log.txt to \srmwstblog1\HttpLogging\M91803ED2172\log.2018-05-22.1.txt
2018-05-23 00:00:00.1377 Debug FileTarget(Name=file): Move file from '\srmwstblog1\HttpLogging\M91803ED2172\log.txt' to '\srmwstblog1\HttpLogging\M91803ED2172\log.2018-05-22.1.txt'
2018-05-23 00:00:00.1534 Debug FileTarget(Name=file): Process file '\srmwstblog1\HttpLogging\M91803ED2172\log.txt' on startup
2018-05-23 00:00:00.1534 Debug Creating file appender: \srmwstblog1\HttpLogging\M91803ED2172\log.txt
2018-05-23 00:00:00.1534 Trace Opening \srmwstblog1\HttpLogging\M91803ED2172\log.txt with allowFileSharedWriting=False
2018-05-23 00:00:00.4659 Trace FileTarget(Name=file): Archive attempt for file '\srmwstblog1\HttpLogging\M91803ED2137\log.txt'
2018-05-23 00:00:00.4659 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2172\log.txt
2018-05-23 00:00:00.4659 Debug FileTarget(Name=file): Do archive file: '\srmwstblog1\HttpLogging\M91803ED2137\log.txt'
2018-05-23 00:00:00.4659 Trace FileTarget(Name=file): Archive pattern '\srmwstblog1\HttpLogging\M91803ED2137\log.{#}.txt'
2018-05-23 00:00:00.5127 Trace FileTarget: parsed date '2018-05-22' from file-template 'log.{#}.txt'
2018-05-23 00:00:00.5127 Trace FileTarget(Name=file): Calculating archive date. File-LastModifiedUtc: 05/22/2018 20:59:56; Previous LogEvent-TimeStamp: 05/23/2018 00:00:00
2018-05-23 00:00:00.5127 Trace FileTarget(Name=file): Using previous log event time (is more recent)
2018-05-23 00:00:00.5127 Trace FileTarget(Name=file): FinalizeFile '\srmwstblog1\HttpLogging\M91803ED2137\log.txt, isArchiving: True'
2018-05-23 00:00:00.5127 Info FileTarget(Name=file): Archiving \srmwstblog1\HttpLogging\M91803ED2137\log.txt to \srmwstblog1\HttpLogging\M91803ED2137\log.2018-05-23.0.txt
2018-05-23 00:00:00.5127 Debug FileTarget(Name=file): Move file from '\srmwstblog1\HttpLogging\M91803ED2137\log.txt' to '\srmwstblog1\HttpLogging\M91803ED2137\log.2018-05-23.0.txt'
2018-05-23 00:00:00.5127 Debug FileTarget(Name=file): Process file '\srmwstblog1\HttpLogging\M91803ED2137\log.txt' on startup
2018-05-23 00:00:00.5127 Debug Creating file appender: \srmwstblog1\HttpLogging\M91803ED2137\log.txt
2018-05-23 00:00:00.5127 Trace Opening \srmwstblog1\HttpLogging\M91803ED2137\log.txt with allowFileSharedWriting=False
2018-05-23 00:00:00.5752 Trace FileTarget(Name=file): Archive attempt for file '\srmwstblog1\HttpLogging\M91803ED2628\log.txt'
2018-05-23 00:00:00.5752 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2628\log.txt
2018-05-23 00:00:00.5752 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2137\log.txt
2018-05-23 00:00:00.5752 Debug FileTarget(Name=file): Do archive file: '\srmwstblog1\HttpLogging\M91803ED2628\log.txt'
2018-05-23 00:00:00.5752 Trace FileTarget(Name=file): Archive pattern '\srmwstblog1\HttpLogging\M91803ED2628\log.{#}.txt'
2018-05-23 00:00:00.6221 Trace FileTarget: parsed date '2018-05-22' from file-template 'log.{#}.txt'
2018-05-23 00:00:00.6221 Trace FileTarget(Name=file): Calculating archive date. File-LastModifiedUtc: 05/22/2018 20:59:58; Previous LogEvent-TimeStamp: 05/23/2018 00:00:00
2018-05-23 00:00:00.6221 Trace FileTarget(Name=file): Using previous log event time (is more recent)
2018-05-23 00:00:00.6221 Trace FileTarget(Name=file): FinalizeFile '\srmwstblog1\HttpLogging\M91803ED2628\log.txt, isArchiving: True'
2018-05-23 00:00:00.6221 Info FileTarget(Name=file): Archiving \srmwstblog1\HttpLogging\M91803ED2628\log.txt to \srmwstblog1\HttpLogging\M91803ED2628\log.2018-05-23.0.txt
2018-05-23 00:00:00.6221 Debug FileTarget(Name=file): Move file from '\srmwstblog1\HttpLogging\M91803ED2628\log.txt' to '\srmwstblog1\HttpLogging\M91803ED2628\log.2018-05-23.0.txt'
2018-05-23 00:00:00.6221 Debug FileTarget(Name=file): Process file '\srmwstblog1\HttpLogging\M91803ED2628\log.txt' on startup
2018-05-23 00:00:00.6221 Debug Creating file appender: \srmwstblog1\HttpLogging\M91803ED2628\log.txt
2018-05-23 00:00:00.6221 Trace Opening \srmwstblog1\HttpLogging\M91803ED2628\log.txt with allowFileSharedWriting=False
2018-05-23 00:00:01.1065 Trace FileTarget(Name=file): Archive attempt for file '\srmwstblog1\HttpLogging\M91803ED2102\log.txt'
2018-05-23 00:00:01.1065 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2628\log.txt
2018-05-23 00:00:01.1065 Debug FileTarget(Name=file): Do archive file: '\srmwstblog1\HttpLogging\M91803ED2102\log.txt'
2018-05-23 00:00:01.1065 Trace FileTarget(Name=file): Archive pattern '\srmwstblog1\HttpLogging\M91803ED2102\log.{#}.txt'
2018-05-23 00:00:01.1221 Trace FileTarget: parsed date '2018-05-22' from file-template 'log.{#}.txt'
2018-05-23 00:00:01.1221 Trace FileTarget(Name=file): Calculating archive date. File-LastModifiedUtc: 05/22/2018 20:59:17; Previous LogEvent-TimeStamp: 05/23/2018 00:00:01
2018-05-23 00:00:01.1221 Trace FileTarget(Name=file): Using previous log event time (is more recent)
2018-05-23 00:00:01.1221 Trace FileTarget(Name=file): FinalizeFile '\srmwstblog1\HttpLogging\M91803ED2102\log.txt, isArchiving: True'
2018-05-23 00:00:01.1221 Info FileTarget(Name=file): Archiving \srmwstblog1\HttpLogging\M91803ED2102\log.txt to \srmwstblog1\HttpLogging\M91803ED2102\log.2018-05-23.0.txt
2018-05-23 00:00:01.1221 Debug FileTarget(Name=file): Move file from '\srmwstblog1\HttpLogging\M91803ED2102\log.txt' to '\srmwstblog1\HttpLogging\M91803ED2102\log.2018-05-23.0.txt'
2018-05-23 00:00:01.1221 Debug FileTarget(Name=file): Process file '\srmwstblog1\HttpLogging\M91803ED2102\log.txt' on startup
2018-05-23 00:00:01.1221 Debug Creating file appender: \srmwstblog1\HttpLogging\M91803ED2102\log.txt
2018-05-23 00:00:01.1221 Trace Opening \srmwstblog1\HttpLogging\M91803ED2102\log.txt with allowFileSharedWriting=False
2018-05-23 00:00:01.3721 Trace FileTarget(Name=file): Archive attempt for file '\srmwstblog1\HttpLogging\M91803ED2751\log.txt'
2018-05-23 00:00:01.3721 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2102\log.txt
2018-05-23 00:00:01.3721 Debug FileTarget(Name=file): Do archive file: '\srmwstblog1\HttpLogging\M91803ED2751\log.txt'
2018-05-23 00:00:01.3721 Trace FileTarget(Name=file): Archive pattern '\srmwstblog1\HttpLogging\M91803ED2751\log.{#}.txt'
2018-05-23 00:00:01.4971 Trace FileTarget: parsed date '2018-05-22' from file-template 'log.{#}.txt'
2018-05-23 00:00:01.4971 Trace FileTarget(Name=file): Calculating archive date. File-LastModifiedUtc: 05/22/2018 20:58:50; Previous LogEvent-TimeStamp: 05/23/2018 00:00:01
2018-05-23 00:00:01.4971 Trace FileTarget(Name=file): Using previous log event time (is more recent)
2018-05-23 00:00:01.4971 Trace FileTarget(Name=file): FinalizeFile '\srmwstblog1\HttpLogging\M91803ED2751\log.txt, isArchiving: True'
2018-05-23 00:00:01.4971 Info FileTarget(Name=file): Archiving \srmwstblog1\HttpLogging\M91803ED2751\log.txt to \srmwstblog1\HttpLogging\M91803ED2751\log.2018-05-23.0.txt
2018-05-23 00:00:01.4971 Debug FileTarget(Name=file): Move file from '\srmwstblog1\HttpLogging\M91803ED2751\log.txt' to '\srmwstblog1\HttpLogging\M91803ED2751\log.2018-05-23.0.txt'
2018-05-23 00:00:01.4971 Debug FileTarget(Name=file): Process file '\srmwstblog1\HttpLogging\M91803ED2751\log.txt' on startup
2018-05-23 00:00:01.4971 Debug Creating file appender: \srmwstblog1\HttpLogging\M91803ED2751\log.txt
2018-05-23 00:00:01.4971 Trace Opening \srmwstblog1\HttpLogging\M91803ED2751\log.txt with allowFileSharedWriting=False
2018-05-23 00:00:01.8409 Trace FileTarget(Name=file): Archive attempt for file '\srmwstblog1\HttpLogging\M91803ED2109\log.txt'
2018-05-23 00:00:01.8409 Debug FileAppender Closing Invalidate - \srmwstblog1\HttpLogging\M91803ED2751\log.txt
2018-05-23 00:00:01.8409 Debug FileTarget(Name=file): Do archive file: '\srmwstblog1\HttpLogging\M91803ED2109\log.txt'
2018-05-23 00:00:01.8409 Trace FileTarget(Name=file): Archive pattern '\srmwstblog1\HttpLogging\M91803ED2109\log.{#}.txt'
2018-05-23 00:00:01.9503 Trace FileTarget: parsed date '2018-05-22' from file-template 'log.{#}.txt'
2018-05-23 00:00:01.9503 Trace FileTarget(Name=file): Calculating archive date. File-LastModifiedUtc: 05/22/2018 20:59:57; Previous LogEvent-TimeStamp: 05/23/2018 00:00:01
2018-05-23 00:00:01.9503 Trace FileTarget(Name=file): Using previous log event time (is more recent)
2018-05-23 00:00:01.9503 Trace FileTarget(Name=file): FinalizeFile '\srmwstblog1\HttpLogging\M91803ED2109\log.txt, isArchiving: True'
2018-05-23 00:00:01.9503 Info FileTarget(Name=file): Archiving \srmwstblog1\HttpLogging\M91803ED2109\log.txt to \srmwstblog1\HttpLogging\M91803ED2109\log.2018-05-23.0.txt
2018-05-23 00:00:01.9503 Debug FileTarget(Name=file): Move file from '\srmwstblog1\HttpLogging\M91803ED2109\log.txt' to '\srmwstblog1\HttpLogging\M91803ED2109\log.2018-05-23.0.txt'
2018-05-23 00:00:01.9503 Debug FileTarget(Name=file): Process file '\srmwstblog1\HttpLogging\M91803ED2109\log.txt' on startup
2018-05-23 00:00:01.9503 Debug Creating file appender: \srmwstblog1\HttpLogging\M91803ED2109\log.txt

I can see now that my attempt to use _initializedFiles when _previousLogEventTimestamp belongs to a different filename is not working.
The problem is that _initializedFiles is updated before doing the archive operation. So when doing fallback to _initializedFiles then it actually finds the timestamp of the current LogEvent.
Need to ponder a little on how to fix this.

The problem is that _initializedFiles is updated before doing the archive operation. So when doing fallback to _initializedFiles then it actually finds the timestamp of the current LogEvent.

Mabye we could copy (shallow clone I think)?) the old _initializedFiles for this case? Or would that too expensive?

Created a PR with a unit-test and a fix:  #2736

\0/

@martys NLog 4.5.5 is now available: https://www.nuget.org/packages/NLog/4.5.5


DS 3425 outputstream gets closed in JSONDiscoverySearcher

https://jira.duraspace.org/browse/DS-3425
When doing a call to {dspace}/JSON/discovery/search, no output is returned.
The cause for this is the output stream being closed in JSONDiscoverySearcher.
This was committed for DS-3246:
https://jira.duraspace.org/browse/DS-3246
#1437
Not sure why the out.close() was added, but removing it restores normal output for a JSON/discovery/search call.

Also cherry-picked this to 6.x branch


Failure to merge interpolation into structured config

Describe the bug
As described in https://github.com/facebookresearch/hydra/issues/2416, merging a config with an interpolation key into a structured config can fail with an InterpolationKeyError or a ValidationError.
To Reproduce
There are two failure modes identified in https://github.com/facebookresearch/hydra/issues/2416.
Mode 1: merging an interpolation into an optional None value
# omegaconf_failing.py
from dataclasses import dataclass
from typing import Optional
from omegaconf import OmegaConf

@dataclass
class TableConfig:
    rows: int = 1

@dataclass
class DatabaseConfig:
    table_cfg: TableConfig = TableConfig()

@dataclass
class ModelConfig:
    data_source: Optional[TableConfig] = None

@dataclass
class ServerConfig:
    db: DatabaseConfig
    model: ModelConfig

cfg = OmegaConf.merge(
    ServerConfig,
    {"db": DatabaseConfig},
    {"model": {"data_source": "${db.table_cfg}"}},
)  # raises "omegaconf.errors.InterpolationKeyError: Interpolation key 'db.table_config' not found"

$ python omegaconf_failing.py
Traceback (most recent call last):
...
omegaconf.errors.InterpolationKeyError: Interpolation key 'db.table_cfg' not found
    full_key:
    object_type=ServerConfig

Mode 2: merging an interpolation into a structured value
# omegaconf_failing_also.py
from dataclasses import dataclass
from omegaconf import OmegaConf

@dataclass
class TableConfig:
    rows: int = 1

@dataclass
class DatabaseConfig:
    table_cfg: TableConfig = TableConfig()

@dataclass
class ModelConfig:
    data_source: TableConfig = TableConfig()

@dataclass
class ServerConfig:
    db: DatabaseConfig
    model: ModelConfig

cfg = OmegaConf.merge(
    ServerConfig,
    {"db": DatabaseConfig},
    {"model": {"data_source": "${db.table_cfg}"}},
)  # raises "omegaconf.errors.ValidationError: Merge error: str is not a subclass of TableConfig. value: ${db.table_config}"

$ python omegaconf_failing_also.py
Traceback (most recent call last):
...
omegaconf.errors.ValidationError: Merge error: str is not a subclass of TableConfig. value: ${db.table_cfg}
    full_key:
    object_type=ServerConfig

Expected behavior
I don't think either merge above should result in an error.
Additional context
OmegaConf version: HEAD (commit 8d110fc)

Are there any updates on this? If you stumble into this problem, finding out that this is (most likely :D) not a issue in your config but this bug is quite hard to find out.

@johnzielke no updates at this time.

It may be stupid answer, but why not
'''
...omit!!
cfg = OmegaConf.merge(
ServerConfig,
{"db": DatabaseConfig},   # why not just directly set it with dataclass ?
{"model": {"data_source": TableConfig}},
)
'''
Suppose, you already have initialized some value
'''
...omit!!
directly assign more clearly then intepolation..
db_tab = DatabaseConfig.table_cfg
cfg = OmegaConf.merge(
ServerConfig,
{"db": DatabaseConfig},   # why not just directly set it with db_tab instance ?
{"model": {"data_source": db_tab}},
)
'''
The point in here: once the instance is initialized, it will be impossible (and not necessary) to do argument interpolation.
If you want to sync some arguments between the dataclass configs, just add some code to assign the shallow copy of the value.

Also having the same problem - would love to have it fixed.


Announcement blog for new EUDG

This blog post has the following goals:

To announce the new End User Discussion Groups for the APAC region, starting January 2023
To promote the upcoming EMEA and AMER sessions
To raise awareness and increase attendance of these sessions, particularly to newer members of the community

@reese-lee let me know when you'd like this merged!

@mtwo If possible, today would be great! since the AMER session is next Thursday.

Merged!


Need a way to view in the Traffic Portal the Traffic Ops URL

Maybe do something like the Help.About to show that info

Need to think about this more but the point was that the Traffic Portal obfuscates (or hides) the Traffic Ops API URI. Maybe that's not necessary. Not sure.
But I get your point. It would be nice to know where the TP is pointing to.


BLE Memory Leak

Dear readers,
I'm struggling with a memory leak of 20 bytes that happens during every BLE access.  I've spent some time with issue #963 which is very helpful but when I change to pointers for advertisedDevice as suggested I get the error

invalid new-expression of abstract class type 'BLEdeviceCallbacks'

The offending code is

pBLEScan->setAdvertisedDeviceCallbacks(new BLEdeviceCallbacks);

but I am not very experienced with C++ or BLE and haven't been able to figure out how to replace this code to be able to use the fix for memory leak.
My code follows.
Thank you for any help.
Best regards,
Nancy
#include "BLEDevice.h"
#include <BLEAdvertisedDevice.h>

#define OFF 0
#define RUNNING 1
byte autoState = OFF;
#define BLE_OFF 0
#define BLE_SCANNING 1
#define BLE_BEACON 2
static byte BLEstate = BLE_OFF;
float newTemp = 0.0;
unsigned long time4TempSample = 0;
unsigned long delaySample = 29500;
boolean gotTemperature = false;
static BLEAdvertisementData advertisementData;
BLEScan* pBLEScan;
unsigned long time2ScanEnd = 0;
#define SCAN_LENGTH_s     10      // pBLEscan time in seconds
#define SCAN_INTERVAL    603
#define SCAN_WINDOW      549
#define SCAN_LENGTH_ms  SCAN_LENGTH_s*1000

void    BLEunpackMeeblueAdv(char* payl) {
  newTemp = (payl[22] << 8) + payl[21];
  newTemp = ((175.72*newTemp)/65536.0) - 46.85;
  newTemp = (newTemp * 1.80) + 32.00 ;
}
class   BLEdeviceCallbacks: public BLEAdvertisedDeviceCallbacks {
  void onResult(BLEAdvertisedDevice* advertisedDevice) {
    char* payl = (char*)advertisedDevice->getPayload();
    String payload = String(payl);
    size_t payloadLength = advertisedDevice->getPayloadLength();
    byte targetMeeblue[] = {2,1,6,3,3,0};
    boolean foundMeeblue = true;
    for (byte j=0; j < 6; j++) {
      if (payl[j] != targetMeeblue[j]) foundMeeblue = false;
      if (!foundMeeblue) j = 7;
    }
    if (foundMeeblue) {
      time2ScanEnd = millis();
      gotTemperature = true;
      BLEunpackMeeblueAdv(payl);     // unpack temp, humidity and battery
      BLEstate = BLE_BEACON;
    }
  }
};
void    BLEperformScan() {    // BLOCKING
  time2ScanEnd = millis() + (SCAN_LENGTH_s * 1000);
  BLEstate = BLE_SCANNING;
  BLEDevice::init("");    // for MANUAL startup, when no BLEinit
  BLEScan* pBLEScan = BLEDevice::getScan();
  pBLEScan->setAdvertisedDeviceCallbacks(new BLEdeviceCallbacks);
  pBLEScan->setInterval(SCAN_INTERVAL);
  pBLEScan->setWindow(SCAN_WINDOW);
  pBLEScan->setActiveScan(true);
  pBLEScan->start(SCAN_LENGTH_s, false);
  pBLEScan->stop();
  pBLEScan->clearResults();
}
void setup() {
  Serial.begin(57600);
  Serial.println("\nStarting up");
  BLEstate = BLE_OFF;
  esp_bt_controller_mem_release(ESP_BT_MODE_CLASSIC_BT);  // release memory not needed for BLE
}

void loop() {
  if (autoState == OFF) {
    if (gotTemperature) autoState = RUNNING;
  }
  if (BLEstate == BLE_SCANNING) {
    if (millis() > time2ScanEnd) BLEstate = BLE_OFF;
  }
  else if ((BLEstate == BLE_OFF))
    BLEperformScan();
  else if (BLEstate == BLE_BEACON) {
    if (millis() > time4TempSample) {
      if (gotTemperature) {
        Serial.print(String(newTemp));
        Serial.println("  Heap: " + String(ESP.getFreeHeap()));
        time4TempSample = millis() + delaySample;  // setup next temp sample
        gotTemperature = false;
      }
      else  {
        BLEstate = BLE_OFF;
        autoState = OFF;
      }
    }
  }
}

Recently some memory leak fix has been merged in this library clone in aruino-esp32 repository.

Thank you! I'm using version 1.0.1 of ESP32 BLE Arduino, the library manager doesn't show any more recent version. The repositories I can find are 2 years old, can you give me a link?
Thanks, sorry such newbie.
Nancy

I updated BLEDevice and BLEAdvertisedDevice src files with version dated 13 months ago, I'm still seeing precisely 20 bytes loss every iteration.

https://github.com/espressif/arduino-esp32/pull/4761
But im not sure if it really is fixing all leaks, didnt test it.

Fix is for leak when getting characteristics. I'm using a beacon, getting data from advertising packets.

I have solved this problem, by moving the following from BLEperformScan() to Setup():
BLEDevice::init("");
pBLEScan = BLEDevice::getScan();
pBLEScan->setAdvertisedDeviceCallbacks(new BLEdeviceCallbacks(), false);
pBLEScan->setActiveScan(true);
pBLEScan->setInterval(SCAN_INTERVAL);
pBLEScan->setWindow(SCAN_WINDOW);

This way the 'new' call is happening only once.


test: no extra new line in skipped test output

When a test is skipped, an extra empty line is added:

This removes this extra empty line.

CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/556/

Landed in https://github.com/libuv/libuv/commit/96ea5ac96d71300d2d7b89bb319102eb2c7a0a28. Thanks!


combo label piles up on floor/ceil label

Get's obvious when setting long label with translate option.

fiddle

Good catch!


Add tooling

vscode (devcontainer, debug configs)
github (dependabot, funding, issue template)
django (update doc urls, allow localhost)
docker (gunicorn/uvicorn, nginx, postgres)
editorconfig (auto formatting locally)
gitignore (generated comprehensive python exclusions)
shellcheckrc (lint shell scripts w/exclusions)
tool-versions (asdf)
unlicense
poetry (venv, deps, packaging)
startup.sh (run server after extensive scaffolding w/error handling)

Feel free to cherry pick what you'd find useful. I'm especially proud of startup.sh and the nginx portion for static files.
Probably has some corner cases/bugs but I've yet to implement bats hahaha

Hi @pythoninthegrass, wow, thanks for the big contribution to the project.  I think Dockerizing the project and adding a Compose file makes sense.  I don't know how much future development this project will receive, but I'm happy to merge your branch.
I did notice that the main Dockerfile seems to have a lot of dev dependencies pulled into it.  If you could make that a bit more minimal I think we'd be good to merge if you'd like.

Sure! Can split the devcontainer from the main one and golf any extra deps

From: zchtodd @.>
Sent: Thursday, August 3, 2023 3:10:42 PM
To: zchtodd/leaky_ledger @.>
Cc: pythoninthegrass @.>; Mention @.>
Subject: Re: [zchtodd/leaky_ledger] Add tooling (PR #1)
Hi @pythoninthegrasshttps://github.com/pythoninthegrass, wow, thanks for the big contribution to the project. I think Dockerizing the project and adding a Compose file makes sense. I don't know how much future development this project will receive, but I'm happy to merge your branch.
I did notice that the main Dockerfile seems to have a lot of dev dependencies pulled into it. If you could make that a bit more minimal I think we'd be good to merge if you'd like.
—
Reply to this email directly, view it on GitHubhttps://github.com/zchtodd/leaky_ledger/pull/1#issuecomment-1664586934, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AA7ILP57ARBPOU7U4RLIKB3XTQAUFANCNFSM6AAAAAA3CN47J4.
You are receiving this because you were mentioned.Message ID: @.***>

Was able to shrink the image on the runner portion from 346 MB to 258 MB according to dive.
Let me know if you need anything else 👌


Atom editor didn't find Nexus 5x

Steps to Reproduce

Open Atom
Upgrade to Atom 1.5.4 and 0.2.1
Run Packages > Flutter > Create
Open flutter.yaml to get Devices panel to appear

Expected Results
Nexus 5x appears.
Actual Results
Device not found until after Atom is restarted.
Notes
It looks like the daemon didn't start until I ran adb devices manually.  The Flutter SDK should check for devices whenever I open the menu (and run any missing requisite daemons at that time).
Flutter Version
49c0ec3402a58b670d4eefb8ad500d330da59664
Logs
$ adb devices
List of devices attached
* daemon not running. starting it now on port 5037 *
adb I 18680 189988 usb_osx.cpp:259] Found vid=18d1 pid=4ee2 serial=00b8d582d79b3249
adb I 18680 189988 usb_osx.cpp:259]
* daemon started successfully *
00b8d582d79b3249  device

$ flutter devices
1 connected device:

Nexus 5X (00b8d582d79b3249)

(Atom still didn't see the device at this point until after I restarted it.)

Note that we've had a few reports of this.

This has happened to me several times.

I ran into Atom not showing my connected devices (despite flutter devices and adb devices working fine) as well but my issue happened to be related to https://github.com/flutter/flutter/issues/3531 so not using Launcher to start Atom fixed it for me.

Thanks for the report! Going to close this in favor of the IntelliJ plugin.


Add end date display for hesa records

Context
Now that we have an end academic cycle for HESA trainees we can display that as their expected course end date. The frontend has been updated with this information.
Changes proposed in this pull request
Add conditional to the ITT End Date section to display the expected end date for hesa trainees with an end_academic_cycle.
Guidance to review
Important business

[ ] Does this PR introduce any PII fields that need to be overwritten or deleted in db/scripts/sanitise.sql?
[ ] Does this PR change the database schema? If so, have you updated the config/analytics.yml file and considered whether you need to send 'import_entity' events?

NB: Please notify the #twd_data_insights team and ask for a review if new fields are being added to analytics.yml

 [S] End date display for HESA records


Change to exit code 1 when the verify fails

Change to exit code 1 when the verify fails.
Makes it easier for the computer to determine success or failure.
(e.g. unix pipe processing)
for example:
$ laucnable verify && launchable record build --name BUILD_ID --source .

Thank you for your PR! 👍
Actually, the design that our CLI exit with a non-zero exit code is rather intentional, which follows one of our design manifests, Customers' builds cannot stop. However, I agree that sometimes users want the CLI just fails when it fails. In that case, we (I and @ninjinkun) prepared the LAUNCHABLE_REPORT_ERROR environment variable. I think we should use the convention here but what do you think?

[IMO]
It's a different story if the end state is easy for the computer to understand and whether to stop the build. I think the primitive conventions of unix command should be followed.
Of course, we should not stop the build, but that should be done in a different way.
For example, connect pipes with | instead of &&.
$ laucnable verify | launchable record build --name BUILD_ID --source .

Seems to me that the disconnect is around how this command is supposed to be used. I'm not finding any discussion that led to this command in Confluence, but is this meant to be used interactively and/or only during the onboarding, or is this meant to be a part of the build script perpetually?
If the former, it makes sense for this to return non-zero exit code given that the intent is to catch errors. If the latter, it makes sense to give consideration to "customers build cannot stop"

Hmm, I think you are right. Considering the current use case of the verify command, our customers mostly use this command when onboarding so exiting with non-zero code is the expected behavior. Thank you for your fix!


Modify coral hive parser and coral spark writer dialect to generate spark compliant escaped string literal

What changes are proposed in this pull request, and why are they necessary?

With this patch, a string literal of select 'I'm' will be re-written in spark-sql output of select I''m, the '' double single quote escaping is a ANSI sql escaping standard but is not what is recognized by the spark sql parser. Instead, spark uses the backslash for escaping quotes inside quotes in sql string, i.e. the correct output should be select 'I\'m'.
This patch adds the customizations in the SparkSqlDialect to make the generated output sql consistency use single quote for quoting a outermost level string literal and use \' to quote internal literals occurences of ', for ", it will appear as-is since it will never need to be escaped because the outermost quote is always single quote.
How was this patch tested?

Added 6 unit tests to demonstrate the new behavior:

hive
spark

select 'abc'
select 'abc'

select "abc"
select 'abc'

select 'abc[\'xyz\']'
select 'abc[\'xyz\']'

select "abc['xyz']"
select 'abc[\'xyz\']'

select 'abc["xyz"]'
select 'abc[\'xyz\']'

select "abc[\"xyz\"]"
select 'abc["xyz"]'

Thanks Raymond for this pr, could you add regression tests for both spark and trino? And could you also test it on spark shell against the target view to ensure it works as expected?

Thanks Raymond for this pr, could you add regression tests for both spark and trino? And could you also test it on spark shell against the target view to ensure it works as expected?

Yeah I just triggered int-test for both trino and spark, let's wait for the restults.


refactor: refactor logic to resolve by seqNo

Supersedes #4 with some git history corrections.

Closed in favor of PR #12.


Actix plugin: Support basePath

If all the registered paths share a common base path, then we can split that out and set that to basePath field in the spec. I suggest adding a method normalize to paperclip::v2::models::GenericApi which mem::replaces and iterates over paths map to determines the base path. Whilst doing that, it also calls normalize method on the (OperationMap) values before adding it to the new map and setting it back in paths field.

While developing I don't care about the domain it will be hosted, In order to provide it correctly spec would need to be aware of the host. It might be too much.


Ugly walking when Full.

It doesn't choose straight paths etc. The path it calculates is good though it's ugly. When Lateral or Diagonal it's prefect and is super easy to setup. Though when Full, let's say you're going to walk in a straight line. It can choose to go diagonal on some steps. The path it calculates has the same cost though it's ugly. Do u have any idea or solutions?

There are several solutions that compute a nicer path more often (though none work 100% of the time).  RedBlobGames has an article on this: http://www.redblobgames.com/pathfinding/a-star/implementation.html#troubleshooting-ugly-path
I've been experimenting with it, but I haven't come to a solution yet that I really like. I'll see if I can cook something up this weekend. (no promises).

One solution I haven't tried yet is to start the neighborhood search with the tile that is on the line from the current cell to the finished cell.

I've been reading your commits and in the commit where you've changed the heuristic to Chebyshev you removed something that u commented out.
// Avoid zig-zag paths by correctly penalizing the cost of diagonal movement
Did it use to work? Or u never checked?

@SpreedBlood unfortunately that approach made the heuristic A* depends on for finding the shortest path inadmissible (it overestimates paths over the diagonal). Which caused some non-optimal paths to be found.

I thought some more about this issue. You get the straightest path, if you follow the direction you were following. I can look up what offset was last used for the path so far and start exploring that offset in that direction first (in the case of ambiguity). It will take me a bit to figure out how to do this fast. But I think this will work.
Meanwhile I'm working on the last improvements off the viewer so I can more easily verify that changes like this have the desired effect.

Hmm I haven't had much luck with my own idea, or other hacks. It might be best to include a string pulling algorithm in the library. I've found some info here: https://www.gamedev.net/forums/topic/539575-string-pulling-explained/

String pulling seems to work brilliantly, I've got a WIP branch here: https://github.com/roy-t/AStar/tree/feature/string_pulling (note you can only see the effect in the viewer in release builds,  (which only shows the end result) the debug build only shows the path finding steps and doesn't know about string pulling yet).
There are some issues/TODOs in my current implementation that need to solve, but I'm confident they do not block my progress.

Make sure smoothing paths does not conflict with the movement pattern of the agent
Make sure path segments do not become disconnected by smoothing (oops)
Visualize the path smoothing in the debug mode in the viewer
Test the performance (probably OK since it only affects the final path, but we might want to make the smoothing step optional).

I've implement the string pulling algorithm. In a new section in the readme you can see how its used and what affect it has. I think this will make you very happy :). The changes are also in the update NuGet package (v1.2) which I've uploaded just now.


Fix same-name variable/func param swift bug.

Somehow, when using a same-name variable inside the body of a swift function that matches with the same-name of a function parameter, a swift llvm bug incurs a strange indirection that causes the function parameter's type to mutate into the same-name variable's type.

Very strange lol, it works fine for me without this change 😅

Indeed! Curious if we should file an issue ticket for Swift (I'm not quite sure the best place to submit this information).


Last updated timestamp varies depending on device time zone

I assume the last updated output is using the device's time to do a calculation instead of standardizing the time to UTC.
Use case:
JST: 16+ hours displayed
EST: 2+ hours displayed
PST: Blank (I assume it's calculating to negative so it displays nothing instead of 0 hours/minutes ago).

Disregard this, I didn't update the app and didn't see that you had fixed this in a later version.


[MM] Set network camera option

Disable network camera option.
@discussion: Get is_network prop?

Signed-off-by: gichan2-jang<EMAIL_ADDRESS>

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #572. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://ci.nnstreamer.ai/.

:octocat: cibot: @gichan-jang, c/src/ml-api-inference-tizen-privilege-check.c does not include Doxygen tags such as @file @brief @author @bug. You must include the Doxygen tags in the source code. Please refer to a Doxygen manual at http://github.com/nnstreamer/TAOS-CI/blob/main/ci/doc/doxygen-documentation.md


Agent has no way to disable /proc/diskstats check in OpenVZ environments

Output of the info page (if this is a bug)
2018-03-25 10:53:22,916 | ERROR | dd.collector | utils.dockerutil(dockerutil.py:143) | Failed to initialize the docker client. Docker-related features will fail. Will retry 0 time(s). Error: Error while fetching server API version: ('Connection aborted.', error(2, 'No such file or directory'))
Collector (v 5.22.3)
Status date: 2018-03-25 10:53:15 (6s ago)
Pid: 29903
Platform: Linux-2.6.32-042stab127.2-x86_64-with-centos-6.9-Final
Python Version: 2.7.14, 64bit
Logs: , /var/log/datadog/collector.log, syslog:/dev/log
Clocks
NTP offset: -0.002 s
System UTC time: 2018-03-25 14:53:23.143257

Paths
conf.d: /etc/dd-agent/conf.d
checks.d: Not found

Hostnames
socket-hostname: donkey.folden-nissen.com
hostname: donkey.folden-nissen.com
socket-fqdn: donkey.folden-nissen.com

Checks
apache (1.1.1)
--------------
  - instance #0 [ERROR]: '403 Client Error: Forbidden for url: https://jira.myfnmc.com/server-status?auto'
  - Collected 0 metrics, 0 events & 1 service check

ntp (1.0.0)
-----------
  - Collected 0 metrics, 0 events & 0 service checks

disk (1.1.0)
------------
  - instance #0 [ERROR]: "[Errno 2] No such file or directory: '/proc/diskstats'"
  - Collected 8 metrics, 0 events & 0 service checks

network (1.4.0)
---------------
  - instance #0 [OK]
  - Collected 18 metrics, 0 events & 0 service checks

jmx (5.22.3)
------------
  - instance #jmx-jira.myfnmc.com-8099 [OK] collected 13 metrics
  - Collected 13 metrics, 0 events & 0 service checks

Emitters
- http_emitter [OK]

====================
Dogstatsd (v 5.22.3)
Status date: 2018-03-25 10:53:18 (4s ago)
Pid: 29897
Platform: Linux-2.6.32-042stab127.2-x86_64-with-centos-6.9-Final
Python Version: 2.7.14, 64bit
Logs: , /var/log/datadog/dogstatsd.log, syslog:/dev/log
Flush count: 59
Packet Count: 560
Packets per second: 1.3
Metric count: 14
Event count: 0
Service check count: 1
====================
Forwarder (v 5.22.3)
Status date: 2018-03-25 10:53:23 (1s ago)
Pid: 29896
Platform: Linux-2.6.32-042stab127.2-x86_64-with-centos-6.9-Final
Python Version: 2.7.14, 64bit
Logs: , /var/log/datadog/forwarder.log, syslog:/dev/log
Queue Size: 255 bytes
Queue Length: 1
Flush Count: 197
Transactions received: 198
Transactions flushed: 197
Transactions rejected: 0
API Key Status: API Key is valid
======================
Trace Agent (v 5.22.3)
Pid: 29895
Uptime: 600 seconds
Mem alloc: 2497352 bytes
Hostname: donkey.folden-nissen.com
Receiver: localhost:8126
API Endpoint: https://trace.agent.datadoghq.com
--- Receiver stats (1 min) ---
--- Writer stats (1 min) ---
Traces: 0 payloads, 0 traces, 0 bytes
Stats: 0 payloads, 0 stats buckets, 0 bytes
Services: 0 payloads, 0 services, 0 bytes
Describe what happened:
In OpenVZ environments, /proc/diskstats is not exposed to the guest OS.  So, even though I am running a mix of Centos 6 and 7 environments, all my hosted servers are seeing the disk stats fail
Describe what you expected:
Provide some method to disable this check in config.  I honestly don't care if this check is enabled by default, just so long as it can be disabled for those of us on OpenVZ environments
Steps to reproduce the issue:
Run dd-agent on any guest linux environment on an OpenVZ server
Additional environment details (Operating System, Cloud provider, etc):
Run on Ramnode as a host: http://www.ramnode.com/
CentOS release 6.9

I should note I've searched for several hours a day for a few days with no apparent solution that I can find.

Hi @LordPsycho202! Sorry for responding this late. You're using v5 of the Agent, the present repo is for Agent v6, as such this issue should be reported on the dd-agent repo instead.
The disk check is enabled by default with a .yaml.default file that's shipped with the agent package. On Agent v5, that file is located at /etc/dd-agent/conf.d/disk.yaml.default, if you want you can remove that file and restart your Agent to disable the disk check completely.
I'll go ahead and close this issue, but feel free to respond here if you're still having issues.