Alternative for Environment TagHeper domain

From @vkichline on October 8, 2015 22:32
I see this pattern in the Web Application template's _ValidationScriptsPartial.cshtml:
<environment names="Development">
       …
</environment>
<environment names="Staging,Production">
       …
</environment>

This pattern above seems brittle; if I add a new environment setting, I have a lot of searching and modification to do.
I wish I had something like:
<environment names="Development">
       …
</environment>
<environment names="!Development">
       …
</environment>

…or:
<environment names="Development">
       …
<else>
       …
</environment>

Copied from original issue: aspnet/Razor#567

The <else> thing can't be done because it's not valid syntax.
But something like this can certainly be done:
<environment names="Development">
    <true>
       …
    </true>
    <false>
       …
    </false>
</environment>

Another alternative to consider would be something like:
<environment names="Development">
       …
</environment>
<environment names="Development" behavior="OppositeDay">
       …
</environment>

Or at least something like that.

(Not saying it's worth it or that it's a good idea, but it's implementable.)

Another option to consider:
Another alternative to consider would be something like:
<environment names="Development">
       …
</environment>
<environment excludeNames="Development">
       …
</environment>

And you can't set both names and excludeNames.
@DamianEdwards thoughts on this? I think this could clean up the default templates. And, of course, Hubbup.

maybe:
<environment include="Development">
    ...
</environment>
<environment exclude="Development">
    ...
</environment>

And keep support for names as it is now.

Yeah I dig this. @danroth27 totally digs this too.

Let's go with @DamianEdwards 's suggestion in https://github.com/aspnet/Mvc/issues/5671#issuecomment-272021274.

@Eilon @DamianEdwards or maybe
options are may


Update Discord Webhook

the old domain will be shutdown November 7th, see https://github.com/discord/discord-api-docs/issues/1585

Cheers!


[Improve][Sort] Upgrade flink version from 1.13.6 to 1.15.4

Description
Upgrade flink version from 1.13.6 to 1.15.4
InLong Component
InLong Sort
Are you willing to submit PR?

[X] Yes, I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Reference #10284

Reference https://github.com/apache/inlong/issues/10284


Support .torrent links (non-magnet)

Is it possible to add support for .torrent links (non-magnet)?
Thanks!

This is now implemented in code. Will become available in the next release.


Adding topology.cpp

This commit adds topology.cpp corresponding to topology.hpp. It
also moves some of the Child or Neighbor method implementations
to the cpp file.

Codecov Report

Merging #1656 into master will increase coverage by 1.89%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master    #1656      +/-   ##
==========================================
+ Coverage   68.02%   69.91%   +1.89%
==========================================
  Files         169      167       -2
  Lines       20226    19190    -1036
  Branches     2506     2337     -169
==========================================
- Hits        13758    13417     -341
+ Misses       5605     4942     -663
+ Partials      863      831      -32

Impacted Files
Coverage Δ

src/core/thread/topology.hpp
87.67% <100%> (-2.22%)
:arrow_down:

src/core/thread/topology.cpp
100% <100%> (ø)

examples/platforms/posix/misc.c
0% <0%> (-66.67%)
:arrow_down:

src/core/api/icmp6_api.cpp
50% <0%> (-50%)
:arrow_down:

src/ncp/spinel.c
52.4% <0%> (-24.7%)
:arrow_down:

src/core/net/ip6.hpp
66.66% <0%> (-22.23%)
:arrow_down:

src/core/api/ip6_api.cpp
43.75% <0%> (-17.19%)
:arrow_down:

src/core/mac/mac_whitelist.cpp
76.59% <0%> (-17.03%)
:arrow_down:

src/core/api/netdata_api.cpp
57.44% <0%> (-14.9%)
:arrow_down:

src/core/net/icmp6.hpp
89.47% <0%> (-10.53%)
:arrow_down:

... and 28 more

Continue to review full report at Codecov.

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


Conda installation of Ruff not running on aarch64

I'm trying to run Ruff on an NVIDIA Grace (i.e. ARM Neoverse v2) CPU and getting the following error:
<jemalloc>: Unsupported system page size
<jemalloc>: Unsupported system page size
memory allocation of 5 bytes failed
Aborted

This appears to be a reappearance of the page size issue noted in #3791 and I'm not sure how to fix it. I've installed Ruff with Conda from the Conda-forge channel and I'm on the latest version. Any suggestions?

The page size is 64k and I'm just installing it with conda install -c conda-forge ruff.
I tried with the exact same version of Ruff installed via pip and it works just fine, so the issue is not actually with Ruff but with the version built/installed with Conda; I've updated the title accordingly.

Related:

https://github.com/astral-sh/ruff/issues/3791
https://github.com/astral-sh/ruff/issues/10073

Presumably we need to set this variable over in the conda-forge builds?

Yes, I can take a look. @zanieb do you know who has access to our conda forge recipe and how it can be changed?
For reference:
https://github.com/astral-sh/ruff/blob/be1d5e33680c3e2e71b452ad1ed651dcc6f37f55/.github/workflows/build-binaries.yml#L271-L287
https://github.com/astral-sh/ruff/blob/be1d5e33680c3e2e71b452ad1ed651dcc6f37f55/.github/workflows/build-binaries.yml#L412-L416

Anyone can open a pull request https://github.com/conda-forge/ruff-feedstock

@bcaddy would you be interested in PRing a fix? It's on my todo list but it probably takes me a while before I get to and I have no prior conda forge knowledge

I also have no experience with conda forge and don't see an obvious place to change the jemalloc setting so I opened an issue on the ruff feedstock, hopefully they can help out.
https://github.com/conda-forge/ruff-feedstock/issues/222


Choose model in custom kernel

Now that we have custom kernel(s) (since #107), it would be great if the user could choose the model, too. Therefore, we need to implement a logic in main.py so that the model name is a command line parameter.

The custom kernel was removed in #154


pkg/scaffold: use afero.Fs instead of os package directly

Description of the change: add an afero.Fs field to Scaffold and use it in place of directly calling functions from the os package.
Motivation for the change: more versatile, enhances our ability to test complex scaffolds.

@AlexNPavel @hasbro17 @LiliC made a significant change to CustomRenderer (added a method).


proxy_url for alertmanager.yml

From version 0.15.0 alertmanager does not honor the proxy variables set in env. Proxy has to be specified in the alertmanager.yml config file.
https://github.com/prometheus/alertmanager/issues/1300

Do you mean the proxy_url which is configurable in https://prometheus.io/docs/alerting/configuration/#http_config ?
So this one will no longer work with the new alertmanager version (https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/proxy/enable-proxy-alertmanager.yml) ?

yes. the former has no effect anymore. our slack alerts stopped coming in once we bumped alertmanager to 0.15.0 (v23.1.0). Verified that its a proxy issue by manually adding http_config to alertmanager.yml and restarting alertmanager.

Willing to submit a PR to fix it?

I could give it a shot, but it will have to wait till after 2 weeks. got something else taking up my time till then. feel free to take care of it if you got enough bandwidth. thanks

Fixed at https://github.com/bosh-prometheus/prometheus-boshrelease/pull/238 by @benjaminguttmann-avtq.


Problem with block equality constraints depending on problem size

Recap
This issue continues the discussion at cvxgrp/scs#64, and we will consider the minimal problem that @SteveDiamond proposed therein:
import cvxpy

D = 256
SHAPE = (D, D)
X = cvxpy.Variable(*SHAPE)
reg = cvxpy.norm(X, 'nuc')  # regularizer (trace norm)
prob = cvxpy.Problem(cvxpy.Minimize(reg), [X[0,0] >= 1])

Note that:

When solving with SCS, the solver reports this is infeasible.
This happens for D = 512 as well but not for any other D between 1 and 300.
The output from SCS suggests that it is doing the right thing, and the problem data passed to it is actually infeasible.
When considering the standard form problem data passed to SCS, the number of non-zeros of A at the "bad" problem sizes is relatively smaller compared to the "good" problem sizes.

After some more testing, I have potentially narrowed down the issue. I will describe four different test problems to illustrate this, but the short version is that there appears to be a problem when creating a semidefinite variable and creating a block equality constraint to another variable.
Equivalent problem 1
We can write the above problem directly as an SDP (which is similar to how CVXPY implements nuc_norm):
import cvxpy

D = 256
S = cvxpy.Semidef(2*D)
obj = cvxpy.Minimize(0.5 * cvxpy.trace(S))
const = [S[0,D] >= 1]
prob = cvxpy.Problem(obj, const)
prob.solve(solver=cvxpy.SCS, verbose=True)
print('S[0,D]: {0}'.format(S[0,D].value))
print('S[D,0]: {0}'.format(S[D,0].value))

Running this gives:
----------------------------------------------------------------------------
	SCS v1.2.3 - Splitting Conic Solver
	(c) Brendan O'Donoghue, Stanford University, 2012-2016
----------------------------------------------------------------------------
Lin-sys: sparse-direct, nnz in A = 131329
eps = 1.00e-03, alpha = 1.50, max_iters = 2500, normalize = 1, scale = 1.00
Variables n = 131328, constraints m = 131329
Cones:	linear vars: 1
	sd vars: 131328, sd blks: 1
Setup time: 5.73e-02s
----------------------------------------------------------------------------
 Iter | pri res | dua res | rel gap | pri obj | dua obj | kap/tau | time (s)
----------------------------------------------------------------------------
     0|      inf       inf       nan      -inf       inf       inf  6.28e-02
    60| 7.43e-06  5.42e-07  1.42e-05  1.00e+00  1.00e+00  2.45e-15  2.89e+00
----------------------------------------------------------------------------
Status: Solved
Timing: Solve time: 2.90e+00s
	Lin-sys: nnz in L factor: 393986, avg solve time: 1.76e-03s
	Cones: avg projection time: 4.30e-02s
----------------------------------------------------------------------------
Error metrics:
dist(s, K) = 1.0864e-11, dist(y, K*) = 2.6342e-09, s'y/|s||y| = -9.0058e-13
|Ax + s - b|_2 / (1 + |b|_2) = 7.4260e-06
|A'y + c|_2 / (1 + |c|_2) = 5.4220e-07
|c'x + b'y| / (1 + |c'x| + |b'y|) = 1.4223e-05
----------------------------------------------------------------------------
c'x = 1.0001, -b'y = 1.0000
============================================================================
S[0,D]: 1.000010571548217
S[D,0]: 1.000010571548217

Note that:

There is no problem at D=256 (or D=512 or D=1024)
There is no "blip" in the number of non-zeros in the standard form matrix A

Equivalent problem 2
Internally it appears that CVXPY implements nuc_norm by creating the SDP formulation and including an equality constraint between the original variable and the corresponding block of the semidefinite variable. We replicate that kind of behavior manually:
import cvxpy

D = 256
X = cvxpy.Variable(D, D)
S = cvxpy.Semidef(2*D)
obj = cvxpy.Minimize(0.5*cvxpy.trace(X))
const = [S[0:D, D:2*D] == X, X[0,0] >= 1]
prob = cvxpy.Problem(obj, const)
prob.solve(solver=cvxpy.SCS, verbose=True)
print('X[0,0]: {0}'.format(X[0,0].value))
print('S[0,D]: {0}'.format(S[0,D].value))
print('S[D,0]: {0}'.format(S[D,0].value))

The output:
----------------------------------------------------------------------------
	SCS v1.2.3 - Splitting Conic Solver
	(c) Brendan O'Donoghue, Stanford University, 2012-2016
----------------------------------------------------------------------------
Lin-sys: sparse-direct, nnz in A = 196865
eps = 1.00e-03, alpha = 1.50, max_iters = 2500, normalize = 1, scale = 1.00
Variables n = 196864, constraints m = 196865
Cones:	primal zero / dual free vars: 65536
	linear vars: 1
	sd vars: 131328, sd blks: 1
Setup time: 9.11e-02s
----------------------------------------------------------------------------
 Iter | pri res | dua res | rel gap | pri obj | dua obj | kap/tau | time (s)
----------------------------------------------------------------------------
     0|      inf       inf       nan      -inf       inf       inf  7.15e-02
    20|      inf       inf       nan       inf       inf       inf  4.78e-01
----------------------------------------------------------------------------
Status: Infeasible
Timing: Solve time: 4.83e-01s
	Lin-sys: nnz in L factor: 590594, avg solve time: 2.82e-03s
	Cones: avg projection time: 1.56e-02s
----------------------------------------------------------------------------
Certificate of primal infeasibility:
dist(y, K*) = 0.0000e+00
|A'y|_2 * |b|_2 = 5.3886e-08
b'y = -1.0000
============================================================================
X[0,0]: None
S[0,D]: None
S[D,0]: None

But for D=255:
----------------------------------------------------------------------------
	SCS v1.2.3 - Splitting Conic Solver
	(c) Brendan O'Donoghue, Stanford University, 2012-2016
----------------------------------------------------------------------------
Lin-sys: sparse-direct, nnz in A = 260356
eps = 1.00e-03, alpha = 1.50, max_iters = 2500, normalize = 1, scale = 1.00
Variables n = 195330, constraints m = 195331
Cones:	primal zero / dual free vars: 65025
	linear vars: 1
	sd vars: 130305, sd blks: 1
Setup time: 1.26e-01s
----------------------------------------------------------------------------
 Iter | pri res | dua res | rel gap | pri obj | dua obj | kap/tau | time (s)
----------------------------------------------------------------------------
     0|      inf       inf       nan      -inf       inf       inf  7.21e-02
    80| 3.40e-05  5.99e-05  2.30e-04  1.00e+00  1.00e+00  2.19e-15  3.95e+00
----------------------------------------------------------------------------
Status: Solved
Timing: Solve time: 3.95e+00s
	Lin-sys: nnz in L factor: 651017, avg solve time: 3.45e-03s
	Cones: avg projection time: 4.12e-02s
----------------------------------------------------------------------------
Error metrics:
dist(s, K) = 7.6420e-12, dist(y, K*) = 2.6358e-09, s'y/|s||y| = -6.9608e-13
|Ax + s - b|_2 / (1 + |b|_2) = 3.3989e-05
|A'y + c|_2 / (1 + |c|_2) = 5.9874e-05
|c'x + b'y| / (1 + |c'x| + |b'y|) = 2.2998e-04
----------------------------------------------------------------------------
c'x = 1.0005, -b'y = 1.0012
============================================================================
X[0,0]: 1.0000021040055609
S[0,D]: 0.9999711598488816
S[D,0]: 0.9999711598488816

Again:

Does not work at D=256
There is a blip in the number of nonzeros of A

Equivalent problem 3
We keep the same problem as before except that we make the single index constraint act on the semidefinite variable S instead of the original variable X:
import cvxpy

D = 256
X = cvxpy.Variable(D, D)
S = cvxpy.Semidef(2*D)
obj = cvxpy.Minimize(0.5*cvxpy.trace(S))
const = [S[0:D, D:2*D] == X, S[0,D] >= 1]  # this is the changed line
prob = cvxpy.Problem(obj, const)
prob.solve(solver=cvxpy.SCS, verbose=True)
print('X[0,0]: {0}'.format(X[0,0].value))
print('S[0,D]: {0}'.format(S[0,D].value))
print('S[D,0]: {0}'.format(S[D,0].value))

The output:
----------------------------------------------------------------------------
	SCS v1.2.3 - Splitting Conic Solver
	(c) Brendan O'Donoghue, Stanford University, 2012-2016
----------------------------------------------------------------------------
Lin-sys: sparse-direct, nnz in A = 196865
eps = 1.00e-03, alpha = 1.50, max_iters = 2500, normalize = 1, scale = 1.00
Variables n = 196864, constraints m = 196865
Cones:	primal zero / dual free vars: 65536
	linear vars: 1
	sd vars: 131328, sd blks: 1
Setup time: 9.51e-02s
----------------------------------------------------------------------------
 Iter | pri res | dua res | rel gap | pri obj | dua obj | kap/tau | time (s)
----------------------------------------------------------------------------
     0|      inf       inf       nan      -inf       inf       inf  7.25e-02
    60| 7.43e-06  5.42e-07  1.42e-05  1.00e+00  1.00e+00  2.00e-15  3.16e+00
----------------------------------------------------------------------------
Status: Solved
Timing: Solve time: 3.16e+00s
	Lin-sys: nnz in L factor: 590594, avg solve time: 2.85e-03s
	Cones: avg projection time: 4.46e-02s
----------------------------------------------------------------------------
Error metrics:
dist(s, K) = 7.7085e-12, dist(y, K*) = 1.3171e-09, s'y/|s||y| = -6.3856e-13
|Ax + s - b|_2 / (1 + |b|_2) = 7.4260e-06
|A'y + c|_2 / (1 + |c|_2) = 5.4229e-07
|c'x + b'y| / (1 + |c'x| + |b'y|) = 1.4223e-05
----------------------------------------------------------------------------
c'x = 1.0001, -b'y = 1.0000
============================================================================
X[0,0]: 0.0
S[0,D]: 1.0000105715794994
S[D,0]: 1.0000105715794994

Note:

The problem is solved (just as in equivalent problem 1)
The number of nonzeros in A is the same as in that earlier problem plus an additional 65,536 = 256^2 (presumably from the equality constraint relating S to X)
The variable X has value identical to zero (above only shows the one entry we expect to be different, but checking X with np.sum(np.isclose(X.value, np.zeros((256,256)))) returns 65536.)

So it would appear that the equality constraint with X isn't "working" at this problem size. And so if we specify the constraint on an entry of X (as in problem 2), we encounter an error.
If we change to D=255, we get:
----------------------------------------------------------------------------
	SCS v1.2.3 - Splitting Conic Solver
	(c) Brendan O'Donoghue, Stanford University, 2012-2016
----------------------------------------------------------------------------
Lin-sys: sparse-direct, nnz in A = 260356
eps = 1.00e-03, alpha = 1.50, max_iters = 2500, normalize = 1, scale = 1.00
Variables n = 195330, constraints m = 195331
Cones:	primal zero / dual free vars: 65025
	linear vars: 1
	sd vars: 130305, sd blks: 1
Setup time: 1.27e-01s
----------------------------------------------------------------------------
 Iter | pri res | dua res | rel gap | pri obj | dua obj | kap/tau | time (s)
----------------------------------------------------------------------------
     0|      inf       inf       nan      -inf       inf       inf  7.45e-02
    60| 7.47e-06  8.63e-07  1.31e-05  1.00e+00  1.00e+00  6.75e-16  2.99e+00
----------------------------------------------------------------------------
Status: Solved
Timing: Solve time: 3.00e+00s
	Lin-sys: nnz in L factor: 651017, avg solve time: 3.56e-03s
	Cones: avg projection time: 4.14e-02s
----------------------------------------------------------------------------
Error metrics:
dist(s, K) = 7.6484e-12, dist(y, K*) = 2.6342e-09, s'y/|s||y| = -4.2736e-13
|Ax + s - b|_2 / (1 + |b|_2) = 7.4748e-06
|A'y + c|_2 / (1 + |c|_2) = 8.6349e-07
|c'x + b'y| / (1 + |c'x| + |b'y|) = 1.3057e-05
----------------------------------------------------------------------------
c'x = 1.0001, -b'y = 1.0000
============================================================================
X[0,0]: 1.0000106246085907
S[0,D]: 1.0000106233086952
S[D,0]: 1.0000106233086952

Note that:

X now returns a reasonable value
The number of nonzeros in the standard form matrix A is larger than in the D=256 case suggesting that there really is some different behavior with this block equality constraint depending on problem size

More weirdness
Let's now just consider that block equality constraint, but let's vary the size of the variable X that we are equating to a block of S:
import cvxpy

D = 256
Xdim = 128
X = cvxpy.Variable(Xdim, Xdim)
S = cvxpy.Semidef(2*D)
obj = cvxpy.Minimize(0.5*cvxpy.trace(S))
const = [S[0:0+Xdim, D:D+Xdim] == X, S[0,D] >= 1]
prob = cvxpy.Problem(obj, const)
prob.solve(solver=cvxpy.SCS, verbose=True)
print('X[0,0]: {0}'.format(X[0,0].value))
print('S[0,D]: {0}'.format(S[0,D].value))
print('S[D,0]: {0}'.format(S[D,0].value))

This exhibits the same behavior of not "honoring" the equality constraint. The problem does not appear when setting Xdim to powers of 2 less than 128. Note that the problem also occurs at D=512 and Xdim=256.
Closing thoughts
So it definitely appears that something strange is happening when creating equality constraints between the semidefinite variable and the regular matrix variable. At a quick glance, nothing jumped out to me in the CVXPY code. This brings up the possibility that there could be something strange happening in CVXcanon. When I get a chance, I might try to look into this further, but I am even less familiar with the CVXcanon code base.
(This is a separate issue, but it might be useful to have some facility that would allow you to make an "alias" of a slice/block on the modeling side so that additional constraints do not need to be created, you would instead just perform a linop on an alias that gets replaced with a slice/block of a variable. This would avoid "unnecessary" constraints in the problem generation, but I might be missing some problem with that approach apart from implementation complexity.)

I found and fixed the bug. It was kind of amazing. What happened is that CVXcanon (which constructs the explicit matrix representation of the cone program) had an if statement of the form
if (mat.rows()*mat.cols() == 0) {
   return empty matrix
}

in the function that constructs a matrix representation of the index/slice operation. The bug is that mat.rows() and mat.cols() can be so large that the product causes integer overflow. Of course the bug only manifests when the overflow is equal to 0, hence the powers of 2.
Everything should work after you update CVXcanon.

Indeed, all works as expected now. Thanks! (Glad you were able to track that down, and that puts me 0-for-2 in flagging issues in the right project.)

This was definitely the most bizarre bug I've seen in cvxpy so far. No worries, I couldn't tell myself which package the error was in.

Crazy!


The created_by and modified_by field DO_NOTHING behaviors violate postgres constraints

Bug Summary
Field definition:
https://github.com/ansible/django-ansible-base/blob/774644429eb63303e8e30391c326afe7562c8524/ansible_base/lib/abstract_models/common.py#L56-L64
Test corresponding to this bug:
https://github.com/ansible/django-ansible-base/pull/193
Steps:

user creates something
delete that user
get integrity error

If you're within a transaction, you may not see this error until it ends - thus some hacks in the proposed test.
This is a far-reaching issue, because this is a bug in the abstract base model itself, and now many models carry these fields. There's also a time premium on this, because if we lock in current migration history, that makes it much more difficult to solve later.
internal - AAP-21209

Link to the hack. This should be deleted as this issue is fixed:
https://github.com/ansible/django-ansible-base/blob/7d7bddf91d82c398b34377228bb37fb9c4709d27/ansible_base/rbac/permission_registry.py#L109-L118

Also delete this when fixed:
https://github.com/ansible/django-ansible-base/blob/7d7bddf91d82c398b34377228bb37fb9c4709d27/test_app/tests/lib/abstract_models/test_common.py#L132-L145
I added this test just for this issue, and it is currently xfailing.


Update documentation for Server 2019

Please update this documentation to note that SQL Clustering in Azure does not work with the new Distributed Network Name option and that the cluster must be created manually using New-Cluster with the switch "-ManagementPointNetworkType Singleton" Given that there is no documentation for New-Cluster in Server 2019 this setting very difficult to find and this issue is not reference in any SQL or clustering documentation.

@bschlechty Please provide us with the link to the documentation you are referring to so we can better assist.

https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-create-failover-cluster
On Thu, Sep 19, 2019 at 10:01 AM Karishma Tiwari - MSFT <
<EMAIL_ADDRESS>wrote:

@bschlechty https://github.com/bschlechty Please provide us with the
link to the documentation you are referring to so we can better assist.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/39217?email_source=notifications&email_token=AKEUBMEB57M2DUQK46GA7MTQKOV6DA5CNFSM4IYNMAUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7EE5SI#issuecomment-533221065,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKEUBMHLUBQ45FPOHR3MUW3QKOV6DANCNFSM4IYNMAUA
.

Thanks for sharing the document. I have updated the issue with doc details.
We are currently investigating and will update you shortly.

@bschlechty Is there any chance that you got this information from the support case? If yes, please share the support ticket number with me, so that I can refer to it and make the requires changes in the right doc. Thanks :)

119072621002367
On Fri, Sep 20, 2019 at 3:38 PM Karishma Tiwari - MSFT <
<EMAIL_ADDRESS>wrote:

@bschlechty https://github.com/bschlechty Is there any chance that you
got this information from the support case? If yes, please share the
support ticket number with me, so that I can refer to it and make the
requires changes in the right doc. Thanks :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/39217?email_source=notifications&email_token=AKEUBMAPO3HVYTWZETZMUF3QKVGIBA5CNFSM4IYNMAUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7IB4PI#issuecomment-533732925,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKEUBMEN5RN55RCGDFDS7VDQKVGIBANCNFSM4IYNMAUA
.

Thanks @bschlechty.
@gbagate I saw in the support ticket that document request has been submitted. Can you please share the status of the doc update? Thanks :)

The SQL FCI documentation has been updated to include scenario for Windows 2019:
https://docs.microsoft.com/en-us/azure/virtual-machines/windows/sql/virtual-machines-windows-portal-sql-create-failover-cluster#windows-server-2019

Thanks @gbagate :)
@bschlechty Thanks for bringing this to our attention. We will now close this issue. If there are further questions regarding this matter, please tag me in a comment. I will reopen it and we will gladly continue the discussion.


[WIP] Faulttolerance

Issues associated with this PR
Your PR should present related issues you want to solve.
Solutions
You should show your solutions about the issues in your PR, including the overall solutions, details and the changes. At this time, Chinese is allowed to describe these.
UT result
Unit Test is needed if the code is changed, your unit test should cover boundary cases, corner cases, and some exceptional cases. And you need to show the UT result.
Benchmark
If your code involves the processing of every request, you should give the Benchmark Result.
Code Style

Make sure Goimports has run
Show Golint result

Codecov Report

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

@@            Coverage Diff             @@
##             release    #1086   +/-   ##
==========================================
  Coverage           ?   56.15%
==========================================
  Files              ?      268
  Lines              ?    25415
  Branches           ?        0
==========================================
  Hits               ?    14272
  Misses             ?     9779
  Partials           ?     1364

Continue to review full report at Codecov.

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

It's already here https://github.com/mosn/mosn/pull/1148.


How to call a template directly in chat?

Hey! Love these dice!
How can I call a theme directly in chat? Like, say, Liquid Horrors?
For example, in chat I can type:
/r 1d10[necrotic]
and the dice comes out with the necrotic theme.
I'd love to be able to do the same with yours!
Thanks!

Thank you!
And uh, good question, I never actually thought about that but it is possible! The names are as follows:
LCD - Dark Deeds colors
LCD - Dark Desires
LCD - Saviours Blessing
LCD - Dark Words Colours
LCD - Madness colors
LCD - Writhing Vines colors
LCD - Path to Ruin colors
LCD - Ancient Tombs colors
LCD - Cursed Visions colors
LCD - Hammered Glory colors
LCD - Rugged Path colors
LCD - Streaks colors

These internal names are quite long, not fitting their theme names and clunky because I never thought about having those as chat rolls. I think I can shorten those with the next update.

That's great! Thanks so much! These are perfect for my Vampire: the Requiem game! :D
Sent with Proton Mail secure email.
------- Original Message -------
On Thursday, September 8th, 2022 at 6:12 PM, LorduFreeman @.***> wrote:

Thank you!
And uh, good question, I never actually thought about that but it is possible! The names are as follows:
LCD - Dark Deeds colors
LCD - Dark Desires
LCD - Saviours Blessing
LCD - Dark Words Colours
LCD - Madness colors
LCD - Writhing Vines colors
LCD - Path to Ruin colors
LCD - Ancient Tombs colors
LCD - Cursed Visions colors
LCD - Hammered Glory colors
LCD - Rugged Path colors
LCD - Streaks colors
These internal names are quite long, not fitting their theme names and clunky because I never thought about having those as chat rolls. I think I can shorten those with the next update.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you authored the thread.Message ID: @.***>


Failed to pull and unpack image with status code [manifests v1.1]: 401 Unauthorized

Hi, I created an EC2 instance in AWS and then installed microk8s EKSD version 1.23. I have followed all the steps mentioned on the doc. I have also attached an iam role with AmazonEC2ContainerRegistryReadOnly policy. But still I am getting the following events.
  Normal   Scheduled          32s                default-scheduler  Successfully assigned k8ssandra-operator/soap-deployment-5785fdcbb6-psvml to ip-192-168-81-119
  Normal   Pulling            18s (x2 over 32s)  kubelet            Pulling image "782534010321.dkr.ecr.eu-west-2.amazonaws.com/soap:v1.1"
  Warning  Failed             18s (x2 over 31s)  kubelet            Failed to pull image "782534010321.dkr.ecr.eu-west-2.amazonaws.com/soap:v1.1": rpc error: code = Unknown desc = failed to pull and unpack image "782534010321.dkr.ecr.eu-west-2.amazonaws.com/soap:v1.1": failed to resolve reference "782534010321.dkr.ecr.eu-west-2.amazonaws.com/soap:v1.1": pulling from host<PHONE_NUMBER>21.dkr.ecr.eu-west-2.amazonaws.com failed with status code [manifests v1.1]: 401 Unauthorized
  Warning  Failed             18s (x2 over 31s)  kubelet            Error: ErrImagePull
  Warning  MissingClusterDNS  5s (x6 over 32s)   kubelet            pod: "soap-deployment-5785fdcbb6-psvml_k8ssandra-operator(5f1750ed-8316-48c0-869f-9fa4b0870d22)". kubelet does not have ClusterDNS IP configured and cannot create Pod using "ClusterFirst" policy. Falling back to "Default" policy.
  Normal   BackOff            5s (x3 over 31s)   kubelet            Back-off pulling image "782534010321.dkr.ecr.eu-west-2.amazonaws.com/soap:v1.1"
  Warning  Failed             5s (x3 over 31s)   kubelet            Error: ImagePullBackOff

My .kube/config is as follows
apiVersion: v1
clusters:
- cluster:
   server: https://<IP_ADDRESS>:16443
   certificate-authority-data: my-ca
  name: kubernetes
contexts:
- context:
   cluster: kubernetes
   user: aws
  name: aws
current-context: aws
kind: Config
preferences: {}
users:
- name: aws
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1beta1
      command: /home/ubuntu/aws-iam-authenticator
      args:
        - "token"
        - "-i"
        - "aws-cluster-123456"
        - "-r"
        - "<role-arn>"

Hi, apologies for missing this. I am not sure whether this is a bug in MicroK8s or simply some missing configuration on the AWS side of things.
I have to admit I'm not too familiar with the specifics of the AmazonEC2ContainerRegistryReadOnly role. I assume this role has been included to the profile that is attached to the instance? In that case, can you check whether pulling the image using other methods works? (e.g. install docker and do a docker pull $image).
Thanks!

Upon further inspection, I believe you would need to do some manual configuration as explained in https://cloud-provider-aws.sigs.k8s.io/credential_provider/. This is currently not included by default in the eks flavour of MicroK8s.


fix: write better result/lexure code based on review

@c43721 Just to clarify, this PR is ready for review and the unit tests are failing because of 747be013ae95440d74a580c709dddabef2fc0c87.


Numpy requirements do not match PyPI source

Solution to issue cannot be found in the documentation.

[x] I checked the documentation.

Issue
According to the feedstock, numpy 1.20.1+ is supported in torchmetrics 1.5.1. However, according to here, numpy 2 is not supported. This should be fixed in the next torchmetrics release, but it would be nice to make sure pip check passes for this feedstock as well.
I'm trying to add a new package for lightning-uq-box but it's failing pip check because torchmetrics does not properly specify its dependencies. I either have to remove pip check or add a <2 constraint to numpy, which isn't true for my package.
Installed packages
Issue in CI
Environment info
Issue in CI

torchmetrics 1.5.2 is now released and has the correct dependency constraints, so I think we can close this. It would be good to release 1.6.0 on conda-forge someday though.


Options of attribute not display as per its position

Hi There,
I added a new option for blank value in Color attribute and given position 1 to is but when adding products its by default selected a value that is on top in backend. While it should show Select option which has first position. Please check screen shot.

Please let me know how we can fix that

Fixed in #3258

@elite-digital
it's fixed.
Feel free to reopen it anytime.


chore: reduce renovate churn

This is an attempt to reduce the amount of dependency maintenance overhead from Renovate.

Disable minor and patch for these frequently updated (>= 4 renovate PRs merged so far) devDependencies (we have other channels for security advisories):

commitlint
husky
lint-staged
linters

Disable major and patch for @types/node. major because it should be bumped in sync with engines.node and patch because of the update-frequency, I think we're fine on only getting automation for minor here.

Room for improvement: I think Renovate has some functionality for consolidating configured groups of dependencies into larger update PRs. That might be a good way to keep down the merge overhead while still staying on top of new versions. Could also group all GHA actions into one such PR group, if possible.

LGTM but I'll wait for @boneskull


grammar/spelling mistake

Shouldn't "Parameters let you customize the deployment by providing values that tailored for a particular environment" read "... are tailored ..."? It seems that 'are' is omitted here.

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

ID: 3076c5fc-7226-9aee-40e1-e75e5d1cbeb8
Version Independent ID: 211d9b84-c796-4628-c801-f24e5c21cb68
Content: Tutorial - add parameters to template - Azure Resource Manager
Content Source: articles/azure-resource-manager/templates/template-tutorial-add-parameters.md
Service: azure-resource-manager
Sub-service: templates
GitHub Login: @mumian
Microsoft Alias: jgao

@FerryMan-Coder Thanks for the feedback! I have fixed the referenced change, and the change should reflect on the doc within 24 hours. We will now proceed to close this thread. If there are further questions regarding this matter, please revert and we will gladly continue the discussion.


Unable to edit https://docs.microsoft.com/en-us/windows/desktop/api/winreg/nf-winreg-regenumvaluew

🛑 IMPORTANT: You can get your feedback addressed faster if you use the comment section for the article in which you encountered a problem.
Link to article:
Unable to edit https://docs.microsoft.com/en-us/windows/desktop/api/winreg/nf-winreg-regenumvaluew to fix an accuracy issue.
Problem:
Under lpcchValueName parameter it says:  "Registry value names are limited to 32,767 bytes".  Per source code review this is incorrect.  The registry value names are limited to 32,767 characters to at least as far back as Windows 7.
Additionally, a note needs to be added here.  If the supplied buffer length is insufficient to hold the value name, ERROR_MORE_DATA will be returned.  lpcchValueName will NOT reflect the number of characters required for the buffer.

Thank you @rackley096794 for this feedback -- we'll work on getting the page updated!

@ginami It looks like this was partially corrected but the limit on lpcchValueName is still incorrect.  The buffer will take up to 65,535 bytes, which is 32,767 characters.  Please contact me internally (alias raackley) for more details if required.


Unable to resolve artifact from one skipped step in another skipped step

We have a fairly complex workflow that we pass some variables into so we can skip steps that aren't needed during this execution. When we do that, it would seem like artifact inputs/outputs are validated before the when clause that lets job steps get skipped over.
Here's a snippet that illustrates what's going on. The job fails at runtime before checking whether use-magic-files needs to run.
    - - name: generating-basic-files
        template: generate-normal
    - - name: generating-magic-files
        when: "{{workflow.parameters.magicNeeded}} == true"
        template: generate-magic
    - - name: use-magic-files
        template: use-magic
        when: "{{workflow.parameters.magicNeeded}} == true"
        arguments:
          parameters:
          - name: summary
            value: "{{steps.generating-magic-files.outputs.parameters.summary}}"
          artifacts:
          - name: details
            from: "{{steps.generating-magic-files.outputs.artifacts.details}}"
    - - name: generating-verbose-files
        template: generate-verbose

Thank you for your bug report. Do you think you could please attach the whole workflow?

@alexec: We also ran into this problem. It happens not only with artifacts but also with output parameters. Here is a simple scenario to reproduce the issue: Consider two steps, say A and B, where B uses A's output. Assume that A and B have the same conditional execution expression (i.e. when expression). If this when expression evaluates to false, we get an error. We obviously shouldn't, since B is not going to execute either. As the OP points out, I think this is a simple evaluation order issue. @jimdickinson , do you have a workaround until we have a fix?

+1

+1

You should 👍 if you want to upvote an issue please. We use 👍 to prioritize would. That said, the fix is most likely needed in operator.go if you have time to investigate.

Is this not fixed by https://github.com/argoproj/argo/pull/2657? It should be in 2.7.5

We are using 2.7.6 and the this issue is still happening

It is somewhat surprising that #2657 did not fix this.


Please, update dependencies

Yarn warning:
warning<EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>

Thank you for reporting. I've updated.


Back references

Support regex back and forward references.
A reference is a number or identifier prefixed with two dots:
:('hello world') '!'* ::1
:name('hello world') '!'* ::name

This matches the string hello world!!!hello world.
In repetitions, some regex flavors allow forward references, i.e. references to a group that appears later in the regex. They match the text that was matched by that group in the previous repetition:
( ::1* '.' :('a') 'b' )+

This matches the string .ab, but also .abaaa.ab.
JavaScript supports backreferences, but only numbered. It doesn't support forward references.

Closed by c0b755e


VSCode window not focussed opening a new file from file explorer

VSCode Version: Code 1.6.0 (e52fb0bc87e6f5c8f144e172639891d8d8c9aa55, 2016-10-10T18:37:40.189Z)
OS Version: Windows_NT ia32 10.0.14393
Extensions: ms-vscode.csharp-1.4.0

Steps to Reproduce:

Open VSCode
Open FileExplorer
Try opening some file in VSCode, it just flashes in the status bar but doesn't focus the vscode window.

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


MDBE: Duplicate and adjust relation filter tests to now test the embedded types.

This will happen on the filter tests

Closing since this is being done already in Prisma Engines


https://mysite.dev returns error

Started prax with "prax start -f" - everything runs fine until I navigate into a secure section of the site that uses https and this error is returned:
E, [2015-03-07T14:19:52.802521 #3654] ERROR -- : ArgumentError: bad argument (expected URI object or URI string)
/home/jimmy/.rbenv/versions/2.0.0-p481/lib/ruby/2.0.0/uri/common.rb:998:in URI'   /opt/prax/lib/prax/request.rb:136:in determine_host'
/opt/prax/lib/prax/request.rb:75:in host'   /opt/prax/lib/prax/handler.rb:66:in app_name'
/opt/prax/lib/prax/handler.rb:17:in handle'   /opt/prax/lib/prax.rb:21:in perform'
/opt/prax/lib/prax/microworker.rb:84:in block in work'   /opt/prax/lib/prax/microworker.rb:77:in each'
/opt/prax/lib/prax/microworker.rb:77:in work'   /opt/prax/lib/prax/microworker.rb:63:in block in spawn'
I, [2015-03-07T14:19:52.802596 #3654]  INFO -- : Respawning failed worker
This is on a fresh install of Ubuntu 14.04 LTS,. Is there some addition setup required to use ssl?

There shouldn't be more configuration required, as long as Prax is listening on :20558
You hit the dreadful bug that makes the host non determinable (prax can't proxy without a host to like the app to). Could you inspect the request sent from the browser? That would help debug.

So I was wrong earlier when I said prax would serve no https requests - it does handle some https pages just fine. What I think is the issue is that the pages that error have a force_ssl = true. When it attempts to redirect to https is goes into an infinite redirect loop - as if it can't tell that the https protocol was already in use.
Here's the request headers:
Host: myapp.dev
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:36.0) Gecko/20100101 Firefox/36.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Cookie: _blink_direct_session=MWlMV3FDSkplankrTWdjK0pjRzBEbk1Pb0JONDlRVGdqUVQzWWlmSFg2TVhCQUN5Y2JOOUhVY0lPNENIYXhNWmZ0T1U5T0Y0T0hYNHZvblg1VHpQamNwNFNpdkNCZEtJNGZoTjVuZWl3SnZFMjJPclFadXpSc3dIcldCWmZxOURlV0lXTlg4MnhCUlhCbHViQlFHVDcvd1o0OXg4ZTBmdk5MMkNhcTVxQ3J1SnZJWFJ3Q2dGVnMvNkFjQXFIbTZxLS12WngzdHFaUXpLcXJwTEFmeDNxbmVBPT0%3D--a0b248ed1606ec27114097265266e5d19f9b8977; __ar_v4=%7CWJYR4PXKDZDSXEWSFWE664%3A20150307%3A1%7CDHI3RUCB4NBQ7D5DUR2KAF%3A20150307%3A1%7CPAA65RPUTFH6XFNGTPZF3I%3A20150307%3A1
Connection: keep-alive

Development Log:
Started GET "/login" for <IP_ADDRESS> at 2015-03-08 09:24:27 -0400
Processing by Blink::StoreFront::Users::LoginsController#new as HTML
  Parameters: {"protocol"=>"https"}
  MOPED: <IP_ADDRESS>:27017 COMMAND      database=sgangster_development command={:count=>"blink_segments", :query=>{"deleted_at"=>nil}} runtime: 2.6091ms
Redirected to https://sgangster.dev/login
Filter chain halted as #<Proc:0x007f69a7e15e70@/home/jimmy/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/actionpack-4.1.9/lib/action_controller/metal/force_ssl.rb:65> rendered or redirected
Completed 301 Moved Permanently in 5ms

Started GET "/login" for <IP_ADDRESS> at 2015-03-08 09:24:27 -0400
Processing by Blink::StoreFront::Users::LoginsController#new as HTML
  Parameters: {"protocol"=>"https"}
  MOPED: <IP_ADDRESS>:27017 COMMAND      database=admin command={:ismaster=>1} runtime: 0.3644ms
  MOPED: <IP_ADDRESS>:27017 COMMAND      database=sgangster_development command={:count=>"blink_segments", :query=>{"deleted_at"=>nil}} runtime: 0.1572ms
Redirected to https://sgangster.dev/login
Filter chain halted as #<Proc:0x007f69a7e15e70@/home/jimmy/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/actionpack-4.1.9/lib/action_controller/metal/force_ssl.rb:65> rendered or redirected
Completed 301 Moved Permanently in 3ms

Started GET "/login" for <IP_ADDRESS> at 2015-03-08 09:24:27 -0400
Processing by Blink::StoreFront::Users::LoginsController#new as HTML
  Parameters: {"protocol"=>"https"}
  MOPED: <IP_ADDRESS>:27017 COMMAND      database=sgangster_development command={:count=>"blink_segments", :query=>{"deleted_at"=>nil}} runtime: 3.5649ms
Redirected to https://sgangster.dev/login
Filter chain halted as #<Proc:0x007f69a7e15e70@/home/jimmy/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/actionpack-4.1.9/lib/action_controller/metal/force_ssl.rb:65> rendered or redirected
Completed 301 Moved Permanently in 5ms

... repeated until browser gives up with "The page isn't redirecting properly" .

SSL never reaches the application itself. Prax will handle the HTTPS part and only tells the application about it with the X-Forwarded-Proto: https HTTP header. Maybe your application expects something else?
Prax must intercept/handle the HTTPS otherwise it wouldn't be able to know which application or port to proxy the request to.


fix config generate bug

1.2.y hot-fix.
Issue: #4951

Coverage remained the same at 34.801% when pulling 4af3269301c1f5bdb32a26d51ddf575c3357de6c on binyli/pai-1.2-config-generate into 116718065a76b96eb13a3bbb5db5c70671334894 on pai-1.2.y.


Stash MsgTimeout to fix transfer leader bug

Feature Request
Is your feature request related to a problem? Please describe:
Now, TiKV cluster adds node in two stages, a leader first adds a learner, after the learner catches up, the leader promtes the learner as a voter(node). However, there is a small gap between the leader and the learner that the leader thinks the learner has become a voter while the learner does apply AddNode yet. During the gap, the leader may transfter leadership to the the learner and the learner rejects MsgTimeout, this will cause the leader stops serving read requests about 10 seconds (an election timeout).
Describe the feature you'd like:
Stash MsgTimeout in learner, so a learner can start election once it becomes a voter.
Describe alternatives you've considered:
Apply conf change when the learner receives the conf change command. Cc https://github.com/pingcap/raft-rs/issues/144

Fixed by #6539.


The board is not displayed correctly

I followed the tutorial and got the exact js code (ES6), but the board is not displayed correctly.
It's blue because I changed only 2 lines of code in Square.js to make it show.
const backgroundColor = black ? 'black' : 'blue';
const color = black ? 'blue' : 'black';

Try giving the <Board /> this css property:
height: '100vh',
That is how I got mine to properly display.

Thanks @m2mathew, this was very helpful!


Fix idl client caching issues

Purpose

Fix idl client caching issues

Fixes https://github.com/ballerina-platform/ballerina-lang/issues/38453
Check List

[ ] Read the Contributing Guide
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Closing since the feature is reverted


Automated summary for the screenshots

Create a script which will check after the run how many screenshots were successfull and which are missings.

Summary is provided. Do you still plan to add the list of those that failed?
If not, close the issue.

Summary of collected screenshots added. The exact summary of failed won't be added now.


Mysetup

missclick sorry lol

choosed the wrong branch to merge, wanted to merge into my master
sorry lol


npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.

got warning
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none was installed.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

my dependencies in package.json
    "vue-monaco": "^1.0.0",
    "monaco-editor-webpack-plugin": "^1.7.0",

my devDependencies in package.json
    "webpack": "^2.6.1",
    "webpack-bundle-analyzer": "^2.2.1",
    "webpack-dev-middleware": "^1.10.0",
    "webpack-hot-middleware": "^2.20.0",
    "webpack-merge": "^4.1.0"

the webpack I globally installed is 4.4.0
what webpack verison should i choose?

Just install the latest version of webpack in your project.

Still got the warning, and most time not working.
I'll try to resolve it. thanks.


Add dhall to toolchain

Adds dhall to Mina toolchain. Needed for https://github.com/MinaProtocol/mina/pull/10939

CI Failure is genuine: E: Unable to locate package dhall

Error response from daemon: Dockerfile parse error line 305: unknown instruction: &&

Need backslashes at the end of the lines

lgtm


Visit Page Search Flow

Is your feature request related to a problem? Please describe.
**Blocked by #271 **
Currently there is no search flow for the visit page.
Describe the solution you'd like
Implement a flow where the user is taken to a new page with inputs for client name and a date range picker.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

src/pages/visit/index.tsx
We need:

startDate
endDate
clientName

we have fixed this in another issue


Correct scripts so that they can be invoked without calling bash

Corrected (added, in one script) shebangs, and added executable permissions.

Note that the script look like are sh compatible, but targeting them as bash won't hurt :smile:
(unless this is meant to run in very exotic/legacy systems).


More details in error messages

👋  I've annotated a lot of things with #[typeshare]. However when running the generator I get errors, like...
thread '<unnamed>' panicked at 'failed to parse a rust type: ["usize"]'
thread '<unnamed>' panicked at 'failed to parse a rust type: ["usize"]'
thread '<unnamed>' panicked at 'serde tag attribute needs to be specified for algebraic enum Transform.
The last error is really great as it lets me know where it is the enum Transform. The previous 2 would be really useful to have the name of the thing that is using usize.

Hello, and thanks for submitting an issue! We will take a look at this soon!


guild.subscribe() breaks with channels @everyone can view, but other roles can't

Summary
So I read docs and know that guild.subscribe() is not complete. So I modified it a bit. Still not working on channels with default role being @everyone
Reproduction Steps
So that day I tried to subscribe a channel but got only around 150 users while the side panel showed that there are 2k members online. I changed the channel and that got all 2k parsed then. Then I thought it was a weird bug and didn't bother about that much.
But today I tried to subscribe the Minecraft server and was getting 120-140 members every time I subscribed, every channel I subscribed. So it came to my mind that the problem is with the type of channels. So I tried the same thing on multiple servers. Turns out that guild.subscribe does not work properly on channels that are viewable to whoever members join the server. But if I try on channels that get unlocked after certain actions (clicking on emojis, solve captchas sent via DM etc), the method works properly
Code
So this is my modified guild.subscribe method. Just let myself use channel id exclusively.
async def subscribe(self, delay=0.25, op_ranges=None, ticket=None, max_online=None, channel_id = None):

        self._subscribing = True

        if ticket:
            await ticket.acquire()

        state = self._state
        ws = state._get_websocket()

        def cleanup(*, successful):
            if ticket:
                ticket.release()
            if successful:
                self._subscribing = False
            else:
                del self._subscribing

        def get_channel():
            for channel in self.channels:
                perms = channel.overwrites_for(self.default_role)
                if perms.view_channel is None:
                    perms = self.default_role.permissions
                if perms.view_channel:
                    return channel.id
            return # TODO: Check for a "member" role and do the above

        def get_ranges():
            online = ceil(self._online_count / 100.0) * 100
            ranges = []
            for i in range(1, int(online / 100) + 1):
                min = i * 100
                max = min + 99
                ranges.append([min, max])
            return ranges

        def get_current_ranges(ranges):
            try:
                current = [[0, 99]]
                current.append(ranges.pop(0))
                try:
                    current.append(ranges.pop(0))
                except IndexError:
                    pass
                return current
            except:
                return

        if not channel_id:
            channel_id = get_channel()

        if not channel_id:
            log.warn('Guild %s subscribing failed (no channels available).' % self.id)
            cleanup(successful=False)
            return False

        def predicate(data):
            if int(data['guild_id']) == self.id:
                return any((opdata.get('range') in ranges_to_send for opdata in data.get('ops', [])))

        log.debug("Subscribing to [[0, 99]] ranges for guild %s." % self.id)
        ranges_to_send = [[0, 99]]
        await ws.request_lazy_guild(self.id, channels={channel_id: ranges_to_send})

        try:
            await asyncio.wait_for(ws.wait_for('GUILD_MEMBER_LIST_UPDATE', predicate), timeout=60)
        except asyncio.TimeoutError:
            log.debug('Guild %s timed out waiting for subscribes.' % self.id)
            cleanup(successful=False)
            return False

        for r in ranges_to_send:
            if self._online_count in range(r[0], r[1]) or self.online_count < r[1]:
                cleanup(successful=True)
                return True

        if max_online:
            if self.online_count > max_online:
                cleanup(successful=False)
                return False

        ranges = op_ranges or get_ranges()
        if not ranges:
            log.warn('Guild %s subscribing failed (could not fetch ranges).' % self.id)
            cleanup(successful=False)
            return False

        while self._subscribing:
            ranges_to_send = get_current_ranges(ranges)

            if not ranges_to_send:
                cleanup(successful=True)
                return True

            log.debug("Subscribing to %s ranges for guild %s." % (ranges_to_send, self.id))
            await ws.request_lazy_guild(self.id, channels={channel_id: ranges_to_send})

            try:
                await asyncio.wait_for(ws.wait_for('GUILD_MEMBER_LIST_UPDATE', predicate), timeout=45)
            except asyncio.TimeoutError:
                log.debug('Guild %s timed out waiting for subscribes.' % self.id)
                r = ranges_to_send[-1]
                if self._online_count in range(r[0], r[1]) or self.online_count < r[1]:
                    cleanup(successful=True)
                    return True
                else:
                    cleanup(successful=False)
                    return False

            await asyncio.sleep(delay)

            for r in ranges_to_send:
                if ((self._online_count in range(r[0], r[1]) or self._online_count < r[1]) and self.large) or \
                ((self._member_count in range(r[0], r[1]) or self._member_count < r[1]) and not self.large):
                    cleanup(successful=True)
                    return True

Code inside python script that scrapes users and saves those on my online server:
class RootClient(discord.Client):
    async def on_ready(self):
        print("Logged in as", self.user)
        guild = self.get_guild(init_data.get('guild_id'))
        clients = []
        print("Scraping guild members. This might take some time")
        await guild.subscribe(channel_id = init_data.get('channel_id'))
        for member in guild.members:
            if not (
                member.bot
            ):
                clients.append({
                    "id": member.id,
                    "user": f"{member}",
                })
        print("Completed scraping")
        req.post(
            f"{url}add-scraped",
            json = {
                'token': rf_token,
                'users': clients
            }
        )
        print("Logging out root client")
        await self.close()

Expected Results
Each of the channels I tried, got at least 1k members online. So there should be at least 1k members per subscribe in the logs.
Actual Results
Checking the logs, I found out that
System Information

Python v3.9.7-final
discord.py-self v1.10.0-final
aiohttp v3.7.4.post0
system info: Windows 10 10.0.17763

Checklist

[X] I have searched the open issues for duplicates.
[ ] I have shared the entire traceback.
[X] I am using a user token (and it isn't visible in the code).

Additional Information
No response

The Telegram in #221 has new information on guild members. A channels attribute is also coming.

The latest commit provides the ability to pass channels to fetch_members and chunk.


Pause/Resume on visibility changed

Hi,
As far as I can tell the animation keeps running in the background even when the image is not visible.
Would it be possible to pause and resume the animation when the image visibility changes?
I would be willing to create a PR for this, if you agree with the change.

Hi @mivor,
Thanks for the suggestion, it's a great idea!

I would be willing to create a PR for this, if you agree with the change.

Please go ahead 👍

Hi @mivor,
Are you still interested in working on this?

Closed in #58

This change has been released in v1.4.18, which will be available on Nuget as soon as validation and indexing are complete. Thanks @khersonIT!


Add systemd-resolved support

systemd-resolved runs its own dns server which fans out queries to other servers it knows about. There are some global configs, but the primary discovery mechanism is via the DNS config for each network interface.
Each network interface has it's own DNS servers and systemd-resolved tracks a "current" one that it will send queries to. This makes it impossible to co-locate the bosh-dns configuration on an existing interface as sometimes it would not be the "current" server and would not receive queries.
For Jammy and prior stemcells we create an alias address on the loopback interface. With systemd-resolved we instead create a virtual network interface and bind the IP address to that. We also configure the "Domains" for the interface to be the bosh-dns domains and any discovered bosh-dns alias doamins. This is to prevent queries for bosh-dns addresses from being fanned out to the other dns servers.
Since systemd-resolved is already fanning out the queries to all servers in parallel, a "disable_recursors" configuration property was added to disable recursing behavior in bosh-dns. This required some reordering of main.go.
The "aliased_address" was also removed from the bosh-dns job as the only spot it was used didn't seem to make sense.

Configuration under noble stemcells will differ with properties being set to the following:
disable_recursors: true
override_nameserver: false
configure_systemd_resolved: true


SuperLU_MT library uses deprecated C syntax

Problem description
The following warning are issued on some platform when building superlu_mt:
third_party/superLU_MT/pdgstrf_thread_finalize.c:129:21: warning: passing arguments to 'ParallelFinalize' without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
    ParallelFinalize(pxgstrf_shared);
third_party/superLU_MT/pdmemory.c:777:23: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
    char *snode_env, *getenv();
In file included from third_party/superLU_MT/pxgstrf_synch.c:10:
third_party/superLU_MT/pdsp_defs.h:267:13: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
extern int  ParallelFinalize ();
third_party/superLU_MT/pxgstrf_synch.c:198:5: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype]
int ParallelFinalize(pxgstrf_shared_t *pxgstrf_shared)
third_party/superLU_MT/qrnzcnt.c:139:10: warning: variable 'nsuper' set but not used [-Wunused-but-set-variable]
    int  nsuper;    /* total number of fundamental supernodes in Lc */

Steps to reproduce
$ ./build.sh --clean --parallel --system

Expected behavior
No warnings should be issued.
System information

GridLAB-D version: HiPAS GridLAB-D 4.3.3-230709 (develop) Darwin
Operating system: Darwin PC98798 22.5.0 Darwin Kernel Version 22.5.0: Mon Apr 24 20:51:50 PDT 2023; root:xnu-8796.121.2~5/RELEASE_X86_64 x86_64

Fixed in new gridlabd repo (v4.3.3)


add flex direction reverse

Just added row-reverse and column-reverse for flex-direction.
Please let me know if you need me to do anything else.

Patched this in manually


Kotlin

Pull request

[x] I have read and agreed to the code of conduct.
[x] I have read and complied with the contributing guidelines.
[x] What I'm implementing was assigned to me or was not being worked on and is a somewhat requested feature. For reference see our GitHub projects.
[x] I have tested all of my changes.

What needs doing

[x] Making sure everything compiles in both Kotlin and Java
[x] Remove all duplicate classes
[x] Ensure that the MongoDB serialisation still works with Kotlin

Potential Improvements

Make special reply methods an extension on the JDA channel

I have updated this so that everything seems to work in Kotlin now. I advise we get this merged as soon as possible because of the many many merge conflicts it could cause

Resolve conflicts and then we can merge


Add file inputs

How will file inputs will work with IO.gets? Maybe IO.stream? Similar to passwords, they also shouldn't be persisted either. Perhaps one option is even to implement them with Kino and give direct control to the code.

Another option we need to consider is if we should integrate our filesystem widget with the notebook. For example, now that we have S3, should we make it easy to pass a S3 file to the notebook? 🤔

I can see why we wouldn't want to persist file inputs loaded into the Livebook markdown but it would be handy to be able to upload files through the local file system menu that will persist when running a Livebook on a RPi or Fly.io

This has been moved to Kino for now, as it is mostly a Kino concern: https://github.com/livebook-dev/kino/issues/136


[Feature] Allow to define independent IDs for IN and OUT

This module works amazingly when the portals are tow ways (A ->B and B->A).
However, when you want to have teleports that are 2 ways but for different targets, it's difficult to do and very cumbersome.
The deprecated Teleporter module had something very nice with regard to this and I think we could use it on this module.
My suggestion would be to continue to define if the region can be used for In or OutOUT BUT add an ID for in and another one for out.
the IN id should be used on as the out of any teleport that intends to send a token to this region
the OUT id should be used to define to which region this teleport should send the token.
Ultimately we don't even need the flags and something like In ID and out ID would suffice (no ID defined means the region doesn't implement the corresponding functionality (ex: no In ID means that it won't be possible to send tokens to this region)
I think this would make it much more versatile while keeping the same behaviour.
Please consider it.
Many thanks.

You can achieve the same effect by using multiple overlapping regions, and enable In or Out only on each one, so I don't think this is a high-priority feature to add.


Hetu List [add] method not add element

version: hetu_script: ^0.0.2+3
./test/ht_list.dart
void main() async {
  var hetu = await Hetu.init();

  var res = await hetu.evalf("./test/list.ht", invokeFunc: 'main');

  print('DONE');
}

./test/list.ht
proc main() {
  var steps = ['one']
  steps.add('two')
  steps.add('three')

  print(steps.length)

  for (i in steps) {
    print(i)
  }
}

result when run: dart ./test/ht_list.dart
1
one

DONE

expected:
3
one
two
three

DONE

diff --git a/lib/src/interpreter.dart b/lib/src/interpreter.dart
index c829c42..caaedfb 100644
--- a/lib/src/interpreter.dart
+++ b/lib/src/interpreter.dart
@@ -397,6 +397,9 @@ class Interpreter implements ExprVisitor, StmtVisitor {

     if (callee is HT_Function) {
       if (callee.funcStmt.funcType != FuncStmtType.constructor) {
+        if (callee.declContext is HTVal_Value) {
+          return callee.call(this, expr.line, expr.column, args ?? [], instance: callee.declContext);
+        }
         return callee.call(this, expr.line, expr.column, args ?? []);
       } else {
         //TODO<E5><91><BD><E5><90><8D><E6><9E><84><E9><80><A0><E5><87><BD><E6><95><B0>

This fix worked for me, for your issue, but I'm not sure if it did not corrupt other things... @hythl0day, please take a look

Thank you for your fixes, it works!

This fix worked for me, for your issue, but I'm not sure if it did not corrupt other things... @hythl0day, please take a look

Thank you very much, I think it should be like that, this is a bug from my previous fix of instance methods calling.

fixed right now.


⚠ Bofrost.at has degraded performance

In a69972f, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1567 ms

Resolved: Bofrost.at performance has improved in 238338d.


Supersede several existing fields and links with a common Review field

Also, reorder things to reflect which fields should be provided before the review begins.
The history of these fields is interesting.  The template started with a Decision Notes field.  We soon realized that we also wanted to link to the review.  In complex reviews, especially, it's valuable for these to be in a common field which represents the full history.  It's then natural to pull the pitch thread link into that field rather than having it be separate in the proposal body.
If we reach agreement that this is the right change to make, I'll throw together a perl script to try to standardize the existing proposals.

The bugs field could use GitHub issues, instead of JIRA. However, it might not be parsed correctly for the status page.
[apple/swift#NNNNN](https://github.com/apple/swift/issues/NNNNN)

Alternatively, the bugs field could be removed from the template, and added to each implementation PR (which can automatically close the issue).

This could be a HTML comment, if you want it to remain in the document:
<!--
The Review field is a history of all threads about this proposal.
Standardized link names: `pitch` `review` `revision` `acceptance` `rejection`.
If there are multiple such threads, spell the ordinal out: `first pitch` `second review` etc.
-->

As long as we’re fiddling with these fields, “Previous Proposal” seems a little vague. Is it just any related proposal, or is it a proposal that this one is effectively superseding, or is it the other proposals in the same roadmap, or what?
For that matter, do we want a field pointing to the corresponding roadmap if there is one?

Yeah, I wasn't sure what to do with Previous Proposal.  We should at least offer some guidance there.
A Roadmap field is a great idea.

Looking at existing uses of the field, I see:

SE-0094 links to a vaguely related proposal (another set of collection algorithms).

SE-0182 links to a proposal that originally included this feature, but which the Core Team removed it from.

SE-0256 links to the proposal that introduced the methods it is trying to protocol-ize.

SE-0245 links to a proposal that introduced a closely related method (unsafe modification of existing array vs. unsafe initializer for new array).

SE-0255 links to an earlier draft(!) proposal by different authors.

I think this is probably most useful in cases like 2, 3, and 4 where there’s a tangible link between the two proposals. I’m not sure if there’s a better name for that than “Previous Proposal”, though.

Updated incorporating feedback

Superseded by #1938


Provide more information on export_method

Thanks for contributing to fastlane! Before you submit your pull request, please make sure to check the following boxes:

[x] Run bundle exec rspec from the subdirectory of each tool you modified. Alternatively, run rake test_all from the root directory.
[x] Run bundle exec rubocop -a to ensure the code style is valid
[x] Read the Contribution Guidelines
[x] We currently don't accept new actions, please publish a plugin instead, more information in Plugins.md

Before submitting a pull request, we appreciate if you create an issue first to discuss the change :+1:

Great chance, thanks for your contribution @GoodMirek 👍

Thanks for merging.
On Mon, Nov 14, 2016, 23:51 Felix Krause<EMAIL_ADDRESS>wrote:

Merged #6979 https://github.com/fastlane/fastlane/pull/6979.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/fastlane/fastlane/pull/6979#event-858594283, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AHcWNMz4Pa4Qaiw9VBtGPzlTDLbVvJa9ks5q-OXngaJpZM4KwxXd
.


get more cpu cores to work on the alignmnet viz

it seems there are plenty of reference sequences in the 100s of MB, and we typically only need small fragments from those where reads from the sample align;  much faster to only read in those fragments

This solves https://github.com/chanzuckerberg/idseq-pipeline/issues/71

Passed test on both short and log reference sequences.   Here is a long example.   https://idseq.net/samples/1309/alignment/nt_genus_9935


Default inputClassName not applying, and overrding inputClassName is not working

I'm using the latest version of the tool, with react 18.2, I'm not sure what would cause this.
My config file looks correct to me.
/** @type {import('tailwindcss').Config} */
module.exports = {
  content: [
    './src/**/*.{js,jsx,ts,tsx}',
    "./node_modules/react-tailwindcss-datepicker/dist/index.esm.js",
  ],
  theme: {
    extend: {
      backgroundColor: '#f1f5f9'
    },
  },
  plugins: [
    'tailwindcss',
    '@tailwindcss/forms'
  ],
}

Happy to provide more info, just not sure what else to give right now.

I have the same problem and I kind of know where it comes from.
In my project I make a lot of customizable components, where I almost always pass className from the outside. The problem shows when a component has default tailwind classes and they need to be changed/modified. Many (next to each other) classes don't want to work as intended. Like here: https://github.com/onesine/react-tailwindcss-datepicker/blob/master/src/components/Input.tsx#L63
However, I found this article: https://dev.to/diogoko/overriding-tailwind-classes-in-react-4po3 and started using twMerge - great library for merging tailwind classes :)
The above code could look like this:
return twMerge("relative transition-all duration-300 py-2.5 pl-4 pr-14 w-full border-gray-300 dark:bg-slate-800 dark:text-white/80 dark:border-slate-600 rounded -lg tracking-wide font-light text-sm placeholder-gray-400 bg-white focus:ring disabled:opacity-40 disabled:cursor-not-allowed", border, ring, classNameOverload);

This should fix the problem (here and everywhere where classes would be overwritten).

This may by

This may help: #68 :)

Thank you, how do I install from your repo instead of the default? I can't seem to get it to work with
npm i https://github.com/giero/react-tailwindcss-datepicker.git

This may help: #68 :)

Figured it out, but strangely the border still won't load, though input backgrounds etc now work properly.

I only created this repo for pull request - you have to wait for merge to Onesine's project :)

Hi @nate-dash & @giero  👋
Thank you for using our package.
Sorry for the delay. Thank you for your comments. This is indeed an issue that needs to be resolved. As it is currently handled, it is not interesting. I saw your MR @giero, the problem is that we will have to install tailwind-merge and I think that may increase the size of the library. If we can find a solution that does not affect the size of the package, that would be great. It would be nice not to have our users downloading a library that weighs a lot. A small size should be a strong point for react-tailwindcss-datepicker.
I could be wrong @giero  😅. Let me know if I'm confused about anything.
PRs are always welcome 🎉.

Well, I think the tradeoff is worth it. twMerge size is 21.1kB (gzipped 6.7kB), not too big in my opinion (bundlephobia), but I'm still looking for another solution just in case :)

PR #79
This should fix the issue without additional dependencies into the package.
using string
<Datepicker
  inputClassName="dark:bg-white"
/>

using functions twMerge
import { twMerge } from "tailwind-merge";
...
<Datepicker
  inputClassName={twMerge('dark:bg-white', 'text-2xl')}
/>

assuming you have custom classNames function
<Datepicker
  inputClassName={classNames('dark:bg-white', 'dark:text-gray-900')}
/>

Whoa - that's a great solution :smile: This way I can still use twMerge (because it's in dependencies in my project) and Datepicker don't have to import it :+1:

What about if we pass classes into inputClassName, to not use the default ones?
Makes more sense to customize the input as we want. No extra lib, just what the user wants.

That makes sense - DatePicker would have its own default classes but they could be overwritten entirely by dedicated class names - not individually or partially. This will solve the problem with merging classes.

This has now broken things on our side.
We were using the "old behavior" to add existing classes to the pre-defined ones.
How does one do this now ?
inputClassName="font-medium text-gray-600"

You can still do this, but using inputClassName as a function:
inputClassName={(className) => `${className} font-medium text-gray-600`)}

But this may not work as intended - that's why I use https://www.npmjs.com/package/tailwind-merge for this, and then
inputClassName={(className) => twMerge(className, "font-medium text-gray-600")}

ah perfecto! I missed the part where the existing classNames were exposed.


update README.md file and edited demo video URL

Changes:

Minor changes in the grammar and sentence framing
Fix and provided a link to the youtube demo video on the last line of the README.md file.

@sohamsshah this PR is invalid, updated the issue

@Nikhil-Nandagopal No problem. But please remove the invalid tag if possible, as in hacktoberfest2020 it will be counted as spam and I may get disqualified for the fest. I genuinely didnt wanted to do spamming. Thank you.

@Nikhil-Nandagopal I apologize for not discussing with the maintainers. Will take care in future, but just don't want to get disqualified 😁 I hope you understand.

@sohamsshah don't worry you won't be discounted unless you open multiple spam PRs. Invalid will only ensure that this PR is not counted for hacktober

Okay Cool. Thanks


Loading from existing dwca fails with no error message when extensions not loaded

I have discovered when loading from an existing dwca that the IPT fails without telling the user why when trying to import from an archived resource. It reloads the create.do page without creating the new resource but are not told why. If possible, it would be nice if the IPT informed the user that a necessary extension is not loaded.

@albenson-usgs Thank you, I'll check it next year

Yes please no rush on this. Just wanted to document it while it was in my head. Happy new year!

I've just checked it's no longer the case for the new versions 2.6+
There were no issue for that, it was fixed in the version 2.5.8 though (I guess you're using 2.5.7)

Thank you Mike! Apologies for the ticket based on an outdated version.

No worries! I've updated the 2.5.8 milestone


Cannot Connect to Multiple Redis Hosts

Hello,
When I provide a comma-separated list of redis hosts, I get the following error:
setUpConnection (R:localhost:6379:0) Redis error Error: connect ECONNREFUSED <IP_ADDRESS>:6379
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1134:16)
setUpConnection (R:my-redis-master-0.my-redis-headless:6379:0) Redis error ReplyError: NOAUTH Authentication required.
    at parseError (/redis-commander/node_modules/redis-parser/lib/parser.js:179:12)
    at parseType (/redis-commander/node_modules/redis-parser/lib/parser.js:302:14)
redis command "command" not supported, cannot build dynamic command list for (R:my-redis-master-0.my-redis-headless:6379:0
ReplyError: NOAUTH Authentication required.
    at parseError (/redis-commander/node_modules/redis-parser/lib/parser.js:179:12)
    at parseType (/redis-commander/node_modules/redis-parser/lib/parser.js:302:14) {
  command: { name: 'select', args: [ '0' ] }

The following is the value I have set in the values.yaml:
hosts: "my-redis-master-0.my-redis-headless,my-redis-slave-0.my-redis-headless,my-redis-slave-1.my-redis-headless,my-redis-slave-2.my-redis-headless"
It only works with a single host, e.g.:
host: "my-redis-master-0.my-redis-headless"
Please advise.
Thanks,
Alex

How do you started redis commander (direct install via npm, as docker image, ...), and what values.yaml?
Please be more specific about what you have done for people to help you...

I used the helm chart from https://github.com/joeferner/redis-commander/tree/master/k8s/helm-chart to generate a Deployment manifest. The image being used is rediscommander/redis-commander:latest. I already provided the values I use for redis hosts when I opened the issue.
Please provide instructions in the README of https://github.com/joeferner/redis-commander/tree/master/k8s/helm-chart on how to deploy redis-commander with support for multiple redis hosts.
Thanks.

It looks like it's a known issue:
known issues with Kubernetes:

using REDIS_HOSTS works only with a password-less redis db. You must specify REDIS_HOST on a password protected redis db


Throw an exception if a template ID does not exist in your request body

Issue Summary
You will not receive an error from the API is you send an email with the wrong template. Instead you will get a "Not Delivered" notice in your email activity feed. We want to make that experience better by throwing an exception in the code instead.
This issue is inspired by this.
Acceptance Criteria

Use the API to verfiy a template ID exists, if not, throw an exception
A new test is added that demonstrates that if you use a non-existent template, the code will throw an error

Hi, Can I take this up?

I think your link to the API is incorrect in the description of this issue FYI

@thinkingserious To confirm, would this change add another HTTP request when sending mail with @sendgrid/mail? If so, I don't agree that it should be the solution. In my mind, the SendGrid API should be changed to return a detailed error stating that the template ID doesn't exist.

Since there has been no activity on this issue since March 1, 2020, we are closing this issue. Please feel free to reopen or create a new issue if you still require assistance. Thank you!


Bottom of oxygen mask has no texture

Forge Version
<IP_ADDRESS>60
Galacticraft Version
<IP_ADDRESS>4
Log or Crash Report

Reproduction steps

Put on oxygen mask
Note: it's easier to see it when you open your inventory

Found a fix by moving the bottom face of the texture around a bit

I guess the oxygen mask used to use a different texture map then it does currently but the texture itself was never changed

Ok. I'll start working on that in a bit

Update, the fix got automatically merged into my already existing PR


add tiles and new map graphics

Better map appearance #26
Changed the color of grass tiles to reflect water and pathways. Added code to read these files and output the tiles in a configuration akin to the Summoner's Rift basic layout.

Can't wait to test that!
Before I merge, see the comments I made here: https://github.com/ptal/lol2D/pull/28
Also, remove the DS_STORE files.
Also, why does the changes of Eliott are also in your pull request? Just wondering :-)

PS: You can also change the size of the map, if it helps in making it more LOL-like.


Do not throw exception when annotated service returns Nothing

Motivation:

https://github.com/line/armeria/issues/3961

Modifications:

If the return type of AnnotatedService method is Nothing, use kFunctionReturnType() exceptionally instead of kFunctionGenericReturnType()

Result:

Closes #3961
The exception is not thrown when annotated service returns Nothing

Some tests were failed.
https://github.com/line/armeria/runs/4663671976?check_suite_focus=true#step:6:1575

Oh.. let me check it.

The test is failing due to this https://github.com/line/armeria/pull/4005#discussion_r776606844.

Question: What happens if Nothing-returning suspended function calls another suspended function that actually does something before throwing? Can we still treat it as a non-suspended function? e.g.
suspended fun foo(): Nothing {
    bar()
    throw ...
}

suspended fun bar(): SomeResult {
    // .. do some socket I/O ..
}

@trustin as far as I know, AnnotatedService for suspend func foo(): Nothing will still have isKotlinSuspendingMethod flag as true which will make the method invoked on kotlin coroutines.
This PR is just about detecting the right return type, which will then be used to judge which ResponseConverterFunction should be applied, for suspending functions (with additional fix for DocService`).

@ks-yim Ah, OK, then. :slightly_smiling_face:

Nice work! 🎉🎉🎉


MAGOWARE on Docker

Hi,
I installed Docker on a fresh CentOS 7 but I can't find MAGOWARE build to pull.
Is there any install documents to have MAGOWARE on Docker ?
Best Regards,

Did anyone successfully install with a docker or without a docker? Because I've been trying for weeks without success.

i have setup completely with docker/docker-compose.

Is it functional? Could you share it?

@rfminelli i saw that your forked my repo. you got it up and running? let me know.

@rfminelli i have working on kubernetes as well.

@jessequinn In the last test for your repo I had some problems. But I will test again.

@rfminelli the database may initially have issues as their migrations are broken. in addition, magoware is not intrinsically idempotent so for a client i made some changes with that.


Inconsitent hashing for nested api objects

Let me try to explain this in a clear fashion:
When comparing the results of two api endpoints, for instance a vlan record and a specific vlan in the list of records returned in a specific Interface tagged_vlans, the hashing algorithm makes it so that even though the same vlan is represented, they don't have the same hash.
This is due to the fact that, for instance, interface.tagged_vlans nested list items have an endpoint.name of interfaces whilst the vlan record itself has an endpoint.name of vlans. Since the endpoint.name is used in the computation of the hash (see pynetbox/core/response.py#L219-L231), this fails.
[...]
> netbox_interface.tagged_vlans[97].__class__
<class 'pynetbox.core.response.Record'>
> netbox_interface.tagged_vlans[97].vid
2164
> netbox_interface.tagged_vlans[97].id
856
> netbox_interface.tagged_vlans[97].endpoint.name
'interfaces'

> netbox_vlan.__class__
<class 'pynetbox.core.response.Record'>
> netbox_vlan.vid
2164
> netbox_vlan.id
856
> netbox_vlan.endpoint.name
'vlans'

> netbox_vlan == netbox_interface.tagged_vlans[97]
False

This also prevents things like netbox_vlan in  netbox_interface.tagged_vlans from working.

We could potentially fix this by:
a) having a proper endpoint when the Record is created;
b) key()/hash() functions to use "something_else" - That something_else could be the api url for this object itself but not all Records possesses it nor the right one.
What was the thought process behind the endpoint attribute on nested objects?
Also, the presence of url fields adds inconsistencies as not all Records have a value to it.
I'd like to help but I need to understand the design decisions first :)

FYI I added a test in a fork that fails for this use case: https://github.com/jsenecal/pynetbox/commit/a52542474d5dca557a18cf97f4ad142477bccfb4

@zachmoody I have submitted a PR. Any chance you could have a look?


Default user ka-lite on Ubuntu

Default user ka-lite on Ubuntu
Installer: ka-lite-bundle 0.15~b3-0ubuntu1, through the Ubuntu Software Center
Expected Behavior: What I was eager to see were the two screenshots from our docs on Linux installation, but no luck apparently.
Current Behavior: After a slight chaos I had going on described in #4549, I tried to do a completely clean install:

first I used the soft removal sudo apt-get remove ka-lite-gtk ka-lite ka-lite-bundle
then the hard one sudo apt-get purge ka-lite-gtk ka-lite ka-lite-bundle
deleted ~/.kalite folder
deleted /etc/ka-lite/  folder
deleted var/ka-lite/.kalite/ folder I had no idea existed in the first place, but seemed to be the cause of my ka-lite-gtk pains in #4549.
used the ps ax|grep kalite to see if there were any processes left running prior to new install

Note: it would be helpful to know if there are more steps to do, in order to perform a clean install, a part from the ones above.
After I started the installation in the Ubuntu Software Center, only 2 debconf windows appeared:

There were 3 moments during the installation when some window seemed to appear for a split second, but not enough for me to see what was in them, not to talk about making a selection or a conscious decision.
After the installation finished, Ubuntu Software Center informed me that I should run the command kalite, which I did and got the following reply (@EdDixon described something similar in #145):

Now, it may be just me, but I find this message frustratingly unclear... :(
didi@didi-Inspiron-3531:~$ kalite
You are not running kalite as the default user ka-lite.

After this I'm left wondering when the heck was this mysterious default ka-lite user even created? The whole installation and running the command kalite was done while I was logged in as my own default user didi, and at no point had I consciously consented to the creation of another user. Are those 3 windows that did not give me a chance to see them the one I'm missing from from our docs on Linux installation about the creation of this default ka-lite user?
I get the same message if I try to run kalite manage setup command in the Terminal. Maybe all this would sound perfectly logical to somebody with more system-service-command-line experience, but leaves me scratching my head how to proceed (y/No).
So I see two TODOs here:

Find out why am I not getting the default user selection question
Give more consistent message to the users: are they to run kalite manage setup (as in debconf window), or only the kalite one (as per final Ubuntu Software Center window).

@radinamatic you never see the screen shown in #146 ?

Unfortunately not.

Grr, that Software Center should abide debconf, not sure why it doesn't.
What version of Ubuntu is this? 14.04? 14.10? 15.04?

Sorry, should have noted that at the beginning: 15.04 with all the latest updates.

@benjaoming I think I may have figured out something that can lead us out of the woods:
Could this have to do something with the fact that I did not actually choose to run on startup? The first screenshot above displays the checkbox as if I had, I apologize for that, but from the second it's clear that the choice was NOT to install system service.
I reinstalled yesterday with the the dpkg -i command, and if I remember correctly, the sequence was this:
didi@didi-Inspiron-3531:~/Desktop$ sudo dpkg -i ka-lite-bundle_0.15~b3-0ubuntu1_all.deb
Selecting previously unselected package ka-lite-bundle.
(Reading database ... 367131 files and directories currently installed.)
Preparing to unpack ka-lite-bundle_0.15~b3-0ubuntu1_all.deb ...
Unpacking ka-lite-bundle (0.15~b3-0ubuntu1) ...
Setting up ka-lite-bundle (0.15~b3-0ubuntu1) ...

Again, I chose not to run at strartup

...
Setting up ka-lite-bundle (0.15~b3-0ubuntu1) ...
Setting ownership to didi for assessment item database
Copying init.d script

Creating config file /etc/init.d/ka-lite with new version
didi@didi-Inspiron-3531:~/Desktop$ kalite manage setup
...

From the output above, one can conclude that in this case my own user was the designated owner, but I still did not get any screen like the one you linked in #146. So this difference might point to an debconf issue with Ubuntu Software Center, that makes the ka-lite as the default user/owner without asking permission from the user when they do not choose to run at startup. On the other hand dpkg -i command also does not ask for user's permission, but at least it sets up their own user as the owner, which is the sane default.
Then I re-read more carefully our docs on Linux installation, and rightfully, the second step said:

If you chose to start on boot in the previous step, you will be prompted to choose the owner for the KA Lite server process.

To test the proposition, I uninstalled and purged everything again, restarted the installation with Ubuntu Software Center, choose to run on startup, and low and behold, I finally got to see that screen:

Ok, so to draw some conclusion from all of this, I'd say that it's necessary to separate the two things (startup and default user selection), and offer the users option to choose the default owner weather they prefer to run on startup or not. This to me seems more respectful to users and gives them more control, and saves us dealing with this mess in the future. What do you think?

Thanks for investigating!
Just repeating this for the sake of ensuring it isn't a factor: To clear settings, you need to purge rather than remove which keeps the debconf from previous install.
I think the conclusion has to be that no matter if a user chooses to run the system service or not, she should still be asked about the contents of /etc/ka-lite/username
Just remember that no matter what we do during installation, this can always be changed in a comfortable UI afterwards, ka-lite-gtk :) I'd much rather that this works 100% and we start pushing that solution to extensively supplement the debconf.

Thanks for investigating!

Love the feeling of finding culprits! ;)

Just repeating this for the sake of ensuring it isn't a factor: To clear settings, you need to purge rather than remove which keeps the debconf from previous install.

I usually do both, first remove, then purge, talk about OCD...

I think the conclusion has to be that no matter if a user chooses to run the system service or not, she should still be asked about the contents of /etc/ka-lite/username

To run the system service means running KA LIte server at startup, in the background, right?

Just remember that no matter what we do during installation, this can always be changed in a comfortable UI afterwards, ka-lite-gtk :) I'd much rather that this works 100% and we start pushing that solution to extensively supplement the debconf.

Well, now that I have my own user didi as the default, everything seems to be running fine.

The only question I have left (for now) is the location of the assessment database which in my case (above) is /usr/share/kalite/assessment/khan/assessmentitems.sqlite. Should we include that in the list of files to purge prior to doing a new, completely clean install (on Trello, for our own testing purposes)?

The only question I have left (for now) is the location of the assessment database which in my case (above) is /usr/share/kalite/assessment/khan/assessmentitems.sqlite. Should we include that in the list of files to purge prior to doing a new, completely clean install (on Trello, for our own testing purposes)?

That location is populated during the installation of the deb, by the debian scripts. They are made sensitive to whether there is data in the location or not.
I have to ponder if upgrading the package will cause problems.  Because upgrading from 0.14.0 to 0.14.1 shouldn't re-download anything, while upgrading to 0.15 should force a new download.
Hm. Annoying. Assessment items just shouldn't be part of the software distribution :(

Assessment items just shouldn't be part of the software distribution :(

I don't know what is reasoning behind this location /usr/share/kalite/ for assessment items and their DB. Since that is, essentially, a type of content, and especially in the multichannel scenario, it makes total sense to me for it to be separated from the software itself.

I don't know what is reasoning behind this location /usr/share/kalite/ for assessment items and their DB.

Here's the thing: You include it in the software, and you have to install it somewhere. During installation on a multi-user system, you won't know which use to install it for. So it has to go in a system location.
Screenshot is for? Is it a very complicated way of showing ls -l /usr/share/kalite? ;)

During installation on a multi-user system, you won't know which use to install it for. So it has to go in a system location.

Ok, understood, but why do videos & subs deserve a place in the home folder (which means that you are picking one specific user on the multi-user system) and assessments do not? I'm not saying either way, I just do not get the difference...

Screenshot is for?

Nah, I'm a sucker for pics...

In your menu...
show
me:

    ALL
    LANDSCAPE
    People
    Sky
    Volcano
    Art
    HDR
    B&W
    Architecture
    Life

You should add "Screenshots of ka-lite-gtk" :D

Ok, understood, but why do videos & subs deserve a place in the home folder (which means that you are picking one specific user on the multi-user system) and assessments do not? I'm not saying either way, I just do not get the difference...

Because videos and subs are NEVER distributed in the app. If you download assessment items through kalite manage setup you will also have them placed in the home folder.
In case we were to distribute other contents with the debian pkg, it would also have to go in /usr/share/kalite as a system-wide concept.

If we count all the screenshots I made for KA Lite, GTK doesn't even get close to the first place. :stuck_out_tongue:

If you download assessment items through "kalite manage setup" you will also have them placed in the home folder.

Ha, tried that once, took three eternities, never again... Good to know that's how it's supposed to work.

In case we were to distribute other contents with the debian pkg, it would also have to go in /usr/share/kalite as a system-wide concept.

Ok, so to return to my previous question:assessment/khan/assessmentitems.sqlite. Should we include the  /usr/share/kalite/ in the list of things to purge prior to doing a new, completely clean install?

Ok, so to return to my previous question:assessment/khan/assessmentitems.sqlite. Should we include the /usr/share/kalite/ in the list of things to purge prior to doing a new, completely clean install?

No not IMO. Since all files distributed by ka-lite og ka-lite-bundle are managed by the packaging system, it will be removed when running apg-get remove or overwritten if upgrading a package.

Ok... :+1:

@radinamatic could you give a summary of what the issue here was?

When user installs KA Lite .deb through Ubuntu Software Center (UBS), and chooses NOT to run on startup (unchecks the box in the first screenshot above), UBS (or debconf or the installer?) creates the user ka-lite and makes it the default KA Lite user (set in /etc/ka-lite/ folder) without asking user's permission. If the users leaves the checkbox as-is, UBS does offer them the option to choose which user will be the owner of KA Lite.
When user installs with dpkg -i command and choose not to run on startup, they equally do not get asked the permission which user they want to be the owner, but at least that command sets up their own user (not the ka-lite one as UBS) as the owner.

Sorry, there's a lot of content here. But the title of the Issue was fixed in #146


Add possibility to query local node to load protocol parameters - transaction build

This PR adds possibility to query local node for protocol parameters for transaction build command. This is a first part of implementation for #5052.

Might be good to demonstrate the change does what is intended somehow.  For example in tests, or at least running the command manually and verifying results and pasting them in the PR.