Specifying a trailing-slash-less path with nginx alias feature results in path traversal error

Describe the bug
When specifying a path literal (ie. something that will be stored in the Nix store) for the services.nginx.virtualHosts.<name>.locations.<name>.alias option, the following kind of error will be produced on build:
Original issue description was wrong, see comments below.
==================== Results ===================

>> Problem: [alias_traversal] Path traversal via misconfigured alias.
Description: Using alias in a prefixed location that doesn't ends with directory separator could lead to path traversal vulnerability.
Additional info: https://github.com/yandex/gixy/blob/master/docs/en/plugins/aliastraversal.md
Pseudo config:

server {
        server_name haless.cryto.net;

        location /knex-mirror {
                alias /nix/store/8xzzvw74q5sp2nv347a138gjg3j4rh46-knex-mirror;
        }

        location /shadow {
                alias /nix/store/m00i6nkgnmf454h98dyxpmrvn8cvqsj6-shadow-generator;
        }
}

==================== Summary ===================
Total issues:
    Unspecified: 0
    Low: 0
    Medium: 2
    High: 0

To Reproduce
Steps to reproduce the behavior:
Have a config that looks something like this:
{
	services.nginx = {
		enable = true;
		virtualHosts = {
			"haless.cryto.net" ={
				locations."/shadow" = {
					alias = ./sources/shadow-generator;
				};
				locations."/knex-mirror" = {
					alias = ./sources/knex-mirror;
				};
			};
		};
	};
}

Expected behavior
Configuration should work, and automatically append a / if needed.
Screenshots
N/A
Additional context
N/A
Notify maintainers

@thoughtpolice @raskin @fpletz @globin
Metadata
N/A, this happens in a Morph deployment for Linux x86_64. Module and package originate from current 20.03 (95b9c99f6d09).
Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module: nginx

Hold on, I think I misinterpreted the error, and it will probably fail again later during the current rebuild. Will update this issue when I know more.

Right, so a correction: it was actually complaining about the URL paths themselves, ie. /shadow and /knex-mirror.
If we consider this invalid, perhaps the module should just auto-append / here? (Rather than for the alias option, like I suggested originally)

Paths without trailing slashes can be useful, they just shouldn't be used with alias — hence the warning. And I think you meant @7c6f434c, not @raskin :)

Paths without trailing slashes can be useful, they just shouldn't be used with alias

Hm, good point, I guess that it might introduce too much unpredictable complexity to auto-append slashes only if alias is in use. Suppose this can be closed then.

And I think you meant @7c6f434c, not @raskin :)

I copied the maintainer list from the nixpkgs expression, and prefixed each name with @. Isn't there a rule that maintainer identifiers in nixpkgs should match their GitHub usernames?

$ nix eval nixpkgs.lib.maintainers.raskin.github
"7c6f434c"

:)
I'll go ahead and close it then.

For people who come here searching for this error, if you want to alias a single file, you can do something like this:
    location = /assets/whatever.css {
        root /;
        try_files ${./myfile.css} ${./myfile.css};
    }

source


#2 - Adding tooltips to icons on the rules dashboard.

Coverage remained the same at 89.577% when pulling b314618d1a71b068c2322ad8504fbfd65467aedc on bug/2_tooltip_dashboard_buttons into 7ea9704f0c46f451769e8a9e129014d25c2143f6 on develop.

Closes #2


Rank-one updates to eigenvalue decompositions

Hi team,
First off, I absolutely love JAX. It's the core engine behind our startup.
It would be fantastic to have a rank-one update to an eigenvalue decomposition of a symmetric PSD matix $A$. I.e. when $A=LDL^\top$, we can compute $\tilde{L}\tilde{D}\tilde{L}^\top=\tilde{A}=A+\rho xx^\top$ in $\mathcal{O}(n^2)$, (rather than $\mathcal{O}(n^3)$ by running the eigenvalue decomposition again on $\tilde{A}$).
In principle this is very similar to a Cholesky rank-one update, which is implemented in jax._src.lax.linalg.cholesky_update, albeit without batching rule.
Motivating case
The rank-one update to eigenvalue decompositions comes up in several rolling matrix algorithms. My own personal use-case is covariance matrix shrinkage in an exponentially weighted setting:
\Sigma_{t+1}=\lambda\Sigma_t + (1-\lambda)x_tx_t^\top,

where I need to regularize the eigenvalues of each $\Sigma_t$. I do this for batched time-series where the matrices themselves are of moderate size (of dim 30x30 to 300x300). With a rank one update I could run a scan on the eigenvalue decomposition rather than the covariance matrix.
Required algorithms
The underlying algorithms this requires are available in scipy.linalg.cython_lapack as dlasd4 and slasd4 for CPU (which I think jaxlib references under the hood), and in MAGMA on GPU (https://github.com/kjbartel/magma/blob/master/src/dlaex3.cpp). The GPU implementation seems to just parallelize over lapack and blas calls.
Current implementation
My current CPU implementation is not batched or parallelized (literally loops over every single eigenvalue), and therefore rather slow (but still a lot faster than just running eigh on the recursion output). It is based on the some simple linear algebra (see https://math.stackexchange.com/questions/3052997/eigenvalues-of-a-rank-one-update-of-a-matrix):
# lasd4_all.pyx, for single-precision only for brevity

cimport cython
cimport numpy as cnp
from scipy.linalg.cython_lapack cimport dlasd4, slasd4

import numpy as np

DTYPE_SINGLE = np.float32
cnp.import_array()
ctypedef cnp.float32_t DTYPE_SINGLE_t

@cython.boundscheck(False)
@cython.wraparound(False)
def slasd4_all(
    cnp.ndarray[DTYPE_SINGLE_t, ndim=1] d,
    cnp.ndarray[DTYPE_SINGLE_t, ndim=1] z,
    float rho
):
    cdef:
        int n = d.shape[0]
        int i
        float sigma
        int info
        cnp.ndarray[DTYPE_SINGLE_t, ndim=1] work = np.zeros(n, dtype=DTYPE_SINGLE)
        cnp.ndarray[DTYPE_SINGLE_t, ndim=1] delta = np.zeros(n, dtype=DTYPE_SINGLE)
        cnp.ndarray[DTYPE_SINGLE_t, ndim=1] sigmas = np.zeros(n, dtype=DTYPE_SINGLE)

    for i in range(1, n + 1):
        slasd4(&n, &i, <float*>d.data, <float*>z.data, <float*>delta.data, &rho,
            &sigmas[i - 1], <float*>work.data, &info)

    return sigmas

and then wrapping in a callback:
from functools import partial

import jax
import jax.numpy as jnp
import numpy as np
from jax import Array
from jax.typing import ArrayLike

from my_package.lasd4_all import dlasd4_all, slasd4_all  # type: ignore

def _lasd4_all_host(d: Array, z: Array, rho: Array) -> Array:
    _d = np.asarray(d)
    _z = np.asarray(z)
    if d.dtype == np.float32:
        return slasd4_all(_d, _z, rho)
    elif d.dtype == np.float64:
        return dlasd4_all(_d, _z, rho)
    else:
        raise ValueError(f"Unsupported dtype {d.dtype}")

def _lasd4_all(d: Array, z: Array, rho: Array) -> Array:
    # https://docs.scipy.org/doc/scipy/reference/generated/scipy.linalg.lapack.slasd4.html
    dtype = jnp.promote_types(d.dtype, z.dtype)
    d = jnp.asarray(d, dtype=dtype)
    z = jnp.asarray(z, dtype=dtype)
    rho = jnp.asarray(rho, dtype=dtype)
    result_shape = jax.ShapeDtypeStruct(d.shape, dtype)
    return jax.pure_callback(
        _lasd4_all_host, result_shape, d, z, rho, vmap_method="sequential"
    )

def _eigh_rank_one_update(
    w: Array, v: Array, z: Array, rho: Array
) -> tuple[Array, Array]:
    # https://en.wikipedia.org/wiki/Bunch%E2%80%93Nielsen%E2%80%93Sorensen_formula
    # using VBV' = diag(w) + rho*(vz)(vz)'
    w_out = jnp.square(_lasd4_all(jnp.sqrt(w), z @ v, rho))
    Q = (z @ v) / (w - w_out[..., None])
    Q = Q / jnp.linalg.norm(Q, axis=1, keepdims=True)
    v_out = v @ Q.T
    return w_out, v_out

@partial(jnp.vectorize, signature="(n),(n,n),(n),()->(n),(n,n)")
def eigh_rank_one_update(
    w: ArrayLike, v: ArrayLike, z: ArrayLike, rho: ArrayLike
) -> tuple[Array, Array]:
    """Compute the eigenvalues and eigenvectors of a rank-one update of a symmetric
    matrix.

    Let A be a symmetric matrix with eigenvalues w and eigenvectors v, i.e.
    A = v @ jnp.diag(w) @ v.T. Let z be a vector and rho a scalar. This function
    computes the eigenvalues and eigenvectors of B = A + rho * z @ z.T.

    Parameters
    ----------
    w : ArrayLike
        The eigenvalues of A, of shape ``(..., n)``.
    v : ArrayLike
        The eigenvectors of A, of shape ``(..., n, n)``.
    z : ArrayLike
        The vector z, of shape ``(..., n)``.
    rho : ArrayLike
        The scalar rho, of shape ``(...)``.

    Returns
    -------
    tuple[Array, Array]
        The eigenvalues of shape ``(..., n)`` and eigenvectors of shape ``(..., n, n)``,
        of A + rho * z @ z.T.
    """
    w, v, z, rho = jnp.asarray(w), jnp.asarray(v), jnp.asarray(z), jnp.asarray(rho)
    norm = jnp.linalg.norm(z, axis=-1, keepdims=True)
    w_, v_ = _eigh_rank_one_update(w, v, z / norm, rho * jnp.square(norm.squeeze(-1)))
    skip = norm * rho < 1e-15
    w = jnp.where(skip, w, w_)
    v = jnp.where(skip[..., None], v, v_)
    return w, v

I would also be super happy with any guidance on how to make my current implementation go faster. As a non-computer scientist, I was not able to get a firm enough grip on C++/Cuda/XLA/JAX internals to implement this in a smarter/more parallel way myself, but if there is any way I can help with this feature, I would love to try.

The approach you're using here looks good to me!
One suggestion that might improve performance would be to push the batching logic into Cython. In other words, perhaps you could update slasd4_all (etc.) to support 2-D inputs and then have a nested for-loop in the body. Then you could use vmap_method='broadcast_all' instead of vmap_method='sequential'. This might help because the sequential method results in a separate Python call (with the associated overhead) for each element in the batch, instead of just a single "vectorized" Python call.
On the longer term, it's a reasonable feature request for JAX to support this operation out-of-the-box, but it would need a strong argument for the team to implement it at high priority. So, it would be useful to make sure that your current implementation works well enough for now!

Thanks Dan! I appreciate the tip, and I understand that this is a pretty niche matrix operation.

Hey all,
I just happened to be looking for this operation and found this discussion. Are you sure the complexity is quadratic? The linked discussion on math.stackexchange suggests that quadratic complexity is only possible for the eigenvalues, and the formula that I think you use for eigenvectors, given in "Rank-One Modification of the Symmetric Eigenproblem." by Bunch et al (https://eudml.org/doc/132565#content) is cubic in the dimension (or in the number of eigenvalues after deflation; per attached screenshot):

For my particular use case this result is suggesting that updates are not worth it (my matrix is low rank), so I am curious if I'm missing something.

You are absolutely correct. The O(n^2) statement I made was only about the eigenvalues. Regardless, the matrix multiplication to compute the eigenvalues afterwards is a lot faster (even if it runs in O(n^3)), and I believe it is quadratic in its memory usage (I am not sure about eigenvalue decomposition but I believe it is cubic).


ENH: stats: Improve behavior of genextreme.sf and genextreme.isf

Added the methods genextreme._sf and genextreme._isf to improve numerical
precision in the tails.

Some of the continuous stats functions use lazywhere instead of where, would that make sense for this function too?

@argriffing Yes, it would make sense.  Currently a spurious warning is generated when c is 0 (a preexisting condition, actually).  I thought about it just before creating the PR, but I ended up being too lazy to add the lazywheres.  I'll update the PR within the next day or so.

Updated to use _lazywhere in the new methods.
The other methods (_pdf, _cdf, etc) should also use _lazywhere, but I'm not going to have time to update all the existing methods.  I would be happy if someone took over this pull request and made those changes, or it could be done in a separate pull request.

Maybe add more test coverage? I changed x to 2*x in the degenerate branch and it still passed tests...
I think it's OK to leave other functions alone. They can be updated to use _lazywhere in a different PR.

Thanks @WarrenWeckesser!

@argriffing You're too fast!  You are right that I should have included some more tests--I am getting lazy!
I'll create a new pull request with another test or two.  I'd say "in the next day or so", but these days my time estimates often end up into the next higher unit of measurement (i.e. it becomes "in the next week or two").

Of course, I won't complain if you do it. 😄 (#6178)


Update CONTRIBUTING.md

Improving the contributing docs.

Codecov Report

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

@@           Coverage Diff           @@
##           master       #1   +/-   ##
=======================================
  Coverage   94.34%   94.34%
=======================================
  Files          24       24
  Lines        1361     1361
  Branches      188      188
=======================================
  Hits         1284     1284
  Misses         47       47
  Partials       30       30

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 85fabf1...7c454ac. Read the comment docs.


Self-host the bitmap of a Clumber Spaniel

The external link was broken. To prevent this from happening again, self-host the spaniel.

👍  That's a big image. Maybe run an optimizer on it?

BMPs are pretty huge, by default. I don't think they're optimizable.

I think having an image load slowly is on-brand and conveys our 90s #aesthetic, too.

Oh totally. Hopefully from the bottom to the top, rasterizing.
--
@adarshp http://www.twitter.com/adarshp
313.454.1515 (mobile)
On Sun, Aug 21, 2016 at 7:54 PM, Gabe Berke-Williams <
<EMAIL_ADDRESS>wrote:

I think having an image load slowly is on-brand and conveys our 90s
#aesthetic, too.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/gabebw/hotline-webring/pull/55#issuecomment-241304693,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA3xXXLd_EjsimLJ1pR4i1R3CzROvq5kks5qiQ90gaJpZM4Jpd4u
.

That bottom-to-top rendering is why I love bitmaps. It's like magic!


Possible bug when constructing constraint graph ?

In ConstraintSolving.cpp:
void buildConstraintGraph(ConstraintGraph &cGraph,
                          const std::vector<AndersConstraint> &constraints,
                          AndersNodeFactory &nodeFactory,
                          std::map<NodeIndex, AndersPtsSet> &ptsGraph) {
  for (auto const &c : constraints) {
    NodeIndex srcTgt = nodeFactory.getMergeTarget(c.getSrc());
    NodeIndex dstTgt = nodeFactory.getMergeTarget(c.getDest());
    switch (c.getType()) {
    ......
    case AndersConstraint::STORE: {
      cGraph.insertStoreEdge(dstTgt, srcTgt);
      break;
    }
    ......
    }
  }
}

When there's an AndersConstraint::STORE representing "*dst = src", we need an edge from src to dst,
right? I think the correct code should be:
cGraph.insertStoreEdge(srcTgt, dstTgt);

Thanks for the report!
Unfortunately, I haven't touched the code for years and almost forgot how it works. So I can't really recall immediately at this point why the edge is from dstTgt to srcTgt :(
One thing I know for sure is that the analysis was heavily tested before I released it. I think the chance of having the edge pointed in the wrong direction is going to be slim. That being said, I'll look into this when I have more leisure time.

I think the code is correct. It corresponds to the following code fragment in the same file:
for (auto const &dst : cNode->stores()) {
    NodeIndex tgtNode = nodeFactory.getMergeTarget(dst);
    if (constraintGraph.insertCopyEdge(tgtNode, vRep)) {
        // errs() << "\tInsert copy edge " << tgtNode << " -> " << v <<
        // "\n";
        nextWorkList->enqueue(tgtNode);
   }


CMD closes itself

It just closes itself. There is no log neither in Window's Appdata\Local\CrashDumps, Window's event log, nor in project's folder.
I'm having some strange problems with the Internet lately: Sometimes I'm receiving timeouts while trying to connect and it continues for like 10 seconds or so. But here's the thing: Sometimes, when I get these connection timeout errors while trying to surf the net in the background, syncwatch still works. It crashes very rarely.
I'm not sure how timeouts would affect syncwatch tho, cause it probably can work even without the Internet, I didn't read the code tho. It's not the common out-of-ram error either, since I'm having pagefile and RAM usage not close to its limit
Not sure what version I'm using ATM, I've downloaded it on April 19th, but it looks like there were no updates since then so I'm assuming it's the last one

Also, after the re-launch of the server, it needs browser extension to be restarted, cause it can't connect to the IP. Not sure what it was saying, probably stucks at something like "Connecting...". Not a big deal, but still, I'm sure it can be fixed by setting a simple timelimit of connection try or something

It just closes itself. There is no log neither in Window's Appdata\Local\CrashDumps, Window's event log, nor in project's folder.

Added logging errors to file

I'm having some strange problems with the Internet lately: Sometimes I'm receiving timeouts while trying to connect and it continues for like 10 seconds or so. But here's the thing: Sometimes, when I get these connection timeout errors while trying to surf the net in the background, syncwatch still works. It crashes very rarely.

There is a "waking-up server" function in server code that is making HTTP requests to the server itself. The syncevent.herokuapp.com URL is hardcoded, so when it can't make a request the server falls down with exception. I changed it to run only in the Heroku environment.

@easymoney322 does it help you?

The connection itself got more stable, so I guess needs more time to see if it fixes the problem or not.
I will try to lower the quality of the connection just to check if it works, but it will take few more days.
However, since the new version, sometimes, when I launch the server, it looks like it doesn't start.  I think it might be also related to the problem I've had before. It doesn't output "Listening on ..." in cmd as well. The "Error.log" file is empty.
It's not a big deal, since It takes exactly 1 second to re-launch it, but it's a bit annoying.

I've improved handling errors.

However, since the new version, sometimes, when I launch the server, it looks like it doesn't start. I think it might be also related to the problem I've had before. It doesn't output "Listening on ..." in cmd as well. The "Error.log" file is empty.
It's not a big deal, since It takes exactly 1 second to re-launch it, but it's a bit annoying.

Maybe port already in use? Server using 8080 by default.

Maybe port already in use? Server using 8080 by default.

I'm using 7777 port. It's very unlikely something running on it. Just had it and it took ~30 seconds before I've got "Listening on" message.  It's not a problem tho, since it just takes some extra time and everything works fine after.
So far no problems

Everything works just fine.
Even multiple lag-spikes with a latency of 42100 ms haven't caused any problems.
I think that the issue is solved.


Add new style ToC.

Changed 📝

Removed the old collapsable ToC, and replaced it with a new ToC that covers all headers up to h4 (except for the first one which is the name of repo).
Renamed Object Oriented Design & Analysis header to Object-Oriented Programming.

Great, Thank you dear @IHosseini083


SecureRandom: use getrandom (linux) and /dev/urandom

The implementation follows libsodium's sysrandom implementation, but limited to getrandom(2) (linux) and /dev/urandom since we don't support the other platforms yet (Windows, OpenBSD) and the arc4random functions don't seem safe on FreeBSD (?).
closes #2792

It seems that the CI build fail because crystal tool format changes src/secure_random.cr but running it locally doesn't change anything?

Bet that's https://github.com/crystal-lang/crystal/commit/104c9b95d31398e5d7bd9a26a7da631dddc3fd51 Time to rebase! ;)

Rebased to use the flag? macro.

Green :)

Before merging this please let @waj take a look at this. Thanks!

@waj bump. I'd love to have this in 0.19 :-)

I reviewed this and it looks good (plus travis passes). Let's merge. Thank you!

Woot!


Allow setting seccomp profile type (e.g. RuntimeDefault) for waypoints

Please provide a description of this PR:
We already allow setting  seccompProfile.type: RuntimeDefault for ~several other things (sidecars, etc). Since waypoints can go in app namespaces, and app namespaces can be Restricted, and our Waypoints meet all the requirements for that except defining a seccompProfile type, allow defining a seccompProfile type for waypoints as well.
This is not important for security, as our waypoints are already running at-or-below the requirements for Restricted namespaces, but to satisfy K8S standards/lints (which do not allow an unset value in Restricted contexts): https://kubernetes.io/docs/concepts/security/pod-security-standards/#restricted
Because waypoints currently use the sidecar injector for templating, it requires a bit of hacking. I put this under the gateway values path, since that seems like the best? option for the time being.

@bleggett: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

release-notes_istio
4901a1be5be0c9df4448f80b00cd8a1a54ea855e
link
true
/test release-notes

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

@bleggett: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test integ-basic-arm64

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

@bleggett: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test integ-basic-arm64

gencheck_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test gencheck

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

@bleggett: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-basic-arm64_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test integ-basic-arm64

gencheck_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test gencheck

unit-tests_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test unit-tests

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

@bleggett: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

gencheck_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test gencheck

unit-tests_istio
b9a5f2169b9d2c949f203c8b9dcaf42356492df2
link
true
/test unit-tests

integ-basic-arm64_istio
e978040cbc439cbf7c69739baab6fd2df5e9ce9d
link
true
/test integ-basic-arm64

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

/retest


SSL Certificate Authentication

Hi,
Is it possible to use an SSL client certificate for authentication in Kanboard instead of username/password?
Other web applications like MediaWiki and Wordpress support it through plugins.
Basically one has to use the environment variables SSL_CLIENT_S_DN_Email and SSL_CLIENT_S_DN_CN for username and execute a login without requiring the password, when SSL is enabled.
Best Regards,
v_bachvarov

Actually it's not implemented, but that should not be very hard to add.
The ReverseProxy authentication is similar to that. https://github.com/fguillot/kanboard/blob/master/app/Auth/ReverseProxy.php

Actually it's something like below, but how to incorporate that into a plugin;

The below worked to capture the<EMAIL_ADDRESS>and using USER wrt to existing username in kanboard.
Kanboard 24 was patched using the below with a reverse proxy (doing the SSL-stuff) having
                RequestHeader set X-Authenticated-User "%{SSL_CLIENT_S_DN}s" set
And the appropriate reverse-proxy in the config.php

--- kb.old/app/Core/Http/Request.php    2016-01-07 23:32:21.000000000 +0100
+++ kb/app/Core/Http/Request.php        2016-01-09 17:18:50.000000000 +0100
@@ -214,5 +235,10 @@
      */
     public function getRemoteUser()
     {
+
+       if ( isset($this->server[REVERSE_PROXY_USER_HEADER]) )
+       {
+               $this->server[REVERSE_PROXY_USER_HEADER]=preg_replace("/^CN=(.*)\.example\.org,OU=.*$/","$1",$this->server[REVERSE_PROXY_USER_HEADER]);
+       }

My 2 cts ...

I made a plugin for SSL Client certificate authentication: https://github.com/kanboard/plugin-client-certificate
Don't hesitate to improve this plugin.
Thanks

Thank you fguillot. I will try it out.
Great response time, by the way.
^^

Tested it. It works perfectly.
I added a small patch - making the username "strtolower", because in my certificate the username is capitalized, but otherwise - tip top!


Fix: Image shrinks while loading in carousel

Details

This PR hides the image while it's still loading and only shows the loading indicator then, to avoid the issue that image shrinks to default size (200x200) on native devices since its size is not known yet.
Fixed Issues

$ https://github.com/Expensify/App/issues/35615
PROPOSAL: https://github.com/Expensify/App/issues/35615#issuecomment-1922853744
Tests

Send many images to a report (about 5)
Press an image
Quickly press the arrows to navigate between those images in carousel
Verify that while image is still loading, we only shows the loading indicator

[x] Verify that no errors appear in the JS console

Offline tests

NA
QA Steps

Send many images to a report (about 5)
Press an image
Quickly press the arrows to navigate between those images in carousel
Verify that while image is still loading, we only shows the loading indicator

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/113963320/d67ab7cb-bcdf-4fd7-970a-480225ab1272

Android: mWeb Chrome

https://github.com/Expensify/App/assets/113963320/95bbc283-7219-4f20-af1e-26eb2ee58f8f

iOS: Native

https://github.com/Expensify/App/assets/113963320/1a6b1a93-6acb-44d4-800a-d569149521e4

iOS: mWeb Safari

https://github.com/Expensify/App/assets/113963320/fa3fa364-9318-4bc4-be7c-c74ab1857682

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/113963320/8dd4f0a3-5e1f-4ff1-a372-58d7b27e69a0

MacOS: Desktop

https://github.com/Expensify/App/assets/113963320/8dd4f0a3-5e1f-4ff1-a372-58d7b27e69a0

@tienifr I am see loader shown for a moment even after the image is shown, even in your android video I am seeing the same.
could you kindly check on this?

Reviewing now

Hi, I will work on this today

Sorry for the delay. I am reviewing now.

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/46707890/d8ef866b-8626-4cc0-8a71-f0e7f5611f51

Android: mWeb Chrome

https://github.com/Expensify/App/assets/46707890/3c90dfd1-3038-48f0-b1ec-5a7c0de436ce

iOS: Native

https://github.com/Expensify/App/assets/46707890/353eb6a3-8076-42c1-9a32-2dc9670f0d17

iOS: mWeb Safari

https://github.com/Expensify/App/assets/46707890/60cf0c2a-5166-401c-8648-65a846fe259c

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/46707890/50aa9462-7552-47ca-b250-ffc9d6ef8c50

MacOS: Desktop

https://github.com/Expensify/App/assets/46707890/15b0d2b7-22f7-4732-b84f-e88c2c7e9531

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/iwiznia in version: 1.4.55-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
failure ❌

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/iwiznia in version: 1.4.55-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/AndrewGable in version: 1.4.55-3 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅


The app doesn't  show the StatusBar when I use Android native to depand on the flutter module

When I run the flutter application,the StatusBar  is ok,pls see the follow image

but when I use android native project with the flutter module,the app doesn't show the StatusBar  ,pls see the follow image

This is the detail for flutter doctor  -v
[√] Flutter (Channel stable, v1.12.13+hotfix.5, on Microsoft Windows [Version 10.0.17763.1217], locale zh-CN)
• Flutter version 1.12.13+hotfix.5 at D:\develop_soft\flutter_windows_v1.12.13+hotfix.5-stable\flutter
• Framework revision 27321ebbad (5 months ago), 2019-12-10 18:15:01 -0800
• Engine revision 2994f7e1e6
• Dart version 2.7.0
[√] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at C:\Users\86135\AppData\Local\Android\sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.2
• Java binary at: D:\develop_soft\Android\android-studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.
[√] Android Studio (version 3.6)
• Android Studio at D:\develop_soft\Android\android-studio
• Flutter plugin version 45.1.1
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] Connected device (1 available)
• M2 E • 741AECQS2J5HH • android-arm64 • Android 6.0.1 (API 23)

you can use SafeArea() for this

Hi @cdscw
Please upgrade to latest stable
flutter channel stable
flutter upgrade
flutter doctor
and try the flutter module app gain
Please your styles.xml, Main Activity and Manifest.xml
Also please try to reproduce flutter module safe area using emulator and  this issue could be device specific, try another device too
Thank you

you can use SafeArea() for this

I has added SafeArea,but it doesn't work.

Hi @cdscw
Please upgrade to latest stable
flutter channel stable
flutter upgrade
flutter doctor
and try the flutter module app gain
Please your styles.xml, Main Activity and Manifest.xml
Also please try to reproduce flutter module safe area using emulator and this issue could be device specific, try another device too
Thank you

I  has tried with emulator  and added saferea, but the problem is still here, and I can't upgrade the flutter sdk version for some reason. Is there any other solution?  Thanks.
This is the code of  MainActivity
`public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    findViewById(R.id.test).setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent= FlutterActivity.withNewEngine().build(MainActivity.this);
            intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
            //设置透明度
            intent.putExtra("background_mode","transparent");
            MainActivity.this.startActivity(intent);
        }
    });
}

}`
This is  the style.

this is the Manifest.xml

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name="io.flutter.embedding.android.FlutterActivity"
        android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
        android:hardwareAccelerated="true"
        android:theme="@style/MyTheme" />
</application>

Hi @cdscw
You need to upgrade and confirm the issue exist on latest stable otherwise we cannot help with the issue
Thank you

Hi @cdscw
You need to upgrade and confirm the issue exist on latest stable otherwise we cannot help with the issue
Thank you

Ok ,I will try to upgrade to lastest stable.

Hi @cdscw
You need to upgrade and confirm the issue exist on latest stable otherwise we cannot help with the issue
Thank you

Ok ,I will try to upgrade to lastest stable.

Hi @cdscw
You need to upgrade and confirm the issue exist on latest stable otherwise we cannot help with the issue
Thank you
I  has upgraded to the lastest stable version,but when I launch flutter view, the application is crashing. pls check the follow logs. Thanks.

java.lang.RuntimeException: Unable to start activity ComponentInfo{cn.com.pateo.dfpv.flutter.myapplication/io.flutter.embedding.android.FlutterActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'void io.flutter.embedding.engine.renderer.RenderSurface.attachToRenderer(io.flutter.embedding.engine.renderer.FlutterRenderer)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2717)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2783)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1590)
at android.os.Handler.dispatchMessage(Handler.java:111)
at android.os.Looper.loop(Looper.java:191)
at android.app.ActivityThread.main(ActivityThread.java:5960)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:960)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:821)

this is the code which I lanuch the flutter view
 findViewById(R.id.test).setOnClickListener(new View.OnClickListener() {             @Override             public void onClick(View v) {                 Intent intent= FlutterActivity.withNewEngine().build(MainActivity.this);                 intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                 //设置透明度                 intent.putExtra("background_mode","transparent");                 MainActivity.this.startActivity(intent);             }         });

Hi @cdscw
I just created sample repo  based on your code includes app and module, it works fine on emulator and real device
Please try it  with module and also from the app
Module was created using latest  Fluter  dev channel

flutter doctor -v
[✓] Flutter (Channel dev, 1.19.0-1.0.pre, on Linux, locale en_US.UTF-8)
    • Flutter version 1.19.0-1.0.pre at /home/tesser/Code/flutter_dev
    • Framework revision 456d80b9dd (9 days ago), 2020-05-11 11:45:03 -0400
    • Engine revision d96f962ca2
    • Dart version 2.9.0 (build 2.9.0-7.0.dev 092ed38a87)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /home/tesser/Code/SDK
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = /home/tesser/Code/SDK
    • Java binary at: /home/tesser/Code/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at google-chrome

[✓] Android Studio (version 3.6)
    • Android Studio at /home/tesser/Code/android-studio
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.8052
    • Java version OpenJDK Runtime Environment (build
      1.8.0_212-release-1586-b4-5784211)

[✓] VS Code (version 1.45.1)
    • VS Code at /usr/share/code
    • Flutter extension version 3.10.2

[✓] Connected device (3 available)
    • SM M305F   • 32003c30dc19668f • android-arm64  • Android 10 (API 29)
    • Web Server • web-server       • web-javascript • Flutter Tools
    • Chrome     • chrome           • web-javascript • Google Chrome
      83.0.4103.61

• No issues found!

flutter doctor -v

Hi @TahaTesser
I  has tried with your demo,when I launch the flutter view,it still crash. I will try with  latest Fluter dev channel.
[√] Flutter (Channel stable, v1.17.1, on Microsoft Windows [Version 10.0.17763.1217], locale zh-CN)
• Flutter version 1.17.1 at D:\develop_soft\flutter_windows_v1.12.13+hotfix.5-stable\flutter
• Framework revision f7a6a7906b (8 days ago), 2020-05-12 18:39:00 -0700
• Engine revision 6bc433c6b6
• Dart version 2.8.2
[√] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at C:\Users\86135\AppData\Local\Android\sdk
• Platform android-29, build-tools 29.0.2
• Java binary at: D:\develop_soft\Android\android-studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
• All Android licenses accepted.
[√] Android Studio (version 3.6)
• Android Studio at D:\develop_soft\Android\android-studio
• Flutter plugin version 45.1.1
• Dart plugin version 192.7761
• Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
[√] Connected device (1 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 8.0.0 (API 26) (emulator)
• No issues found!


Can't enable Bepinex, "Bepinex updater" doesn't work

When setting BEPINEX=true server startup fails
supervisord: valheim-updater DEBUG - [38] - BepInEx is enabled - running updater
supervisord: valheim-updater curl: (22) The requested URL returned error: 404
supervisord: valheim-updater FATAL - Error: could not retrieve BepInEx release info from Thunderstore.io API
supervisord: valheim-updater ERROR - Failed to run BepInEx updater - retrying later - check your networking and volume access permissions

After some investigating, it turns out this is because it calls https://valheim.thunderstore.io/api/experimental/package/denikson/BepInExPack_Valheim/ which doesn't work anymore, https://thunderstore.io/api/experimental/package/denikson/BepInExPack_Valheim/ works (just removing the valheim subdomain)
I'll try making this change locally and I'll submit a PR if it fixes the issue.

Yeah that did it, the server runs fine now.
I submitted a PR at #666
Huge thanks for your great work with this image btw :)

Thanks for the solution.

For a temporary fix until Pull Request #666 is merged:
https://github.com/lloesche/valheim-server-docker/pull/666#issuecomment-2028473407

Thanks everyone .... that was a bit of a headache until I found this !!

Here is a guide to update your running system on an older (not working image):

go into your docker container with docker exec -it <server-name> bash

edit /usr/local/bin/bepinex-updater, (this is not a binary)

change the updater endpoint. Currently you just need to remove the valheim. part of the URL, as you can see in #666


Tapping pagination dots greater than 10 (just after loading) only scrolls to index 10

We encountered this problem when our list had 13 slides, and tapping dots 11, 12, or 13 only scrolled to slide 10, when tapping for the first time from the first few indices.
The reason is that FlatList was only loading 10 slides to start, so the slides above 10 had not been loaded yet, but the pagination dots still attempt to scroll to them.
Our solution was to pass this option through to the FlatList:
initialNumToRender={slides.length}
I think that this is a bug in this component, because since the pagination dots exist and are tappable, it it a bug that they do not scroll to the tapped slide. Also, we do not have a skip button, so the user will always go through all of the slides, so the "number to render" optimization is mute without a skip button.

Good point. Closed by 2f790cca8efd76dad0958c8e959230a945501bab


Default proxyDir path is wrong for running in the container

in beta.28 it is set to ${stroom.temp}/proxy
It should be /stroom/proxy-repo

fixed in beta.29


[MNT] remove scikit-learn as a dependency

This PR removes scikit-learn as a dependency, including the remaining loci of coupling.

in BaseObject, scikit-learn was still used in clone. This has been replaced with a constructor call, and checks that the tests expect. A config has been added that allows to skip these checks.
in various tests, scikit-learn clone was still imported, this is useful for checking compatibility. Here, the imports have been isolated inside the tests, so the import is executed only in CI when the dev dependency set is installed. In a case where not, the tests are not executed.
BaseObject was still inheriting from sklearn BaseEstimator,  but this should be unnecessary as all has been overridden now. This was removed, and tests for MRO adjusted.
joblib has been imported in the tests, in a check for parameter validity. Now, joblib is imported, and the check executed only if joblib is present in the environment.

Codecov Report

Merging #171 (2ccc9df) into main (8da2ce5) will decrease coverage by 0.16%.
The diff coverage is 77.27%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main     #171      +/-   ##
==========================================
- Coverage   82.62%   82.46%   -0.16%
==========================================
  Files          39       39
  Lines        2762     2777      +15
==========================================
+ Hits         2282     2290       +8
- Misses        480      487       +7

Impacted Files
Coverage Δ

skbase/testing/test_all_objects.py
77.22% <62.50%> (-1.77%)
:arrow_down:

skbase/base/_base.py
80.06% <85.71%> (-0.01%)
:arrow_down:

... and 1 file with indirect coverage changes


Updated impulse function

Impulse array size was previously hardcoded to 10. Fixed it to num_impulses which is passed as parameter.

cloned now. don't need to pull.


Return Promises for Diagnostics

Need this because we're spawning asyn processes which may not return immediately
Hopefully this helps the unit testing as well

Added in commit 85ea4284f6eba09cc5613e5448e39250f14f7373


Folder structure

Here is schematic example of folder structure for these kinds of projects (note that I took a few of the filenames from the actual code, to help you understand what goes where):
bonestagram/
├── bin
│   └── index.js
├── example
│   ├── app.js
│   ├── index.html
│   └── styles
│       └── style.css
├── license.md
├── package.json
├── readme.md
└── src
    ├── bonestagram.js
    └── lib
        ├── component.js
        └── require.js

Notice that the 'bonestagram/' folder in this case would be the root of the repository.
In the app.js of the example, you would require bonestagram like: /../src/bonestagram.js the .. notation means that you are going one folder back.

Hit me up if anything is unclear!

Hi @sacdallago !
I was just using the generator tool from Biojs (http://edu.biojs.net/101/bootstrapping/) to create the directory structure. It gave me this, which is quite similar to your schematic:

It doesn't have a ./src folder. would it be okay if I just create one and put my raw source over there?
Also, the guide recommends to use a BioJS standard name for the package (in our case, biojs-vis-bonestagram). The generator assumes the github to be the same name too, so I pushed the whole folder up here at https://github.com/fayeli/biojs-vis-bonestagram
I'm a bit confused on how to format our bundled code ./bin/bonestagram.bundle.js for the ./lib/index.js over there.
Would you mind taking a look at it?

Hi @fayeli
Good work! They really have started putting some more effort in standardizing biojs packages. The folder structure is pretty standard, so I am not surprised that it is similar :) It is very much ok for you to have the src folder, it is actually needed to understand the code!
You can also rename a repository on github, and I would actually prefer if you did that (just go into the settings of the repo). So: delete the one that you just created and rename this one to the approved name biojs-vis-bonestagram. I say so, because this repo has issues and commits associated, and while you could theoretically clone the git history, you cannot do so for the issues history!
I will take a look at the bundle problem later today :)

P.S.: if the code on https://github.com/fayeli/biojs-vis-bonestagram is already in it's pre-final stage and more recent than the code in the bonestagram repo, then just delete all of the contents in the bonestagram repo (except the .git hidden folder) and replace it with the contents of the biojs-vis-bonestagram folder (except .git folder). It's a little hack :) But it will do the job!


Security Updates

latest minor or patch versions where possible
upgrade electron to v26
also fix prettier for JSON files after PR #397

Note: Since electron was upgraded, you may have to delete node_modules/electron before running npm i.

This change is

.prettierrc.js line 7 at r1 (raw file):
Previously, tjcouch-sil (TJ Couch) wrote…
I think we need a PR for the extension template as well now, right? :)

Probably not since it doesn't define a separate parser for JSON on commit hook, but I made one anyway to keep things consistent with Core.


[docs] Document deprecated functions from #20142 in the maintainer guide.

See discussion at https://github.com/microsoft/vcpkg/pull/20142#issuecomment-921146572

Would you kindly also update vcpkg-tool? It suggests to use deprecated vcpkg_fixup_cmake_targets
https://github.com/microsoft/vcpkg-tool/blob/733e90d1bc3f4f8188d57d73e2d20765c232cc26/src/vcpkg/postbuildlint.cpp#L265

Would you kindly also update vcpkg-tool? It suggests to use deprecated vcpkg_fixup_cmake_targets
https://github.com/microsoft/vcpkg-tool/blob/733e90d1bc3f4f8188d57d73e2d20765c232cc26/src/vcpkg/postbuildlint.cpp#L265

Done: https://github.com/microsoft/vcpkg-tool/pull/198


Modrefs refSpec: storage in tables AND typed variable binding

Issue description
When storing a modref into a typed variable or a table, the interfaces (refSpec) list should be "sanitized".
I mean: redact unused interfaces, and reorder them following the target type specification.
As always, the better is to provide an example:
Steps to reproduce
; Two simple interfaces
(interface genius
  (defconst SOMETHING:bool true)
)

(interface girl
  (defconst SOMETHING:bool true)
)

; Let's create a genius repository
; Allows to store and get geniuses.
(module genius-collection G
  (defcap G () true)

  (defschema entry
    person:module{genius}
  )
  (deftable tbl:{entry})

  (defun add:string (name:string x:module{genius})
    (insert tbl name {'person:x}))

  (defun get:module{genius} (name:string)
    (with-read tbl name {'person:=x}
      x))
)
(create-table tbl)

; Let's create Emily
(module emily G
  (implements genius)
  (implements girl)
  (defcap G () true)
)
(genius-collection.add "Emily-A" emily)
(genius-collection.add "Emily-B" emily)

; Sanity check => OK
(expect "Both Emily modrefs are the same" true (= (genius-collection.get "Emily-A")
                                                  (genius-collection.get "Emily-B")))

; Redeploy Emily but reverse interfaces
(module emily G
  (implements girl)
  (implements genius)
  (defcap G () true)
)
(genius-collection.add "Emily-C" emily)

; !!! THIS DOESN'T WORK BUT SHOULD !!!!
(expect "Both Emily modrefs are the same" true (= (genius-collection.get "Emily-A")
                                                  (genius-collection.get "Emily-C")))

; Redeploy Emily but forget the girl property
(module emily G
  (implements genius)
  (defcap G () true)
)
(genius-collection.add "Emily-NOT-GIRL" emily)

; !!! THIS DOESN'T WORK BUT SHOULD =>  from a genius point of view: modrefs are still the same
(expect "Both Emily modrefs are the same" true (= (genius-collection.get "Emily-A")
                                                  (genius-collection.get "Emily-NOT-GIRL")))

; Redeploy Emily and restore the girl property
(module emily G
  (implements girl)
  (implements genius)
  (defcap G () true)
)

; Try another example with "let" variables typing
(let ((emily-genius-first:module{genius, girl} emily)
      (emily-girl-first:module{girl, genius} emily)
      (emily-genius-only:module{genius} emily)
      (emily-girl-only:module{girl} emily))

    ; !!! THIS DOESN'T WORK ....  THIS DOESN'T WORK ....  THIS DOESN'T WORK .... THEY ARE EQUAL BUT SHOULDN'T BE => DIFFERENT TYPES
    (expect "Modrefs types differ => Should be different" false (= emily-girl-only emily-genius-only))
)

I mean: redact unused interfaces, and reorder them following the target type specification.

I actually disagree and it doesn't make sense to redact unused interfaces for that reason. If we treat the list of interfaces as a set rather than a list, your entire bug goes away.
In short: this is an implementation bug, I'll look into to address it going forward.

On another note, I'm going to go ahead and close this issue. Please re-file it without the references to Emily, this is not appropriate.
I do not want a precedent for this in pact. Emily is a great coworker and very smart, but I'm sure you can express your semantic issue without the genius, girl and emily. I'm not closing discourse, we can still talk about this, but refrain from these sort of things in the future when filing issues.

Definitively, I'm so sorry if I offended somebody.
As Emily is already present in many places in the code. I wanted to do a little humor.
And I thought that associating emily girl and genius would be seen as kind.  Didn't want to offend or insult, just wanted to have more relaxed atmosphere.
I'm going to refill and change the examples.


how to play google drive mp3 file

I'm using this library to play audio but the problem is the client is uploading google drive link and its not playing so it is possible to play.?

Yes. But the link must be public to work properly I think.

the link is proper and back-end team send properly but the problem is the end time is not showing and forward is also not working.What will be the solution.??

this is the link of  that play audio without end time
https://docs.google.com/uc?export=download&id=1UZDHvWjLki4NKUyPqRGwcArGbTM86lKa

this is the link of that play audio without end time
https://docs.google.com/uc?export=download&id=1UZDHvWjLki4NKUyPqRGwcArGbTM86lKa

Hey There, this is a good Question, even I'm still wondering why this happens.
The url is public and I'm getting the same problem while playing.
@MustafaAndroid  Why not try to upload the file on a different server and see, let us know what you find.
Thanks

@MustafaAndroid @jeancsanchez
Hey guys I took the file that did prevented the seekbar from moving and imported to Audacity.
Then I downloaded lame mp3 dll to help me export the file to mp3.
So I exported the mp3 with default values and added some meta data when asked( Title,  artist,) and then uploaded the exported file.
And now I played the song and I can move the seekbar.
Hey @MustafaAndroid can you try it out also and see if it works.
Could be because of the codecs....

@peace-shillong  can you show the snippet how you play it dynamically..???

@MustafaAndroid I'm using the default source code to play songs.
Are you using Kotlin or the Java code?

For code snippet on how to play the audio from url
Check out the MainActivity from the project file
https://github.com/jeancsanchez/JcPlayer/tree/master_v2/sample/src/main/java/com/example/jean/jcplayersample

java

For java check the MainActivity from here
https://github.com/jeancsanchez/JcPlayer/tree/master_v1/sample/src/main/java/com
Ok. I will send you the process to export the file as mp3 ( using lame.dll) in audacity

First Install audacity (a1)

2. DOWNLOAD THE DLL FILE FROM HERE (32/64 bit)
http://www.dlldownloader.com/lame_enc-dll/

Open  Audacity and lets change the Preferences

Click on Libraries and click Locate , you will now need to browse and select the dll file which you downloaded (make sure you extract the zip file). Once you have selected the dll click ok

Open your file in Audacity and Click File->Export Audio.
You will then have to enter the file name and you can enter the meta data as seen in the picture and click OK.

Your file will be export to mp3 using audacity.
Note: I've skip plenty of steps in between, but they are very easy to do. I hope this is good enough to get you started.

@peace-shillong  thanks bro but I'm little bit confusing about lame that if we convert into Audacity but the file is from backend which I'm playing in jcplayer so how it is possible ..??

After you have exported the file, you will need to upload the exported file to drive just like what you did previously and then use the download url to play the file.
This is getting a bit long, you can just send me an email and I will help you out.

jcAudios.add(JcAudio.createFromURL("url audio","https://docs.google.com/uc?export=download&id=1UZDHvWjLki4NKUyPqRGwcArGbTM86lKa"));
This is the line 35 from MainAcitivity in Java.
Use this to add the file to the list, and it will be playable

@jeancsanchez @MustafaAndroid I've found the reason for all this.
Please check the image, I exported the audio with those options and my audio plays nicely without any problem when seeking: @jeancsanchez if you don't understand let me know.

@jeancsanchez We need to look into the player nicely as to why other sample rates are not supported.
@MustafaAndroid If you want to play the song in the player please get The Share+ (Sharable Link) and get the direct download link of the file. Then use the direct download link as the link to the file for playing. follow this site to get the direct download link https://sites.google.com/site/gdocs2direct/
@MustafaAndroid @jeancsanchez this should fix and closes #91
Summary:  What I found

Songs with the above Specifications[see image] (Export Settings) plays smoothly in the player.
How to play songs from Google Drive:
Steps on how to play song from google drive
2.a Upload Song to Drive
2.b Get the Share+ Link of the file
2.c goto  https://sites.google.com/site/gdocs2direct/ and get the direct download link
2.d use the direct download link as the link to play the file from.

@peace-shillong Thank you so much for this. I think this issue can be closed. What we need now is to discover why MediaPlayer class (because JcPlayer uses it to play the songs) doesn't support other rates.


Update README.md to fix examples

Adding missing double quotes to routePrefix in README examples.

Current coverage is 90.10% (diff: 100%)

Merging #122 into master will not change coverage

@@             master       #122   diff @@
==========================================
  Files             7          7
  Lines           586        586
  Methods          45         45
  Messages          0          0
  Branches          0          0
==========================================
  Hits            528        528
  Misses           58         58
  Partials          0          0

Powered by Codecov. Last update c1a50b5...91b15fc

Thank you!


27 SEP 2024 - Trader X Meeting Minutes

Date
2024-09-27 - 8am ET
Untracked attendees

Fullname, Affiliation, (optional) GitHub username
...

Meeting notices

FINOS Project leads are responsible for observing the FINOS guidelines for running project meetings. Project maintainers can find additional resources in the FINOS Maintainers Cheatsheet.

All participants in FINOS project meetings are subject to the LF Antitrust Policy, the FINOS Community Code of Conduct and all other FINOS policies.

FINOS meetings involve participation by industry competitors, and it is the intention of FINOS and the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws. Please contact<EMAIL_ADDRESS>with any questions.

FINOS project meetings may be recorded for use solely by the FINOS team for administration purposes. In very limited instances, and with explicit approval, recordings may be made more widely available.

Agenda

[ ] Convene & roll call (5mins)
[ ] Display FINOS Antitrust Policy summary slide
[ ] Review Meeting Notices (see above)
[ ] Approve past meeting minutes
[ ] OSFF
[ ] Tech Sprint
[ ] Merging
[ ] AOB, Q&A & Adjourn (5mins)

Decisions Made

[ ] Decision 1
[ ] Decision 2
[ ] ...

Action Items

[ ] Action 1
[ ] Action 2
[ ] ...

Zoom info
https://zoom.us/j/96264933811
Meeting ID: 962 6493 3811
Passcode: 532953
Find your local number: https://zoom.us/u/aHHeTieyi

Jeremy Taylor / JUXT

Karl Moll / FINOS

Karen Base, Janet Fernando / Smoothstack


nothing works !

this is what's written in the  dnscrypt-proxy.toml file
# Empty listen_addresses to use systemd socket activation
listen_addresses = []
server_names = ['google']

[query_log]
  file = '/var/log/dnscrypt-proxy/query.log'

[nx_log]
  file = '/var/log/dnscrypt-proxy/nx.log'

[sources]
  [sources.'public-resolvers']
  url = 'https://download.dnscrypt.info/resolvers-list/v2/public-resolvers.md'
  cache_file = '/var/cache/dnscrypt-proxy/public-resolvers.md'
  minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
  refresh_delay = 72
  prefix = ''

and here are the command lines
joseph@joseph-X541UJ:~$ sudo systemctl status dnscrypt-proxy
● dnscrypt-proxy.service - DNSCrypt client proxy
   Loaded: loaded (/lib/systemd/system/dnscrypt-proxy.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-02-02 14:04:10 EET; 42min ago
     Docs: https://github.com/jedisct1/dnscrypt-proxy/wiki
 Main PID: 8674 (dnscrypt-proxy)
    Tasks: 14 (limit: 4915)
   Memory: 5.4M
   CGroup: /system.slice/dnscrypt-proxy.service
           └─8674 /usr/sbin/dnscrypt-proxy -config /etc/dnscrypt-proxy/dnscrypt-proxy.toml

Feb 02 14:04:10 joseph-X541UJ systemd[1]: Started DNSCrypt client proxy.
Feb 02 14:04:11 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:11] [NOTICE] Source [/var/cache/dnscrypt-proxy/public-resolver
Feb 02 14:04:11 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:11] [NOTICE] dnscrypt-proxy 2.0.16
Feb 02 14:04:11 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:11] [NOTICE] Wiring systemd TCP socket #0, dnscrypt-proxy.sock
Feb 02 14:04:11 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:11] [NOTICE] Wiring systemd UDP socket #1, dnscrypt-proxy.sock
Feb 02 14:04:12 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:12] [NOTICE] [cloudflare] OK (DoH) - rtt: 100ms
Feb 02 14:04:12 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:12] [NOTICE] Server with the lowest initial latency: cloudflar
Feb 02 14:04:12 joseph-X541UJ dnscrypt-proxy[8674]: [2019-02-02 14:04:12] [NOTICE] dnscrypt-proxy is ready - live servers: 1

[16]+  Stopped                 sudo systemctl status dnscrypt-proxy
joseph@joseph-X541UJ:~$ dnscrypt-proxy -resolve cloudflare-dns.com
Resolving [cloudflare-dns.com]

Domain exists:  yes, 3 name servers found
Canonical name: cloudflare-dns.com.
IP addresses:   <IP_ADDRESS>, <IP_ADDRESS>, 2606:4700::6810:6f19, 2606:4700::6810:7019
TXT records:    -
Resolver IP:    <IP_ADDRESS>

joseph@joseph-X541UJ:~$ dig +short @<IP_ADDRESS> cloudflare.com AAAA
;; connection timed out; no servers could be reached
joseph@joseph-X541UJ:~$

as shown in the commands line the Encrypted Quires doesn't work why please help

Uninstall everything and follow the installation instructions from the documentation: https://github.com/jedisct1/dnscrypt-proxy/wiki/Installation-linux


MSID: 102926 Version: 1 DOI: 10.1101/2<IP_ADDRESS>3280

MSID: 102926
Version: 1
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>3280
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=102926
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>3280

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/102926v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>3280
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/102926/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

WOS query sent

chased


Implement filterIfDefined to optionally filter compile-time queries

The .forall pattern is a great way to create an optional filter for a field that could be defined or not:
case class Person(name: String, age: Int)
val nameOpt: Option[String] = Some("Joe")
run { query[Person].filter(p => lift(nameOpt).forall(_ == p.name)) }
// SELECT p.name, p.age FROM Person p WHERE ? IS NULL OR ? = p.name
// (i.e. when nameOpt := None then the `WHERE ? IS NULL` part will pass)

The issue is, this pattern is not really obvious or discoverable. Based on a discussion in #2281, we should implement a special-purpose filterIfDefined function that will do the equivalent of Option.forall.
run { query[Person].filter(p => lift(nameOpt).filterIfDefined(_ == p.name)) }
// SELECT p.name, p.age FROM Person p WHERE ? IS NULL OR ? = p.name

@getquill/maintainers

I would like to work on this issue.

Hi @CromRulesHyrule. Thanks! Would you like some help with anything?

@deusaquilus there is also a bug with forall I think it's logged here: https://github.com/getquill/quill/issues/2052 but to describe it better if you have a query like:
select * FROM users WHERE company = $1 AND ($2 IS null or department = $2) AND ($3 IS null or name = $3) it will compile with the forall but it will not be accepted by the jdbc driver at runtime (tested with PG 12.4) due to an exception: SQL Error [42P08]: ERROR: could not determine data type of parameter $2, it is only accepted if it's like this (i.e. the null check is after the equality check):
select * FROM users WHERE company = $1 AND (department = $2 or $2 IS null) AND (name = $3 or $3 IS null)

Implicit cast is need while using positional parameter holder for such cases.

I would like to work on this issue.

@deusaquilus @CromRulesHyrule
The ticket was booked on 30 Oct 2021. It's been a while.
Is this issue still available for tomorrow's Hackathon? Then maybe I could take it over?

Thanks for the note @mihaisoloi. This should be fairly straightforward to fix. Let me have a look.


Fix: precision issue in SvgUnit.

Reference Issue

Fixes part of #966
Ref. #961
What does this implement/fix? Explain your changes.

Any other comments?

The issue that gradation is not correct will be fixed in another PR.


Fix code scanning alert - Incomplete string escaping or encoding

Tracking issue for:

[ ] https://github.com/aryasoni98/AI-Interview/security/code-scanning/1

I could work on this . Please assign it to me. Thanks.
Do add the label of GSSOC 22 as I'm participating in it.

@HarshKumarChoudary any update

The link you provided above is not working. It shows 404 when clicked. Please explore the issue details, thanks.

@HarshKumarChoudary issue resolve .


Add a proper support for SOURCE_DATE_EPOCH

As far as I understand, right now cargo-deb uses a somewhat peculiar approach to reproducibility. It reads modification time of manifest and then uses it as mtime for files included into control and data tarballs. It was really surprising when I got seemingly reproducible builds at first, but when I reconstructed the build environment from scratch later, I got different package hashes. The problem is that cloning code from a repository sets new mtime for source files, meaning that tarballs will use different mtimes as well.
SOURCE_DATE_EPOCH is the preferred way for achieving reproducibility around timestamps. If it's set, compliant tooling clamps all timestamps included into a package to that time. I think cargo-deb should properly support it instead of the fragile manifest hack as both CLI argument and environmental variable, i.e.:
cargo deb --source-date-epoch 1234
SOURCE_DATE_EPOCH="1234" cargo deb

@kornelski
Would you be willing to accept an implementation PR or do you have some concerns about the proposed design?


Not working after v4 upgrade - Error with media stream contents. Check troubleshooting.

Checklist:

[X] I updated to the latest version available
[X] I cleared the cache of my browser

Release with the issue:
4.0.0.
Last working release (if known):
3.0.1
Browser and Operating System:
Firefox 112.0/Windows 10

Description of problem:
After v4 upgrade no streams are available. Error shown in the card: Error with media stream contents. Check troubleshooting.

Javascript errors shown in the web inspector (if applicable):

Additional information:

Suggest trying the v5 series which includes some hardening for this issue: https://github.com/dermotduffy/frigate-hass-card/releases/tag/v5.0.0-beta.2

@dermotduffy is this downloadable from the UI? I see v3, v4 and master. Tried master - same issue

How to test a pre-release:
HACS -> Frontend -> Frigate Card -> (three dots menu) -> Redownload -> Show beta-versions -> (Select latest)

I am on v5.0.0.-beta.2 and I still have the issue. Happy to help w/ logs or debug if needed.

Do the clips play reliably in the HA media browser? i.e. not using the card at all?

@andrewhack Sorry, I don't know what to tell you. Try the 'Update Information' open in the card "three-dots" menu. Failing that perhaps restart your HA instance (I think HACS refreshes periodically).

@dermotduffy please accept my apology - I am looking the integration, not the card... silly me
now is working very well!

@dermotduffy many thanks!

FWIW, it seem to work reliably for me as well. I still have to get around understanding the new options now available with go2rtc, but the media problem mentioned in this issue was fixed by latest beta.


Text Input border invisible when placed inside Card element

When I place a Text Input inside a Card element the border-width is set to 0, because of the .tremor-base class
.tremor-base :is(*, ::before, ::after) {
    box-sizing: inherit;
    border-width: 0; // this line overrides the Text Input border
    border-style: solid;
    border-color: #e5e7eb;
    line-height: inherit;
}

How to replicate
<Card>
  <TextInput />
</Card>

Hey @heggern, is this still an issue?

This is still an issue. I can observe the same.


Anyone has an audiokit app in the app store?

Hi,
thanks for the csound porting.
I would like to know if anybody has any app n the appstore with audiokit.
The gpl license is incompatible with the terms of service and I am a bit worried.
Thanks again
elio

The license is MIT License and there is one app in the store, one more accepted and released this Tuesday.  Check http://audiokit.io/blog/ for more information about app releases.

@elioscordo Here's a link to the already released app that uses AudioKit: https://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=975407337

I should add that while AudioKit is now MIT, Csound itself remains under the LGPL. However you can use it in released applications as long as you use the dynamic version of the Csound library (also provided with AudioKit) - but that pretty much restricts you to iOS 8.

Thank you guys so much!!! amazing work!!!

@elioscordo Thank you; we can't wait to see what you make!


Invalid output with labelled loop

Civet:
foo := ->
  :outer for i of arr1
    for j of arr2
      break outer if bar i, j

resulting JS:
function foo() {
  return outer: for (const i of arr1) {
    for (const j of arr2) {
      if (bar(i, j)) { break outer }
    }
  }
}

That's... not valid.

Should be fixed in 0.6.58. Thanks for the report!


Is there a way to skip non annotated images during conversion from coco to kitti?

I am trying to convert a dataset from coco to kitti as follows:
fiftyone convert \
    --input-dir /home/dataset_coco
    --input-type fiftyone.types.COCODetectionDataset \
    --output-dir /home/data/dataset_kitti \
    --output-type fiftyone.types.KITTIDetectionDataset

I have already tried this command on another dataset and it worked well. However, on this particular dataset, it throws an error telling that there is an image not found.
Indeed, I verified, and the image was not found. However, this image does not contain any annotation and that's why it does not exist. The COCO file contains all the images and their IDs, but only images with objects have entries further down the json coco.
Is there any way to skip non annotated images during the image conversion?
Best

Hi @nasserdr! The way to achieve this would be to use the Python SDK:
Specifically you can create a view and then export that:
import fiftyone as fo
from fiftyone import ViewField as F

dataset = fo.Dataset.from_dir(
    dataset_dir="/home/dataset_coco",
    dataset_type=fo.types.COCODetectionDataset,
    label_field="ground_truth",
    label_types="detections",
)

# Depending on your use case, you might want either of these:

# If you only want samples where detections != None
# This could include samples that were annotated but happened to have zero
# objects of interest
view = dataset.exists("detections")

# If you only want samples where there are at least one object
view = dataset.match(F("ground_truth.detections").length() > 0)

view.export(
    export_dir="/home/data/dataset_kitti",
    dataset_type=fo.types.KITTIDetectionDataset,
    label_field="ground_truth",
)

Thanks @brimoor . That works like honey :)


Missing comma

Hi! I think there is a missing comma in file "paleo/profilers/cudnn_profiler.py" at line 188 (after "3: 'CUDNN_CONVOLUTION_BWD_DATA_ALGO_FFT_TILING'"). Thanks!

@sergey-serebryakov Thanks for pointing out. I anticipate to add a linter and more tests soon.


Fix ExprSchema extraction of metadata for Cast expressions.

Which issue does this PR close?
Part of https://github.com/apache/datafusion/issues/12733
Rationale for this change
The field metadata was not being extracted from the ExprSchema for cast expressions. When cast was used as a projection on an aggregate, it would be missing the field metadata and fail the schema-misalignment check (see background epic).
The result was that the logical plan schema did not have the field metadata, whereas the physical plan schema did:
# physical_input_schema
Schema {
   fields: [
      Field {
        name: "dist",
        data_type: Date32,
        nullable: false,
        dict_id: 0,
        dict_is_ordered: false,
        metadata: {"metadata_key": "ts non-nullable field"}
      }
    ],
    metadata: {"metadata_key": "the entire schema"}
}

# physical_input_schema_from_logical
Schema {
    fields: [
      Field {
        name: "dist",
        data_type: Date32,
        nullable: false,
        dict_id: 0,
        dict_is_ordered: false,
        metadata: {}                     // the difference
      }
    ],
    metadata: {"metadata_key": "the entire schema"}
}

However, I'm not 💯 that this is the right fix. Since it triggers another test to fail -- because cast should drop input metadata since the type has changed. What is the proper behavior here? Instead, should we be removing the field metadata from the physical schema?
What changes are included in this PR?
commit 1 = test case with reproducer. Demonstrates exactly which scenario fails (vs is ok).
commit 2 = fix, and update test cases
Are these changes tested?
yes
Are there any user-facing changes?
no

note: This is a draft PR only, since I'm not sure what is the correct behavior. See the PR description, and please advise. 🙏🏼

I'm not sure why metadata is allowed to change for cast 🤔

@sydduckworth Do you remember why cast should drop input metadata since the type has changed
   #[test]
    fn test_expr_metadata() {
        let mut meta = HashMap::new();
        meta.insert("bar".to_string(), "buzz".to_string());
        let expr = col("foo");
        let schema = MockExprSchema::new()
            .with_data_type(DataType::Int32)
            .with_metadata(meta.clone());

        // col and alias should be metadata-preserving
        assert_eq!(meta, expr.metadata(&schema).unwrap());
        assert_eq!(meta, expr.clone().alias("bar").metadata(&schema).unwrap());

        // cast should drop input metadata since the type has changed
        assert_eq!(
            HashMap::new(),
            expr.clone()
                .cast_to(&DataType::Int64, &schema)
                .unwrap()
                .metadata(&schema)
                .unwrap()
        );

        let schema = DFSchema::from_unqualified_fields(
            vec![Field::new("foo", DataType::Int32, true).with_metadata(meta.clone())]
                .into(),
            HashMap::new(),
        )
        .unwrap();

        // verify to_field method populates metadata
        assert_eq!(&meta, expr.to_field(&schema).unwrap().1.metadata());
    }

Maybe it is time to consider changing the check for output schema = input schema to ignore metadata -- I know we have been holding off on that for a long time, but maybe fundamentally the check is not feasible to maintain :thinkin

@sydduckworth Do you remember why cast should drop input metadata since the type has changed

For anyone else following along, the original PR that added this test and related code was

https://github.com/apache/datafusion/pull/6920

@sydduckworth Do you remember why cast should drop input metadata since the type has changed

When I wrote my PR, I had to make a decision about how to handle metadata propagation across expressions.
It seemed logical to me that the Column and Alias expressions should forward the source field's metadata, but my concern for other expressions was that forwarding the metadata could produce unexpected behavior, so I decided they would drop just any metadata in the source fields.
The only one I wasn't sure about was Cast since I could see an argument for it preserving the source metadata, but I eventually just went with the idea that any expression that can change the datatype of the input should reset its metadata and added that test assertion verify the behavior.
Long story short: there's no reason for that assertion other than my arbitrary decision when implementing the feature. To me it seems reasonable to change the behavior of Cast and remove (or invert) that assertion so the logical plan behavior matches the physical plan behavior.

@sydduckworth Do you remember why cast should drop input metadata since the type has changed

When I wrote my PR, I had to make a decision about how to handle metadata propagation across expressions. It seemed logical to me that the Column and Alias expressions should forward the source field's metadata, but my concern for other expressions was that forwarding the metadata could produce unexpected behavior, so I decided they would drop just any metadata in the source fields.
The only one I wasn't sure about was Cast since I could see an argument for it preserving the source metadata, but I eventually just went with the idea that any expression that can change the datatype of the input should reset its metadata and added that test assertion verify the behavior.
Long story short: there's no reason for that assertion other than my arbitrary decision when implementing the feature. To me it seems reasonable to change the behavior of Cast and remove (or invert) that assertion so the logical plan behavior matches the physical plan behavior.

Thanks for your reply, I think we can skip the assertion given the change is little. We can consider to ignore the metadata if we meet any case that blocking us to matches the plan checking

To be clear, I think we were talking about loosening the Schema check that was failing (that the output of physical planning a GroupBy was exactly the same as the input).
Specifically we could perhaps simply ignore the metadata when comparing schemas


Added snippet and category locale chooser in list

tasks:

[ ] gather feedback for my changes

informations:

q
a

Fixed tickets
fixes #1331

BC breaks
none

Documentation PR
none

You are always routing with the trigger and noLoader parameter set to false. May I ask why? To save the rerendering of the page?

the category form can reload its content without reload the whole page ... so its enough to update the URL there ...

@danrot for me the changing of snippet type works ....


Heapster doesn't startup when k8s is started

This is because addon starter looks for files ending with yaml and the heapster files have the extension yml.

Steps to test
Launch k8s
Ensure that heapster pods are showing in the infrastructure page

This should be tested in v1.5.0-dev

Rancher Server: v1.5.0-alpha1
I was able to validate that Heapster is installed and working correctly along with Grafana and Influxdb, i was able to see Pods/nodes stats through Grafana correctly.


Is the project suit for product env?

Hi, I am find a solution for scheduling AI jobs cross multiple clusters; Find this project and it is realy nice. I am use kube-batch for the job scheduling. So I want to learn that is this project can be used in produce env? thanks

We use this tool in a cluster with over 1500 GPUs and more than 50 users. It allows them to schedule jobs that are later dispatched an run whenever the resources become available. It is essentially LSF for cloud systems. If you want to learn more about the cluster you can read here.

@lowang-bh Hope we answered your question, please feel free to reach out to us on your community slack channel mentioned here:  https://github.com/project-codeflare#getting-involved


Update lockup contract support for new naming convention

Add support for the lockup contract naming convention <account_name_without_suffix>.lockup.<network_suffix>

@vgrichina Thoughts on the current state of this? It's a blocker if we want to deploy lockup contracts this week


Convert all verbs to POST

Based on the comments in #59, I converted all the verbs to POST. I think if the IPFS protocol no longer supports GET, then maybe we should add some error handling for users who use GET or other unsupported verbs. Thoughts?

Thank you!


Add german translation

Neat little app. Added a german translation :) Still needs to be added to module.json.

Thank you!


bug in resnet.py

line 283 of resnet.py , should it be
weight_decay=FC_WEIGHT_DECAY) ?
Also, it might be better for each variable_scope, for example:
with tf.variable_scope('scale1'):
add resue flag at the end
with tf.variable_scope('scale1', resue = not is_training):

line 283 of resnet.py , should it be
weight_decay=FC_WEIGHT_DECAY) ?

I think so too


[BUG] InteractiveBrowserCredentialBuilder forces clientId to be IdentityConstants.DEVELOPER_SINGLE_SIGN_ON_ID

Describe the bug
The builder InteractiveBrowserCredentialBuilder forces the clientId to be IdentityConstants.DEVELOPER_SINGLE_SIGN_ON_ID, destroying the ability to set your own clientId.
The builder methods for the clientId are located in the superclass (AadCredentialBuilderBase), therefore if you set your own clientId it is being ignored and you will always get IdentityConstants.DEVELOPER_SINGLE_SIGN_ON_ID
To Reproduce
Authenticate using InteractiveBrowserCredentialBuilder with a custom clientId
Code Snippet
In the class: InteractiveBrowserCredentialBuilder, on line 21 the code sets the clientId:
String clientId = IdentityConstants.DEVELOPER_SINGLE_SIGN_ON_ID;

Expected behavior
When I set my own clientId, I expect it to be honored.

@g2vinay PTAL


STT is not listening when we have background noises.

What is the current behavior?
It is working fine when their is no background noise like music, traffic or gossips by other.

What's happening that seems wrong?
It should avoid the background noise and it should work with background noise as well.

Steps to reproduce

To make it faster to diagnose the root problem. Tell us how can we reproduce the bug.

I am running this scrip https://github.com/twilio-labs/call-gpt
Expected behavior

What would you expect to happen when following the steps above?

Please tell us about your environment
i am running it on aws ubuntu instance.

We want to make sure the problem isn't specific to your operating system or programming language.

Operating System/Version: Windows 10
Language: [all | TypeScript | Python | PHP | etc]
Browser: Chrome

Other information

Anything else we should know? (e.g. detailed explanation, stack-traces, related issues, suggestions how to fix, links for us to have context, eg. stack overflow, codepen, etc)

Did you try to change the model to a phonecall model?

Yes, I did thats not working as well and I want for hindi language as well but it didn’t work.

Then this appears to be a model related issue. You'll get faster support on the official discord


⚠ SceneTime has degraded performance

In 78d80f1, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1273 ms

Resolved: SceneTime performance has improved in de494e2 after 6 minutes.


collections can belong to multiple categories

add a new collection_category table and populate it from the old collection.category field
join collection table with collection_category table when reading collection
begin a transaction around create, update, delete collection to ensure collection_category is kept in sync
->> this would have been easier if we simply put the categoryIDs array in the json, but then we'd lose ref integrity, so I think it was worth it

make collection create/edit in UI a multi-select

Yes, I know it's not as efficient as a three-way join, but it also keeps
the code cleaner, since collections and categories are separate endpoints.
Someday we should worry about caching and setting eTags or paging &
filtering for the get all categories and collections and posts endpoints,
but probably not today.
On Sat, Jun 27, 2020 at 8:49 AM Jim Ancona<EMAIL_ADDRESS>wrote:

Merged #33 https://github.com/OurRootsOrg/cms-server/pull/33 into
master.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/OurRootsOrg/cms-server/pull/33#event-3489034581, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB2Y2K2FQSJA2T45SJXVO3RYYBFZANCNFSM4OJXSHKA
.


Spelling

This PR corrects misspellings identified by the check-spelling action.
The misspellings have been reported at https://github.com/jsoref/rickshaw/commit/bbeb6a66075ee32c7187401d8bd75a4ba3178280#commitcomment-80113230
The action reports that the changes in this PR would make it happy: https://github.com/jsoref/rickshaw/commit/5629164ebe80f40cf4aec706bf6a09479ea3a72e
Note: this PR does not include the action. If you're interested in running a spell check on every PR and push, that can be offered separately.

Thanks for this!


[Roadmap] Market Creation

Implement market creation design.

➤ Wrike Bot commented:
Tom Haile All the necessary task dependencies have been completed, so you can start working on it right away.


Infinite Reloads when using Query Strings

First, Thanks for this awesome project! This is my favorite Rust/Webassembly project so far.
Adding a ?something to (any?) seed site with routing causes infinite reloads. For example: changing https://seed-rs.org/guide/7 to https://seed-rs.org/guide/7?adwd causes it to reload forever. Tested on Chrome and Safari on MacOS.
This is a problem for me because I posted my site ( https://tiberiusferreira.github.io/gringoshouse ) on facebook and facebook rewrites it as https://tiberiusferreira.github.io/gringoshouse/?fbclid=IwAR0bd0aunkNfmsimtcOvpq0VaaEbbslx_5LvqQaHRpMNbf4q2Ibs8v9may8 so I had to disable routing all together.

Fixed, and released as 0.2.7

Awesome! Thank you so much.