Sticky plugin- possible to stick and stack multiple elements [FEATURE REQUEST]

Have asked this on the forum with no replies.
Trying to use the Sticky plugin to stick and stack 2 elements on top of each other with the first having variable height. Is this possible with the current state of Foundation?
Looking for a solution similar to this plugin but would be ideal if it's already available in Foundation:
http://alextaujenis.github.io/jquery-stuck/
http://leafo.net/sticky-kit/
And here is a rough comp of what I'm trying to accomplish:
https://codepen.io/danlewski/pen/QMZYaq
The expected result is for the smaller blue bar to stick to the bottom of the larger gray bar, regardless of the text length.
Thank you!

@dlewand691 Do you want the small bar to be on top of the big one? You just need to apply another class like in this demo, or give one of the bar a margin top correct
https://codepen.io/IamManchanda/pen/aWaJpM?editors=1011

https://codepen.io/mattbag/pen/GvwxjW
something like this?

Brilliant! Thank you! This is exactly what I was looking for and makes total sense.
However, I wonder if this might still be something worth integrating into the Sticky plugin? The ability to stick to its "parent" instead of the body?

I ran into a similar problem when trying to use the sticky element when I have a manually placed sticky header in place (header = position:fixed / page-content = padding-top:90px). The sticky element wasn't kicking in until it reached the top of the body and when it did the first 90px was hiding behind the sticky header. To fix this I applied the data-top-anchor to an element (#sticky-fix) that was absolute positioned -90px (actually -75px because there was a 15px discrepency for some reason) and applied a margin top of 90px when the element was sticky.
Tried to wrap my head around why it was -90px (-75px) instead of +90px, but gave up because it worked.
Note that this solution positions the sticky element in the correct place AND it kicks in at the right time (as opposed to the example above where it kicks in quite late)

Anyhow, thought I would post this as I ran into this thread when trying to solve my problem.


[analyzer] const_constructor_param_type_mismatch shouldn't report for non-constant values

class C {
  const C(String s);
}
void f(String s) {
  const C(s);
}

reports const_constructor_param_type_mismatch (with a message of A value of type 'Null' ...) and const_with_non_constant_argument
I think only const_with_non_constant_argument should be reported.

class C {
  const C(String s);
}
void f(int i) {
  const C('$i');
}

reports const_constructor_param_type_mismatch (with a message of A value of type 'Null' ...) and INVALID_CONST, which is commented for replacement
https://github.com/dart-lang/sdk/blob/0a05e3f9994d58f3c8c83bc5721cc3bdf6ec5779/pkg/analyzer/lib/src/error/codes.g.dart#L2329-L2334

The reason of why const_constructor_param_type_mismatch has a Null type message is that the argument value is evaluated by the constantVisitor
https://github.com/dart-lang/sdk/blob/0a05e3f9994d58f3c8c83bc5721cc3bdf6ec5779/pkg/analyzer/lib/src/dart/constant/evaluation.dart#L2696
which returns ConstantEvaluationEngine._nullObject, if the value is not constant.
In other words, whenever the constant value of the expression is null, the diagnostic shouldn't report, since its purpose seems to only be when the value is constant but its type is not matching.
If the value is not constant, then other diagnostics are triggered that non constant value is used as a constant.
This was detected in sdk/276941

... which returns ConstantEvaluationEngine._nullObject, if the value is not constant.

@scheglov
It sounds to me like the constant evaluation engine should report when a non-constant value is found, but should then instead return a valid object of unknown value as a recovery technique. What do you think?

... whenever the constant value of the expression is null, the diagnostic shouldn't report ...

It's perfectly possible for the actual value of the expression to be null, and those cases need to be reported. The problem is that we currently can't distinguish between a real null being computed and a fake value of null being returned as a sentinel value. That's why I think we need to return something different as the sentinel value.

... which returns ConstantEvaluationEngine._nullObject, if the value is not constant.

@scheglov
It sounds to me like the constant evaluation engine should report when a non-constant value is found, but should then instead return a valid object of unknown value as a recovery technique. What do you think?

Sounds good to me.

... whenever the constant value of the expression is null, the diagnostic shouldn't report ...

It's perfectly possible for the actual value of the expression to be null, and those cases need to be reported. The problem is that we currently can't distinguish between a real null being computed and a fake value of null being returned as a sentinel value. That's why I think we need to return something different as the sentinel value.

I agree.

sdk/279397
If a non-constant value is provided, then the hint isn't reported.
If a constant value evaluates to null, then it is reported.
If an expected argument is not specified, it is not reported, and other hints (e.g. NOT_ENOUGH_POSITIONAL_ARGUMENTS_NAME_SINGULAR are reported in this case).
Interestingly, one test case without null safety, now correctly triggers a new hint.


Channel selector model does not show up after a successful login in Circleci environment

What happened?
When logging in with correct credentials
Actual:  a model containing the channels selector does not appear
Expected: a model containing the channels selector should appear

Problem description
no model is shown, and no channel is preselected, we can confirm it by navigating to the configuration tab, the select box does not contain any pre-set channel.
Expected behaviour
A model should be visible after logging in, to select the target channel.
that model should block the interface of the connect layer, only after selecting the channel and saving it then the user can interact with the connect layer functionalities.
Actual  behaviour
the model does not show up, and the user can interact with the connect layer with no channel selected
Steps to Reproduce
run woocommerce tests on Circleci.
Important Factoids
Stage: QA
Shopsystem: Woocommerce
Environment: Circleci, Linux based image
References
please login to Circleci to get the right to read the automated test report.
https://output.circle-artifacts.com/output/job/a0128f6d-a248-4e9a-8b19-6a489f2b200e/artifacts/0/Results/log.html
I read and aggree to the contribution guidelines

[X] I read and aggree to the contribution guidelines

Hi @saidtahali , @DomiKoch
According to the test, I did not find out why the model does not show up after a successful login. it is better to look at the Woocommerce application itself, Can you please give access to the Woocommerce test app?

HI @Mhera17  hi @saidtahali ,
did you get in contact with access?
Greetings

Hi @DomiKoch. No, not yet

Sent to Mhera.


who we are section and pepole woke with section

relates #28

Is there anything to change in this PR? I know the figma changed after you coded this

All the changes in this pr are good. We'll need to take out the slider from the home page but that can be a different pr, plus the maggies logo. the one Emily supplied is different

where is maggies logo which emily send it?


Make cannonical name for CNAME content field

In record type CNAME you should always add additional dot, added possibility use like in name field

I use this ansible module a lot to interact with powerDNS, it is very handy, for the longest time I couldn't figure out why the code kept failing when trying to add CNAME records. This is the fix and needs to be merged into master. I'm not sure who is still in charge of this repo or who has write permissions....but I copied this updated code, ran it in my environment, works like a charm 👍

Hi @frankmit11,
sorry for the late answer. I'm happy to merge your PR if you could please fix the merge conflicts.

Hello @Nosmoht,
Thanks for the reply, so this not my PR, I'm just someone benefiting from the added support. Looks like is @JRaver is trying to merge in his forked changes, so perhaps he can help. If not I can resolve the merge conflicts myself and open another PR 👍


[Windows] The Pardiso solver failed with error code -3

Issue was first reported in https://github.com/LCA-ActivityBrowser/activity-browser/issues/694.
I can reproduce it on one of my windows installations (didn't occur on the other one) by running the calculation step in the activity-browser:
Traceback (most recent call last):
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\activity_browser\layouts\tabs\LCA_results_tab.py", line 60, in generate_setup
    new_tab = LCAResultsSubTab(cs_name, presamples, self)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\activity_browser\layouts\tabs\LCA_results_tabs.py", line 101, in __init__
    self.do_calculations()
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\activity_browser\layouts\tabs\LCA_results_tabs.py", line 128, in do_calculations
    self.mlca = MLCA(self.cs_name)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\activity_browser\bwutils\multilca.py", line 124, in __init__
    self.lca.lci(factorize=True)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\bw2calc\lca.py", line 342, in lci
    self.lci_calculation()
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\bw2calc\lca.py", line 350, in lci_calculation
    self.supply_array = self.solve_linear_system()
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\bw2calc\lca.py", line 314, in solve_linear_system
    return self.solver(self.demand_array)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\pypardiso\scipy_aliases.py", line 46, in spsolve
    solver.factorize(A)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\pypardiso\pardiso_wrapper.py", line 150, in factorize
    self._call_pardiso(A, b)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\pypardiso\pardiso_wrapper.py", line 281, in _call_pardiso
    raise PyPardisoError(pardiso_error.value)
pypardiso.pardiso_wrapper.PyPardisoError: The Pardiso solver failed with error code -3. See Pardiso documentation for details.

Minimal example to reproduce:
python -c "import pypardiso as pp; import numpy as np; import scipy.sparse as sp; A = sp.rand(5000, 5000, density=0.05, format='csr'); b = np.random.rand(5000); x = pp.spsolve(A, b); print(x.sum())"

Traceback:
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\pypardiso\scipy_aliases.py", line 46, in spsolve
    solver.factorize(A)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\pypardiso\pardiso_wrapper.py", line 150, in factorize
    self._call_pardiso(A, b)
  File "C:\Users\Adrian\miniconda3\envs\ab\lib\site-packages\pypardiso\pardiso_wrapper.py", line 281, in _call_pardiso
    raise PyPardisoError(pardiso_error.value)
pypardiso.pardiso_wrapper.PyPardisoError: The Pardiso solver failed with error code -3. See Pardiso documentation for details.

Output of the minimal example with pp.ps.set_statistical_info_on():
*** Error in PARDISO  (        reordering_phase) error_num= -180
*** error PARDISO: reordering, symbolic factorization

=== PARDISO: solving a real nonsymmetric system ===
1-based array indexing is turned ON
PARDISO double precision computation is turned ON
METIS algorithm at reorder step is turned ON
Scaling is turned ON
Matching is turned ON

Summary: ( starting phase is reordering, ending phase is factorization )
================

Times:
======
Time spent in calculations of symmetric matrix portrait (fulladj): 0.023025 s
Time spent in reordering of the initial matrix (reorder)         : 0.216925 s
Time spent in symbolic factorization (symbfct)                   : 0.019414 s
Time spent in allocation of internal data structures (malloc)    : 0.015355 s
Time spent in matching/scaling                                   : 0.144890 s
Time spent in additional calculations                            : 0.013778 s
Total time spent                                                 : 0.433386 s

Statistics:
===========
Parallel Direct Factorization is running on 4 OpenMP

< Linear system Ax = b >
             number of equations:           5000
             number of non-zeros in A:      1250000
             number of non-zeros in A (%): 5.000000

             number of right-hand sides:    1

< Factors L and U >
             number of columns for each panel: 96
             number of independent subgraphs:  0
< Preprocessing with state of the art partitioning metis>
             number of supernodes:                    761
             size of largest supernode:               1726
             number of non-zeros in L:                10483331
             number of non-zeros in U:                10083149
             number of non-zeros in L+U:              20566480
             gflop   for the numerical factorization: 0.000000

Apparently the error depends on the size of the matrices:
import pypardiso as pp
import numpy as np
import scipy.sparse as sp

for i in range(10):
    n = 1000+500*i
    A = sp.rand(n, n, density=1, format='csr')
    b = np.random.rand(n)
    print(f'shape: {A.shape}, nnz: {A.nnz}')
    x=pp.spsolve(A,b)

shape: (1000, 1000), nnz: 1000000
shape: (1500, 1500), nnz: 2250000
shape: (2000, 2000), nnz: 4000000
shape: (2500, 2500), nnz: 6250000
shape: (3000, 3000), nnz: 9000000
shape: (3500, 3500), nnz: 12250000
Traceback (most recent call last):
<...>
pypardiso.pardiso_wrapper.PyPardisoError: The Pardiso solver failed with error code -3. See Pardiso documentation for details.

With a lower density of A, the solver fails earlier:
import pypardiso as pp
import numpy as np
import scipy.sparse as sp

for i in range(10):
    n = 1000+500*i
    A = sp.rand(n, n, density=0.01, format='csr')
    b = np.random.rand(n)
    print(f'shape: {A.shape}, nnz: {A.nnz}')
    x=pp.spsolve(A,b)

shape: (1000, 1000), nnz: 10000
shape: (1500, 1500), nnz: 22500
shape: (2000, 2000), nnz: 40000
Traceback (most recent call last):
<...>
pypardiso.pardiso_wrapper.PyPardisoError: The Pardiso solver failed with error code -3. See Pardiso documentation for details.

However it doesn't consistently fail at the same size of A, even when using a seed. It fails somewhere between 1800 and 2200 using the code below:
import pypardiso as pp
import numpy as np
import scipy.sparse as sp

np.random.seed(0)
for i in range(10):
    n = 1500+100*i
    A = sp.rand(n, n, density=0.01, format='csr')
    b = np.random.rand(n)
    print(f'shape: {A.shape}, nnz: {A.nnz}')
    x=pp.spsolve(A,b)
    print(x.sum())

I was able to narrow down the differences between my two windows installations, it turns out the channel priority between defaults and conda-forge was different.
"Broken" environment:
conda create -n pp-broken -c conda-forge pypardiso python=3.9

conda list
# packages in environment at C:\Users\Adrian\miniconda3\envs\pp-broken:
#
# Name                    Version                   Build  Channel
bzip2                     1.0.8                h8ffe710_4    conda-forge
ca-certificates           2021.10.8            h5b45459_0    conda-forge
intel-openmp              2022.0.0          h57928b3_3663    conda-forge
libblas                   3.9.0              12_win64_mkl    conda-forge
libcblas                  3.9.0              12_win64_mkl    conda-forge
libffi                    3.4.2                h8ffe710_5    conda-forge
liblapack                 3.9.0              12_win64_mkl    conda-forge
libzlib                   1.2.11            h8ffe710_1013    conda-forge
m2w64-gcc-libgfortran     5.3.0                         6    conda-forge
m2w64-gcc-libs            5.3.0                         7    conda-forge
m2w64-gcc-libs-core       5.3.0                         7    conda-forge
m2w64-gmp                 6.1.0                         2    conda-forge
m2w64-libwinpthread-git   <IP_ADDRESS>34.697f757               2    conda-forge
mkl                       2021.4.0           h0e2418a_729    conda-forge
msys2-conda-epoch         20160418                      1    conda-forge
numpy                     1.22.0           py39h6331f09_0    conda-forge
openssl                   3.0.0                h8ffe710_2    conda-forge
pip                       21.3.1             pyhd8ed1ab_0    conda-forge
pypardiso                 0.4.0              pyhd8ed1ab_0    conda-forge
python                    3.9.9           hcf16a7b_0_cpython    conda-forge
python_abi                3.9                      2_cp39    conda-forge
scipy                     1.7.3            py39hc0c34ad_0    conda-forge
setuptools                60.5.0           py39hcbf5309_0    conda-forge
sqlite                    3.37.0               h8ffe710_0    conda-forge
tbb                       2021.5.0             h2d74725_0    conda-forge
tk                        8.6.11               h8ffe710_1    conda-forge
tzdata                    2021e                he74cb21_0    conda-forge
ucrt                      10.0.20348.0         h57928b3_0    conda-forge
vc                        14.2                 hb210afc_5    conda-forge
vs2015_runtime            14.29.30037          h902a5da_5    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
xz                        5.2.5                h62dcd97_1    conda-forge

Working environment:
conda create -n pp-working -c defaults -c conda-forge pypardiso python=3.9

conda list
# packages in environment at C:\Users\Adrian\miniconda3\envs\pp-working:
#
# Name                    Version                   Build  Channel
blas                      1.0                         mkl
ca-certificates           2021.10.26           haa95532_2
certifi                   2021.10.8        py39haa95532_0
icc_rt                    2019.0.0             h0cc432a_1
intel-openmp              2021.4.0          haa95532_3556
libblas                   3.9.0              12_win64_mkl    conda-forge
mkl                       2021.4.0           h0e2418a_729    conda-forge
mkl-service               2.4.0            py39h2bbff1b_0
mkl_fft                   1.3.1            py39h277e83a_0
mkl_random                1.2.2            py39hf11a4ad_0
numpy                     1.21.2           py39hfca59bb_0
numpy-base                1.21.2           py39h0829f74_0
openssl                   1.1.1l               h2bbff1b_0
pip                       21.2.4           py39haa95532_0
pypardiso                 0.4.0              pyhd8ed1ab_0    conda-forge
python                    3.9.7                h6244533_1
scipy                     1.7.3            py39h0a974cb_0
setuptools                58.0.4           py39haa95532_0
six                       1.16.0             pyhd3eb1b0_0
sqlite                    3.37.0               h2bbff1b_0
tbb                       2021.4.0             h59b6b97_0
tzdata                    2021e                hda174b7_0
vc                        14.2                 h21ff451_1
vs2015_runtime            14.27.29016          h5e58377_2
wheel                     0.37.0             pyhd3eb1b0_1
wincertstore              0.2              py39haa95532_2

Other ways of creating an environment where the error doesn't appear:

Don't use the latest version of intel-openmp

conda create -n pp-working -c conda-forge -c defaults pypardiso intel-openmp=2021

conda list
# packages in environment at C:\Users\Adrian\miniconda3\envs\pp-working:
#
# Name                    Version                   Build  Channel
bzip2                     1.0.8                h8ffe710_4    conda-forge
ca-certificates           2021.10.8            h5b45459_0    conda-forge
intel-openmp              2021.4.0          haa95532_3556
libblas                   3.9.0              12_win64_mkl    conda-forge
libcblas                  3.9.0              12_win64_mkl    conda-forge
libffi                    3.4.2                h8ffe710_5    conda-forge
liblapack                 3.9.0              12_win64_mkl    conda-forge
libzlib                   1.2.11            h8ffe710_1013    conda-forge
m2w64-gcc-libgfortran     5.3.0                         6    conda-forge
m2w64-gcc-libs            5.3.0                         7    conda-forge
m2w64-gcc-libs-core       5.3.0                         7    conda-forge
m2w64-gmp                 6.1.0                         2    conda-forge
m2w64-libwinpthread-git   <IP_ADDRESS>34.697f757               2    conda-forge
mkl                       2021.4.0           h0e2418a_729    conda-forge
msys2-conda-epoch         20160418                      1    conda-forge
numpy                     1.22.0          py310hcae7c84_0    conda-forge
openssl                   3.0.0                h8ffe710_2    conda-forge
pip                       21.3.1             pyhd8ed1ab_0    conda-forge
pypardiso                 0.4.0              pyhd8ed1ab_0    conda-forge
python                    3.10.1          hcf16a7b_2_cpython    conda-forge
python_abi                3.10                    2_cp310    conda-forge
scipy                     1.7.3           py310h33db832_0    conda-forge
setuptools                60.5.0          py310h5588dad_0    conda-forge
sqlite                    3.37.0               h8ffe710_0    conda-forge
tbb                       2021.5.0             h2d74725_0    conda-forge
tk                        8.6.11               h8ffe710_1    conda-forge
tzdata                    2021e                he74cb21_0    conda-forge
ucrt                      10.0.20348.0         h57928b3_0    conda-forge
vc                        14.2                 hb210afc_5    conda-forge
vs2015_runtime            14.29.30037          h902a5da_5    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
xz                        5.2.5                h62dcd97_1    conda-forge

Use pypardiso from the haasad channel, which doesn't have the mkl libblas dependency like on conda-forge  (see here)

conda create -n pp-working -c haasad -c defaults pypardiso

conda list
# packages in environment at C:\Users\Adrian\miniconda3\envs\pp-working:
#
# Name                    Version                   Build  Channel
blas                      1.0                         mkl
ca-certificates           2021.10.26           haa95532_2
certifi                   2021.10.8        py39haa95532_0
icc_rt                    2019.0.0             h0cc432a_1
intel-openmp              2021.4.0          haa95532_3556
mkl                       2021.4.0           haa95532_640
mkl-service               2.4.0            py39h2bbff1b_0
mkl_fft                   1.3.1            py39h277e83a_0
mkl_random                1.2.2            py39hf11a4ad_0
numpy                     1.21.2           py39hfca59bb_0
numpy-base                1.21.2           py39h0829f74_0
openssl                   1.1.1l               h2bbff1b_0
pip                       21.2.4           py39haa95532_0
pypardiso                 0.4.0                      py_0    haasad
python                    3.9.7                h6244533_1
scipy                     1.7.3            py39h0a974cb_0
setuptools                58.0.4           py39haa95532_0
six                       1.16.0             pyhd3eb1b0_0
sqlite                    3.37.0               h2bbff1b_0
tzdata                    2021e                hda174b7_0
vc                        14.2                 h21ff451_1
vs2015_runtime            14.27.29016          h5e58377_2
wheel                     0.37.0             pyhd3eb1b0_1
wincertstore              0.2              py39haa95532_2

After some more tests, I'm pretty certain that the issue is caused because mkl version 2021.4.0 is not compatible with intel-openmp 2022.0.0. The mkl 2021.4.0 package from both the conda defaults channel and pypi have pinned their dependency on intel-openmp to version 2021.*.

conda defaults channel:

conda search -c defaults --subdir=win-64 mkl=2021.4 --info
Loading channels: done
mkl 2021.4.0 haa95532_640
-------------------------
file name   : mkl-2021.4.0-haa95532_640.conda
name        : mkl
version     : 2021.4.0
build       : haa95532_640
build number: 640
size        : 114.9 MB
license     : LicenseRef-ProprietaryIntel
subdir      : win-64
url         : https://repo.anaconda.com/pkgs/main/win-64/mkl-2021.4.0-haa95532_640.conda
md5         : f7802e70a203f51ac4898309d4ed4115
timestamp   : 2021-10-18 08:53:01 UTC
dependencies:
  - intel-openmp 2021.*

pypi:

curl -s https://pypi.org/pypi/mkl/2021.4.0/json | jq .info.requires_dist
[
  "intel-openmp (==2021.*)",
  "tbb (==2021.*)"
]

However on conda-forge this pinning of intel-openmp to 2021.* is missing for mkl 2021.4.0:
conda search --override-channels -c conda-forge --subdir=win-64 mkl=2021.4 --info
Loading channels: done
mkl 2021.4.0 h0e2418a_729
-------------------------
file name   : mkl-2021.4.0-h0e2418a_729.tar.bz2
name        : mkl
version     : 2021.4.0
build       : h0e2418a_729
build number: 729
size        : 181.7 MB
license     : LicenseRef-ProprietaryIntel
subdir      : win-64
url         : https://conda.anaconda.org/conda-forge/win-64/mkl-2021.4.0-h0e2418a_729.tar.bz2
md5         : 42fcb45077a716cb8d967117b8b88f28
timestamp   : 2021-10-13 14:39:23 UTC
dependencies:
  - intel-openmp
  - tbb 2021.*

This leads to the current situation where conda install -c conda-forge pypardiso installs mkl 2021.4.0 alongside intel-openmp 2022.0.0 which are apparently not fully compatible. And while mkl 2022.0.0 is already available on conda-forge, the latest mkl-build of libblas has an explicit dependency on the older mkl 2021.4.0:
conda search -c conda-forge --subdir='win-64' libblas=3.9.0=12_win64_mkl --info
Loading channels: done
libblas 3.9.0 12_win64_mkl
--------------------------
file name   : libblas-3.9.0-12_win64_mkl.tar.bz2
name        : libblas
version     : 3.9.0
build       : 12_win64_mkl
build number: 12
size        : 4.5 MB
license     : BSD-3-Clause
subdir      : win-64
url         : https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-12_win64_mkl.tar.bz2
md5         : 96b3e24fd626a2a964c81045da31c7b1
timestamp   : 2021-10-15 08:34:53 UTC
constraints :
  - liblapack 3.9.0 12_win64_mkl
  - liblapacke 3.9.0 12_win64_mkl
  - libcblas 3.9.0 12_win64_mkl
  - blas * mkl
dependencies:
  - mkl 2021.4.0 h0e2418a_729

If I install pypardiso from the haasad channel (which doesn't require an mkl build of libblas like on conda-forge (see here), I can also install mkl 2022.0.0 with intelopenmp 2022.0.0, which is yet another way to get an environment where the error doesn't happen.
conda create -n ppmkl22 -c haasad -c conda-forge pypardiso mkl=2022.0

conda list

# packages in environment at C:\Users\adrian\anaconda3\envs\ppmkl22:
#
# Name                    Version                   Build  Channel
bzip2                     1.0.8                h8ffe710_4    conda-forge
ca-certificates           2021.10.8            h5b45459_0    conda-forge
intel-openmp              2022.0.0          h57928b3_3663    conda-forge
libblas                   3.9.0           5_hd5c7e75_netlib    conda-forge
libcblas                  3.9.0           5_hd5c7e75_netlib    conda-forge
libffi                    3.4.2                h8ffe710_5    conda-forge
liblapack                 3.9.0           5_hd5c7e75_netlib    conda-forge
libzlib                   1.2.11            h8ffe710_1013    conda-forge
m2w64-gcc-libgfortran     5.3.0                         6    conda-forge
m2w64-gcc-libs            5.3.0                         7    conda-forge
m2w64-gcc-libs-core       5.3.0                         7    conda-forge
m2w64-gmp                 6.1.0                         2    conda-forge
m2w64-libwinpthread-git   <IP_ADDRESS>34.697f757               2    conda-forge
mkl                       2022.0.0           h0e2418a_796    conda-forge
msys2-conda-epoch         20160418                      1    conda-forge
numpy                     1.22.0          py310hcae7c84_0    conda-forge
openssl                   3.0.0                h8ffe710_2    conda-forge
pip                       21.3.1             pyhd8ed1ab_0    conda-forge
pypardiso                 0.4.0                      py_0    haasad
python                    3.10.1          hcf16a7b_2_cpython    conda-forge
python_abi                3.10                    2_cp310    conda-forge
scipy                     1.7.3           py310h33db832_0    conda-forge
setuptools                60.5.0          py310h5588dad_0    conda-forge
sqlite                    3.37.0               h8ffe710_0    conda-forge
tbb                       2021.5.0             h2d74725_0    conda-forge
tk                        8.6.11               h8ffe710_1    conda-forge
tzdata                    2021e                he74cb21_0    conda-forge
ucrt                      10.0.20348.0         h57928b3_0    conda-forge
vc                        14.2                 hb210afc_6    conda-forge
vs2015_runtime            14.29.30037          h902a5da_6    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
xz                        5.2.5                h62dcd97_1    conda-forge

I also opened https://github.com/conda-forge/blas-feedstock/pull/81, which should fix the issue

Summary of the current situation:

mkl 2021.4 is not fully compatible with intel-openmp 2022.0, this only affects Windows
If you experience problems with pypardiso installed from conda-forge, downgrading intel-openmp is a temporary solution to fix it:

conda install -c conda-forge intel-openmp=2021.4

Because intel-openmp is only a Windows dependency (mkl conda-forge packages for linux and osx both use llvm-openmp) and pypardiso is a noarch package, there is no straightforward way to fix this with pypardiso's own dependency pins

Possible solutions:

new release of libblas with a mkl 2022.0 build, as the 2022.0 versions of mkl and intel-openmp appear to be compatible -> PR: https://github.com/conda-forge/blas-feedstock/pull/81
correct pins for intel-openmp in the conda-forge mkl package -> issue: https://github.com/conda-forge/intel_repack-feedstock/issues/33
switch pypardiso from a noarch build to separate builds for each OS with a pinning for compatible mkl and intel-openmp on windows -> this is a lot of effort with the potential to break other things on linux and osx, last resort
remove the requirement for a mkl-build of libblas and pin mkl to >=2022.0 -> this is probably the way to go short-term if there is no progress on 1. and 2., but it could lead to changes in performance on all operating systems for non-pardiso linalg workloads, because of the diferent libblas-build

Ping @cmutel, so you're aware of this issue in case you get reports of problems with brightway on windows

Indeed

Summary of the current situation:

mkl 2021.4 is not fully compatible with intel-openmp 2022.0, this only affects Windows
If you experience problems with pypardiso installed from conda-forge, downgrading intel-openmp is a temporary solution to fix it:

conda install -c conda-forge intel-openmp=2021.4

Because intel-openmp is only a Windows dependency (mkl conda-forge packages for linux and osx both use llvm-openmp) and pypardiso is a noarch package, there is no straightforward way to fix this with pypardiso's own dependency pins

Possible solutions:

new release of libblas with a mkl 2022.0 build, as the 2022.0 versions of mkl and intel-openmp appear to be compatible -> PR: Update MKL to 2022.0 build conda-forge/blas-feedstock#81
correct pins for intel-openmp in the conda-forge mkl package -> issue: Potential compatibility issue between mkl 2021.4.0 and intel-openmp 2022.0.0 on Windows conda-forge/intel_repack-feedstock#33
switch pypardiso from a noarch build to separate builds for each OS with a pinning for compatible mkl and intel-openmp on windows -> this is a lot of effort with the potential to break other things on linux and osx, last resort
remove the requirement for a mkl-build of libblas and pin mkl to >=2022.0 -> this is probably the way to go short-term if there is no progress on 1. and 2., but it could lead to changes in performance on all operating systems for non-pardiso linalg workloads, because of the diferent libblas-build

Thanks for this summary, @haasad. Just to clarify: there should not be a problem with mkl 2021.4 and intel-omp 2021.4 on Windows, right?

Thanks for this summary, @haasad. Just to clarify: there should not be a problem with mkl 2021.4 and intel-omp 2021.4 on Windows, right?

That's correct, according to my tests the problem only occurs with the combination of mkl 2021.4 and intel-openmp 2022.0.

Hi @astudillo20lca,
libblas with the mkl 2022.0 build has been released in the meantime, so downgrading intel-openmp shouldn't be necessary anymore.
 I could imagine that they interfere with each other. I would generally advise you against mixing packages from the defaults channel and conda-forge in the same environment. Especially when working with numpy et al.
In my experience you'll run into compatibility issues rather sooner than later when working with a single conda environment with a lot of different packages installed. I'd suggest to have separate environments for e.g. GIS stuff (gdal and friends) and LCA (brightway etc.).
Can you check if you still get the Pardiso error in a "fresh" environment? Something like:
conda create -n issue36 -c conda-forge -c cmutel brightway25 python=3.9

thanks Adrian! with a fresh installation it does indeed work. I'll follow your advice

With https://github.com/conda-forge/blas-feedstock/pull/81 being merged, the underlying problem shouldn't appear anymore.

After updating Anaconda, Brightway2 and Activity-Browser the work around "conda create -n ab_fixed activity-browser-dev intel-openmp=2021.4" mentioned here https://github.com/LCA-ActivityBrowser/activity-browser/issues/694#issuecomment-1015326029 does not work anymore for me. Could you please explain for a real DAU what the current workaround for the pypardiso issue is?

@SELTENEERDEN Can you give some input on your system and library version? E.g. OS and version, conda or pip, brightway 2 or 2.5? And what is the exact error when you create a new environment?

I was also bitten by this issue, under Linux.
The issue appeared on an install that was created with:
conda install -c conda-forge -c cmutel brightway25
# and then, I forgot to keep the conda-forge channel as the main source by doing:
conda update conda

The snippet above (the second conda execution in particular) pulled intel-openmp dependency and trashed my original environment.
TIP: keep conda-forge as the main source to get packages
a) Don't forget to use it as the first channel in your conda commands (update, install, etc.)
or
b) [nuke option] update your $HOME/.condarc to look like follows:
channel_priority: strict
channels:
  - conda-forge
  - defaults

ensure that all the dependencies come from the conda-forge channel unless they exist only on defaults

ref here from conda-forge
and never forget you did this !


🚀 [Feature] Only Admins are Moderator on the welcome table

🚀 Feature

Only Admins are Moderator on the welcome table.
Do we want this?
What are the downsides compared to when everyone is moderator?

Zeichenfläche für alle Nutzer verfügbar?

closing in favor of #2470


 Updated owa5X logo.

The previous logo had some problems when shown in Balena's dashboard and other places.
Changelog-entry: Updated owa5X logo.
Signed-off-by: Alvaro Guzman<EMAIL_ADDRESS>

Hello, is it okay now?

@owzagj looks fine. You need to rebase your branch on top of master though as it is now out of date.

lgtm


PIV-280 - Configurable OIDC timeout

https://vasdvp.atlassian.net/browse/PIV-280
Adds an optional config to override the default 1500ms timeout for OIDC requests.
See https://github.com/department-of-veterans-affairs/devops/pull/6589 for related config changes (15s timeout in non-prod environments).

Timeouts can be simulated using a local oauth-proxy by sending Okta traffic to a bad host.
$ docker exec -it -u 0 oauth-proxy_oauth-proxy_1 sh
/opt/app # echo "<IP_ADDRESS> [okta fqdn]" >> /etc/hosts


Remove legacy api endpoints

Description
In this pr I removed all of the deprecated api endpoints from swagger.  I also updated the make file and documentation to help future contributors to swagger in provenance have an easier time dealing with build/caching issues when trying to test changes to swagger.
closes: #380

Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

[ ] Targeted PR against correct branch (see CONTRIBUTING.md)
[ ] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[ ] Wrote unit and integration tests
[ ] Updated relevant documentation (docs/) or specification (x/<module>/spec/)
[ ] Added relevant godoc comments.
[ ] Added a relevant changelog entry to the Unreleased section in CHANGELOG.md
[ ] Re-reviewed Files changed in the Github PR explorer
[ ] Review Codecov Report in the comment section below once CI passes

@iramiller @dwedul-figure would you two be able to review this when you have a minute?  Thanks!


Request: Add place name to Address Autocomplete Control

The Address Autocomplete Control is great! I am using it with the Google Places API. Would it be possible to add the "place name" field to the control? The API supports this and it would be great when entering business addresses.

Hello,
Can you please provide an additional description? Do you want to have an additional output to store that name to?
Andrew

If Place name is returned, then ideally this would populate as street 1 or prepend to street 1, e.g. PLACENAME, STREET 1
Other people may want it separately though.
e.g.

Probably best to use a custom .js for this, do you have any more documentation on creating these?


New version: Tencent.TencentMeeting version <IP_ADDRESS>2

Created by 🥟 Dumplings in workflow run #4731.
Logs
Updated: <IP_ADDRESS>2 → <IP_ADDRESS>2
Submitting WinGet manifests

Microsoft Reviewers: Open in CodeFlow

Your workflow doesn't treat x64 version of Tencentmeeting properly. @SpecterShell please fix it.

Your workflow doesn't treat x64 version of Tencentmeeting properly. @SpecterShell please fix it.

Fixed


Java program to calculate factors of a number

Added cpp program to calculate factors of a number as well

@Hannibal404 Add C program for this also

@Kumar-laxmi it would not be possible in C as this implementation uses vectors, which aren't there in the C library.

@Kumar-laxmi it would not be possible in C as this implementation uses vectors, which aren't there in the C library.

@Hannibal404 This is where you need to apply your DSA knowledge.

And please push the python program in this PR as same logic can't be spammed in two PRs

It has been merged already in the previous PR. It cannot be added here now

I have reverted the PR, now please push the file in this PR

@Kumar-laxmi Added

@Hannibal404 Please add the main() method in Java program

Added

@Kumar-laxmi added the main() function in the Java program


[PROJECT] Collectives dashboard reports

As a replacement for Monthly Reports.
To consider:

https://github.com/opencollective/opencollective/issues/6037

Issue to be completed.

Are there any updates on this?
Various collectives have asked for the montly reports to return.
Thank you for your feedback!


Improve FreeBSD TCP coverage

Build alternate TCP stacks and ensure that they get loaded.

This builds and loads the stack.  If that is what want, it looks good to me.


Collection activity tab

Here we go again
Figma link and basics

updated collection detail handoff figma:
https://www.figma.com/file/7BWdGiowrvTucpSFLE0kRX/Collection-detail-handoff?node-id=0%3A1&t=J1caM6sKXhnhigJ7-1
newly divided into two section, items and activity
activity frames have some sort of working prototypes
new frame - 1024px wide representing tablet/small desktop view - better clarity for layout

Desktop

Top section

remains the same

Menu bar

everything except the tab switch is removed when on activity

Burger menu

new are event types - used for sorting events
there is also filtering based traits etc for the future
price I think won't be there, it's a leftover design

Chart

same as on gallery item
gets smaller when resizing the screen, see 1024 screen
button for switching time frame - without drop shadow this time so it's not that disruptive

Owner insights

option to switch between - same hover effects and function as search tab switch

Holders

this tab is new, with few changes to the hierarchy and layout to make it clearer

the tab is open by default - you can then switch to flipper from there

vertical scroll

the box is made for mobile by default so it imo should not get smaller

name is like in gallery item detail - when you hover, change to hover color and hover card is displayed

stats, taken from current holder tab

owned is amount of nfts
total bought - in current version bought, but it did not make sense for this layout so its renamed
total sold - same case as with total bought
date - latest activity - no changes

nft details dropdown, gives you option to view the nfts of the holder, also taken from current tab but refined

for holders we will only display the nft, name and date

hover over the section results in change of bg

spacing can be seen in figma

Flippers

layout similar to holders but filled with more information
name same
stats same with small change that is the last activity and best flip - showed in percentage
also with option to show nft details

img
name
profit - percentage
bought for and sold for, if there is no data yet, two dashes will make the job
showed the hover effect over the section, see figma for exact padding etc

Event section

we will have two types how to show event, one is for mobile and the other for desktop - they would be used based on the room available
infinity scroll - no pagination, just scroll 'til infinity :D

Desktop

first one is this - desktop
no hover effect over the row
you have the option to hover over: name, address from/to and time that will show exact time in the tooltip
that will trigger hover card
breadcrumbs are on top of this all - showing active filters: event type or trait filter

Collapsed view/mobile

replacing the desktop view when there is no room available to maintain somewhat functional gaps between the info.
something like this is ready for switch:

imgs up represent the use cases - it can be also stretched if there is space

Other event types

this shows how are different events displayed - some are without adress, or with price, you name it

Tags

these are new
many new colors used, they are not yet somewhere else except the k-bluelight

in figma there is light and dark mode version - no hover effect since it's not a button

Mobile

holder and flipper tab is already mobile compatible so it just slides on top
chart under it - smaller version, like in gallery item on mobile
then divider and events - collapsed version
there are also going to be some changes coming to the mobile about the filter, because now you have to scroll all the way to the top to change event type
rest is working the same

Dark mode

no changes here, most of the components are well known - tags are in the figma and hover over container is also there as a reminder

As always, feel free to ask!
Thank you 🚀

👀

Does that count as this week?

only if you start week by Monday ;)
it's oke, I would really like to see it up, well, soon as possible 😅

@daiagi rn


[PE-D][Tester E] Lack of Clear Message When No Candidates Are Present

Problem Description
When there are no candidates in the system, the message displayed is "Listed all candidates," which might confuse users who expect a more explicit message stating that the list of candidates is empty and so nothing is being printed. First time users of HiredFiredPro in particular may be confused and think that there is a bug or glitch in the application.
I've assigned this a low severity as it may not be very often that users will clear data in the application, however the use case is still possible and valid.
Steps to reproduce

execute clear
execute list

Expected Output
The system should give a more explicit message stating that the list of candidates is empty and so nothing is being printed
Actual Output
The app does not give an explicit message to state that the list of candidates is empty, instead stating that all candidates have been listed and showing an empty UI (with no candidates being shown).

Labels: severity.Low type.FunctionalityBug
original: yongkheehou/ped#9

Not a bug, unable to change in v1.6


griefprevention-1.10.2-<IP_ADDRESS>

Type /cp shows this error in-game (did not give error in console).
http://puu.sh/s6bD0/1b1c736736.png

Here is a console message about the error.

Fixed in commit
https://github.com/MinecraftPortCentral/GriefPrevention/commit/d985a08a7068cf7764f8897f7a3f3486f1e7b28c


[BUG] Custom Roll uses localized text rather than actual name

Describe the bug
Translation for custom rolls make the roll bug
To Reproduce
One of my player try to use the Custom Roll to hunt. I did a console.log of the skill and attributes used for _onCustomVampireRoll (dataset.dice1.toLowerCase() and dataset.dice2.toLowerCase() line 636 and 637) are "sang-froid" and  "animaux".
But in the arrays ( this.actor.data.data.abilities and this.actor.data.data.skills, same lines) it's the non-translated version that is intended (i.e : composure and animal ken).
Expected behavior
So I guess we might change the select options in customRoll-dice1 and customRoll-dice2.
Something like
<option value="Strength">Force</option>
instead of
<option>Force</option>
Screenshots

Desktop (please complete the following information):

Browser Firefox
FoundryVTT 0.79
Foundry-V5 Version 1.4.0

Additional context
Add any other context about the problem here.

The issue seems very similar with specialties

For me it's closed now :)


Is resampling needed when using EnCodec?

Hi,
Thanks for this amazing repository.

I was wondering, how is the sample rate mismatch between EnCodec and HuBERT handled? I see from fairseq that HuBERT base was trained on LibriSpeech, which is 16k.
Given that, do I need to use 24k audio or 16k audio? Does the code have some automatic internal resampling that takes care of the mismatch between the two models? I've looked for it, but couldn't find it.
Thanks a lot!

@m-pana oh hey Michele! thanks and no problem
you caught me at the right time, as I am about to return to some audio work
do you want to see if this commit solves your issue?

import torch
from audiolm_pytorch import EncodecWrapper

encodec = EncodecWrapper()

x = torch.randn(1, 48000)
out = encodec(x, input_sample_hz = 16000)

@m-pana ohh, actually, if you are training, the dataset should automatically figure out what the sampling frequencies it needs, and internally the proper sampled audio is forwarded to the correct module

@m-pana i think the scenario i have not covered yet is the prompt waveforms on inference - the input sample hz should be specified and it should auto convert for the semantic and acoustic models
maybe we should leave this issue so i resolve it this week

@m-pana ohh, actually, if you are training, the dataset should automatically figure out what the sampling frequencies it needs, and internally the proper sampled audio is forwarded to the correct module

Oh, I had completely missed that!

@m-pana i think the scenario i have not covered yet is the prompt waveforms on inference - the input sample hz should be specified and it should auto convert for the semantic and acoustic models
maybe we should leave this issue open so i resolve it this week

Alright, thanks!

Regarding encodec, can it process batched input of wav files? Where do we mask the wav files?


Item selection should be on second click

In the original game, a menu item is only executed at the second click.
First the item get highlighted, then if clicked again it executes.
I think it would be easy for you to implement that if I'm not wrong.
rt-2

https://github.com/romgerman/GTAVMenuVueHtml/commit/851f4fa403e5612f968d7decc9e5d7a8757e3575

Thanks a lot


After dismiss there us gui glitch

On tap of collection view cell i hve called the library. But if there are images whose height is big then after dismiss the navigation bar has gui glitch

@sakshigidwani93 . I too have similar kind of issue .

#288, 5.0.5  may fix this issue,  can you please check it? thanks in advance.


Add caution and warning blocks to sections that can be skipped

Difficult sections that can be skipped without halting progress must be clearly marked and identified.

Added skippable sections with cautions


Remove My Domain from setup instructions

My Domain is now auto activated in new DE orgs.Let's remove that step from install instructions.

Fixed


Fix cargo deny issue

From #956

Codecov Report

Merging #960 (18a69bd) into master (f3c2928) will increase coverage by 72.43%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master     #960       +/-   ##
===========================================
+ Coverage        0   72.43%   +72.43%
===========================================
  Files           0       64       +64
  Lines           0     4412     +4412
===========================================
+ Hits            0     3196     +3196
- Misses          0     1216     +1216

Impacted Files
Coverage Δ

kube-core/src/params.rs
77.69% <0.00%> (ø)

kube-client/src/api/util/csr.rs
66.66% <0.00%> (ø)

kube-derive/tests/test_ui.rs
100.00% <0.00%> (ø)

kube-runtime/src/controller/future_hash_map.rs
95.00% <0.00%> (ø)

kube-client/src/client/middleware/mod.rs
93.10% <0.00%> (ø)

kube-core/src/admission.rs
61.11% <0.00%> (ø)

kube-core/src/version.rs
94.40% <0.00%> (ø)

kube-runtime/src/controller/mod.rs
37.27% <0.00%> (ø)

kube-client/src/api/remote_command.rs
67.74% <0.00%> (ø)

kube-client/src/client/config_ext.rs
51.21% <0.00%> (ø)

... and 54 more


AKS diagnostic bug resolved & storage diagnostic added

Description
This PR resolves #872

Fixed bug when running AKS Diagnostics > Known Issues, Availability and Performance
Added storage diagnostics
Updated periscope information link

Screenshots

Related Issues

Closes #872

@microsoft-github-policy-service agree

VSIX file for testing - > vscode-aks-tools-1.4.8diagnostic-fix.zip


Show map with incidents and other units

To be designed.

First draft in https://github.com/wrk-fmd/CoCeMoCl/tree/feature/%233-show-map-with-incidents-and-other-units


[Proposal] Svelte Repl: use Skypack before falling back to Unpkg

Is your feature request related to a problem? Please describe.
unpkg loads a ton of requests. this can cause issues due to 429 too many requests
example: https://svelte.dev/repl/7f9c4f7a0da0407cacd6c353a121b442?version=3.21.0
discord record of confusion: https://discordapp.com/channels/457912077277855764/457912077277855766/704383850922639460
Describe the solution you'd like
try using pika cdn - it compiles entire packages to a single file. probably faster.
Describe alternatives you've considered
do nothing
How important is this feature to you?
nice to have. hopefully as easy to implement as prefixing every package with "https://cdn.pika.dev"
@FredKSchott 's comments here https://twitter.com/FredKSchott/status/1254861844180692993

looks like pika was renamed to skypack
going to go ahead and close this though as I believe PuruVJ did some investigation of similar alternatives like esm.sh and ran into issues around not being able to share the svelte runtime with it bundled. maybe we'll look ask jsdelivr though


Handling undefined values in summarize notifications tool

Checking whether the parameters are defined before using them
Renaming unreadComments to comments because the LLM behind seems to send the unreadComments as a comments array

Thanks for the review, I made the requested changes


 IF YOU DO NOT FOLLOW THE FORMAT OR MAKE A GENERIC TOKEN REQUEST YOUR ISSUE WILL BE DELETED WITHOUT COMMENT
YOUR JUSTLIST MUST FOLLOW THE JSON SPECIFICATION
https://github.com/justswaporg/justlists/example.justlists.ts
Checklist

[x] I understand that this is not the place to request a token listing.
[x] I have tested that my JustList is compatible by pasting the URL into the add a list UI at justswap.org.
[x] I understand that filing an issue or adding liquidity does not guarantee addition to the justlists website.

Please provide the following information for your token.
JustList URL must be HTTPS.
JustList URL: http://nubapass.com/nubapass-list.json
JustList Name: Nuba Healthtech Just List
Link to the official homepage of the JustList manager: https://nubapass.com/

The NUBA Pass project is based on the decentralization of access to medical records to guarantee the portability of the electronic medical record by the end user with blockchain TRC-20 Smart Contract.


Check if username is unique

rejection sampling is probably an ok way to do this. This will need to be implemented at 2 points: account creation and edit profile stage

Good point. @Mattwmaster58 Any tips on how I should go about this? I'm just thinking a simple while look that checks all usernames present in the db

Sure. You would basically just QuerySnapshot.empty property to determine whether or not someone already has this username. I think you can safely ignore creation username unique constraints - 1000 adjectives * 1000 nouns * 1000 numbers = 1 in a billion chance it's not unique. I'll take those odds.
For editing the profile,  you could do it simply checking when they click OK. This has its drawbacks tho - if for example, they added/edited email/social profiles, but the username wasn't unique - it might be annoying to save only those fields (definitely can be done).
The ideal way in my mind for ease of use in my mind is sorta the way insta does it if you're familiar. As soon as a user changes the username input field at all, we disable the save button and show a loading icon. Spamming the DB on every request is non-ideal, especially because by the time we get most of the responses they'll be useless anyway. So for example, if they added "1234123" to their username of "bob", you're sending requests for "bob1", "bob12", "bob123" ... "bob1234123".
So to combat this, we could  start maybe a 500ms countdown before a database request is sent off (how you'd do this in JS would be setTimeout, how in Java I do not know), and every time another input change is received, we reset this countdown. When this countdown runs out make a new one to the database:
        db.collection("users")
                .whereEqualTo("username", "<actual username here>")
                .whereNotEqualTo(FieldPath.documentId(), player.getPlayerId())
                .get()
                .addOnCompleteListener(
                        qSnapshot -> {
                            if (qSnapshot.isSuccessful()) {
                                if (qSnapshot.getResult().isEmpty()) {
                                    // enable the save button, show checkmark icon etc
                                } else {
                                    // show x, callout "username is taken",
                                    // keep save button disabled
                                }
                            }
                        });

A pitfall in this approach is the race condition that might occur if we get results out of order. For example, let's say we query for bob1 and then later on bob2. bob2 returns first for some reason, and then bob1 returns. bob1 is unique, so the user is allowed to save bob2 as their username, even though it may not be unique - I'm not sure the best way to address this. Ideally you  cancel any existing queries, but this isn't trivial to do, here's what I came up with though:

Click to expand!
```java
public class UniqueUsernameVerifier {
    private final String username;
    private final View checkmark;
    private final Button saveButton;
    private final String playerId;
    private boolean cancelled;
public UniqueUsernameVerifier(
        String username, String playerId, View checkmark, Button saveButton) {
    this.username = username;
    this.playerId = playerId;
    this.checkmark = checkmark;
    this.saveButton = saveButton;
}

public void cancel() {
    cancelled = true;
}

public boolean isCancelled() {
    return cancelled;
}

public void checkUsername() {
    FirebaseFirestore.getInstance()
            .collection("users")
            .whereEqualTo("username", "<actual username here>")
            .whereNotEqualTo(FieldPath.documentId(), username)
            .get()
            .addOnCompleteListener(
                    qSnapshot -> {
                        if (qSnapshot.isSuccessful() && !isCancelled()) {
                            if (qSnapshot.getResult().isEmpty()) {
                                // enable the save button, show checkmark icon etc
                            } else {
                                // show x, callout "username is taken",
                                // keep save button disabled
                            }
                        }
                    });
}

}
</details>

And the usage:
```java

// after our 500ms countdown has expired
if (verifier !== null) {
    verifier.cancel()
}
verifier = new UniqueUsernameVerifier(...)


Integer division error in Python3.6 error in danspeech

An integer division error appear for Python3.6
[27/Apr/2021 09:59:01] "POST /preprocess_audio/ HTTP/1.1" 200 17
Internal Server Error: /transcribe/
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/django/core/handlers/exception.py", line 47, in inner
    response = get_response(request)
  File "/usr/local/lib/python3.6/dist-packages/django/core/handlers/base.py", line 181, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "<path>/danspeechdemo/danspeechdemo/demo/views.py", line 146, in transcribe
    transcription = recognizer.recognize(audio, show_all=False)
  File "/usr/local/lib/python3.6/dist-packages/danspeech/Recognizer.py", line 95, in recognize
    return self.danspeech_recognizer.transcribe(audio_data, show_all=show_all)
  File "/usr/local/lib/python3.6/dist-packages/danspeech/DanSpeechRecognizer.py", line 218, in transcribe
    out, output_sizes = self.model(recording, input_sizes)
  File "/usr/local/lib/python3.6/dist-packages/torch/nn/modules/module.py", line 722, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/danspeech/deepspeech/model.py", line 498, in forward
    output_lengths = self.get_seq_lens(lengths)
  File "/usr/local/lib/python3.6/dist-packages/danspeech/deepspeech/model.py", line 550, in get_seq_lens
    seq_len = ((seq_len + 2 * m.padding[1] - m.dilation[1] * (m.kernel_size[1] - 1) - 1) / m.stride[1] + 1)
RuntimeError: Integer division of tensors using div or / is no longer supported, and in a future release div will perform true division as in Python 3. Use true_divide or floor_divide (// in Python) instead.
[27/Apr/2021 09:59:02] "POST /transcribe/ HTTP/1.1" 500 96622

This has already been fixed with https://github.com/danspeech/danspeech/commit/ae334a67d44480e8d92513faa620ae2f9fe61539 However, the pip version fails.

Updated pip version to include commit ae334a6 :)

We have some newer, faster and better models based on the wav2vec2 architecture. They are not open sourced yet. Let me know if you want access to these @fnielsen before we officially open source them.

Hey @Rasmusafj are the new, faster and better models finetuned on a multilingual pretrained wav2vec2 model or have you created your own pretrained danish wav2vec2 model? In either case, that sounds pretty 😎

@SimonRask-Code Its purely danish and not multilingual. The pre-trained multilingual model is quite big (and thus less optimal in our production setting), hence we use the base wav2vec2 architecture instead.
We've done the pre-training with 1200hours of data and fine-tuning with approx 4-500 hours of data. :)

Thanks for the information about the new models. I will let you now if I need them. What are the 1.200 hours? Folketinget? NST? There is the sprogteknologi.dk effort to create more data, possibly in specialized domains.


Switch from Apache Tomcat to JBoss Undertow.

Utilizing the Undertow web server as a servlet container instead of Tomcat used by default.

She looks good ! :+1:


[spark] override equals as a preparative step for performance optimization

Purpose

Linked issue: close #xxx

Tests

API and Format

Documentation

https://github.com/apache/incubator-paimon/issues/2404

Can you explain the key to improve performance? Why it is related to equals?


[SPARK-7313] [Spark CORE] Configurable limit to range partitioner's max_samples.

+CC @pwendell We hit this while using non primitive keys.

Merged build triggered.

Merged build started.

Test build #31613 has started for   PR 5848 at commit 1b9eab8.

Not added the property to configuration.md - not sure if this is something we want to generally expose. Comments ?

Merged build triggered.

Merged build started.

Test build #31617 has started for   PR 5848 at commit 5fefea8.

Yeah sounds like you need the limit to be < 800k or so. 1 million seems like a really high limit to begin with since it wouldn't even matter for less than 50k partitions and your case is proof that it's not a very effective max. Maybe the max can just be 100k? at least, the default? maybe I'm trying too hard to avoid a flag. I wouldn't document it, no.

100k will definitely fix our immediate concern (we use 500k actually :-) )
But then I am not sure who else might run into the same later.

Test build #31613 has finished for   PR 5848 at commit 1b9eab8.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
class DataFrameStatFunctions(object):

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/31613/
Test PASSed.

Test build #31617 has finished for   PR 5848 at commit 5fefea8.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder/31617/
Test PASSed.

Any updates on pushing this in ?

I wonder if we'll ever want 1e6 samples, which seems like a lot. Echoing @srowen's thinking aloud earlier, does it make sense to change this to something like 1e5 instead of making it configurable?

What the exact value should be - I am not sure, the current value does seem to work well for most users - except for degenerate cases like ours : hence hardcoding it leads to problems.
Given this, I would not change the default - rather make it configurable.


iOS can scroll main list while detail view is visible

Reported on Twitter: https://twitter.com/djbriane/status/669232271505817600?s=09

I encountered this on desktop Safari as well.
Safari Version 9.0.2 (11601.3.9)
Mac OS X El Capitan Version 10.11.2
Easiest way to reproduce is by placing your mouse on the background (outside the div.detail-panel-content) and scrolling.

One way to solve this is to unmount the main list, if you're doing a VDOM approach might be easy to do. If it's not there, it can't be scrolled.
If not, you could try adding a class to the body/html when you open a specific item with 'overflow: hidden' that'd prevent any scrolling.


Update to latest esbuild and other minor level dependencies

@kazijawad  is this project dead now?
We're getting errors about peer dependencies on npm install in our project because the esbuild package is outdated here.
Can you please review/approve this PR?

Apologies, I missed this PR


322 add /rawImage to docs

Fixes #322

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: JeremyTheocharis:x: GornokaYou have signed the CLA already but the status is still pending? Let us recheck it.


Chapter 8-issue

Hello,
I really appreciate your book because you write it to train people. However, when I try to set up a static IP, it doesn't work.

Sorry for the late response. I assume you have followed the directions in Chapter 7: Networking with Linux, either for CentOS or Ubuntu, in the Static IP section. Can you please specify the platform you are trying with and possibly some related details about what exactly is not working? I'll try my best to help.


issue #764 Resolved

Resolved the Navbar folding issue
deleted the translate unnecessary translate button
fixed the dark mode in nav bar
before

after

@mansiruhil13 could you please review

navbar has changed.

can you make changes in your code?

my bad, there's nothg according to the issue i had created ....it had been resolved

can you make changes in your code? acc to new navbar

as it can't be merged could please write an approving review on this it could be a great help for me @mansiruhil13


Nested index.html files not being copied to dist folder

Version
3.0.4
Reproduction link
https://github.com/ivansieder/vue-cli-nested-index-files-bug
Node and OS info
Node 10.11.0 / yarn 1.10.1 / Ubuntu 18.04
Steps to reproduce

run yarn build

What is expected?
nested index.html files (inside the other directory) should be copied to the dist folder.
What is actually happening?
The index.html files (no matter in which subdirectory) are being ignored.

This "fix" does actually work, but there is an issue when using multi-page-setup, as in that situation, html-webpack-plugin will take it as a template AND the file will be copied, too. What's the desired output here? Wouldn't it be better to generally copy ALL files, which are not being used as a template somewhere instead of only ignoring index.html files? This way someone could also get the public/index.html copied, if it's not being used as an HTML template.

Update on this one: I've opened up a PR for the copy-webpack-plugin (https://github.com/webpack-contrib/copy-webpack-plugin/pull/295) to allow granular file exclusions using a custom validation function. As soon as that is done, it could be implemented with the vue CLI (if this is actually wanted by the core team) to really only exclude those files, which have been used as templates and copy all other files properly.

Yes, It worked for me.


refresh to v0.1.91

Checklist before submitting

[x] Did you read the contributor guide?
[ ] Did you update any affected documentation?
[ ] Did you write any tests to validate this change?

Description
Fixes https://github.com/open-ce/open-ce/issues/181.
Review process to land

All tests and other checks must succeed.
At least one maintainer must review and approve.
If any  maintainer requests changes, they must be addressed.

Updated this to v0.1.91 as transformers needs v0.1.91.


luci-nginx: error flashing new firmware with web interface

Trying to update firmware fails during upload using nginx as the LuCI web server.
Console output attached:

That was on Safari.
On Firefox, a different error manifests:

And on Chrome:

This is a bug in the luci-nginx package, most likely because it is not configured to execute CGI programs correctly.
@Ansuel

Please follow up on https://github.com/openwrt/packages/issues/10134 - this is not a LuCI bug.


Adding label then refreshing issues doesn’t add label dot

However it does increase the size of the cell.

Bug Report Dump (Auto-generated)

Version 1.12.0 (1079)
Device: iPhone 7 Plus (iOS 11.0.3)
TestFlight: false

Scrolling back does update the cell tho. Seems like the model is missing labels in its equality check.
Sent with GitHawk

duplicate #715?

Fixed in #716
Sent with GitHawk

Closing as a dupe of #715

😍
Sent with GitHawk


How to use async function in run thread?

How to use async function in run thread?
eg:
    let job = Job::new_repeated_async(Duration::from_secs(10), |_uuid, _l| {
        Box::pin(async move {
            let a = schedule::guahao::schedule_91160().await;
            println!("===> {}", a);
        })
    }).unwrap();

but report this error:
error: generator cannot be shared between threads safely
  --> src\main.rs:44:9
   |
44 | /         Box::pin(async move {
45 | |             let a = schedule::guahao::schedule_91160().await;
46 | |             println!("===> {}", a);
47 | |         })
   | |__________^ future created by async block is not `Sync`
   |
   = help: the trait `Sync` is not implemented for `(dyn std::future::Future<Output = Result<http::response::Response<hyper::body::body::Body>, hyper::error::Error>> + std::marker::Send + 'static)`
   = note: required for the cast to the object type `dyn std::future::Future<Output = ()> + Sync + std::marker::Send`

Hi @marvinpan8, thank you for the bug report.
On the compiling error - Sync is not implemented for the the return of your .await return. This is unfortunately outside the realm of this library and what I'm seeing it looks like it in the realm of http and/or Hyper's library.
Something similar was reported earlier: https://github.com/mvniekerk/tokio-cron-scheduler/issues/8
The suggested workaround was to send a trigger to an MPSC channel and then awaiting the return of that.
I'm closing this - please feel free to keep on commenting on this bug report, I'll try to assist.


Fix static build for CNI-plugin

Pull Request

[X] Make sure you have followed Kube-OVN Code Style.

What type of this PR
Examples of user facing changes:

Bug fixes

When building with -buildmode=pie CNI-plugin does not work on systems without glibc even with CGO_ENABLED=0.
Example on Talos OS I have the following error:
netplugin failed with no error message: fork/exec /opt/cni/bin/kube-ovn: no such file or directory

The same binary on:
ubuntu:
 ldd /host/opt/cni/bin/kube-ovn
        statically linked

alpine linux:
ldd /host/opt/cni/bin/kube-ovn
        /lib64/ld-linux-x86-64.so.2 (0x7f9fba42c000)

Manifests are updated in following PR https://github.com/kubeovn/kube-ovn/pull/3593
Which issue(s) this PR fixes
Fixes #(issue-number)
WHAT
copilot:summary
copilot:poem
HOW
copilot:walkthrough

@kvaps Thanks for test on Talos OS!


not set clobbers

Hi,
"ReferenceError: nfc is not defined" is happened
<js-module src="www/phonegap-nfc.js" name="NFC">
<clobbers target="nfc" />
</js-module>
↑ is not included in the plugin.xml is ok?
please help me

"ReferenceError: nfc is not defined" generally means the plugin is installed incorrectly.
Use the Cordova or PhoneGap CLI to install the plugin into your project since it copies the correct files to the proper places. Make sure you're using the latest version of the CLI.
npm install -g cordova
cordova create myApp com.example.myapp MyApp
cd myApp
cordova plugin add phonegap-nfc


Alert after Redirect?

The scenario is this: when reloading a page or clicking on a button something goes wrong which triggers an alert and a redirect. I would like for the alert to appear on the new page, is this possible? How?

The redirect causes the browser to load a new page, so there is no connection between the two requests.
You would have to add things in the redirect request (like a special URL parameter or the like).


Clear user id after setting it

How does one clear a user id after setting a user id via AppCenter.setUserId("your-user-id"); ?
I assume setting it to null will do the trick but I can't be sure based on the documentation.
Thank you

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

ID: 846243f4-8201-c23f-9719-63326aae7572
Version Independent ID: 5c8f7b51-1102-b427-a650-06cfc11f71e6
Content: Other React Native APIs - Visual Studio App Center
Content Source: docs/sdk/other-apis/react-native.md
Service: vs-appcenter
GitHub Login: @elamalani
Microsoft Alias: emalani

@bearer-syntaxerror You can clear the user id by setting it to NULL.


Health-check rest endpoint in daemon

Returns 200 if everything is okay.
some requests for this

HTTP? If not 200, what are the semantics of other return codes?
What about GraphQL?

Need specific requirement for this


chore(deps): update common-dev-assets digest to 0f20407

This PR contains the following updates:

Package
Update
Change

common-dev-assets
digest
761eaca -> 0f20407

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Renovate Bot.

:tada: This PR is included in version 2.0.3 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Secure internal-backstage endpoints

Describe the feature request
I would like Edge to hide internal-backstage endpoints by default (except health/ready).
Background
Currently we expose quite a few details in our /internal-backstage urls
/internal-backstage/metrics
/internal-backstage/features
/internal-backstage/tokens
/internal-backstage/metricsbatch
In Unleash's loadbalanced setup, we always block public access to URLs containing /internal-backstage. But not all users of Edge will have our loadbalancer setup.
Solution suggestions
I'd like us to by default not mount the internal-backstage endpoints.
Preferably we'd have a way to setup basic auth for the internal-backstage endpoints, or alternately (for Unleash's sake) a switch turning them all on.

Thanks for opening the issue 👍

So, as a work around for now, in 19.6.1 each endpoint has a toggle to turn it off.


Update Makie and CairoMakie compat entries

Closes #56. Closes #52. Closes #49.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 24.286%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
17

Relevant Lines:
70

💛  - Coveralls

It seems some change in Makie 0.20 (or CairoMakie?) causes a color change of the bands: https://juliagaussianprocesses.github.io/AbstractGPsMakie.jl/previews/PR61/


change-stack not working from cflinuxfs2 to cfliuxfs3

change-stack not working from cflinuxfs2 to cflinuxfs3
if i have a app with cflinuxfs2 on buildpack(java-buildpack v3.9-offline) name which is not available in cflinuxfs3
it says a problem occurred: no app found with the name

Any possible solution for this issue without using cf push  as i want to use the alredy deployed source code and change the stack from cflinuxfs2 to cflinuxfs3


Proposal: machine-level target filtering

Proposal
Grafana Agent allows users to easily run one agent per machine, all configured with the same set of scrape jobs. The list of targets actively scraped from is filtered down to the set of targets that are colocated on the same node as the agent.
This was initially implemented via a feature called host filtering, where Grafana Agent tries to detect if a target is running on the same machine, and filters it out if it isn't. I've not been very happy with this implementation, and I think upstreaming the use case (but not the implementation), is the perfect time to work out the issues with it.
This is what host filtering does:

If the target address is localhost/<IP_ADDRESS>, always scrape.
Otherwise, only scrape targets if the target has a hostname label that matches the hostname of the machine the agent is running on (i.e., check for __meta_kubernetes_node_name.)

I think relabel rules would be the best place to move this logic. I propose that Prometheus automatically inject a machine-level __prometheus_agent_hostname label based on the result of os.Hostname(). While this would allow for writing relabel rules that make use of Prometheus' hostname, I can't currently identify a minimal set of new/existing rules that would provide equivalent functionality to what Grafana Agent's host filtering does. You would need (at least) some new way of keeping/dropping targets based on if a set of labels match, but I can't think of a way to encode the localhost bypass at all.

You would need at least some new way of keeping/dropping targets based on if a set of labels match,

Something like:
- source_labels: [__meta_kubernetes_node_name, __prometheus_agent_hostname]
  action: match # or match_ne for the inverse, or something similarly named

If the target address is localhost/<IP_ADDRESS>, always scrape

Maybe this is an edge case we could initially ignore anyway? I don't think you'd use the host name filtering inside of an SD that might produce localhost targets.

How would you know your own "node" hostname?

Ah, sorry, during a rewrite I missed the primary part of the proposal. I think that a __prometheus_agent_hostname label should be injected by Prometheus, set to the result of os.Hostname(), that can be used during relabeling. I'll edit the issue description to add this.

When does os.Hostname match the actual hostname? not in kubernetes AFAIK.

Not by default, no. It's been common for this snippet to be added to Promtail for similar Kubernetes host filtering and Grafana Agent when host filtering is used:
        env:
        - name: HOSTNAME
          valueFrom:
            fieldRef:
              fieldPath: spec.nodeName

This is a quite involved trick indeed. I am wondering if it is possible to do this on all the platforms (e.g. nomad) or if we should explicitly allow for --node.name CLI argument to be more generic. Then you can use --node.name=$HOSTNAME in your k8s yaml.

Putting it as a flag name makes sense. I'm still thinking of simpler ways to pull off machine-level filtering, since I agree that there'd be a lot that would need to happen to make this a possibility in relabel rules.
I'm starting to rethink if the host filtering code in grafana/agent isn't all that bad after all, but I still think it's worthwhile exploring what alternatives could look like.

This is possible with existing relabelling functionality, with the caveat that you must run a config-generation step before Prometheus starts. We happen to use ERB to do this, but any templating language would do. Something along these lines...
...
relabel_configs:
  - action: keep
    source_labels: [__meta_kubernetes_pod_node_name]
    regex: (<%=Regexp.escape(ENV["NODE_NAME"])%>)
...

... where NODE_NAME is set using the k8s downward API as posted above.

relabel_configs:
  - action: keep
    source_labels: [__meta_kubernetes_pod_node_name]
    regex_env: $NODE_NAME

We could introduce a new field in the relabeling: regex_env that would substitute regexes.

Note that there is a difference between regex: (<%=Regexp.escape(ENV["NODE_NAME"])%>) and regex_env: $NODE_NAME, if $NODE_NAME is interpreted directly.
As an example, if $NODE_NAME is host.internal, The 1st evaluates to regex: (host\.internal), which is a group matching the string host.internal exactly, but the 2nd evaluates to regex: host.internal. In this case, it'll probably have the intended effect, since the regex . does match the character . (since regex . matches anything), but it's not actually doing an exact string match, it also matches host-internal, hostXinternal, etc..
I suppose this depends on the semantics of regex_env. Does it treat the var as a regex expression or as an exact string match that it should escape?

This is interesting. Making it templatable is an option, with a regex_escape and an env() function.
Instead of regex_env, we could have a value field that would need to exactly match.

So.
What about we introduce an extra flag:
--enable-feature=template-regex [enabled by default with the agent mode], in which regex becomes a templated field that can use templates. We add 2 functions:
regexp_quotemeta which calls regexp.QuoteMeta
and getenv which calls os.getenv.
Then it becomes:
relabel_configs:
  - action: keep
    source_labels: [__meta_kubernetes_pod_node_name]
    regex: '{{regexp_quotemeta(getenv("NODE_NAME"))}}'

The idea of using text/template is really interesting here, and I think it's possible to take it further to cover both behaviors of host filtering:

This is what host filtering does:

If the target address is localhost/<IP_ADDRESS>, always scrape.
Otherwise, only scrape targets if the target has a hostname label that matches the hostname of the machine the agent is running on (i.e., check for __meta_kubernetes_node_name.)

What if there support for action: template, where the replacement field would be treated as a text/template? Alongside functions like GetEnv, you could have the current context be set to the active metric/target being relabeled. Here's an example spread across multiple lines to give an idea of what you might be able to do:
relabel_configs:
- action: template
  target_label: _keep
  target_label: |
   {{ $nodeName := GetEnv "NODE_NAME" }}
   {{ if .Labels.__meta_kubernetes_pod_node_name == $nodeName }}
   true
   {{ else if or (.Labels.__address__ == "localhost") (.Labels.__address__ == "<IP_ADDRESS>") }}
   true
   {{ else }}
   false
   {{ end }}
- action: keep
  source_labels: _keep
  regex: true

While I don't think everyone would take advantage of specific snippet, I think the idea of using templates for relabeling could open the door to some interesting capabilities that you can't express otherwise.
For example, in the past I've wished I could express a rule that checked if label A was equal to label B, but Go's regex doesn't allow those kinds of checks. That kind of check would be arbitrary with templates.

The minimal example of a template action, ignoring all the extra logic, would be:
relabel_configs:
- action: template
  target_label: _keep
  target_label: {{ eq .Labels.__meta_kubernetes_pod_node_name (GetEnv "NODE_NAME") }}
- action: keep
  source_labels: _keep
  regex: true

the replacement field would be treated as a text/template

This is a bit in the weeds, but hypothetically in this case you'd probably want a separate template: field so you could compile the template once and cache the result.

the replacement field would be treated as a text/template

This is a bit in the weeds, but hypothetically in this case you'd probably want a separate template: field so you could compile the template once and cache the result.

mmh? I'd expect that we compile the regex once, don't we?

mmh? I'd expect that we compile the regex once, don't we?

We do, but I don't think you could do that for a text/template if it was a part of the replacement field.

mmh? I'd expect that we compile the regex once, don't we?

We do, but I don't think you could do that for a text/template if it was a part of the replacement field.

If you give it access to the labels, yes. otherwise no. I think the action: template with access to labels can be a good idea. I'll poke around.

So far, I like the idea of introducing an action: template best. Although it could have performance impacts when also allowed outside of target relabeling, I think we shouldn't forbid it in the other relabeling places (metrics, alerts, remote write) if someone really wants to use it. I expect it to be such a niche use case anyway that not many users should run into issues with it.

If you give it access to the labels, yes. otherwise no. I think the action: template with access to labels can be a good idea. I'll poke around.

Did you have time to poke around yet? If not, do you mind if I take a crack at an action: template PR? It looks like I might have some free time tomorrow to put an initial PR together.

If you give it access to the labels, yes. otherwise no. I think the action: template with access to labels can be a good idea. I'll poke around.

@roidelapluie Did you have time to poke around yet? If not, do you mind if I take a crack at an action: template PR? It looks like I might have some free time tomorrow to put an initial PR together.

This proposal relates to filtering targets after they have been received from the Kubernetes API-server.
I think it would be even better if we filtered the 'watch' call into the API-server so it would restrict the pods it tells us about.

This proposal relates to filtering targets after they have been received from the Kubernetes API-server.
I think it would be even better if we filtered the 'watch' call into the API-server so it would restrict the pods it tells us about.

I used Kubernetes as an example, but people have used Grafana Agent's host filtering for SD's beyond Kubernetes (i.e., Consul). A generic way to filter targets based on environment would still be useful IMO.

logs:loki
sd:consul

consulagent_sd_configs

This way can directly discover local services

I no longer have a need for this, so I'm going to close.


Changes to container runlabel for toolbox project

The toolbox project would benefit from a few changes to more closely
resembe the original atomic cli project.  Changes made are:

only pull image for container runlabel if the label exists in the image
if a container image does not have the desired label, exit with non-zero

Signed-off-by: baude<EMAIL_ADDRESS>

This one also seems to have hung up.


QA of 2470 When Branch Merged to Marshal

Title of ticket:
Description
Summarize issue
Dependencies
Are there any dependencies?
DOD

[ ] Deploy all changes in Test  to TEST-Marshal (e.g., Filtering Attachments)
[ ] Re-test scenarios in 2470 per the below in TEST-Marshal

Filtering Attachments#2470
As a user (all users)
I want to filter the attachments listed in the attachments tab
so that I can more easily find the attachments I need
Assumptions & Scope
Filters will be based on the badges applied to attachments
Only one filter can be applied at a time
Users can toggle between filters the same way they can toggle between filters in the Comments section
Applicant filter will only be visible for IAO users, not Ministry users
All new tags will not be associated with any state changes, they are for attachments uploaded by users to the attachments tab directly
What is IN scope?
What is NOT in scope?
Searching attachments. This is covered in user story #1974
Acceptance Criteria
Scenario 1: Default filter set to All
GIVEN I am a user
WHEN I navigate to the Attachments tab
THEN the default filter will be set to All
Scenario 2: Select other filter
GIVEN I am a user on the Attachments tab
WHEN I select a filter other than All (General, Applicant, Extensions)
THEN the attachments displayed will filter based on the badge that corresponds to the filter
Scenario 3: Applicant filter not visible for Ministry users
GIVEN I am a Ministry user
WHEN I navigate to the the Attachments tab
THEN the only filters visible to me will be General, Extensions, and All
AND the default filter will be set to All
Scenario 4: Update to Fee Assessed-On Hold tag
GIVEN an IAO user uploads an attachment in the state change modal from Fee Estimate to On Hold
WHEN they hit Save
THEN the attachment will have the "Applicant" tag in the attachment tab
Scenario 5: Update to CFR-Fee Assessed tag
GIVEN a Ministry user uploads an attachment in the state change modal from CFR to Fee Estimate
WHEN they hit Save
THEN the attachment will have the "CFR-Fee Estimate" tag in the attachment tab

Working as expected. One of the things I noticed - and likely attributes to the way the original user story was written. Ministry coordinator cant tag or use the applicant filter - but, it doesn't prevent them from accessing those attachments. We'll likely want a separate ticket to address this - although the contact applicant log will likely host the majority of applicant related correspondence/attachments.
cc @lmullane


Higher order type inference doesn't work with overloads

@ahejlsberg
TypeScript Version<EMAIL_ADDRESS>
Search Terms:
Code
interface Curried2<a, b, z> {
  (a: a, b: b): z;
  (a: a): (b: b) => z;
}
interface Curry {
  <a, b, z>(f: (a: a, b: b) => z): Curried2<a, b, z>;
}

declare const curry: Curry;

curry(<T extends 0, U extends 1>(n: T, m: U) => n + m)(1)(0);
curry(<T extends 0, U extends 1>(n: T, m: U) => n + m)(1, 0);

Also the following doesn't work:
interface Curried2<a, b, z> {
  (a: a): (b: b) => z;
  (a: a, b: b): z;
}

When removing overloads as follows:
interface Curried2<a, b, z> {
  (a: a, b: b): z;
}

or
interface Curried2<a, b, z> {
  (a: a): (b: b) => z;
}

These work correctly.
Expected behavior:
Infer type parameters correctly and all parameter values are rejected correctly.
Actual behavior:
no error.
Playground Link:
Related Issues:

@ahejlsberg can you comment? I'm not 100% sure on this one

This is indeed a known design limitation. From #30215:

When an argument expression in a function call is of a generic function type, the type parameters of that function type are propagated onto the result type of the call if:

the called function is a generic function that returns a function type with a single call signature,
...

We can mark this as a suggestion to support more than one signature in the result function type. It's possible to do, but not trivial.


Feature/some kind of card

I wanted to reopen #262 , but because I replaced my previous commits with new ones, I wasn't allowed to do that.
I've taken comments, opinions and issues raised in the previous PR into consideration when I reworked the styling and components for the new cards. With this, I hope we can come a lot closer to being able to merge this.
I've also taken the liberty of naming them. While these are mere suggestions, I do feel they make sense, as they reflect what's significant about each card.
Speaking of names, I have controversially named the base class and component Card Base. My thought behind this is that it's not really a card - it's a base. This also distinguishes it more clearly from the actual card components. Thoughts?
Closes #260

Coverage increased (+0.1%) to 81.113% when pulling 8233b11be33f6152d19874ad28cfb2fecc3eebeb on feature/some-kind-of-card into 33013b02befb47798c38b60c02c2a1c379ac511e on develop.

does it bring any benefits over just exporting them as a part of the main API?

Good question. While I currently export all sub components through the render prop, I imagine we might make some cards which only allow certain sub components. This way makes it easy to perform such limitations.
On the other hand. If this is never going to be the case, I'm not sure which approach is better. One might argue the API gets a little obfuscated like this, as you won't get any help from the IDE as to which components you have available.

I like that it's harder to use the sub components outside of the context they're meant to be used in (cards). The more limited an exposed API can be the better in my opinion, and even if some cards might not have any restrictions on subcomponents this makes it less tempting to use them outside of and actual card-implementation.

A different issue - P-tags are not allowed inside BUTTON tags, according to the internet: https://stackoverflow.com/questions/26002381/p-tag-in-button-tag-not-allowed
If the card is a button, we would need to change the default element of each of the sub-components -they need to be spans or something similar.

I think we should be good. Of course, the client could screw this up themselves, but I think React should issue a warning.
Speaking of - are there any relevant aria-tags we should add to these?

Isn't a <span> with display block basically a <div>?

According to the spec, buttons can only have what's called "phrasing content" inside of it (read more here). In other words, to follow the spec, you can't use a <div />, because it falls in a different category. It'll work, for sure, but the "correct" way to do it is to use spans.

I think in every single usecase I've had for cards so far links have been the obvious choice over buttons since they're anchors for for other pages (detail-pages, buy-our-product-pages etc) so at least from my standpoint it's not really an issues since I can provide an element (which 95% of the time for me would be a react-router Link).
The example images above also seem like navigation components to me. In what situations are we going to use these as buttons?

That's probably a question for @adidick - what's the intended usage of these outside of linking to other content?

Good points are being made here! To be honest I can't remember why I defaulted these to buttons. I have the same experience as @ivarni , the cards are pretty much always used with Link or anchor (I can't think of a single example where we used something else).
While they will often be used with element=Link, I wonder what should be the default element? I could put an anchor there, but that calls for a default href too, I suppose. Is it ok to set div as default? Perhaps not have any default element, but require one from the consumer?

I think <div> is fine, I'm a fan of working defaults whereever possible.

I just pushed the recently discussed changes: components are now paragraphs, without display styling, and cards are now divs.
This looks almost the same, but the CardBase now has left-aligned text (which is default for divs, while buttons defaults it to center).
TextCard and ImageCard has explicit styling for centering the text.

That's probably a question for @adidick - what's the intended usage of these outside of linking to other content?

That is the only intended use.
Description that lives in the sketch template says:
"Kort er en stor klikkflate, altså en inngang til mer informasjon. Kort har en skygge som alltid skal vises, og blir mer fremtredende på hover og focus state."

Deprecation note added, fixed test description text and squashed commits. All ready to be merged :)


Test for issue 638 (xsl:output in the stylesheet being tested)

Whatever the root cause of #638 is, there should be a test case for xsl:output collision:
https://github.com/xspec/xspec/blob/47f1d47506a801dea2dfe8e836346c172fa35b09/src/compiler/generate-xspec-tests.xsl#L84-L86
This pull request adds a simple test which reproduces #638 on Saxon 9.9.
Commits

43a414cef740bed01d9dbd94f93492c9eb368a56 is the test. It fails on Saxon 9.9: Azure, AppVeyor, Travis
38f74fb1402b66dbc5f2ed95e7675cc3bc2fdcea skips the test on Saxon 9.9 assuming its next maintenance release will fix the problem.

https://saxonica.plan.io/issues/4315 got resolved. So I'm merging this.


Support @PostConstruct

Like Spring @PostConstruct, define a method which invoked after the object has been created and injected. So, we can do some init like a constructor.

If you want to do "some init" why not to use constructor.

method which invoked after the object has been created and injected.

object created once but can be injected multiple times.
Im not sure of value of this feature.

Sorry I mean only created

anyway I dont see value in the feature. You can do what ever you want in a constructor if you want to do something on object construction.

how about call this instance method in constructor

what do you mean?

Sometimes, when we initialize an instance, we use content from the injection. And these injected content belongs to the instance of the member, can not be called in the constructor.

I tried it, in JS, you can actually call the member function in the constructor. I may be wrong.

Now, I finally got the purpose of this feature.
This is happened when I use TypeORM.
This is a custom Repository
@Service()
@EntityRepository(Entity)
export class CustomRepository extends Repository<Entity>{
}

And I am trying to have a property of entity columns with initial value
@Service()
@EntityRepository(Entity)
export class CustomRepository extends Repository<Entity>{
    columns:string[] = this.metadata.columns.map(o => o.propertyName);
}

But crashed. Because initial value will be compiled into constructor and it will not call the super.
Then I try
@Service()
@EntityRepository(Entity)
export class CustomRepository extends Repository<Entity>{
    columns:string[] = this.metadata.columns.map(o => o.propertyName);

    constructor(){ super() }
}

Still crashed. Because I don't know how to create a Repository . And of course I should not to know how to create it. It is factory's work.
So if we had this feature, this will be like
@Service()
@EntityRepository(Entity)
export class CustomRepository extends Repository<Entity>{
    columns:string[];

    @PostConstruct()
    init(){
        this.columns = this.metadata.columns.map(o => o.propertyName);
    }
}

So, what do you think? Should this issue be reopened? @pleerock

you shall be able to do:
@Service()
@EntityRepository(Entity)
export class CustomRepository extends Repository<Entity>{
    columns:string[];

    constructor(){
          super(...arguments);
          this.columns = this.metadata.columns.map(o => o.propertyName);
 }
}

Its not different then what you wanted to achieve with  @PostConstruct()

@PostConstruct is for using with property injection.

Another possibility for @PostConstruct (in javascript) is that it the post construct method could be async, although this would break Container.get - a new async version would be required.

typedi is a simple IoC container. @jasperblues Maybe you need more complex life cycle control. See nestjs which is an IoC web framework inspired by angular.

@Diluka The way that NestJS does it (implementing an interface) is good, however it is also nice to support decorators for this purpose.
Rationale: If you're putting some external library into the DI container, to be consumed by other services, you might not be able to control what is the required post-init method.
(Also you might not be able to use constructor injection, which is the rationale for a PostConstruct feature).


Data Accuracy

Throughout the application, the data seems inaccurate.
Some reports contradict each other (tickets provide examples), but there also seems to be a lot of missing data.

This is a research ticket for Craig as he works with the Client to clarify any lingering issues related to data inaccuracy


Code for original Textrank algorithm (without similarity function optimizations)

Hi,
Is it possible to get the python implementation of original Textrank algorithm? or
Can you suggest the changes that need to be done in the existing code for original Textrank?
I need to compare the summaries produced by both variations.
Thanks in advance

Hi,
The version that is in this repository follows the original implementation of TextRank.
You can have a look at the source code to calculate the similarities:
https://github.com/summanlp/textrank/blob/master/summa/summarizer.py#L41
The version that we added on Gensim uses the optimizations, with the Okapi BM25 function.
You can verify that in the source code in:
https://github.com/RaRe-Technologies/gensim/blob/develop/gensim/summarization/summarizer.py#L79
Best,
Fede