enable llava static generation.

What does this PR do?
support llava image to text generation

based on the image-to-text generation pr #738
python3 run_pipeline.py \
        --model_name_or_path "llava-hf/llava-1.5-7b-hf" \
        --image_path "https://llava-vl.github.io/static/images/view.jpg" \
        --prompt "<image>\nUSER: What's the content of the image?\nASSISTANT:" \
        --max_new_tokens 20 \
        --use_hpu_graphs \
        --bf16

result = [[{'generated_text': "[\\nUSER: What's the content of the image?\\nASSISTANT: The image features a pier extending out into a large body of water, likely a lake.\n\n](file://nUSER:%20What's%20the%20content%20of%20the%20image%3f/nASSISTANT:%20The%20image%20features%20a%20pier%20extending%20out%20into%20a%20large%20body%20of%20water,%20likely%20a%20lake./n/n)"}]], time =<PHONE_NUMBER>439697ms

For batch_size = 4
Input/outputs 1:
USER: What's the content of the image?
ASSISTANT: The image features a pier extending out into a large body of water, likely a lake. The pier
Input/outputs 2:
USER:  What's the content of the image?
ASSISTANT: The image features a pier extending out over a large body of water, likely a lake. The pier
Input/outputs 3:
USER: describe the image?
ASSISTANT: The image features a pier extending out into a large body of water, likely a lake. The pier
Input/outputs 4:
USER: Is there a brige in the image?
ASSISTANT: Yes, there is a bridge in the image.
USER: Is the bridge over water?

Input/outputs:
Throughput (including tokenization) =<PHONE_NUMBER>461739 tokens/second
Number of HPU graphs                = 26
Memory allocated                    = 16.26 GB
Max memory allocated                = 16.27 GB
Total memory available              = 94.62 GB

Just want to let you know this works like a charm!

Hi @lkk12014402 I tried with no image and looks like it doesn't support input with no image. Want to check if this is correct and see if we can support no image input (text only) ?

@lkk12014402 , could you please provide a brief description of the changes needed in optimum/habana/transformers/models/llava/modeling_llava.py wrt the base model in transformers
I see a couple of single input where, which are usually dynamic on HPU. If these are on CPU, then its fine, but if these are on HPU, they might need rewriting.
https://github.com/huggingface/optimum-habana/blob/d44c54066aef31462206a4d3d4a4b4e93a72dd01/optimum/habana/transformers/models/llava/modeling_llava.py#L79
https://github.com/huggingface/optimum-habana/blob/d44c54066aef31462206a4d3d4a4b4e93a72dd01/optimum/habana/transformers/models/llava/modeling_llava.py#L29

hi, @ssarkar2
I will give a description and check the operation torch.where() as soon as possible

@lkk12014402 , could you please provide a brief description of the changes needed in optimum/habana/transformers/models/llava/modeling_llava.py wrt the base model in transformers
I see a couple of single input where, which are usually dynamic on HPU. If these are on CPU, then its fine, but if these are on HPU, they might need rewriting.
https://github.com/huggingface/optimum-habana/blob/d44c54066aef31462206a4d3d4a4b4e93a72dd01/optimum/habana/transformers/models/llava/modeling_llava.py#L79
https://github.com/huggingface/optimum-habana/blob/d44c54066aef31462206a4d3d4a4b4e93a72dd01/optimum/habana/transformers/models/llava/modeling_llava.py#L29

hi, @ssarkar2 ,
Description
Let's assume the input text is ["hey" "", "how", "are"], and one image
generation with huggingface transformers directly
the huggingface transformers will get the text embedding [1, 4, 4096] with llava-1.5-7b-hf, and get image embedding [1,576, 4096]. Then the 2 embeddings will be merged to final input embedding [1, 579, 4096] using here.
The merge function also has many dynamic op, like torch.where and the input shape is dynamic during the generation.
So when we use gaudi2 to do generation, there are 2 problems:

the generation is very slow, and we have test one example, like this

python3 run_pipeline.py \
    --model_name_or_path llava-hf/llava-1.5-7b-hf \
    --image_path https://llava-vl.github.io/static/images/view.jpg \
    --prompt "<image>\nUSER: What's the content of the image?\nASSISTANT:" \
    --max_new_tokens 20 \
--bf16

Output is
03/04/2024 05:22:07 - INFO - __main__ - result = [[{'generated_text': \\nUSER: What's the content of the image?\\nASSISTANT: The image features a pier extending out into a large body of water, likely a lake.\n\n}]], time = 1148.6382484436035ms

note: to reproduce, you can use this pr image-to-text example

we can not apply --use_hpu_graph, because there are some errors.

my optimization
In order to maintain the transformers usage (same input, same generation script) and enable static shape by padding and inserting token_idx for generation, I add a new function _pad_inputs to pad input. The function will extend the special token <image> to the num patches of image feature, the padded input text can be regarded as ["hey" "", "", ......, """how", "are"] which sequence length is 579. So the text embedding shape is [1, 579, 4096]. When we merge 2 embeddings (text embedding and image embedding), we don't need complex compute like this and I simplified the function as you see in the modeling_llava.py file.
And for keeping same input shape during generation, I also use token_idx. So I create 2 auxiliary variables,  tokens_pos and image_offset. The tokens_pos records the original input text position to select logits, which can keep same shape between input text/ids and output logits. The image_offset records the offset because of the special tokens , which should be added to the token_idx during the model forward.
the explanation of maintaining torch.where
we need use this function to compute the special token index, because we don't preprocess the input.
Ideally, we should preprocess the input, like the padding and extending the special tokens <image>, which will need more changes compared to transformers, especially we need to create a new generation script instead of using the script in this pr.

@ssarkar2 please help review~

@lkk12014402 can you add a ci test case and rebase?

@libinta I will update the pr with your comments soon.

@lkk12014402  can you add a file like test_image2text_generation_example.py to include image2text generation
and change https://github.com/huggingface/optimum-habana/blob/081130d53a1237e5b8b5d7ac1c64195300579303/Makefile#L76 to include it?

@lkk12014402 can you add a file like test_image2text_generation_example.py to include image2text generation and change
https://github.com/huggingface/optimum-habana/blob/081130d53a1237e5b8b5d7ac1c64195300579303/Makefile#L76
to include it?

hi @libinta  please help review/check the image to text ut. Thanks~

It seems there are some merge conflicts to solve, can you update your main branch and merge it into this one? Also, please run
pip install -U ruff
make style

to have the code style check pass.

update code style with the command

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

hi, @regisss updated code with your comments.
And the ut results:
04/24/2024 15:19:05 - INFO - __main__ - result = [[{'generated_text': "\nUSER: What's the content of the image?\nASSISTANT: The image features a pier extending out into a large body of water, likely a lake. The pier"}]], time =<PHONE_NUMBER>9630992ms, Throughput (including tokenization) = 81.39100218035239 tokens/second
PASSED


GIT: 分布式版本管理工具（轻文本方向）

https://github.com/oleander/git-fame-rb

Linux 打印你最常用的命令
history | awk '{CMD[$2]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl |  head -n10

git alias

http://www.chenyunwen.cn/2015/12/04/git-alias.html

Git Cheat Sheet: Useful Commands, Tips and Tricks

git log --author="intel" | grep "Author: " | grep -ioP "<.*>" | sort | uniq > intel-commiter.txt

git blame tips  git blame irqbypass.c | awk '{print $2" "$3" "$4}' | sort | uniq

#!/bin/bash rm committer.txt echo date>> committer.txt for file infind .; do         if [ -f $file ] ;then                 echo "dealing with $file"                 echo -e "$file" >> committer.txt                 echo $file | cut -c3- | xargs git blame -e | awk '{print $1" "$2" "$3" "$4")"}' | sort -k3 | uniq >> committer.txt                 # TODO 部分文件的git blame会有文件名信息，待解决，如 arch/arm/kvm/arch_timer.c         fi done echo -e "\n" >> committer.txt cat committer.txt | grep -ioP "<.*>" | sort -r | uniq -c | sort -r >> committer.txt

echo irqbypass.c | xargs git blame | awk '{print $1" "$2" "$3" "$4}' | sort | uniq
git show e2c1f9abff83e | grep -e "Signed-off-by" -e "Reviewed-by" | awk '{print $4}'

#!/bin/bash
cd $1
if [ -f committer.txt ];then
rm committer.txt
fi
if [ -f top-committer.txt ];then
rm top-committer.txt
fi
echo `date` >> committer.txt
for file in `find .`;
do
if [ -f $file ] ;then
echo "dealing with $file"
echo -e "$file" >> committer.txt
echo $file | cut -c3- | xargs git blame -e | awk '{print $1" "$2" "$3" "$4")"}' | sort -k3 | uniq >> committer.txt
fi
done
echo -e "\n" >> committer.txt
cat committer.txt | grep -ioP "<.*>" | sort | uniq -c | sort -rn >> top-committer.txt

head top-committer.txt -n `cat top-committer.txt | wc -l | awk '{total=$1;print max1,int(0.01*total)}'` | grep -ioP<EMAIL_ADDRESS>| sort | uniq| cut -d'>' -f1 | cut -c2-

http://i-love.sakura.ne.jp/

https://www.zhihu.com/question/27462267?utm_source=wechat_session&utm_medium=social


Resource creation fails when the template contains a variable of type map(any): invalid map_any: value must be an object

Describe the bug

Resource creation fails when the template contains a variable of type map(any).
Steps to reproduce

Add a template with source https://github.com/unitong/test-upgrade.
Using this template to create a resource.
Configure Map Any as below and save.

Result

Failed to create: invalid variables: violate ui schema: invalid map_any: value must be an object.

Check the post api request.

Check the ui schema.

Expected behavior

Create successfully.
Environment

Walrus version: main 3806cbeb980963a23e83bf42b8ac3b15c287fbba
UI version: v0.5.0-rc2

Additional context
Add any other context about the problem here.

Environment

Walrus version: main 66a2214c8ea5dfb7fd8542fecb5e87a3778fc07e
UI version: dev-4dd2e5a

Test Result: pass


dmrg-nevpt2 calculation not run

Dear all,
I am trying to run some dmrg-nevpt2 calculations. However, the nevpt2 does not run. The following is my input, I am not sure which part is wrong. Many thanks for your help.
mol.max_memory=10000
mol.charge=0
mol.spin=18  #molpro convention
mol.verbose=4
mol.symmetry='D2h'
mol.build()
hf=scf.RHF(mol).x2c()
hf.conv_tol=1e-6
hf.max_cycle=150
hf.level_shift=0.5
hf.diis_space=15
hf.irrep_nelec={'Ag':(17,14),'B3u':(9,6),'B2u':(9,6),'B1g':(3,2),'B1u':(16,13),'B2g':(8,6),'B3g':(8,6),'Au':(3,2)}
hf.kernel()
#(hf, orb ele)
mycas=dmrgscf.DMRGSCF(hf,26,20)
mycas.frozen = 10
mycas.kernel()
#mycas.analyze()
mrpt.NEVPT(mycas).kernel()
#mps_nevpt_e1 = mrpt.NEVPT(mycas).compress_approx(maxM=100).kernel()
and the end of output is:
macro iter 1 (21 JK  4 micro), CASSCF E = -22535.2751255222  dE = -0.024548862  S^2 = 90.0000000
|grad[o]|=0.103  |grad[c]|= None  |ddm|=0.193
macro iter 2 (21 JK  4 micro), CASSCF E = -22535.2861976856  dE = -0.011072163  S^2 = 90.0000000
|grad[o]|=0.0605  |grad[c]|= None  |ddm|=0.0829
macro iter 3 (21 JK  4 micro), CASSCF E = -22535.2914319729  dE = -0.0052342873  S^2 = 90.0000000
|grad[o]|=0.0226  |grad[c]|= None  |ddm|=0.0522
macro iter 4 (20 JK  4 micro), CASSCF E = -22535.2953770112  dE = -0.0039450383  S^2 = 90.0000000
|grad[o]|=0.00958  |grad[c]|= None  |ddm|=0.0396
macro iter 5 (13 JK  4 micro), CASSCF E = -22535.2955474676  dE = -0.00017045641  S^2 = 90.0000000
|grad[o]|=0.00268  |grad[c]|= None  |ddm|=0.0126
macro iter 6 (9 JK  2 micro), CASSCF E = -22535.2955480554  dE = -5.8775913e-07  S^2 = 90.0000000
|grad[o]|=0.000225  |grad[c]|= None  |ddm|=0.000964
macro iter 7 (6 JK  1 micro), CASSCF E = -22535.2955480863  dE = -3.0973752e-08  S^2 = 90.0000000
|grad[o]|=6.09e-05  |grad[c]|= None  |ddm|=0.000173
1-step CASSCF converged in 7 macro (111 JK 23 micro) steps
CASSCF canonicalization
Density matrix diagonal elements [1.70479134 0.99850423 0.99850426 0.97200396 0.99996513 0.99996513
0.99998595 0.99998595 0.99987663 0.99994253 0.99975008 0.9996039
0.99977248 0.99977248 0.99972122 1.00318133 0.96530801 0.96530807
0.16771685 0.03755914 0.03755917 0.09333411 0.03178561 0.03178547
0.01444192 0.97987507]
CASSCF energy = -22535.2955480863
CASCI E = -22535.2955480863  E(CI) = -92.6048323106697  S^2 = 90.0000000

@xubwa
Thanks for your help. Yes, the frozen-core seems to be the error source. However, when I turn off the frozen core approximation, I got the following slurm error message:
ERROR: srun /public1/home/sc40147/block/mpi-block-1.5.3/block.spin_adapted dmrg.conf > dmrg.out 2>&1
overwrite output file: Gd2vdz.out
......production of RDMs took    3182.53 sec
......reading the RDM took        136.71 sec
Traceback (most recent call last):
File "Gd2vdz.py", line 51, in
mrpt.NEVPT(mycas).kernel()
File "/public1/home/sc40147/pyscf/pyscf/mrpt/nevpt2.py", line 751, in kernel
norm_Sr   , e_Sr    = Sr(self, self.load_ci(), dms, eris)
File "/public1/home/sc40147/pyscf/pyscf/mrpt/nevpt2.py", line 313, in Sr
a16 = mc.fcisolver.nevpt_intermediate('A16',ncas,mc.nelecas,ci)
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/dmrgci.py", line 679, in nevpt_intermediate
executeBLOCK(self)
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/dmrgci.py", line 930, in executeBLOCK
raise err
subprocess.CalledProcessError: Command 'srun /public1/home/sc40147/block/mpi-block-1.5.3/block.spin_adapted dmrg.conf > dmrg.out 2>&1' returned non-zero exit status 134
srun: error: c7301: task 0: Exited with exit code 1
and the output shows that:
DMRG-NEVPT
CPU time for 3pdm, 4pdm    158.46 sec, wall time   3334.12 sec
CPU time for integral transformation     62.62 sec, wall time      3.24 sec
CPU time for eri-4pdm contraction      0.00 sec, wall time      0.00 sec
ERROR: srun /public1/home/sc40147/block/mpi-block-1.5.3/block.spin_adapted dmrg.conf > dmrg.out 2>&1
Block  Copyright (C) 2012  Garnet K.-L. Chan
This program comes with ABSOLUTELY NO WARRANTY; for details see license file.
This is free software, and you are welcome to redistribute it
under certain conditions; see license file for details.
Reading input file
m_hf_occ_user integral
/tmp/24109
The Fiedler routine for finding the orbital ordering has already been run.
Using the reorder file /tmp/24109/node0//RestartReorder.dat
7 8 6 5 11 10 12 9 4 15 14 13 2 3 19 17 18 24 23 26 25 21 20 1 22 16
open orbs   :
closed orbs :
Initial HF occupancy guess: 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Checking input for errors
Summary of input
Total number of orbitals                           :   26
Symmetry of the targeted wavefunctions             :   20:18:1
Number of wavefunctions targeted                   :   1
Symmetry of the molecule                           :   d2h
Irreducible representations of the orbitals        :   B2g  B3g  B3u  B2u  Au  B1g  B1u  Ag  Ag  B1u  B3g  B2g  B2u  B3u  Ag  B2u  B3u  B3g  B2g  B1g  Ag  B3u  B2u  Ag  Ag  B1u
Schedule
Iter       : # States              Davidson_tol          Random_noise
0          : 1000                  1.000000e-10          0.000000e+00
Maximum sweep iterations                           :   38
allocating 250000000 doubles
**** STACK MEMORY REMAINING ***** 2.000000000000 GB
Invalid calculation types
srun: error: c7301: task 0: Aborted

@lqhenwunai, are you sure that your machine has enough memory to handle the job you're trying to run? Can you test running on a node with more memory?
Another possibility could be that you're using x2c and I'm not sure if x2c + NEVPT2 is supported yet. Maybe try running without it.

@jamesETsmith Thanks for your reply. Yes I have 256Gb memory in total and I asked for 20 cores for my calculation with max_memory=10000. I will give it more memory, but it will take for quite a few hours.
For the other question, I have modified the /pyscf/examples/mrpt/02-cr2_nevpt2/cr2-scan.py input to include the x2c hamiltonian. The calculation runs smoothly.
Nevpt2 Energy = -1.002358495310894
CPU time for SC-NEVPT2   3522.94 sec, wall time    130.83 sec
And if I understand correctly, once the the integrals have been decorated by x2c, the integrals should be fine to use by any methods, since methods like nevpt2 only deal with density matrices. Please correct me if I am wrong.
Thanks again for your time.
Best,

@lqhenwunai I think it would be fine to decorate methods by sfx2c and it doesn't change anything except the integral will be scalar relativistic, but I read your input, it is scf.RHF().x2c(), this is gonna decorate the method to a two component hf reference, this might not be able to work, you might need to do mf = scf.sfx2c1e(scf.RHF()) to get a scalar relativistic Hartree-Fock reference.

@xubwa Many thanks for your suggestion. But
I have also performed the x2c-nevpt2 calculation for the Cr2 calculation as mentioned some time earlier:
"For the other question, I have modified the /pyscf/examples/mrpt/02-cr2_nevpt2/cr2-scan.py input to include the x2c hamiltonian. The calculation runs smoothly.
Nevpt2 Energy = -1.002358495310894
CPU time for SC-NEVPT2 3522.94 sec, wall time 130.83 sec"
And I turn on the x2c by m = scf.RHF(mol).x2c(), in the same way as I did for the other case.
Lastly,

The previous hf=scf.RHF(mol).x2c() calculation and the suggested hf = scf.sfx2c1e(scf.RHF(mol)) calculation give identical HF energy:
Gd2vdz.out:converged SCF energy = -22535.2698969315
Gd2vdz-x2c1e.out:converged SCF energy = -22535.2698969315

and in the /pyscf/examples/x2c/01-spin_free_x2c.py, it says:
"x2c1e is the same to the .x2c method in the current implementation

so I feel the x2c is capable to be run with nevpt2.
Thank you very  much.

I increased the memory to 20000, and got the same error.

Hm @lqhenwunai, that's good that x2c() works with the cr2 example thanks for trying that! I just looked closer at pyscf/examples/dmrg and there are several examples there showing x2c() + NEVPT2, sorry for not looking more carefully earlier.
Two things about your memory tests, first, setting max_memory=20000 only lets PySCF use 20GB of memory, which in my experience is pretty small.
Second, from the errors you posted earlier, it looks like you are running out of memory during the block calculation so upping the memory in PySCF probably won't help alleviate any memory bottlenecks. There might be some tricks you can play with Block to increase the memory, but I think you need a node with more memory than 256 GB.
Here are some comments from a Cr2 example that say you need about 200GB and since your system is larger you probably need more.
https://github.com/pyscf/pyscf/blob/f5b7e8fff019c716b4b4ea9f20c91bb1694b8f5d/examples/dmrg/30-dmrg_casscf_nevpt2_for_Cr2.py#L8-L10

Dear @jamesETsmith
Many thanks for your help.
One last question, does "max_memory" control the total memory or the the memory allocated for each processor?
And I wonder how much memory was given for the Nature Chem paper?
"Electronic landscape of the P-cluster of nitrogenase as revealed through many-electron quantum wavefunction simulations"

When using MPI, Block uses distributed memory, so if you have many nodes,
the memory available to Block will scale with the number of nodes. I don't
know the precise amount of memory used for the P-cluster calculation, but
I'm guessing the largest calculation used a few Tb.
To enable the Cr2 calculation to run you can use a smaller M (e.g. 500).
Note that running DMRGSCF is quite expensive as many DMRG calculations have
to be completed; usually one can get the orbitals from a cheap DMRGSCF
(with small M) and then run a final DMRGCI (with large M). The input script
corresponds to the production runs used for the 2016 paper by Guo et al on
the Cr2 dimer and thus are probably not the best "small" case to run.
On Sat, Feb 1, 2020 at 5:13 PM lqhenwunai<EMAIL_ADDRESS>wrote:

Dear @jamesETsmith https://github.com/jamesETsmith
Many thanks for your help.
One last question, does "max_memory" control the total memory or the the
memory allocated for each processor?
And I wonder how much memory was given for the Nature Chem paper?
"Electronic landscape of the P-cluster of nitrogenase as revealed through
many-electron quantum wavefunction simulations"
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pyscf/pyscf/issues/499?email_source=notifications&email_token=AAN5NRD226UGJ2I4A5N4HFLRAYM27A5CNFSM4KJL4QMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKRK2HQ#issuecomment-581086494,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAN5NRF3NVRRCLUWWJ5ATVLRAYM27ANCNFSM4KJL4QMA
.

@gkc1000
Many thanks. But I do not know much of parallel calculations. So I have to ask out IT engineers to help build the pyscf and block. However, we got some multi-node parallel issues and we need some help on it.
First of all, we use slurm to manage the jobs. Part of our slurm script is:
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -c nthread
We have to use multi-thread to run the calculation parallelly. Setting up SBATCH -n 8 (for example) does not have pyscf/block function normally.
Is that normal?
Secondly, we tried to run multi-node calculations. We write the script as:
#SBATCH -N 4
#SBATCH -n 4
#SBATCH -c nthread
but it shows error messages indicating the multi-process run is failed.
So does pyscf/block multi-process parallization? If so, how do we set up?
I don't know much of parallel calculations. Please tolerate my questions.
Many thanks.

Block should recognize the number of threads by the value of your
environment variable OMP_NUM_THREADS. You don't need to do anything special
in your batch file for number of threads. Batch file should just specify
the number of processors.
Just make sure that numthreads x numprocs is equal to the number of
physical cores otherwise it can be inefficient.
After the job is running, you should be able to use the "top" command to
see what cpu percentage each of the processors is using, this should be
roughly numthreads x 100.
Sandeep.
On Sun, Feb 2, 2020 at 2:20 AM lqhenwunai<EMAIL_ADDRESS>wrote:

@gkc1000 https://github.com/gkc1000
Many thanks. But I do not know much of parallel calculations. So I have to
ask out IT engineers to help build the pyscf and block. However, we got
some multi-node parallel issues and we need some help on it.
First of all, we use slurm to manage the jobs. Part of our slurm script is:
#SBATCH -N 1
#SBATCH -n 1
#SBATCH -c nthread
We have to use multi-thread to run the calculation parallelly. Setting up
SBATCH -n 8 (for example) does not have pyscf/block function normally.
Is that normal?
Secondly, we tried to run multi-node calculations. We write the script as:
#SBATCH -N 4
#SBATCH -n 4
#SBATCH -c nthread
but it shows error messages indicating the multi-process run is failed.
So does pyscf/block multi-process parallization? If so, how do we set up?
I don't know much of parallel calculations. Please tolerate my questions.
Many thanks.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pyscf/pyscf/issues/499?email_source=notifications&email_token=AABVW4BM4MEOFPFZALC4XATRA2F4PA5CNFSM4KJL4QMKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEKRRZPI#issuecomment-581115069,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABVW4DC6IKJ7KKTTWS4QFLRA2F4PANCNFSM4KJL4QMA
.

Dear @sanshar
Thanks for your reply. But I did another 2 tests:

I ran the /pyscf/examples/dmrg/01-dmrg_casscf_with_block.py, and the calculation finished normally.
But when I add the sentence at the end of input:
mrpt.NEVPT(mc).kernel()
the calculation returns:
**** STACK MEMORY REMAINING ***** 2.000000000000 GB
you are running 10
Invalid calculation types
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
allocating 250000000 doubles
srun: error: c7403: tasks 0-19: Aborted
Traceback (most recent call last):
File "dmrg_casscf_with_block.py", line 43, in
mrpt.NEVPT(mc).kernel()
File "/public1/home/sc40147/pyscf/pyscf/mrpt/nevpt2.py", line 751, in kernel
norm_Sr   , e_Sr    = Sr(self, self.load_ci(), dms, eris)
File "/public1/home/sc40147/pyscf/pyscf/mrpt/nevpt2.py", line 313, in Sr
a16 = mc.fcisolver.nevpt_intermediate('A16',ncas,mc.nelecas,ci)
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/dmrgci.py", line 679, in nevpt_intermediate
executeBLOCK(self)
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/dmrgci.py", line 930, in executeBLOCK
raise err
subprocess.CalledProcessError: Command 'srun /public1/home/sc40147/block/mpi-block-1.5.3/block.spin_adapted dmrg.conf > dmrg.out 2>&1' returned non-zero exit status 134
It is only N2 with vdz sets and a (8,8) active space. So I think the memory shouldn't be a problem.
2)And then I ran ~/pyscf/examples/dmrg/02-dmrg_nevpt2.py, I got the following error message:
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/nevpt_mpi.py", line 431, in _write_integral_file
nevpt_integral_mpi(sys.argv[1],sys.argv[2],sys.argv[3],sys.argv[4])
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/nevpt_mpi.py", line 286, in nevpt_integral_mpi
ncas, partial_core, partial_virt = _write_integral_file(mc_chkfile, nevpt_scratch, comm)
raise RuntimeError('No job for this processor.  It may block MPI.COMM_WORLD.barrier')
raise RuntimeError('No job for this processor.  It may block MPI.COMM_WORLD.barrier')
raise RuntimeError('No job for this processor.  It may block MPI.COMM_WORLD.barrier')
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/nevpt_mpi.py", line 431, in _write_integral_file
RuntimeError: No job for this processor.  It may block MPI.COMM_WORLD.barrier
RuntimeError: No job for this processor.  It may block MPI.COMM_WORLD.barrier
RuntimeError: No job for this processor.  It may block MPI.COMM_WORLD.barrier
raise RuntimeError('No job for this processor.  It may block MPI.COMM_WORLD.barrier')
RuntimeError: No job for this processor.  It may block MPI.COMM_WORLD.barrier
srun: error: c7202: tasks 0-19: Exited with exit code 1
ERROR: srun /public1/home/sc40147/pyscf/pyscf/dmrgscf/nevpt_mpi.py /public1/home/sc40147/projects/Ln2/pyscf/casscf/cr2/test2/dmrg_nevpt2/mytest/scratch/1212/nevpt_perturb_integral /public1/home/sc40147/block/block-1.5.3/block.spin_adapted /public1/home/sc40147/projects/Ln2/pyscf/casscf/cr2/test2/dmrg_nevpt2/mytest/scratch/1212 /public1/home/sc40147/projects/Ln2/pyscf/casscf/cr2/test2/dmrg_nevpt2/mytest/scratch/1212
overwrite output file: fci_nevpt2.out
CI NEVPT = 0 0
overwrite output file: dmrg_nevpt2_slow.out
......production of RDMs took      91.06 sec
......reading the RDM took          0.01 sec
Traceback (most recent call last):
File "dmrg_nevpt2.py", line 132, in
mps_nevpt_e1 = mrpt.NEVPT(mc,root=0).compress_approx(maxM=100).kernel()
File "/public1/home/sc40147/pyscf/pyscf/mrpt/nevpt2.py", line 737, in kernel
tol=self.tol)
File "/public1/home/sc40147/pyscf/pyscf/dmrgscf/nevpt_mpi.py", line 254, in DMRG_COMPRESS_NEVPT
raise err
subprocess.CalledProcessError: Command 'srun /public1/home/sc40147/pyscf/pyscf/dmrgscf/nevpt_mpi.py /public1/home/sc40147/projects/Ln2/pyscf/casscf/cr2/test2/dmrg_nevpt2/mytest/scratch/1212/nevpt_perturb_integral /public1/home/sc40147/block/block-1.5.3/block.spin_adapted /public1/home/sc40147/projects/Ln2/pyscf/casscf/cr2/test2/dmrg_nevpt2/mytest/scratch/1212 /public1/home/sc40147/projects/Ln2/pyscf/casscf/cr2/test2/dmrg_nevpt2/mytest/scratch/1212' returned non-zero exit status 1
Are those example inputs able to be run on your nodes?
Many thanks.

Hi @lqhenwunai , thanks for your question! Since it has been a while, I was wondering whether your question has been resolved since then?

Hi @verena-neufeld, Thanks for the reminder. The problem was not resolved, but I did not give more attempts on it since then. You may close the topic if necessary.
Thanks again to everyone who offered the help.


Incorrect file size

An user of an external tool got this problem with FO 4.2.0-beta.6:

https://github.com/Fabulously-Optimized/fabulously-optimized/blob/v4.2.0-beta.6/Modrinth/modrinth.index.json has 382089 as the size while https://api.modrinth.com/v2/version/2jLdI2KI reports 381965 as the size
MultiMC and PolyMC install succeeded without errors, ATLauncher succeeded as well with these logs:
[24/08/2022 18:18:04 PM] httpscdnmodrinthcomdataPmwWNPV6fbfd53335d3c2ff8123892fc794784acf0b8afd2png (of size 52978) hash didn't match, but we're ignoring failures, so continuing
[24/08/2022 18:18:04 PM] httpscdnmodrinthcomdataNAgQgs3R69f87a3ebcce34aa6949c85714963c34e7290142png (of size 5134) hash didn't match, but we're ignoring failures, so continuing
[24/08/2022 18:18:04 PM] httpscdnmodrinthcomdataKcQmWfASiconjpeg (of size 493) hash didn't match, but we're ignoring failures, so continuing
[24/08/2022 18:18:04 PM] httpscdnmodrinthcomdataCwO5tehZ4b774c34c1ec6b2b419b8741bc976b6b0cbf8d84png (of size 242621) hash didn't match, but we're ignoring failures, so continuing
[24/08/2022 18:18:04 PM] httpscdnmodrinthcomdataBYN9yKrV16115fb7dd915cf802556bccc47bd2544dd938ebpng (of size 148887) hash didn't match, but we're ignoring failures, so continuing
[24/08/2022 18:18:04 PM] httpscdnmodrinthcomdatabxWt0XMViconjpg (of size 26974) hash didn't match, but we're ignoring failures, so continuing

MMC-export v2.5.3.

Sorry I can't test the changes rn, so please if there any problems don't blame me.

The original file is now correct but NoFade is now incorrect:

Sorry I still can't test changes, report any problem you encounter

NoFade's filesize is now 0 and every other GitHub mirror link is gone. CITResewn's filesize is correct.

That must work.

Looks correct now, only CITResewn file size is changed.

Only NOW it's fixed.


[BD-46] docs: update documentation for multiple components

improve documentation for
Scrollable
SearchField
Sheet
Spinner
StandardModal
StatefulButton
Stepper
Table Filters
TableControlBar
TableFooter
Tabs
Toast
Tooltip
TransitionReplace
JIRA: PAR-578

Thanks for the pull request, @monteri! I've created OSPR-6238 to keep track of it in JIRA, where we prioritize reviews. Please note that it may take us up to several weeks or months to complete a review and merge your PR.
Feel free to add as much of the following information to the ticket as you can:

supporting documentation
Open edX discussion forum threads
timeline information ("this must be merged by XX date", and why that is)
partner information ("this is a course on edx.org")
any other information that can help Product understand the context for the PR

All technical communication about the code itself will be done via the GitHub pull request interface. As a reminder, our process documentation is here.
Please let us know once your PR is ready for our review and all tests are green.

@monteri 🎉 Your pull request was merged!  Please take a moment  to answer a two question survey so we can improve your experience in the future.

:tada: This PR is included in version 17.2.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


bug:  When Reference-style Links used in URL and Images in code block , it happened a nil value

Neovim version (nvim -v)
0.10
Operating system
Windows
Terminal emulator / GUI
Weztem
Describe the bug
When Reference-style Links used in URL and Images in code block , it happened a nil value.  It's seem so strict to detect the Ref's format
Expected behavior
Work normally
Healthcheck output
==============================================================================
render-markdown: require("render-markdown.health").check()
render-markdown.nvim [version] ~

OK plugin 6.3.6
OK neovim >= 0.10

render-markdown.nvim [configuration] ~

OK valid

render-markdown.nvim [nvim-treesitter] ~

OK installed
OK markdown: parser installed
OK markdown: highlight enabled
OK markdown_inline: parser installed
OK markdown_inline: highlight enabled
OK latex: parser installed

render-markdown.nvim [executables] ~

WARNING latex2text: not installed

ADVICE:

Disable LaTeX support to avoid this warning by setting { latex = { enabled = false } }

render-markdown.nvim [conflicts] ~

OK headlines: not installed
OK obsidian: installed but should not conflict

Plugin configuration
return {
{
"MeanderingProgrammer/render-markdown.nvim",
-- enabled = false,
opts = {},
dependencies = { "nvim-treesitter/nvim-treesitter", "echasnovski/mini.nvim" }, -
config = function()
require("render-markdown").setup({
heading = {
icons = { "① ", "② ", "③ ", "④ ", "⑤ ", "⑥ " },
},
})
end,
},
}
Plugin error log
Error executing vim.schedule lua callback: ...render-markdown.nvim/lua/render-markdown/render/code.lua:149: attempt to call field 'inverse_bg' (a nil value)
stack traceback:
...render-markdown.nvim/lua/render-markdown/render/code.lua:149: in function 'background'
...render-markdown.nvim/lua/render-markdown/render/code.lua:76: in function 'render'
...r-markdown.nvim/lua/render-markdown/handler/markdown.lua:39: in function 'callback'
...ender-markdown.nvim/lua/render-markdown/core/context.lua:134: in function 'query'
...r-markdown.nvim/lua/render-markdown/handler/markdown.lua:34: in function 'parse'
...azy/render-markdown.nvim/lua/render-markdown/core/ui.lua:173: in function 'parse_tree'
...azy/render-markdown.nvim/lua/render-markdown/core/ui.lua:141: in function 'parse_buffer'
...azy/render-markdown.nvim/lua/render-markdown/core/ui.lua:86: in function 'update'
...azy/render-markdown.nvim/lua/render-markdown/core/ui.lua:57: in function <...azy/render-markdown.nvim/lua/render-markdown/core/ui.lua:56>
Confirmations

[X] I have provided text for all screenshots & understand that my issue will be closed if I have not

Additional information
[Google][]

[Google]: http://google.com/

![alt text][id]

[id]: /path/to/img.jpg "Title"

It works well
But if this happens
```md

[Google][]

[Google]: http://google.com/

![alt text][id]

[id]: /path/to/img.jpg "Title"

The plugin configuration and healthcheck are always required.
I am unable to replicate this with your example, try updating the plugin.

Unfortunately I didn't get the gif, I ended up surmising that it was an error caused by the upstream treesitter not updating, and I didn't get an error after updating the dependency with Lazy, I'm going to close it


Turn off HPA on demo profile

Currently each component has 10m cpu requests and an HPA that scales at
80% CPU usage meaning they will immediately scale up.
This turns off the HPA for the demo.
Fixes https://github.com/istio/istio/issues/15338
[ ] Configuration Infrastructure
[ ] Docs
[x] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: howardjohn
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS [howardjohn]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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

Test name
Commit
Details
Rerun command

prow/integ-new-installer-k8s-presubmit-tests.sh
f57fa4264af841d96c3c80841d031a9683c9fd7f
link
/test integ-new-install-k8s-presubmit-tests-master

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

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

Test name
Commit
Details
Rerun command

prow/integ-new-installer-k8s-presubmit-tests.sh
f57fa4264af841d96c3c80841d031a9683c9fd7f
link
/test integ-new-install-k8s-presubmit-tests-master

prow/integ-mixer-k8s-presubmit-tests.sh
f57fa4264af841d96c3c80841d031a9683c9fd7f
link
/test integ-mixer-k8s-presubmit-tests-master

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

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: howardjohn, mandarjog
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

install/OWNERS [howardjohn,mandarjog]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

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

Test name
Commit
Details
Rerun command

prow/integ-new-installer-k8s-presubmit-tests.sh
f57fa4264af841d96c3c80841d031a9683c9fd7f
link
/test integ-new-install-k8s-presubmit-tests-master

prow/integ-mixer-k8s-presubmit-tests.sh
f57fa4264af841d96c3c80841d031a9683c9fd7f
link
/test integ-mixer-k8s-presubmit-tests-master

prow/integ-security-k8s-presubmit-tests.sh
f57fa4264af841d96c3c80841d031a9683c9fd7f
link
/test integ-security-k8s-presubmit-tests-master

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


Provide default init method implementation

I don't want to have to define a default init method when I have nothing special to define in the default state. I would like a default implementation to be provided in circumstances where I am not interested in specifying a stateId.

This issue would probably be best moved to Ergo.
There is a default init already, which I think is
clause init() : Response {
   set state AccordState {
       stateId: "...",
   }
  return Response{}
}

Does that address this issue, or is this about something else?

This issue would probably be best moved to Ergo.
There is a default init already, which I think is
clause init() : Response {
   set state AccordState {
       stateId: "...",
   }
  return Response{}
}

Does that address this issue, or is this about something else?

I would be in favour of removing stateId altogether, but this might be a bit aggressive.
I'm not sure what the use case for stateId is and if anyone is using it. Feedback on this would be welcome.

I would like a default implementation that works even if I have a custom state object. For example:
clause init(request : Request) : Response {
set state BusinessLicenseState {
stateId: "Initial State",
businessNameQuery: none,
businessLicense: none
};
return Response{}
}

I would like a default implementation that works even if I have a custom state object. For example:
clause init(request : Request) : Response {
set state BusinessLicenseState {
stateId: "Initial State",
businessNameQuery: none,
businessLicense: none
};
return Response{}
}

Oh. I see, I didn't get that. That sounds like this would need the ability to synthesize a valid value based on its (arbitrary) type, which definitely requires some thinking and possibly non-trivia work.
I'm not personally a super big fan of magic things, which it feels like this is what it would be, but we could discuss requirements & design for something along those lines.


Builder helm from source

Issue description
Currently helm is downloaded as static binary, but could be built from source. While this is not a party breaker, we tend to have packages built from source. If someone will have time and will to learn how to package go packages, it's a good example to package. In general using buildGoPackage could do the trick, but not always. go2nix could also be usefull sometimes.

@rlupton20 can't assign you, but here's the issue :)

Thanks. I'll try to take a look at this.

(triage) has this been fixed?

@Profpatsch I'm working on this at the moment, it hasn't been fixed

Done and merged into master :D


correct private listener description

Just a minor text edit to correct the description of the private listener output.

Sorry, I just saw this is already taken care of here: https://github.com/nathanpeck/aws-cloudformation-fargate/pull/8


Fix linter WARNINGS

Codecov Report

Merging #8 (79a8027) into main (2fcd57c) will decrease coverage by 0.06%.
Report is 3 commits behind head on main.
The diff coverage is n/a.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@            Coverage Diff             @@
##             main       #8      +/-   ##
==========================================
- Coverage   58.72%   58.66%   -0.06%
==========================================
  Files         117      117
  Lines       23297    23255      -42
  Branches    12960    12932      -28
==========================================
- Hits        13680    13642      -38
- Misses       7353     7354       +1
+ Partials     2264     2259       -5

Flag
Coverage Δ

packchk-cov
64.16% <ø> (ø)

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

Files
Coverage Δ

tools/projmgr/src/ProjMgrGenerator.cpp
88.34% <ø> (-0.09%)
:arrow_down:

tools/projmgr/src/ProjMgrYamlEmitter.cpp
94.22% <ø> (+0.07%)
:arrow_up:

tools/svdconv/SVDModel/src/SvdItem.cpp
53.79% <ø> (-0.14%)
:arrow_down:

... and 2 files with indirect coverage changes


[error] (protocol / Compile / compileIncremental) Compilation failed

Hello,
I cloned the latest wakfutcp (as of 2018/2/23) and did the following. sbt clientExample/run gave a compilation error.

edited my credentials in application.conf
added PB.pythonExe := "C:\\Python27\\Python.exe", in build.sbt
replaced "Derp" with my character name in MarketSniffer.scala

The error suggests something's happening in \protocol\src\main\scala\wakfutcp\protocol\raw\character.scala.
The exact error is as follows.
clientExample_error.log
Did I do anything wrong?

I am having the same problem, any news on it?
Following the error:
[info] Loading project definition from /wakfutcp/project/project
[info] Loading settings from plugins.sbt,scalapb.sbt ...
[info] Loading project definition from /wakfutcp/project
[info] Loading settings from build.sbt ...
[info] Set current project to wakfutcp (in build file:/wakfutcp/)
[info] Compiling 198 Scala sources to /wakfutcp/protocol/target/scala-2.12/classes ...
[error]/wakfutcp/protocol/src/main/scala/wakfutcp/protocol/raw/character.scala:20:96: could not find Lazy implicit value of type wakfutcp.protocol.Codec[V]
[error]   implicit val forLocalCharacterInformationCodec: Codec[ForLocalCharacterInformation] = mkCodec(8)
[error]                                                                                ^
[error] one error found
[error] (protocol / Compile / compileIncremental) Compilation failed
[error] Total time: 21 s, completed 12.03.2018 14:46:11

The issue seems to be related to how codecs are being generated, it often fails when the data is very deeply nested (e.g. local character information). I've pushed some changes that might fix it for you. Make sure to run sbt clean before trying to build it again.


Add pagination for queries using havings

Apply Laravel 7.x PR to fix this:
ref. laravel/framework#32688
Thanks to @alvaro-canepa and @acasar for this!
ref. https://github.com/octobercms/library/pull/540

Replaced by https://github.com/wintercms/storm/pull/39.


A couple of bandwidth_upload-related fixes

It took me a while to figure out why configuring bandwidth_upload is necessary and what would happen if one didn’t configure it, so here are a bunch of small improvements on the documentation.

I've set bandwidth_upload on both server and client side. On the client side it seems to have little effect, is that expected. In the 1.0 to 2.x upgrade.m it suggests: bandwidth_download must be replaced by bandwidth_upload on the server side and removed client side. Does that mean that on the client side you can't set bandwidth?
Cheers
Mark.

First, sorry for the late anwser.
mlvpn release has a bug in the roundrobind algorithm. The system calculates a weight based on "bandwidth_upload" of all the active links. The result is set as a float ( 1024Kbps on one link, 768Kbps on the other will make a wrr of like 1 on the first link and 0.75 on the other). The problem is that the system which choose what link to send a packet to does not handle properly the floating point values and uses integers.
As a result, a weigh of 0.75 is considered like a 1.0, so the balancing does not take into account the weight properly.
I'm working on a patch which will solves this problem.
bandwidth_download and bandwidth_upload was used the following way:

If mode == "server": use bandwidth_download
If mode == "client": use bandwidth_upload

It was not very clear in the configuration what this system was doing, so it was replaced by a single parameters on BOTH sides: "bandwidth_upload".
If your server is the one with big bandwidth, then, bandwidth_upload corresponds to the "client" download speed, and the other way around for the client upload speed.
You'll need to set it on both side corresponding to the expected maximum speed you want.

Btw thank you for the merge request, I'll need some more time to get back from holidays and work on thoses patches

Seems like that explains my issue.

Addressed your comments. Please take another look.


fix/30-help-list: Adding reserved commands to devcmd

This pull request (for issue #30 ) adds the option of using reserved commands to devcmd. Reserved commands can be any command that starts with "--". The reserved commands have to be started seperately from the devcmd-cli, since we 1) dont want devcmd to look for a "--help.ts" file and 2) dont want node to try and display the "node --help" output.
Examples:

@lenaxus I was not able to reproduce the error you just posted. For me everything works in a clean devcontainer:

@lenaxus @lieberlois, I won't be able to re-test this until next weekend, but I think you should try to look into @lenaxus's issues with testing these changes. The problem might be in the dev setup (either @lenaxus's local setup or the dev instructions), but we should try to make this more reliable to set up if it's not a localized problem.
I suggest you two take a look at the problem together, but it would be great if you could post an update here if you find out what the cause was :)
otherwise, @lenaxus please try to re-setup your local devcmd environment, and include any errors you get during setup in a comment (here or maybe in a new issue)

@lehnerpat Sorry for only adding those changes now, I didnt have much spare time recently. I adapted the code to a) no longer swallow the promise you described and b) properly list the available commands.
@lenaxus Please create an issue and describe your changes with the dev setup, I will try to reproduce it and fix it in a separate PR :)


Fails to start

Hi,
I just wanted to try it Kinectron on a fresh Window 10 Pro 64bit installation, but it fails with a node error: Module not found.
Does anybody have any idea what could be causing this or how to work around it?
Thanks

I've seen this happen before when the app unpacks incorrectly. Try deleting the folder and re-downloading the application. Make sure that you unzip it in the c:/ level to avoid issues with file name length in Windows.

Yeah, furthermore this was running in a VM that only supported DX10, so Kinect would've not worked anyway.
Kinectron works fine when running on bare-metal.
So, I'll be closing this.


Remove unnecessary boolean from template for DirIterator

I think this whole boolean is not necessary. I don't see how it helps. Going to see if this passes CI.

generated/linux/release/64/../../../../../phobos/std/algorithm/iteration.d:1313: error: undefined reference to '_D3std4file__T12_DirIteratorZQp15__fieldPostblitMFNaNbNiNlZv'
generated/linux/release/64/../../../../../phobos/std/algorithm/iteration.d:1311: error: undefined reference to '_D3std4file__T12_DirIteratorZQp11__fieldDtorMFZv'

Looks like it was necessary.

Git blame: https://github.com/dlang/phobos/pull/8368

It does not... but.. I'm very confused why it passes with the boolean and doesn't pass without.

@Geod24 I am aware of the origin. I'm trying to figure out how it works. Do you know? As far as I can tell, the boolean is not used anywhere, so I don't see why it matters.

A simple local test fails to link as well, even with the boolean in place.

Most likely it is because Phobos is distributed compiled. So it includes a dirEntry symbol that has the non-DIP1000 ABI, because DIP1000 is not yet enabled. But as soon as you compile your code with -dip1000, the compiler expect a certain ABI, but the binary includes another, leading to linker error. Or at least that's the issue I remember with DIP1000 & Phobos.

Yes, it's a linker error. But the compiler invocation does not see the boolean in terms of how phobos is compiled, it sees it in terms of how the local module is compiled.
So why does it work? What special thing about this boolean makes it decide "aha! I need to emit something extra here"?

To me this looks like a compiler bug, with a weird workaround. But I don't have time to chase it. I was mostly just curious what the error was it is "fixing".

Locally I have:
0000000000000000 W @trusted void std.file._DirIterator!(true)._DirIterator.__fieldDtor()
0000000000000000 W pure nothrow @nogc scope @trusted void std.file._DirIterator!(true)._DirIterator.__fieldPostblit()

A.k.a:
0000000000000000 W _D3std4file__T12_DirIteratorVbi1ZQt11__fieldDtorMFNeZv
0000000000000000 W _D3std4file__T12_DirIteratorVbi1ZQt15__fieldPostblitMFNaNbNiNlNeZv

Missing symbols:
_D3std4file__T12_DirIteratorZQp15__fieldPostblitMFNaNbNiNlZv
_D3std4file__T12_DirIteratorZQp11__fieldDtorMFZv

A.k.a:
pure nothrow @nogc scope void std.file._DirIterator!()._DirIterator.__fieldPostblit()
void std.file._DirIterator!()._DirIterator.__fieldDtor()

So it looks like an attribute mismatch ?

The attribute mismatch is expected. What we don't understand is, why does the boolean fix it?

The attribute mismatch is expected. What we don't understand is, why does the boolean fix it?

@pbackus @schveiguy I happened to stumble upon your related Discord discussion now, and consequently found this. I can explain. Steven's example:
For context, this is my file: ```d
module lib;

private auto dip1000Test(int x) {return *&x;}

enum dip1000Enabled
    = is(typeof(&dip1000Test) : int function(int) @safe);

auto fun(bool useDIP1000 = dip1000Enabled)(int arg)
{
    pragma(msg, useDIP1000);
    int n = arg;
    scope int *p = &n;
    return *p;
}

alias realFun = fun!();

Assuming you tested this with call to realFun from the client code, you have instantiated the template in the library, with whatever DIP1000 flag the library compilation had. However, if you call fun from client code (or equally dirEntries) the template instantiation happens at the client code, along with it's useDIP1000 setting.
I also saw the idea floated around that fun could simply be a template with NO parameters. This can in fact work, and was how I originally did it, but I felt the solution was too fragile. Quoting my comment from useDIP1000 flag:
// We don't use isSafe, because betterC client code needs to instantiate
// core.internal.array.comparison.__cmp in the client side. isSafe uses
// __cmp of two strings, so using it would instantate that here instead.  If dirEntries template had no parameters, all other code in Phobos would have to avoid instantiating it like the Plague, or else get extremely cryptic linker failures in the test suite. The boolean template parameter makes this a non-issue.

The boolean doesn't matter. What matters is that it causes the compiler to emit the template instantiation from client code instead of assuming the library has already generated the code for it.
Why does it omit it when the boolean is missing? If you say it's because the compiler sees that the library has already instantiated it, well, that's the same thing as with the boolean! The client code sees what it thinks the library was built with based on the current command line flags. It can't know that the library was built with different flags.
Honestly, I wonder if you just replaced the boolean default value with a true, if it would work.
I suggest this whole thing is very fragile and probably based on a compiler bug.

Why does it omit it when the boolean is missing? If you say it's because the compiler sees that the library has already instantiated it, well, that's the same thing as with the boolean! The client code sees what it thinks the library was built with based on the current command line flags. It can't know that the library was built with different flags.

I don't know for fact how it works, but I'd imagine the compiler simply keeps tracks of template attribute sets for each template that it has instantiated, and also stores that information to intermediate object files. Imagine:
DFunctionAST[[string]][DSymbol[]] instancedTemplates;

Now, when the compiler looks at phobos.a, if the compiler ended up instancing dirEntries when precompiling it, it will find instanceTemplates[["std", "file", "dirEntries"]][[DSymbol(true)]]inside the binary. When compiling client code, the compiler will look for either that or instancedTemplates[["std", "file", "dirEntries"]][[DSymbol(false)]], depending on the client code DIP1000 setting. If it doesn't match that of the precompiled binary, the template instances do not match and therefore the compiler correctly deems a new instance is needed.
The compiler doesn't know per se what settings Phobos was compiled with, but it (assuming my mental picture) knows what parameters the preinstantiated templates have used so it doesn't have to.


Too verbose

formats/AtomFormat.php + format=AtomFormat
bridges/TwitterBridge.php + bridge=TwitterBridge
How about decreasing useless verbosity and removing the redundant 'Format' and 'Bridge' from filenames ?

There is technically no reason to keep it, though in my opinion it is good practice to have the filename reflect class names. Using the prefixes also allows us to do pattern search for bridges/formats and it prevents problems in case someone decides to create a bridge for some sites.
For example json.org :grinning:
This would result in

bridges/Json

where we still have

formats/Json

So, keeping the suffix is a good way to go in my opinion.

allows us to do pattern search for bridges/formats
prevents problems in case someone decides to create a bridge for some sites

not relevant: each types has it own directory

it is good practice to have the filename reflect class names

ok for good practices
So maybe we could keep file names, but at least lighten the parameters ?
https://example.com/?action=display&format=Atom&bridge=Twitter

not relevant: each types has it own Directory

Agreed.

So maybe we could keep file names, but at least lighten the parameters ?
https://example.com/?action=display&format=Atom&bridge=Twitter

How about removing 'Bridge' and 'Format' from both file names and class names?

How about removing 'Bridge' and 'Format' from both file names and class names?

Actually forget that, it's a bad idea.
I like your query though, so if you have an idea of how to archive that, go for it :+1:

So maybe we could keep file names, but at least lighten the parameters ?
https://example.com/?action=display&format=Atom&bridge=Twitter

ok I'll do

Do you think it is possible to keep it compatible with the current version as well? Of course new queries should follow the new Format, though I would prefer not to break existing ones :confused:

errr... rss-bridge is alpha : when do you expect to break things if not now ;) ?
I will try to keep it compatible though.

Done via #361


#54 cronjobs not running

Summary
Add missing services registration.
Bug was introduced in release #53
Tested scenarios
Cronjobs are running again
Fixed issue:  #54

Hello @wannevancamp,
Looks like this branch was created from master and now trying to merge into develop? Please branch from develop to introduce the fix.
Cheers,
Ángel

@acampos1916 , this should be fixed now.


AppCode installation issues

This is an awesome plugin! I got it working very easily in Xcode, but I primarily use AppCode. I followed the instructions here, but I had a few issues (AppCode version 2016.1):

I wasn't able to install the plugin by copying it to the directory specified. Instead I had to download the .jar to my Downloads folder, go into AppCode preferences, choose "Install plugin from disk", and restart the IDE.
After the plugin was installed, it wasn't clear how to inject source. I assumed the same keyboard shortcut as the Xcode plugin, and that worked, but it would be nice to explain that in the instructions (and that it adds other menu items to the Run menu).
The "Patch project for Injection" menu item changed a pbxproj file that was for our linter, completely not needed to get this to work. The linter project happens to be version controlled as a subfolder within the main project folder, which is how I guess it found this other project.
It's nice that the Xcode version doesn't require any modifications to the project. Is this not possible with AppCode? As a workaround I added main.m to my .git/info/exclude file, but this very much seems like a hack.

Hi, do you want to open a PR on the README? That would be a big help.

I created PR https://github.com/lyahdav/injectionforxcode/pull/1 for this.
Any thoughts on items 3 or 4 from my list above?

Can you open a pull request on your change against this repo please then I can merge it? Can’t fix 3 or 4 I’m afraid as the patch to the project is required for injection to work and AppCode only works with “patched” injection.

Done in https://github.com/johnno1962/injectionforxcode/pull/144.

Cheers


Feature request: real and imag attributes for Tensors.

System information

TensorFlow version (you are using): 2.5.0
Are you willing to contribute it (Yes/No): Yes, although I may need some help to point me where this code should be.

Describe the feature and the current behavior/state.
I would like to have a real and imag property for Tensors in Tensorflow. These would simply call  to tf.math.real and tf.math.imag internally. This will make writing code with tensorflow more flexible and will bring more compatibility with numpy and python's complex type, which do have these attributes. For instance, I would like to do something like:
out = operation(input)  # Function that returns an output type depending on the input type
return out.real if isherm else out  # Different output depending on a variable (isherm) which I keep track of by other more means.

Will this change the current api? How?
Yes. It will add the real and complex attributes to Tensors/Variables. It will be backwards compatible as it only adds something new.
Who will benefit with this feature?
Anyone working with complex numbers as will bring easy and intuitive access to the real and imaginary parts of a complex tensor. I think this is specially useful for the experimental numpy behaviour.
Any Other info.
I am working with complex numbers using TensorFlow. In particular,  I am developing a python package, qutip-tensorflow, that allows backing QuTiP's Qobj with Tensorflow's Tensors. The goal is to make QuTiP benefit from some of the very useful features in TensorFlow such as operating with a GPU or auto-differentiation. The feature suggested here will help with the development of qutip-tensorflow.

@AGaliciaMartinez,
Tensorflow already had tf.math.real : Returns the real part of a complex (or real) tensor and tf.math.imag  : Returns the imaginary part of a complex (or real) tensor. Could you please have a look at the official doc link for the reference. Thank you!
https://www.tensorflow.org/api_docs/python/tf/math/real
https://www.tensorflow.org/api_docs/python/tf/math/imag

Hi @tilakrayal, indeed I was aware of these functions when I wrote this feature request. In this feature I suggest exposing these functions in the tf.Tensor properties to allow thinks like:
my_tensor.real and my_tensor.imag, similar to what would already be possible with the native class for complex numbers in python or in numpy.

We generally try to avoid having redundant ways of doing the same thing.  You can accomplish the same task with the free function tf.math.real(...), so for your example:
out = operation(input)  # Function that returns an output type depending on the input type
return tf.math.real(out) if isherm else out  # Different output depending on a variable (isherm) which I keep track of by other more means.

Is it really easier to use tensor.real than tf.math.real(tensor)?  Unlike in numpy, TF tensors are immutable, so you will not be able to assign to the real component.
We may decide to add properties to Tensor as part of a larger effort to align with the numpy API, but this is currently low priority.  You can try submitting a PR yourself for this - it should only involve adding a @property to tf.Tensor that forwards the call to tf.math.real(self).


Stringer implementation for Lab 5

Fixes #662
Review of colleague's PR #
Changes proposed in this PR:
-

i can see great work here. PR looks good to me. I think it would be good to give little description of the PR, for example adding the details of changes proposed.
I also made an optional comment of adding few more boundary test cases. Thanks


Add license file to repository.

While checking the flink sample code in the repository, I didn't find any license for it.
It would be nice if you could add that to the repo :)
The reason why I've looked up the license was, that I was evaluating whether you can contribute the Flink JMS connector code to the apache/bahir-flink repository.

Good suggestion. That's an oversight. I'll add the licence soon. We plan to use Apache 2. Would that work for you?

Yes.
I have to admit that I might have been overhasty / over excited over your code. There's already an ActiveMQ connector in Bahir, and I belive your code and ActiveMQ both support the JMS standard.
Are there any advantages of your impl over ActiveMQ?

We believe there are many advantages to our JMS. Perhaps we could add Solace JMS next to ActiveMQ. If you'd like to discus Solace JMS and ActiveMQ, feel free to email me<EMAIL_ADDRESS>since that is somewhat orthogonal to the issue you raised which I will resolve.

License agreement added.


Text rendering

Closes #271 and closes #20
Todo:

General

[x] High level version of the API.
[x] Document the text rendering process.
[ ] Be specific about what font properties affect what, and where the user can set them.
[ ] Make it such that some steps can be overloaded for custom behavior.
[ ] Make it such that the builtin steps can (hopefully) be replaced without affecting the API.
[ ] Flesh out the API.
[ ] Make things work for RTL and vertical fonts.

Discuss

[x] Place to put properties that affect positioning.
[ ] Screen-space vs world-space, how to express in API.
[ ] What builtin fonts to include.

Itemization

[x] Plain text
[ ] Markdown.
[ ] HTML (or make an issue for it).
[ ] Math (or make an issue for it).
[ ] Musical notes, would be a cool example for custom text.
[ ] Tests.

Font selection

[x] Basic font selection (stub).
[ ] Include builtin fonts.
[ ] Detect system fonts.
[ ] Tests.

Shaping and glyph generation

[x] Stub shaping that just about works.
[x] Basic shaping with Freetype.
[ ] Advanced shaping with Harfbuzz.
[x] Glyph generation with Freetype.
[x] Atlas with dynamic sizing.
[ ] Tests.

Positioning

[x] Put chars in a straight line.
[x] Text size.
[ ] Alignment.
[ ] Anchoring.
[ ] RTL text (e.g. Arabic).
[ ] Vertical text (e.g. Japanese).
[ ]  Tests.

Rendering

[x] Render rectangles at the glyph positions.
[x] Render the texture content.
[x] Actual SDF rendering.

Examples

[x] Minimal text example.

[ ] A waterfall of glyphs, to strain the atlas.
[ ] Text that updates text, or maybe an FPS helper?
[ ] One or two validation examples.

Final stuff

[ ] Docs.
[ ] More tests?
[ ] Fix todos & self-review.
[ ] Review.

Status: can render text, but each character is just a little rectangle. Note: it says "Hello world" :)

Awesome start, I'm super stoked to see this. I just had some questions which I added as comments.

I'm also glad we already thought about the API in advance

Me too. That's what made it possible to just implement the whole thing with stub rectangles. Now it's "just" a matter of filling in the blanks.

Progress on atlas and reading the atlas texture in the shader. The positioning needs some work :)

Working on SDF.
Plain bitmap (64x64):

SDF (64x64):

Worked mostly on getting the sizing correct. Once you know what units you're talking about in the shader, you can also properly implement outlineing (hooray SDF).

There's now also a validation example for the text size. Now we can compare to e.g. what the browser does (top) with our result (bottom):

The shaping seems good. The font looks a wee bit thinner though, and the aa-smoothing looks a bit much when zoomed in like this.

Seems like the difference in crispness could be related to a difference in DPI values?

Seems like the difference in crispness could be related to a difference in DPI values?

Was partly #359 and partly too much aa in the text shader.

 Will create a new issue to discuss how to do this properly, but this demonstrates it working: This was one string containing codepoints from 3 separate Noto font files.

Using SDF allows us to do italics and bold in the shader. Top shows an actual italic/bold font, bottom (gray) shows a regular font with fake italics and sdf-based boldness.

The result is not perfect, but it does mean we can produce these font effects when an actual font for that effect is not available. Plus we can scale to many weight levels (also thinner text). The bold text is very rounded in SDF, an effect that can be expected. This is something that may be improved (in the future) by using a more advanced SDF approach.

Last week I realized that also with SDF the glyphs vary considerably in size. Using a fixed size for each glyph in the atlas is thus wastefull. I therefore replaced the atlas with one that supports glyphs of varying widths.
The magic sauce (the rectangle packing, which is a research topic on itself) I took from vispy. I then added support for resizing, and also to free glyphs. In some cases the atlas can then be only repacked instead of resized.
I also implemented an example that stresses the atlas. During which I discovered several edge cases and bugs :)

I was wondering how transforms are applied to text objects.
For example, in the famous valve paper, you can see the words "NO TRESPASSING" on a wall.
I would expect this to be represented in a scene graph like this:

Scene

Mesh (the wall)

Text (the text)

That way, I can position and scale the text relatively to the wall, e.g. to center it on the wall and make it about 20% of the width of the wall. Then when I move on to position the wall in my scene (using translation, rotation or scaling) the text will just stay where it should be.
Is that supported now?

Is that supported now?

Yes, this works, see the hello_text.py example. It's (currently) not like the text will fill 100% of the object - the text simply has a certain size depending on the number of chars and the font size, but that's also how other objects work, so I think this is ok.
This reminds me, we should also think what should happen with the text object's transform if it's set to render in screen space 🤔

we should also think what should happen with the text object's transform if it's set to render in screen space

I think I know the answer. This text should just display in screen coords, also when attached to a tree of nested objects. So the transform is only used to position the text, nothing else. No scaling, not rotation.

we should also think what should happen with the text object's transform if it's set to render in screen space

I think I know the answer. This text should just display in screen coords, also when attached to a tree of nested objects. So the transform is only used to position the text, nothing else. No scaling, not rotation.

Sounds right to me. It should be consistent with other screen space things we (could) offer, like points and lines.

Notes from our meeting:
For later (move to #379)

Make things work for vertical fonts.
Implement stretch font prop (stretch all text, stretch only whitespace, stretch only characters).

Complete now (as part of this PR):

Alignment.
Rotate text at an angle, also in screen space.
Decide what to do about font management. Text: font management #379
Clean up the font manager module.

Japenese, Chinese and Korean render correctly (though horizontally) by default:

Turned out that supporting vertical text was not so hard: with TextGeometry(..., direction='ttb'):

Update on putting text at an angle: I initially felt against using the world-object transform for that, because the world_transform contains rotations and scaling from parents. However, in screen-space-mode, the rotation and scale from the local transform don't affect the final position, so we can still use them to rotate and scale the text. I added an extra transform to the Text(WorldObject) containing just the local rotation and scale, so that these can be applied in screen space.

As a response to your bounding box commit, I think it will come back as a discussion item when we get to line breaking support later.
In photoshop-like applications, there are usually two modes of operation: point text and text box.

With point text mode, the user sets the anchor point and has to perform line breaking manually (by inserting newlines). This is very similar to what you've implemented now (although I'm not sure even manual line breaks are supported yet?)
With text box mode, the user draws a bounding box, and lines are wrapped automatically to fit.

I don't think the line breaking matters for the bounding box. The two modes you describe would be equivalent to setting the max-width property. I both cases (wrapping or no wrapping) the geometry knows the bounding box.
The problem right now is related to screen-space mode. In world-space mode, the text's bounding box is well defined and known. But in sceen-space mode, it should be considered a point (a bounding box with zero volume). The problem is that the geometry does not know the mode.
This could be an argument to move the screen_space prop from the material to the geometry.

Ready for review!
Two open points:

Ignore the font manager for now. We still need to decide what to do with font manager, also short-term to get this merged. See #379
I propose to move the screen_space  prop to the TextGeometry. This way the bounding box can be set to the space that the text occupies when rendering in world space. If you consider that the option determines how the text occupies the world, is does seem fitting to place it at the geometry, I guess ...

At geometry level, the bounding box function should return the local bounds, not world bounds

Yeah, world-space isn't the correct term. Shall we call it model-space or object-space, or ... ?

For screen space things, it's gonna be weird.

Well there's still a point in the scene that represents where the text is "attached to". This point could still participate in e.g. show_object. An alternative would be to give it a null bounding box, but IFAIK this is currently not possible.
Anyway, I'll move screen_space  to the geometry. Then if False, the bounding box will encompas the text. If True it will be a point.

Font manager is done too. I have nothing to add 🚀


Implement EVM block operations

What was wrong?
EVM block operations weren't implemented.
Related to Issue #266
How was it fixed?
Following the frontier yellow paper.
Cute Animal Picture

@SamWilsn @lightclient can you please review the code whenever free? Thanks!


[PORT] Add coveralls token to coveralls upload step

Port this change from botbuilder-dotnet/master branch:
https://github.com/microsoft/botbuilder-dotnet/pull/3416

n/a


Cyrillic

Does Azure Cognitive Services recognise Cyrillic letters? Any examples?

Подробни данни за документите
⚠ Не редактирайте този раздел. Задължително е за docs.microsoft.com ➟ връзка към проблем в GitHub.

ID: a0c01253-54e1-02da-e7f5-3be6bfbf2294
Version Independent ID: 27dd48d8-d829-79ec-a5f8-b7dae2855aa1
Content: Quickstart: Recognize speech, .NET Framework (Windows) - Speech Service - Azure Cognitive Services
Content Source: articles/cognitive-services/Speech-Service/quickstart-csharp-dotnet-windows.md
Service: cognitive-services
Sub-service: speech-service
GitHub Login: @wolfma61
Microsoft Alias: wolfma

@kalatchev can you please share the link to the documentation you are following so we can better assist?

Here us the link
https://docs.microsoft.com/bg-bg/azure/cognitive-services/speech-service/quickstart-csharp-dotnet-windows

we are recognizing speech ... so not sure how cyrillic letters on the speech input.
the result is returned in unicode characters ...

A am not familiar with MS services, but I know that Google has excellent speech recognition for Slavic languages. I use it on a daily basis with my phone, as I dictate messages in SMS or Viber, not typing. Tesseract also have recognition of Cyrillic and results are quite good. What’s missing in Tesseract is searching of text in photos, let say registration plates on cars. At least I as I know. This feature lead me to Azure services.

you are currently looking into speech services. We also offer a wide variety of languages for speech recognition, speech translation, or voice generation (see here: https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/language-support). The set of languages we support is constantly increasing.
there are many more cognitive services for face recognition, machine learning, etc. Please check here: https://docs.microsoft.com/en-us/azure/cognitive-services/

Thanks.


HNC: prevent user from deleting a namespace if it's a required child

Right now, if you delete a required child (aka self-service subnamespace), HNC will simply recreate it. We should warn the user about this.

Replaced by the new subnamespace UX
/close


Add private_endpoint param when saving account

Summary
Details and comments
Fixes #1699

This covers the case when a user provides private_endpoint param. But if the user provides an url param, it will be changed, right? I mean that this doesn't cover that case described in the issue. Or do you prefer to do it in a different PR?

Wouldn't this be a breaking change? Then, even if the correct URL is entered (https://cloud.ibm.com/) then the region and sub domain would not be added

This covers the case when a user provides private_endpoint param. But if the user provides an url param, it will be changed, right? I mean that this doesn't cover that case described in the issue. Or do you prefer to do it in a different PR?

Wouldn't this be a breaking change? When the correct default URL is passed in (https://cloud.ibm.com/) in save_account the region and sub domain would not be added.
For example, when users save a staging account, the url needs to be passed in (https://test.cloud.ibm.com).

I guess that url is only used by internal teams, so we can change the behavior of it from 'the subdomain that will be completed with the region and private endpoints subdomain' to 'use the url as provided without changing it'. That said, if this affects to e2e tests of other teams, or it needs more discussion, we can treat it independently. With the private_endpoint we already fulfill the VPEs use case.

That said, if this affects to e2e tests of other teams, or it needs more discussion, we can treat it independently. With the private_endpoint we already fulfill the VPEs use case.

Yeah lets handle that independently, in a separate PR.


I can't create new project after installed latest angular CLI (Pls., Help me)

I can't create new project after installed latest angular CLI.
It was occurred below error message.

How can I solve this issue. Please help me.
Thanks..

Hola, tengo el mis problema, pudiste solucionarlo?

This seems like a problem with your node/npm and not with Angular CLI.
Please have a look at the fixing npm permissions page, common errors page, npm issue tracker, or open a new issue in that issue tracker if the problem you are experiencing isn't known.

I founded the same error!.
But it doesn't angular-cli err!

I am facing the same issue
reinstall latest node and angular
npm set registry https://registry.npmjs.org/
npm cache clean --force
npm cache verify
npm install


Secp256k1 4.3.0 update

Updates lib and build and configure

everything looks good. could you please include notes on /doc/release-notes/release-notes-4.3.0.md about the reason why you updated, which is the new version and where did you get it from (my impression is from latest bitcoin)
could you also post comments about your testing on the binaries of the different architectures and gitian builds.
then we are ready to merge ;) good job

I will fix the line update the release notes tomorrow for you. :)

@aguycalled I have updated the release notes, I also updated the OSX build notes and added a sh script that helps non-osx users get the tar ready to be used in the gitian builder system,


Fix issue with entire GeoJSON being displayed at last feature time

When a last feature time is equal to the current min_time, the current logic leaves min_index set to null. This then sets the min_index to 0, and such the entire layer is erroneously displayed.
This change simply changes to check the feature time is greater than or equal to to the min time.

Thanks @sdhiscocks! :100:


[Table] parent row selection doesn't select all children nested rows

What package is this for?

[x] React
[ ] Angular

Describe the bug
If parent rows are selected, all children nested rows should be selected as well. If any children rows are selected, the parent row should be indeterminate
To Reproduce
Steps to reproduce the behavior:

Go to https://deploy-preview-1596--carbon-addons-iot-react.netlify.app/?path=/story/watson-iot-table--stateful-example-with-row-nesting-and-fixed-columns
Click on any parent row
Expand the children rows
See that no children are selected

Expected behavior
When selecting a parent, all children should be selected as well
Environment/versions:

OS: MacOS
Browser: chrome
carbon-addons-iot-react version: v2.114.0

Additional context
See HierarchyList for an example of how this is implemented
Specific timeline issues / requests
Do you want this work within a specific time period? Is it related to an
upcoming release?
No specific timeline

:tada: This issue has been resolved in version 2.122.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Accordion buttons don't layout correctly on iOS

Describe the bug
The "Show" / "Hide" button on accordion items is too wide on mobile iOS.
Screenshots

Smartphone (please complete the following information):

Device: iPhone XS Max
OS: iOS
Browser: Safari
Version: 12.1.4

Seems the issue affects desktop Safari also

It appears that Safari does not currently implement display: flex properly on <summary> elements:
https://bugs.webkit.org/show_bug.cgi?id=167111


Modifying a project adds BOM at the start of the project

From @davkean on February 28, 2017 11:38

File -> New Project
Check Create new Git repository
Right-click on project and choose Edit
CTRL+S

Expected: For no changes to the project
Actual: The project has changes if you run git diff you see:
-<Project Sdk="Microsoft.NET.Sdk">
+<EF><BB><BF><Project Sdk="Microsoft.NET.Sdk">

   <PropertyGroup>
     <OutputType>Exe</OutputType>

Copied from original issue: dotnet/roslyn-project-system#1651

From @davkean on February 28, 2017 11:38
No idea who's bug this is @333fred.

This is an msbuild issue, I'll move it over there. The issue is that we assume, in the absence of a utf header, that the default encoding of a file is UTF-8 w/ BOM, even if the file's original encoding was UTF-8 w/o BOM.

Talking to @333fred he pointed me to this: https://github.com/Microsoft/msbuild/blob/xplat/src/Build/Construction/ProjectRootElement.cs#L603. This looks wrong - it doesn't using the encoding coming from the file, in this case UTF-8 (no BOM).
Look at the XML specification for what to do in case where the encoding is not specified in the XML declaration: https://www.w3.org/TR/xml/#sec-guessing. Hint, StreamReader will already do the right think here - so just read the encoding it sniff'd.

Hint, StreamReader will already do the right think here - so just read the encoding it sniff'd.

I'm pretty sure that's not true for us. @AndyGerlicher will probably remember more.
We could maybe just change s_defaultEncoding to the no-BOM variant.

But that will have the reverse impact, it will remove the BOM.


build: fix *.deb package install script (#177)

Fix script, to install:

libLCUI.so
libLCUI.so.0
libLCUI.so.0.1.1

Fixes #177

Coverage decreased (-1.8%) to 66.721% when pulling 3b57049156ddeea6c625bbe5e9c96fd4307e5e0a on vbalyasnyy:develop into 2e4cab4e3038328c122b7842802312992d17f934 on lc-soft:develop.

lcui_1.3.0-1_amd64.deb file size is 1.9KB, the problem is not resolved.


[Addition]: 12 miners in NL using PF and altering metadata

Hotspot b58 Addresses
112LLXAjnYnygNZ8ZJ1AS2YHUCFEEFm6618cjAN9kXNV5VXRdBuH
11yqPnc42cNv2KA8FT3FqYbBFHNDkzF35uSh7y3sASeQ9G6J5ur
11qR8GsN68V7wb8vRSTfaGyqJTsECtLn9WUvzZdPRZd9SKdYEqz
1127WJp3AZbPbD96ieXwAUrRsLAHfzuHp155xiZLCgtixJB7a3vY
118kmrC1EXuWRCUnWns6LX5y1TxKbhNvBThi7avHXmhbFgD5euf
112Tx6c9usGCuDSXQhjt4iRtNinajQ4rZAK13BfcuuiBBWevycDB
112gvNpvfWYffbTyP73LxHY7Km6bvkGBubYnRc4MavTejGkZTiqz
113nnWQrZHKzZ7fJhKdLqjUXR7aciWYwF6pcFvfsPNDtCDUXqjf
11n4PVfgbRkW15WgHa6cFD1enmstUmh3DFzgFjnE9i7UJGerB5M
11uNY8eJjFXVPcD2LexPBoNNWq4sK61rJJyRLmCXZaChWauoFkK
11EpfxGCW9Xs54BQ6YNiP4YVVT4bvECnFjcWKD38Z3EpiqHkydm
11ctJpCyp8QGmaJy1pSHKZygViNkK4VyNyv5JHwhkFVaKdfekFP
Discord Handle
NL_Miniterror_NL#3507
Reason(s)
The beacons these miners witness have a verry tight RSSI/SNR range, doesnt matter what the distance is for the witnessed beacon.
These miners transfer there funds to a main wallet without hotspots in it, looking at all the accounts that have funded this main wallet some are already on the denylist but these are missing.
Even though there locations are asserted all over the Netherlands they witness eachother too and when that happens they receive a "signal to strong" wich makes me believe they are located close to eachother.
My guess is they use Packet forwarder and alter metdata and send everything to all the miners, hence they all operate in a verry tight RSSI/SNR range no matter what the distance is.

Its a little bit bigge rnow with a few more miners, they all sent HNT to a main wallet not containing any miners.
Created chart for all of them and they all operate in a seperate range, but on a per miner base almost everything is in the same value range.
11FYntHK8dZJpDJSVtWJuD5wYZDyTrSuXtbirjadm8Dw61k6uw3    Cold Eggplant Koala

112LLXAjnYnygNZ8ZJ1AS2YHUCFEEFm6618cjAN9kXNV5VXRdBuH  Furry Juniper Ostrich

11yqPnc42cNv2KA8FT3FqYbBFHNDkzF35uSh7y3sASeQ9G6J5ur   Fierce Plastic Loris

11qR8GsN68V7wb8vRSTfaGyqJTsECtLn9WUvzZdPRZd9SKdYEqz   Puny Blue Goat

1127WJp3AZbPbD96ieXwAUrRsLAHfzuHp155xiZLCgtixJB7a3vY  Pet Golden Cow

118kmrC1EXuWRCUnWns6LX5y1TxKbhNvBThi7avHXmhbFgD5euf   Round Wooden Mustang

112Tx6c9usGCuDSXQhjt4iRtNinajQ4rZAK13BfcuuiBBWevycDB   Slow Amethyst Shetland

112nyhUjFU4f5irLWcqYQauXTdNRFMzXGJFfdvUfe9x7VfMjxpTC   Huge Foggy Narwhal

11gLTK2LDKCfYjYxyKd5vNV3ZF9rjhsH3czqoQi38wLzP7nYA1P  Beautiful Gauze Sparrow

11HJEit84xxJJ1uYQfjPcjf3TN8mGFmDw9daugJhMiWtussySkM  Ancient Foggy Crocodile

112gvNpvfWYffbTyP73LxHY7Km6bvkGBubYnRc4MavTejGkZTiqz  Beautiful Lead Goat

112Tsga9iv7iqrtCZHg1gCnxFHxWx1rPVAwn7rAndbWDw3kffPgS   Mythical Mandarin Opossum

113nnWQrZHKzZ7fJhKdLqjUXR7aciWYwF6pcFvfsPNDtCDUXqjf   Mysterious Taupe Parakeet

11TAExi2FGBTnJxVDN1pejx2dBZybJBmFUXKxEUmrDZ6gmi6hXf  Curly Maroon Llama

11n4PVfgbRkW15WgHa6cFD1enmstUmh3DFzgFjnE9i7UJGerB5M   Mini Tangerine Goblin

11EpfxGCW9Xs54BQ6YNiP4YVVT4bvECnFjcWKD38Z3EpiqHkydm  Sunny Misty Sidewinder

11ctJpCyp8QGmaJy1pSHKZygViNkK4VyNyv5JHwhkFVaKdfekFP   Merry Pine Goat

11qQ8YFSmPQPghdeeBpmYHq9ubi2RVa9B15UWrSfQyV2j7EEyVT   Short Rose Starling

112GT66vHaypPTfk85tsCBcrSbNE8Cq78vw9wwc9YG5ZnLkEvm2j  Furry Carbon Pangolin

11uNY8eJjFXVPcD2LexPBoNNWq4sK61rJJyRLmCXZaChWauoFkK  Cheerful Candy Porcupine
No activity at the moment but he has sent HNT tot he main wallet they all sent it too.


How to calculate the road network distance?

Hi, I have read your paper and really appreciate this algorithm, however, I still don't understand how did you calculate the road network distance between two vertex.
I am aware that the road network distance is not spatial distance, but I do not find any further detail in your paper.
Could you please explain how did you calculate the road network distance?

Given the Road Network graph, we use the Dijkstra algorithm to find the shortest paths/distances for each node.

tks:)

An example with Dijkstra using OpenStreetMap. Output slightly different than with Google Maps. https://medium.com/p/2d97d4881996

import osmnx as ox
import networkx as nx

# define the start and end locations in latlng
ox.config(log_console=True, use_cache=True)
start_latlng = (34.14745, -118.37124) #Detector 717490
# location to where you want to find your route
end_latlng = (34.15497, -118.31829) #Detector 773869

# find shortest route based on the mode of travel
place     = 'Los Angeles, California, United States'

# 'drive', 'bike', 'walk'# find shortest path based on distance or time
mode      = 'drive'

# 'length','time'# create graph from OSM within the boundaries of some
optimizer = 'time'

# geocodable place(s)
graph = ox.graph_from_place(place, network_type = mode)

# find the nearest node to the start location
orig_node = ox.get_nearest_node(graph, start_latlng)

# find the nearest node to the end location
dest_node = ox.get_nearest_node(graph, end_latlng)

#  find the shortest path
shortest_route = nx.shortest_path(graph,
                                  orig_node,
                                  dest_node,
                                  weight=optimizer)

#find the shortest path method dijkstra or bellman-ford
shortest_route_distance = nx.shortest_path_length(graph, orig_node,dest_node,weight="length", method="dijkstra")

#distance between 717490 and 773869 with OpenStreetMap is 8252.298 and the original value in the dataset was 7647.0
print("Distance: " + str(shortest_route_distance))

Here's an example for calculating the distances using OSMnx and Dijkstra.
https://github.com/ThomasAFink/osmnx_adjacency_matrix_for_graph_convolutional_networks


can play iptv without transcoding video

udp stream to m3u8 playlist:
ffmpeg
-i udp://xxx.x.xx.xx:1234
-c:v copy
-c:a aac -strict -2
-ac 2
iptv.m3u8
this playlist clappr not play
in console -> TypeError: this is undefined
if i play this playlist in vlc player - play ok
ffmpeg
-i udp://xxx.x.xx.xx:1234
-c:v libx264
-c:a aac -strict -2
-ac 2
iptv.m3u8
this playlist clappr play ok
ffmpeg generate this error
[h264 @ 0x114c060] non-existing PPS 0 referenced
Last message repeated 2 times
[h264 @ 0x114c060] decode_slice_header error
[h264 @ 0x114c060] no frame!
what is the problem?

@deonio we fixed this problem some time ago, can you please try to use the "fixed" uri until jsdelivry updates to latest.
https://cdn.jsdelivr.net/clappr/0.2.54/clappr.min.js

I used the last three versions:
0.2.52
0.2.53
0.2.54
now 0.2.54
I see the following errors
[debug][hls] playback:levels:available Array[1]
log.js:67[debug][hls] playback:fragment:loaded Object
blob:http%3A//xxx.ru/5ac0682f-16b1-482c-86ed-3dd512e00960:6 Uncaught TypeError: Cannot read property 'contiguous' of undefined

Related: https://github.com/dailymotion/hls.js/issues/485

i do not know what to do
edit src/demux/tsdemuxer.js	-> lines 362-    };		 +    }.bind(this);
clappr.js there are no such lines

Does this behavior still occur?

Closing due to the impossibility of reproducing the bug and inactivity. In case any new evidence appears we reopen.


Fixed buffer overflow in do_tags() with long tag

This PR fixes issue #2471 (buffer overflow with :tags command with very long tag).
Bug was reproducible with:
$ valgrind ./vim -u NONE -e -s -c 'exe "tag " . repeat("x", 1020)' -c 'tags|q'
==9259== Memcheck, a memory error detector
==9259== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==9259== Using Valgrind-3.14.0.GIT and LibVEX; rerun with -h for copyright info
==9259== Command: ./vim -u NONE -e -s -c exe\ "tag\ "\ .\ repeat("x",\ 1012) -c tags|q
==9259==
==9259== Invalid read of size 1
==9259==    at 0x7C56760: strchrnul (strchr.S:24)
==9259==    by 0x7C0D207: __find_specmb (printf-parse.h:108)
==9259==    by 0x7C0D207: vfprintf (vfprintf.c:1312)
==9259==    by 0x7CD6713: __vsprintf_chk (vsprintf_chk.c:82)
==9259==    by 0x7CD666C: __sprintf_chk (sprintf_chk.c:31)
==9259==    by 0x5AD8B5: do_tags (tag.c:1133)
==9259==    by 0x468ABC: do_one_cmd (ex_docmd.c:2908)
==9259==    by 0x464D3D: do_cmdline (ex_docmd.c:1071)
==9259==    by 0x625A4C: exe_commands (main.c:2953)
==9259==    by 0x625A4C: vim_main2 (main.c:800)
==9259==    by 0x6245E4: main (main.c:429)
==9259==  Address 0x401 is not stack'd, malloc'd or (recently) free'd
==9259==
==9259==
==9259== Process terminating with default action of signal 11 (SIGSEGV)
==9259==    at 0x7BF5767: kill (syscall-template.S:84)
==9259==    by 0x512B68: may_core_dump (os_unix.c:3383)
==9259==    by 0x512B68: mch_exit (os_unix.c:3349)
==9259==    by 0x625EAE: getout (main.c:1542)
==9259==    by 0x7BF54AF: ??? (in /lib/x86_64-linux-gnu/libc-2.23.so)
==9259==    by 0x7C5675F: ??? (in /lib/x86_64-linux-gnu/libc-2.23.so)
==9259==    by 0x7CD6713: __vsprintf_chk (vsprintf_chk.c:82)
==9259==    by 0x7CD666C: __sprintf_chk (sprintf_chk.c:31)
==9259==    by 0x5AD8B5: do_tags (tag.c:1133)
==9259==    by 0x468ABC: do_one_cmd (ex_docmd.c:2908)
==9259==    by 0x464D3D: do_cmdline (ex_docmd.c:1071)
==9259==    by 0x625A4C: exe_commands (main.c:2953)
==9259==    by 0x625A4C: vim_main2 (main.c:800)
==9259==    by 0x6245E4: main (main.c:429)

Codecov Report

Merging #2475 into master will increase coverage by <.01%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #2475      +/-   ##
==========================================
+ Coverage   74.54%   74.55%   +<.01%
==========================================
  Files          92       92
  Lines      132834   132834
  Branches    29135    29135
==========================================
+ Hits        99021    99031      +10
+ Misses      33778    33768      -10
  Partials       35       35

Impacted Files
Coverage Δ

src/tag.c
72.29% <100%> (ø)
:arrow_up:

src/if_xcmdsrv.c
84.17% <0%> (-0.54%)
:arrow_down:

src/gui_gtk_x11.c
47.7% <0%> (-0.05%)
:arrow_down:

src/screen.c
73.89% <0%> (+0.02%)
:arrow_up:

src/syntax.c
77.49% <0%> (+0.02%)
:arrow_up:

src/message.c
68.72% <0%> (+0.04%)
:arrow_up:

src/term.c
50.75% <0%> (+0.05%)
:arrow_up:

src/terminal.c
64.61% <0%> (+0.06%)
:arrow_up:

src/gui.c
47.63% <0%> (+0.1%)
:arrow_up:

src/channel.c
82.81% <0%> (+0.12%)
:arrow_up:

... and 2 more

Continue to review full report at Codecov.

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


Duplicated query in update view

I'm having the problem that the update page is repeated a lot of queries due to the select box, can you suggest me solution to address this problem?

Is it django-material specific problem or happens with ordinary select box?

losing due inactivity


Reduce sleep from 500ms to 50ms

The first call to has_pending() would under almost all situations
return true, which added a 500ms delay.

This 500ms delay accumulated and broke integration tests.

Reduce the sleep to 50ms. This should mitigate breakage.

The better solution would be to use signals / semaphores.

Proposed changes
Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue.
Types of changes
What types of changes does your code introduce to thin-edge.io?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Improvement (general improvements like code refactorings that doesn't explicitly fix a bug or add any new functionality)
[ ] Documentation Update (if none of the other choices apply)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Paste Link to the issue

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[ ] I have read the CONTRIBUTING doc
[ ] I have signed the CLA (in all commits with git commit -s)
[ ] I ran cargo fmt as mentioned in CODING_GUIDELINES
[ ] I used cargo clippy as mentioned in CODING_GUIDELINES
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)

Further comments
If this is a relatively large or complex change, kick off the discussion by explaining why you chose the solution you did and what alternatives you considered, etc...

Codecov Report

Merging #328 (a79720e) into main (7aa0e41) will decrease coverage by 0.10%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #328      +/-   ##
==========================================
- Coverage   66.64%   66.54%   -0.11%
==========================================
  Files          66       66
  Lines        3925     3925
==========================================
- Hits         2616     2612       -4
- Misses       1309     1313       +4

Impacted Files
Coverage Δ

tedge/src/cli/mqtt/publish.rs
0.00% <0.00%> (ø)

mapper/collectd_mapper/src/batcher.rs
80.35% <0.00%> (-1.79%)
:arrow_down:

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 7aa0e41...a79720e. Read the comment docs.


Discuss the changes to IThemeSelector

The original interface can only get the template selection result, I think it should give the template settings method the interface and indicate whether the current selector supports template settings. If we give selector a name attribute, you can manage it at orchard.Themes / admin / index (enable, set, replace). so I made a pr 680

https://github.com/OrchardCMS/Orchard2/pull/680


hps_accel/mem: new WideReadMemory class

A simpler memory that is written one 32 bit word at a time and read 4
words (128bits) at a time.
Signed-off-by: Alan Green<EMAIL_ADDRESS>

Also, thanks for whipping this up so fast. :-) I'm going to give it a go in my InputStore patch now.

One of the Renode tests failed with a timeout after 5m 13s, I guess it's just a flake? I've clicked retry to see if it fixes itself.


Is this project active?

Someone just told me about this project, and I came to check it out.  The readme just says "Blingsox".  I just wondering if this project is being worked on or not.  Let me know, thanks.

Yes, thanks for the comment. Work happens intermittently, usually when I have physical access to my Slingbox.
Also, the readme is just the default one generated when I created the repository. I will update it when the project is functional, (i.e. when you can use it to stream and control the Slingbox through the web app.)


Proposal for introducing create_resources

Add simple version in main class that allows creating logrotate
rules in Hiera with:

classes:
  - logrotate

logrotate::rules:
  'syslog':
    [...]

I've not written any documentation or anything more for now. I wanted to know your opinion about this feature before going any further.

#43 handles this too, and uses a pattern that seems to be more popular/common.

#43 adds hiera support but does not allow one to take advantage of deep_merge behavior that could be provided by using hiera_hash function.