DofTransfer between a high order ND parallel fespace and another serial ND fespace with same order

Hi all,
I'm realizing the additive schwarz preconditioner based on mfem-4.5. I need to build several submeshes. In my code, one submesh is extracted from the original serial mesh which is the same mesh that the parmesh is built from. Then I build the serial fespace on the submesh and the global parallel fespace on the parmesh. In the algorithm, I need to tranfer a parallel gridfunction(i.e. a parallel vector) build on the global parallel fespace to a gridfunction build on the local serial fespace. I follow the idea in this project petram, i.e. compare the Shape or VShape of the fem basis located on the same physical node. And the dof transfer could be expressed with a sparse matrix.
Things go right with H1 finite element and 1-order ND element. But when I use 2-order ND element, things go wrong. The program output different result when running in palallel.(i.e., result from "mpirun -np 1 program" is obviously different with that from "mpirun -np 4 program"). I think the reason is the shared face orientation of the parallel mesh and the VShape of the basis on the shared face.
I realize that the mfem class ParSubmesh could be a choice but I want to change my code as little as possible. I'd appreciate any advice.

After learning some code about the parallel mesh and parallel fespace, I think I can clarify my question. Suppose that I have a 3d serial mesh mesh and construct a parallel mesh pmesh based on mesh. Now I can build 2-order Nedelec finite element space on both mesh and pmesh respectively, and get fespace and pfespace. fespace is serial and pfespace is parallel. Suppose that the program is running on 2 processors. I have some questions.

For a shared face in pmesh, there should be a "same" face in mesh. Let's say on rank 0, the k-th face is shared, and there should be a face in mesh, indexed by f(k), such that these two faces represent the same physical 2d-domain. But the true basis of pfespace on face k might not be the same as the basis of fespace on face f(k).  Even more, such basis of pfespace might not be linearly represented by basis of fespace. This depends on which processor owns face k. Am I right?
If the previous assertion is right. Then the mathematical finite element space represented by fespace is not equal to that represented by pfespace, right?

Hi @OliiLee
Higher (>1) order ND has two degree of freedoms sit on the same location. When you create a new mesh using a part of mesh (like SubMesh or ParMesh), it is not given that the shape function corresponding to each of two DoFs are not same. A shape determined by two DoFs of the first mesh can be reproduced if you combine corresponding two DoFs properly (linear combination) on the other mesh. If the code stops working on a higher order ND, I would check this linear relationship first.
The code you referred are written to support between ParMesh and ParMesh distributed in a different manner. Thus, there are a few steps which may not be necessary in your situation.

Hi @OliiLee Higher (>1) order ND has two degree of freedoms sit on the same location. When you create a new mesh using a part of mesh (like SubMesh or ParMesh), it is not given that the shape function corresponding to each of two DoFs are not same. A shape determined by two DoFs of the first mesh can be reproduced if you combine corresponding two DoFs properly (linear combination) on the other mesh. If the code stops working on a higher order ND, I would check this linear relationship first. The code you referred are written to support between ParMesh and ParMesh distributed in a different manner. Thus, there are a few steps which may not be necessary in your situation.

Hi.
I noticed this combination a few days ago and fix this in my code. But the results are still problematic. Maybe I should check through my code.
Thanks for applying!

After learning some code about the parallel mesh and parallel fespace, I think I can clarify my question. Suppose that I have a 3d serial mesh mesh and construct a parallel mesh pmesh based on mesh. Now I can build 2-order Nedelec finite element space on both mesh and pmesh respectively, and get fespace and pfespace. fespace is serial and pfespace is parallel. Suppose that the program is running on 2 processors. I have some questions.

For a shared face in pmesh, there should be a "same" face in mesh. Let's say on rank 0, the k-th face is shared, and there should be a face in mesh, indexed by f(k), such that these two faces represent the same physical 2d-domain. But the true basis of pfespace on face k might not be the same as the basis of fespace on face f(k).  Even more, such basis of pfespace might not be linearly represented by basis of fespace. This depends on which processor owns face k. Am I right?
If the previous assertion is right. Then the mathematical finite element space represented by fespace is not equal to that represented by pfespace, right?

The basis of a parallel version and serial version should be equivalent, up to a linear relation (in the case of p2 nd dofs here). The reason being that for any shared face, the map from one face orientation to another can always be represented as the action of a 2x2 matrix on those dofs, which is inherently linear.
This will sound a little in the weeds, but the mathematical spaces are identical, but the computational spaces can be subtly different due to the treatment of shared boundaries. The effect of this is that the two processor will both use a different basis on a shared face (as any boundary face (external or shared) always has an outward facing normal).

This is all handled within the DofTransformation class which is used to perform transformations both from the processor local representation to the element local representation, and also to handle the transformation between two different processor local representations.
The outcome of all this, and where I think you might be getting tangled, is that there isn't a unique orientation of all faces in the mesh, that will be common between serial and parallel. In the interior of any given partition, they likely will be the same, but on any shared boundary, the orientation is non-unique. Even in the interior of a partition,  MFEM defines the orientation of a face from the element that visited it first, as opposed to by a global vertex ordering, as done in other FEM codebases.

Hi @hughcars Sorry that I'm busy with other things these days. Thanks for the detailed explanation! It's very useful. I believe that I could build such dof transformation from the parallel fespace to serial fespace(and that from parallel fespace to local fespace built on submesh).
Here is another question. As you said, there isn't a unique orientation of all faces in the mesh. This results in the system matrices being different since they might be built using different basis functions. And this difference has an effect on the iteration numbers when solving the linear system with iterative method (such as CG). I guess it can also affect the convergence of my domain decomposition algorithm. Is there a convenient way in MFEM to handle this difference? I can build the dof transformation by my own and make the system matrix built in serial the same as that built in parallel by applying a congruent transformation, i.e. let pA = C^T A C. Here is my code and I wish it helps you to understand what I'm saying.
#include "mfem.hpp"

using namespace std;
using namespace mfem;

// Building dof tranformation from parallel fespace to serial fespace.
// The resulting transformation is a sparsematrix for convenience.
SparseMatrix *DofTransfer(FiniteElementSpace *, ParFiniteElementSpace *);

int main(int argc, char *argv[])
{
    Mpi::Init(argc, argv);
    int myrank = Mpi::WorldRank();
    int nranks = Mpi::WorldSize();

    int order = 1;
    int n = 4;
    double s = 1.;
    int dim = 3;

    OptionsParser args(argc, argv);
    args.AddOption(&order, "-o", "--o", "order");
    args.AddOption(&n, "-n", "--n", "divide number");

    args.Parse();
    if (!args.Good())
    {
        if (myrank == 0)
            args.PrintUsage(cout);
        return 1;
    }

    Mesh *mesh = new Mesh(move(
        Mesh::MakeCartesian3D(n, n, n, Element::TETRAHEDRON, s, s, s, false)));

    ParMesh *pmesh = new ParMesh(MPI_COMM_WORLD, *mesh);

    FiniteElementCollection *fec = new ND_FECollection(order, dim);
    ParFiniteElementSpace *pfes = new ParFiniteElementSpace(pmesh, fec);
    FiniteElementSpace *fes = new FiniteElementSpace(mesh, fec);

    ConstantCoefficient one(1.0);
    VectorConstantCoefficient ones(Vector({1.0, 1.0, 1.0}));
    ParBilinearForm *pa = new ParBilinearForm(pfes);
    pa->AddDomainIntegrator(new CurlCurlIntegrator(one));
    pa->AddDomainIntegrator(new VectorFEMassIntegrator(ones));
    pa->AddBoundaryIntegrator(new VectorFEMassIntegrator(ones));
    pa->Assemble();

    BilinearForm *a = new BilinearForm(fes);
    a->AddDomainIntegrator(new CurlCurlIntegrator(one));
    a->AddDomainIntegrator(new VectorFEMassIntegrator(ones));
    a->AddBoundaryIntegrator(new VectorFEMassIntegrator(ones));
    a->Assemble();

    Array<int> ess_tdof_list;
    OperatorHandle pAh, Ah;
    pa->FormSystemMatrix(ess_tdof_list, pAh);
    a->FormSystemMatrix(ess_tdof_list, Ah);

    HypreParMatrix *pA = pAh.As<HypreParMatrix>();
    SparseMatrix *A = Ah.As<SparseMatrix>();

    SparseMatrix *C = DofTransfer(fes, pfes);
    SparseMatrix *Ct = Transpose(*C);
    SparseMatrix *AC = Mult(*A, *C);
    SparseMatrix *CtAC = Mult(*Ct, *AC);
    delete AC;
    delete Ct;

    HYPRE_BigInt rows[2];
    int nrows = pfes->GetTrueVSize();
    rows[0] = pfes->GetMyTDofOffset();
    rows[1] = rows[0] + nrows;

    Array<int> I(nrows + 1);
    I[0] = 0;
    for (int r = 0; r < nrows; ++r)
        I[r + 1] = CtAC->RowSize(r + rows[0]);
    for (int r = 0; r < nrows; ++r)
        I[r + 1] += I[r];
    int nnz = I[nrows];
    Array<HYPRE_BigInt> J(nnz);
    Vector data(nnz);
    for (int i = 0; i < nnz; ++i)
    {
        J[i] = CtAC->GetRowColumns(rows[0])[i];
        data[i] = CtAC->GetRowEntries(rows[0])[i];
    }

    HypreParMatrix pCtAC(MPI_COMM_WORLD, nrows, pfes->GlobalTrueVSize(),
                         pfes->GlobalTrueVSize(), I.GetData(), J.GetData(),
                         data.GetData(), rows, rows);

    // just for linear system solving test, no physical meaning
    Vector B(fes->GetTrueVSize()), pB(pfes->GetTrueVSize());
    Vector U(fes->GetTrueVSize()), pU(pfes->GetTrueVSize());
    B = 1. / pow(n, 3);
    pB = 1. / pow(n, 3);
    U = 0.;
    pU = 0.;

    int print_level = 3;
    double rel_tol = 1e-4;
    int max_iter = 1000;
    if (myrank == 0)
    {
        printf("Serial stiffness matrix cg procedure:\n");
        CGSolver cg;
        cg.SetPrintLevel(print_level);
        cg.SetRelTol(rel_tol);
        cg.SetMaxIter(max_iter);
        cg.SetOperator(*A);
        cg.Mult(B, U);
    }
    MPI_Barrier(MPI_COMM_WORLD);
    if (myrank == 0)
    {
        printf("Parallel stiffness matrix cg procedure:\n");
    }
    {
        CGSolver cg(MPI_COMM_WORLD);
        cg.SetPrintLevel(print_level);
        cg.SetRelTol(rel_tol);
        cg.SetMaxIter(max_iter);
        cg.SetOperator(*pA);
        cg.Mult(pB, pU);
    }
    MPI_Barrier(MPI_COMM_WORLD);
    if (myrank == 0)
    {
        printf("Parallel transformed stiffness matrix cg procedure:\n");
    }
    {
        CGSolver cg(MPI_COMM_WORLD);
        cg.SetPrintLevel(print_level);
        cg.SetRelTol(rel_tol);
        cg.SetMaxIter(max_iter);
        cg.SetOperator(pCtAC);
        pU = 0.;
        cg.Mult(pB, pU);
    }

    delete C;
    delete CtAC;
    delete fec;
    delete fes;
    delete pfes;
    delete pa;
    delete a;
    delete mesh;
    delete pmesh;
    return 0;
}

SparseMatrix *DofTransfer(FiniteElementSpace *fes_dest,
                          ParFiniteElementSpace *fes_src)
{
    int nranks = Mpi::WorldSize();
    int myrank = Mpi::WorldRank();

    int order = fes_dest->FEColl()->GetOrder();
    int nedges = 6;
    int nfaces = 4;
    int nedofs = order;
    int nfdofs = order * (order - 1);

    Array<bool> flag(fes_dest->GetTrueVSize());
    flag = false;

    ND_TetDofTransformation trans(order);

    SparseMatrix T(fes_dest->GetTrueVSize(), fes_src->GlobalTrueVSize());
    for (int el_src = 0; el_src < fes_src->GetNE(); ++el_src)
    {
        int el_dest;
        Vector center_src;
        fes_src->GetParMesh()->GetElementCenter(el_src, center_src);
        for (int j = 0; j < fes_dest->GetNE(); ++j)
        {
            Vector center_dest;
            fes_dest->GetMesh()->GetElementCenter(j, center_dest);
            if (center_src.DistanceTo(center_dest) <= 1e-4)
            {
                el_dest = j;
                break;
            }
        }

        Array<int> dofs_src, dofs_dest;
        fes_src->GetElementDofs(el_src, dofs_src);
        fes_dest->GetElementDofs(el_dest, dofs_dest);

        Array<int> faces, fo_src, fo_dest;
        fes_src->GetParMesh()->GetElementFaces(el_src, faces, fo_src);
        fes_dest->GetMesh()->GetElementFaces(el_dest, faces, fo_dest);

        // edges
        for (int e = 0; e < nedges; ++e)
        {
            for (int i = 0; i < nedofs; ++i)
            {
                int idx = e * nedofs + i;

                double s_src, s_dest;
                int tdof_src =
                    FiniteElementSpace::DecodeDof(dofs_src[idx], s_src);
                int tdof_dest =
                    FiniteElementSpace::DecodeDof(dofs_dest[idx], s_dest);
                int gtdof_src = fes_src->GetGlobalTDofNumber(tdof_src);

                double fac = s_src * s_dest;

                if (flag[tdof_dest])
                    continue;
                flag[tdof_dest] = true;
                if (fes_src->GetLocalTDofNumber(tdof_src) != -1)
                    T.Set(tdof_dest, gtdof_src, fac);
            }
        }

        // faces
        for (int f = 0; f < nfaces; ++f)
        {
            DenseMatrix d_src = trans.GetFaceInverseTransform(fo_src[f]);
            DenseMatrix d_dest = trans.GetFaceInverseTransform(fo_dest[f]);
            for (int i = 0; i < nfdofs / 2; ++i)
            {
                int idx = nedges * nedofs + f * nfdofs + 2 * i;

                Array<int> tdof_dest(2), tdof_src(2), gtdof_src(2);
                Vector s_src(2), s_dest(2);
                for (int j = 0; j < 2; ++j)
                {
                    tdof_src[j] = FiniteElementSpace::DecodeDof(
                        dofs_src[idx + j], s_src[j]);
                    tdof_dest[j] = FiniteElementSpace::DecodeDof(
                        dofs_dest[idx + j], s_dest[j]);
                    gtdof_src[j] = fes_src->GetGlobalTDofNumber(tdof_src[j]);
                }

                d_src.RightScaling(s_src);
                d_dest.RightScaling(s_dest);

                d_dest.Invert();
                DenseMatrix fac(2);
                Mult(d_dest, d_src, fac);

                MFEM_VERIFY(flag[tdof_dest[0]] == flag[tdof_dest[1]],
                            "internal error!");
                if (flag[tdof_dest[0]])
                    continue;
                flag[tdof_dest[0]] = flag[tdof_dest[1]] = true;

                if (fes_src->GetLocalTDofNumber(tdof_src[0]) != -1)
                    T.SetSubMatrix(tdof_dest, gtdof_src, fac);
            }
        }
    }
    T.Finalize();

    struct COO
    {
        int i;
        int j;
        double a;
    };
    MPI_Datatype MPI_COO;
    int block_length[3] = {1, 1, 1};
    MPI_Aint block_disp[3] = {offsetof(COO, i), offsetof(COO, j),
                              offsetof(COO, a)};
    MPI_Datatype types[3] = {MPI_INT, MPI_INT, MPI_DOUBLE};
    MPI_Type_create_struct(3, block_length, block_disp, types, &MPI_COO);
    MPI_Type_commit(&MPI_COO);

    int nnz = T.NumNonZeroElems();
    Array<int> recv_size(nranks), recv_offset(nranks + 1);
    MPI_Allgather(&nnz, 1, MPI_INT, recv_size.GetData(), 1, MPI_INT,
                  MPI_COMM_WORLD);

    recv_offset[0] = 0;
    for (int i = 0; i < nranks; ++i)
        recv_offset[i + 1] = recv_offset[i] + recv_size[i];

    vector<COO> send_buff(nnz), recv_buff(recv_offset[nranks]);
    int offset = 0;
    for (int r = 0; r < T.Height(); ++r)
    {
        int rs = T.RowSize(r);
        int *col_idx = T.GetRowColumns(r);
        double *val = T.GetRowEntries(r);
        for (int c = 0; c < rs; ++c)
        {
            send_buff[offset].i = r;
            send_buff[offset].j = col_idx[c];
            send_buff[offset].a = val[c];
            offset++;
        }
    }

    MPI_Allgatherv(send_buff.data(), nnz, MPI_COO, recv_buff.data(),
                   recv_size.GetData(), recv_offset.GetData(), MPI_COO,
                   MPI_COMM_WORLD);

    SparseMatrix *mat =
        new SparseMatrix(fes_dest->GetTrueVSize(), fes_src->GlobalVSize());
    for (auto it : recv_buff)
    {
        mat->Set(it.i, it.j, it.a);
    }
    mat->Finalize();

    return mat;
}

Hi @hughcars Sorry that I'm busy with other things these days. Thanks for the detailed explanation! It's very useful. I believe that I could build such dof transformation from the parallel fespace to serial fespace(and that from parallel fespace to local fespace built on submesh).
Here is another question. As you said, there isn't a unique orientation of all faces in the mesh. This results in the system matrices being different since they might be built using different basis functions. And this difference has an effect on the iteration numbers when solving the linear system with iterative method (such as CG). I guess it can also affect the convergence of my domain decomposition algorithm. Is there a convenient way in MFEM to handle this difference? I can build the dof transformation by my own and make the system matrix built in serial the same as that built in parallel by applying a congruent transformation, i.e. let pA = C^T A C. Here is my code and I wish it helps you to understand what I'm saying.

In theory such a transfer should work, I'm not sure I really understand why one would want to go from parallel to a serial fe space, unless the serial were defined on a mesh that effectively makes up a sub piece of the parallel mesh. But conditioning on that, you could indeed build matrices C as you described. I would suggest testing you have them correct by projecting a reasonably rapidly varying function onto a p2 ND space on the parallel and serial spaces, then transfer from the parallel to the serial using your operator (which I think should also apply to true dofs if I understand correctly). If they aren't in exact agreement, you made an error, then if doing this all within one of the examples, you can visualize within glvis/find the element in question. From experience debugging/working with these face orientations can be fiddly, so I would suggest avoiding it if you can though.
At a higher level, I would like to reiterate the point above that ParSubMesh sounds fairly ideal for your purposes, I understand your desire to be "minimal" but you're going to end up having to implement (and test (and debug)) a lot yourself, compared to using the ParSubMesh capability that was created with this type of mesh/space manipulation in mind.

I can build the dof transformation by my own and make the system matrix built in serial the same as that built in parallel by applying a congruent transformation, i.e. let pA = C^T A C
This works. But I'm not sure the reason why my original implementation, i.e. building the dof transformation from parallel fespace to serial sub-fespace directly, doesn't work. There might be undiscovered bugs in my code. I'm going to close this issue now since the current code works. Thanks for the help.


Is there any way to customize installation steps ?

I'd like to customize instalation  steps: i.e

add gif during installation process
add checkbox "Accept terms and conditions ..."
select destination folder

Is there any way to do this ?

Try electron-builder's pkg option

https://github.com/electron-userland/electron-builder/wiki/options

@amilajack maybe you have any examples ?

For windows set https://github.com/electron-userland/electron-builder/wiki/options#NsisOptions-oneClick to false, for macOS "Try electron-builder's pkg option" (i.e. set target to pkg).

@develar thanks for the  answer, but how to add any text or gif animation ? Below an example of what I want.

@VladCherniavsky electron-react-boilerplate uses electron-builder 18.x — this branch is obsolete and some release in this branch contains regression — no text in this dialog. It was fixed in the 19.x Please upgrade electron-builder to 19.10.0.

@VladCherniavsky But if you want to show License information/EULA — you need to set oneClick to false.


spring-cloud-alibaba-sentinel-zuul shows 404

我们鼓励使用英文，如果不能直接使用，可以使用翻译软件，您仍旧可以保留中文原文。另外请按照如下要求提交相关信息节省社区维护同学的理解成本，否则该讨论极有可能直接被忽视或关闭。
We recommend using English. If you are non-native English speaker, you can use the translation software. We recommend using English. If you are non-native English speaker, you can use the translation software. In addition, please submit relevant information according to the following requirements to save the understanding cost of community maintenances, otherwise the discussion is very likely to be ignored or closed directly.
Which Component
Sentinel
Describe what problem you have encountered
I'm trying to integrate the sentinel component in zuul and find that I can't do it in the same way as spring cloud gateway. spring cloud gateway works like this: https://github.com/karl-chanel/sentinel-prometheus- The documentation states “If you are using Spring Cloud Zuul Starter, you can make it easier to integrate Sentinel by introducing spring-cloud-alibaba-sentinel-zuul”. But accessing spring-cloud-alibaba-sentinel-zuul reports an error 404.
Translated with DeepL.com (free version)
Describe what information you have read
eg. I have read the reference doc of Sentinel

提供个 example 或者相信配置信息

/area sentinel

提供个 example 或者相信配置信息

目前通过配置依赖版本解决了。


Update start vertex for absolute paths so the close_path directive works

Absolute paths need to update the start vertex so subsequent "close path" (z) command will work properly.
I am including a test case to reproduce the issue, along with screenshots. I generated the test by tracing an image in Inkscape, and the GCode was visualized with multiple online visualizers, which consistently showed the problem.
bug_close_path.zip
I would guess this problem exists for some other commands, but I don't have test cases for them.

Thank you for finding this bug. It turns out the solution is to change the starting point with every moveto command rather then in the Bezier curve command. I linked your pull request in the commit.


Introduce static testing tools to operator and aggregator tests

We should explore more of Go's default and external tooling for statically testing code. This includes plain linting as well as fancier features such as concurrency scanning for race conditions. This tooling should be integrated to both unit and integration tests.

Relevant to #174

Added linter in #251 and race detector in #256


Update README.md

Show How configue website and native apps

I can't accept this PR because of external opiniated needs (repository, cloudflare, oracle JDK, ...)
We'll stick with Google/Apple links and reworked package documentation.


Bump Dependencies #1668111682

Bumps dependencies for product-is. Link : https://github.com/wso2/product-is/actions/runs/1668111682

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.jenkins-is-staging seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Dependencies check based on gitlab repo

Hello,
it's still possible to maintain the repository URL for the dependencies check in the abaplint JSON config file.

Based on company internal restrictions I have to put the repo to gitlab. Access to the repo is limited by user and their token. Is it possible via JSON config file as well to maintain a user and token for the repo. login? If not is it planned for the future?
Thanks for an answer.
BR
Dominik

I recommend using GitHub and https://abaplint.app then it will work out of the box

Thanks a lot again for  the very quick answer. Unfortunately company is using gitlab in general, so for abaplint checked abap repository (using abaplint CI via docker image) and for the dependency list. Therefore github is not possible to be use.

no progress, closing


Does not seem to work with AWS Javascript SDK for S3

Prior to installing cordova-plugin-wkwebview-engine and cordova-plugin-wkwebview-file-xhr I was able to upload blobs to AWS via their javascript S3 SDK. Now when running the exact same code, the AWS sdk errors out with "null" and no real information.
Here is my code (given a path, bucket_name, file blob, and configured AWS)
var file_name = encodeURIComponent(path.substr(path.lastIndexOf('/')+1));
var params = { Bucket: bucket_name, Key: file_name, ContentType: file.type, Body: file};
var upload = new AWS.S3.ManagedUpload({params: params});
upload.on('httpUploadProgress', function(progressEvent) {
//progress bar stuff
}).send(function(err, data) {
if(err){
console.log(err); //<- shows null
}
else{
//upload success
}
});
}
Response from AWS:
[Log] Error: null (cordova.js, line 1540)
extractError — aws-sdk-2.712.0.min.js:9615:203
callListeners — aws-sdk-2.712.0.min.js:2363
emit — aws-sdk-2.712.0.min.js:2350
emitEvent — aws-sdk-2.712.0.min.js:1576:184
e — aws-sdk-2.712.0.min.js:1453
(anonymous function) — aws-sdk-2.712.0.min.js:1642
(anonymous function) — aws-sdk-2.712.0.min.js:1654
(anonymous function) — aws-sdk-2.712.0.min.js:1462
(anonymous function) — aws-sdk-2.712.0.min.js:1577
callListeners — aws-sdk-2.712.0.min.js:2370
emit — aws-sdk-2.712.0.min.js:2350
emitEvent — aws-sdk-2.712.0.min.js:1576:184
e — aws-sdk-2.712.0.min.js:1453
(anonymous function) — aws-sdk-2.712.0.min.js:1642
(anonymous function) — aws-sdk-2.712.0.min.js:1654
(anonymous function) — aws-sdk-2.712.0.min.js:1462
(anonymous function) — aws-sdk-2.712.0.min.js:1577
callListeners — aws-sdk-2.712.0.min.js:2370
o — aws-sdk-2.712.0.min.js:2356
(anonymous function) — aws-sdk-2.712.0.min.js:2139
(anonymous function) — aws-sdk-2.712.0.min.js:8240
finishRequest — aws-sdk-2.712.0.min.js:6942
(anonymous function) — aws-sdk-2.712.0.min.js:6891:268
(anonymous function) — xhr-polyfill.js:1203
(anonymous function) — xhr-polyfill.js:997
[native code]
(anonymous function) — xhr-polyfill.js:661
[native code]
promiseReactionJob
Any help would be appreciated!

A follow up: while I was never able to get any of the AWS javascript SDKs to work, I found a workaround. I was able to use XHR and post directly to S3. More info can be found here: https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-UsingHTTPPOST.html. This SO convo (and the links within the question and answer) were very helpful: https://stackoverflow.com/questions/16276244/use-aws-s3-success-action-redirect-policy-with-xhr

Hi @adamjpeterson , We are working on validating certain behaviors of this plugin. We will revert with the updates soon.

Hi Adam (@adamjpeterson ), Can you provide me sample app which allows me to reproduce the issue reported by you.

Hi @manish2788 I'm not sure I can. Apple won't approve any app that is not WkWebView, I'm now realizing I'm running into size limits with the post directly to s3 so it's not yet a solution that will work, and I can't release breaking code (our app on UIWebView works great with the AWS javascript SDK). At the moment I'm kind of stuck until I can figure this out. Am open to ideas.

My team had a similar issue.  I believe the problem is that in xhr-polyfill.js, HEADERS_RECEIVED is spelled incorrectly (HEADERS_RECIEVED).  After changing it, things appeared to work.
AWS seems to attempt to monitor that state, but it fails the check, since the const is spelled incorrectly.

That was it! Wow. Not getting those hours back :).
FYI the httpUploadProgress event doesn't fire. But it looks like that's a separate, documented issue here.


Increment version for storage/azdatalake releases

Increment package version after release of storage/azdatalake

Addressed in #23074


the demo socket server or signal server is not working anymore?

the demo socket server or signal server is not working anymore?
i mean this 'https://rtcmulticonnection.herokuapp.com:443/'

the previous url already not working in my version but i want to ask about this one
'https://webrtcweb.com:9001/'
does this server is droped?

because my version was working good using this signal server

i have try to install signal server on my server but not working and cmd is fine it show listening on 9001
and i have try this https://ip:9001/socket.io/socket.io.js
and it show the script file
but i think i need the old version of signal server maybe 3.4.6
can anyone provide me this signal server version
Thanks

when i open package file  my video call app it show  "version": "1.0.0"

Hi Khan , please i want same signal server which was working on 'https://webrtcweb.com:9001/'


Generate operator and cnumber expressions based on contractions

Given a diagram in list or tree form, function should return an operator expression for the resulting Hamiltonian.

Taken care of in the latest version.


No sudo in command to move binary into PATH

In install from binary instructions,
suggest using sudo only if permissions require it.
Fixes #1175

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/51eddf2b9ecb18cc08f8d54380f4cb242240bfaa/

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/08225893450d361531246aa1acd757ff7a931a15/

Thanks, @jseldess!
On Sat, Mar 18, 2017 at 12:40 AM, jseldess<EMAIL_ADDRESS>wrote:

Merged #1205 https://github.com/cockroachdb/docs/pull/1205.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/cockroachdb/docs/pull/1205#event-1005395017, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AA15IGW5Yu7oY-yJqrWeu7AtQ7vQ0eVGks5rm2BagaJpZM4MhHQN
.


[FEATURE] Button to show the current and replace current HTML

Button to show the content html

Hi @lucasdidur,
Could you please me with some more information? Please give an example to understand it better.
Thanks :)

Hello @lucasdidur,
I hope you're doing well! 👋
Thank you for bringing up the issue and sharing your concern. After investigating further, it seems that we currently don't have enough information to address the reported problem. However, I'm marking this issue as "Closed" for now.
If you encounter this issue again or have more details to provide, please feel free to reopen the issue, and we'll be more than happy to take another look. Your feedback is valuable to us, and we want to ensure the best possible experience for all users.
In the meantime, if you have any other questions or need further assistance, don't hesitate to reach out. We're here to help!
Wishing you a great day ahead! 😊
Thanks :)


No Response Type

53     protected handleFetchResponseError(response: Response, data?: any): Promise<any>;

I don't understand this issue. Can you clarify?

there is no import for the Response type

there is no import for the Response type

It refers to fetch's https://developer.mozilla.org/en-US/docs/Web/API/Response.
In the @orbit/jsonapi package it is polyfilled via whatwg-fetch.

Ah, yes. Right now it needs "lib": ["dom"] in tsconfig.json. I agree it is not great.


Add: Must Have Ideas (UK)

Channel Name
Must Have Ideas
Alternative Names (optional)
No response
Network (optional)
No response
Owners (optional)
No response
Country
UK
Subdivision (optional)
No response
City (optional)
No response
Broadcast Area
c/UK;r/EUR
Languages
eng
Categories (optional)
shop
NSFW
FALSE
Launched (optional)
No response
Closed (optional)
No response
Replaced By (optional)
No response
Website (optional)
No response
Logo
https://cdn-img.widilo.co.uk/img/must-have-ideas-logo.png?v=638548256962670412
Notes
YouTube link : https://www.youtube.com/live/bJuaGgMrK84?si=1ecI9a1Xblxh-pnC

Broadcast should be c/UK


[11.0][NEW] website_multi_company_blog

[11.0][NEW] website_multi_company_blog

Need a thumbnail image

There are lint issues that can be fixed
website_multi_company_blog/models/website_blog.py:3:1: F401 'odoo.api' imported but unused
website_multi_company_blog/models/website_blog.py:3:1: F401 'odoo._' imported but unused

[ ] Empty  list of websites must Grant access to any website.

[ ] Also, consider to update website multi company demo to get prepared demo for blogs too.


SetPassphraseFunction does not work,You still need to enter a password

 ctx.SetPassphraseFunction(MyPassphraseCallback); //does not work.You still need to enter a password.
ctx.PinentryMode = PinentryMode.Loopback; Adding this line of code solves this problem.

That's an intentional change with GPG 2.1 and above - You need to explicitly enable loopback pinentry mode as per the code you posted.


Dsos 2552 create ebs volume dashboard nomis

Using the AWSSupport-CalculateEBSPerformanceMetrics automation runbook, separate dashboards are created for EBS volumes to visualise:

Volume Disk IOPs
Volume Disk Throughput

IAM role EBSPerformanceMonitoringRole is used to create the EBS cloudwatch dashboards.

@shajida95 Terraform plan evalaution detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform

@shajida95 Terraform plan evalaution detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform

@shajida95 Terraform plan evalaution detected changes to resources that require approval from a member of @ministryofjustice/modernisation-platform


Fix comparing lowercase columns types to schema keys.

Fix comparing lowercase columns types (existing in tables) to schema keys.

I'll come back with a pull request in tge postgres targermt, then.Thank you for your feedback.

@mirelagrigoras this release should resolve the above issue: https://pypi.org/project/target-redshift/

This is great!Thank you so much for your time!
În Sâm, 9 feb. 2019, 02:23 Alexander Mann<EMAIL_ADDRESS>a scris:

@mirelagrigoras https://github.com/mirelagrigoras this release should
resolve the above issue: https://pypi.org/project/target-redshift/
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/datamill-co/target-redshift/pull/8#issuecomment-461991378,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AtMRVOkA-p_2Wo6Xoh5eO9yb_7jdnbcYks5vLhUbgaJpZM4anPEa
.


Fix navigation issue for nested flags in Vexillographer

📒 Description
Added UnfurledFlagItemView to Vexillographer. Sometimes changing a deeply nested flag would cause the navigation to pop back to the root view.  UnfurledFlagItemView wraps UnfurledFlagItem so that the ID can be applied to the view stopping the navigation from popping back.
CaseIterableFlagControl and  OptionalCaseIterableFlagControl now use @Environment(\.presentationMode) to be dismissed instead of a binding. Introducing UnfurledFlagItemView changed the current behaviour and this change restores that.
OptionalCaseIterableFlagControl UI was slightly changed to match CaseIterableFlagControl

📓 Documentation Plan
This change doesn't impact the public api. I'm not too familiar with the docs though so if there's something that this change impacts, let me know.
🗳 Test Plan
None at this stage. I have a sample project for testing different flag configurations which could be made into a UI test if you'd like. I also didn't do any testing on tvOS and watchOS.
🧯 Source Impact
No changes to public api, however, users that relied on the current behaviour will be impacted.
✅ Checklist

[ ] ~I've added at least one test that validates that my change is working, if appropriate~
[x] I've followed the code style of the rest of the project
[x] I've read the Contribution Guidelines
[ ] ~I've updated the documentation if necessary~

@huwr I've added a fix for that issue you mentioned today plus merged the optional fix into this one as well. If you get a chance to give it a spin that would be awesome.

@bok- I've added a small change to ios-tests.yml to select a destination based on what's available. This should get the test running for macOS 12. Any chance you can approve the workflow for this pr to see if it works?


embedded ngaut/systimemon

Since it introduces ngaut/log. and is a one-function npm-style package.

please move to the pkg.

should it be a util or whatever?

@disksing
Is it better to send a PR to the monitor project to remove the log dependence? TiDB will use this monitor and will do the same thing later. Otherwise, TiDB will use the monitor pkg in the PD util package.

reject npm-style package.
"tidb will use" does not mean "tidb is using".

no, TiDB is using.

If a lib will be used across multi projects, it should be independent, no matter how little it is.

to create a new repo: pingcap/pkg with these small packages

Maybe we should discuss with @ngaut at first. If he agrees on removing the log and letting the users handle it themselves, it is better.

Or we can fork this repository and change it ourselves.
IMO, I prefer using individual repositories.  /cc @coocood

I think fork naugt/log and naugt/systimemon under pingcap organization is better.


atlas-operator collation mismatch when using MariaDB

Hello,
I've been trying to use atlas-operator on k8s to handle migrations on a MariaDB database.
By default the operator tries to spin up a database instance as dev db. For MariaDB targets the instance created is MySQL, which uses the utf8mb4_0900_ai_ci collation, while our db instead uses utf8mb4_general_ci. The only way to make it work seems to be to explicitly set collation on the schema, and set policy.diff.skip.modify_schema: true.
Is this the expected behaviour, or am I missing something?
This is the configuration I've deployed on my cluster:
apiVersion: db.atlasgo.io/v1alpha1
kind: AtlasSchema
metadata:
  name: myapp
spec:
  urlFrom:
    secretKeyRef:
      key: url
      name: mysql-credentials
  schema:
    configMapKeyRef:
      key: schema.sql
      name: mysql-schema
  policy:
    lint:
      destructive:
        error: true
    diff:
      skip:
        drop_column: true
        modify_schema: true
---
kind: ConfigMap
apiVersion: v1
metadata:
  name: mysql-schema
data:
  schema.sql: |
    create table users (
      id int not null auto_increment,
      name varchar(255) not null,
      email varchar(255) unique not null,
      short_bio varchar(255) not null,
      primary key (id)
    ) collate='utf8mb4_general_ci' charset='utf8mb4';

Thanks,
Marco

Hey @marc0777, thank you for report this. We'll soon support for custom docker image on devdb, also allow to pull the image from private registry; It should resolve your issue with different environment.

Hello @marc0777, we already support devdb for MariaDB, please upgrade the operator and give a try. Thannks


[UFC-1120] Update Communication Patterns document to include Runtime Operations

Since 9.24, we are using Runtime Operations for most of the data-related communication between the Mendix Client and Runtime Server.
The Communication Patterns document is updated to explain how the data communication works now, explain what Runtime Operations are and how to debug them.

Hi, I already made a MR, but this first needs a technical review from my team. Will update once it is ready to be reviewed by you!

Hey @MarkvanMents, it has been approved by my team and is ready for further review

Thanks Mark! Your changes look good to me and I answered the questions 👍

You're welcome, thanks for the feedback. It is ready to be published!


Add Logging

Since logging is such a central construct we should add it to pop.
This should expose an option to the conf system that allows for logging options to be dynamically added and then for those options to show up in hub.OPT['pop']. Then starting up the logging system becomes automatic from within pop.conf

and no multiprocess logging!!!

Multiprocess logging and threading are the enemies, but we need to be able to make logging that works with multiple processes. Pop also needs to be able to natively support multiprocessing as cleanly as possible. Also, any functions that are run in a multiprocess should not need to call logging in any special way, to follow the POP way all functions need to remain agnostic regardless of where they are called.
So here is my logging proposal:
For logging, we mandate that the proc system is used for multiprocessing. We can then have a very simple logger get implemented as the main logger, no asyncio, threading or multiproc needed. Then we create a logger that gets instantiated when a proc process gets spun up. this logger will intercept logging calls as usual, but it will send them back to the main process that made the proc pool via the com channel used by proc. The main process will then route the log request through the standard logging system.
It is therefore simple and does not require that the user of pop is at all aware of how logging works, it just works, even for multiproc.

I will open another issue to cover adding logging to proc


#123 Use native Ecore EBigInteger/Decimal instead of ad-hoc custom types

+1, thank you for correcting this one!


Show deleted files finalize

 Implement a toggle in S3Commander to show deleted files and folders.

Overall the code looks reasonable. I would have modified the getContents method or added a new one called getVersionedContents which could be used to retrieve all available versions of each file and folder. Maybe we'll come back and revisit this later before making the next major release.


KAFKA-6761: Part 1 of 3; Graph nodes

This PR supersedes PR #4654 as it was growing too large. All comments in that PR should be addressed here.
I will attempt to break the PRs for the topology optimization effort into 3 PRs total and will follow this general plan:

This PR only adds the graph nodes and graph. The graph nodes will hold the information used to make calls to the InternalTopologyBuilder when using the DSL. Graph nodes are stored in the StreamsTopologyGraph until the final topology needs building then the graph is traversed and optimizations are made at that point.  There are no tests in this PR relying on the follow-up PR to use all current streams tests, which should suffice.
PR 2 will intercept all DSL calls and build the graph.  The InternalStreamsBuilder uses the graph to provide the required info to the InternalTopologyBuilder and build a topology.  The condition of satisfaction for this PR is that all current unit, integration and system tests pass using the graph.
PR 3 adds some optimizations mainly automatically repartitioning for operations that may modify a key and have child operations that would normally create a separate repartition topic, saving possible unnecessary repartition topics.  For example the following topology:

KStream<String, String> mappedStreamOther = inputStream.map(new KeyValueMapper<String, String, KeyValue<? extends String, ? extends String>>() {
            @Override
            public KeyValue<? extends String, ? extends String> apply(String key, String value) {

                return KeyValue.pair(key.substring(0, 3), value);
            }
        });

        mappedStreamOther.groupByKey().windowedBy(TimeWindows.of(5000)).count().toStream().to("count-one-out");
        mappedStreamOther.groupByKey().windowedBy(TimeWindows.of(10000)).count().toStream().to("count-two-out");
        mappedStreamOther.groupByKey().windowedBy(TimeWindows.of(15000)).count().toStream().to("count-three-out");

would create 3 repartion topics, but after applying an optimization strategy, only one is created.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@guozhangwang @mjsax @vvcephei for reviews

updated this

failures unrelated
retest this please

adding @dguy  for reviews as well

updated this

updated this

@vvcephei regarding keeping a copy of the original topology and generating error messages, I like the idea, but I'll need to address a little later in the process.

@bbejeck I've made a pass over your replies (thanks!) and I think the only ones that I'm not fully understanding is due to the fact that I've not seen the full picture, but only the first PR yet, namely:

In some graph nodes we are passing processor node names, KTableSource objects, which to me are physical plan related classes and should not be included in the logical plans (e.g. I was thinking we should be only creating processor node names when we are actually generating the processor node).

We are keeping a parent name, plus parent node reference, which is a bit redundant to me.

ProcessorParameters is used to collapse multiple parameters, while in some places we still have name and StateStoreSupplier as two separate parameters, we could just reuse it (but again, I'm not fully understanding why we need to store the name if it is for the processor name).

More generally, today there are multiple categories of "names", i.e. processor node name for physical processor node, streams graph node name for logical graph node, state store name, topic name, we need to clearly distinguish them by the field names, otherwise it could be quite confusing. For example, in RepartitionNode, sourceName -> sourceProcessorNodeName, sinkName -> sinkProcessorNodeName, processorName -> mapProcessorNodeName: but I'm still not clear why the node names have to be determined beforehand..
Anyways, I can go ahead and merge the PR as is if you think these questions are better answerable in the follow-up PRs.

@guozhangwang thanks for the comments.
Thinking about things some more, I believe the questions will be answered better in the next follow-up PR. So if we can merge as is that is fine by me.

retest this please


Use symbol provider from new language server to place code lenses in tests.

(fixes #1948)

[x] Title summarizes what is changing
[x] Has a news entry file (remember to thank yourself!)
[x] Has unit tests & system/integration tests
[x] Any new/changed dependencies in package.json are pinned (e.g. "1.2.3", not "^1.2.3" for the specified version)
[x] package-lock.json has been regenerated by running npm install (if dependencies have changed)

This is a derivative of @DonJayamanne's #2197.  Differences:

removes extra Jedi-related changes
PythonSymbolProvider -> JediSymbolProvider
SymbolProvider -> LanguageServerSymbolProvider (and moved to src/client/providers/symbolProvider.ts)
flattens the symbol data returned from the language server
works around a bug in the language server (off-by-one kind)
adds tests for LanguageServerSymbolProvider

I used the repro case detailed in #1948. [1]
[1] https://github.com/Microsoft/vscode-python/issues/1948#issuecomment-417112026

Looks like the data returned from the language server doesn't work quite right.  I'll open an issue (or two) as soon as I can.  I'm also going to work around the problem for now.

I've opened Language Server issue for things I've had to work around:

Microsoft/python-language-server#1
Microsoft/python-language-server#2

Other than that, I had to flatten the data returned from the language server. :)

Approving the changes after a fun academic conversation with @ericsnowcurrently on the cost/benefit and the true costs of his solution vs. my proposal. We are only ever traversing a single file gathering these symbols. Unless that single file is wonderfully complicated in terrible ways, the perf of this solution is not going to be a problem.
:+1:

I'm going to merge this with only a couple of Don's concerns still open.  We can address those separately.


add option to install helm registry apps in config by channel

currently in helmConfigs, we give the user an option to specify the version of the chart they'd like, which we pass to --version in run-services.yaml .
Now that we are using quay to host our charts, the user has the option of specifying a channel instead, such as :stable.
(referenced here)
Do we want to include this option in helmConfigs?  Yes

fixed by #1033


Remove RGW Objectstore Unable to create buckets

this issue was fixed by software update

This looks quite good; however, could you add a short statement to clarify that there are no known issues at present? It would also be helpful to include a link to our support page for users to report any problems they might find. Thanks for your contribution.


A collection of best practices

Documentation
Now we need a site to show how to use zeit-ui/react and best practices, the following examples may be included:

Header,  sticky header, double height header, header with dropdown menus...
Footer, fixed footer, full footer...
Sign in templates
Complex form layout...
Other things that are not easy to display in the current document site

Reference sites

pro.ant
antd admin
element-ui-admin
material-ui-templates
tailblocks

Others:
Request from #249

I will not start this work recently, let me know If anyone wants to take it.

It looks like pro.ant link is broken. This link might be what you want as a reference.

This is really much needed I'm getting started with the Library hope soon I can give something in return does anyone started working on this issue??

Hi there, I finished a project I was working on, I was using geist-ui and I like it a lot, so as I don't have much experience in React I would like to create this template gogo react template with geist ui design system to strengthen my skills in react. I think it is the same context as this issue so let me know how we can do it.

@muco-rolle
You can create an open-source project, the following forms are available:

Several components are combined into a common module
Customize some existing components
Run an online website to show the styles of these combinations
It is better to show the code for other users to copy
...

I don't think you need to worry too much about professionalism, I believe it will help a lot of people to show you your experience and the way you combine components.
If your project is a good and open-source, I would like to add your open source project link on the home page for everyone's reference.

For everyone:
If you want to demonstrate your experience with Geist UI, or any best practices, it's also a good idea to quickly create a Git Gist, then leave your link and I'll add it.

This would actually be much appreciated. Started using the component library yesterday.


[CT-2533] [Feature] Support sqlparse 0.4.4

Is this your first time submitting a feature request?

[X] I have read the expectations for open source contributors
[X] I have searched the existing issues, and I could not find an existing issue for this feature
[X] I am requesting a straightforward extension of existing dbt functionality, rather than a Big Idea better suited to a discussion

Describe the feature
sqlparse <0.4.4 contains a moderate security vulnerability: https://github.com/advisories/GHSA-rrm6-wvj7-cwh2
dbt-core has started to pin to <0.4.4 in https://github.com/dbt-labs/dbt-core/pull/7394 which makes it difficult for packages using dbt to update to the fixed version.
Would it be possible for dbt to support v0.4.4?
Describe alternatives you've considered
The answer might just be "no". In which case we will have to wait until a new version of sqlparse addresses the issue. It does not seem like there is anything upstream sqlparse tracking work to resolve https://github.com/dbt-labs/dbt-core/issues/7396. So, if the answer is no, then I would hope the appropriate effort upstream can be made so we have a path forward eventually.
Who will this benefit?
All users of dbt-core who want to update to a non-vulnerable sqlparse version.
Are you interested in contributing this feature?
No response
Anything else?
No response

+1 even a moderate security vulnerability can be a problem for some organizations.

Gonna try reproduce the issue and look if I can open a PR at sqlparse. Thanks for providing context @dbeatty10

Another user just reported (#7521) seeing the same issue with sqlparse==0.4.4 on Debian GNU/Linux 11 (bullseye)

@MauroLuzzatto provided some very useful information here, namely:

I have also seen the error disappearing after retriggering the GHA run.

So maybe there's some kind of state that is available to subsequent executions that isn't available to the first one in a fresh environment?
This is the context reported by @MauroLuzzatto:

So far, I have only seen the errors on

python:3.8-slim-bullseye
Ubuntu: 22.04.2 LTS

And not in any local development environment:

macOS Ventura Version 13.3.1

However, that might also be connected to the fact that the dbt and other modules are installed there (CI and deployment) on every run.

We should replace sqlparse with a manual solution.

💡 @emmyoop do we have an issue in GitHub to replace sqlparse with a manual solution? Or would that issue need to be created?

Closing in favor of #7791

Reopening per https://github.com/dbt-labs/dbt-core/issues/7791#issuecomment-1609468046

Looks like #7919 has pivoted back to use sqlparse 0.4.4 as well

New fix in https://github.com/dbt-labs/dbt-core/pull/8215


Misleading output for a taken name

When checking estar the output is the following:
prantlf@macik:~ npm-name estar
Error: Package `estar` doesn't exist
    at /Users/prantlf/.nvm/versions/node/v14.17.0/lib/node_modules/npm-name-cli/node_modules/package-json/index.js:62:11
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
    at async squatter (/Users/prantlf/.nvm/versions/node/v14.17.0/lib/node_modules/npm-name-cli/node_modules/squatter/index.js:39:18)
    at async file:///Users/prantlf/.nvm/versions/node/v14.17.0/lib/node_modules/npm-name-cli/utilities.js:16:29
    at async Promise.all (index 0)
    at async checkNames (file:///Users/prantlf/.nvm/versions/node/v14.17.0/lib/node_modules/npm-name-cli/utilities.js:12:16)
    at async file:///Users/prantlf/.nvm/versions/node/v14.17.0/lib/node_modules/npm-name-cli/cli.js:79:19

Saying "Package estar doesn't exist" is wrong, because although there is no package with the name estar, the existing package es-tar will prevent the name estar from being used by another package.

// @sholladay FYI

@sindresorhus, would you mind sharing your reason for closing this issue?

Please look at the referenced commit. This was fixed.

A, thanks! I am sorry I missed the link to the commit.


Extend Type fails if type implements Node, depending on file alphabetical order

When extending a type that implements Node and if the file that extends the type comes before the file that declares the type in alphabetical order, then the merge fails.
Person.graphql
type Person implements Node {
  name: String!
}

ExtendedPerson.graphql
extend type Person {
  age: Int!
}

For the schemas above, since ExtendedPerson comes before Person in alphabetical order, the merge will fail. If we rename ExtendedPerson to zExtendedPerson it will come after Person in alphabetical order and the merge will succeed.
It's important to note that the order of the files only matters when the type implements Node, otherwise the merge succeeds as expected.
Repro command:
go run github.com/mununki/gqlmerge --indent=2s test/*.graphql test/t/s.graphql

Error:
🎉 [test/extendedPerson.graphql] Total 1 GraphQL files found!
🎉 [test/person.graphql] Total 1 GraphQL files found!
panic: lib.Error("Duplicated Types: Person(test/extendedPerson.graphql:1:12) and (test/person.graphql:1:5)")

goroutine 36 [running]:
github.com/mununki/gqlmerge/lib.errorf(...)
        /go/pkg/mod/github.com/mununki/gqlmerge@v0.2.13/lib/parse.go:14
github.com/mununki/gqlmerge/lib.(*Schema).MergeTypeName(0x1400012e1c0, 0x0?)
        /go/pkg/mod/github.com/mununki/gqlmerge@v0.2.13/lib/schema.go:565 +0x6ec
created by github.com/mununki/gqlmerge/lib.mergeSchemas in goroutine 1
        /go/pkg/mod/github.com/mununki/gqlmerge@v0.2.13/lib/merge.go:77 +0x88c

Thank you for opening an issue with a detailed explanation.

Can you try with newly relased v0.2.14?

Thank you @mununki it worked perfectly!

Thank you @mununki it worked perfectly!

Thank you!


how to use gpu for training.

sorry , sent on wrong project

It my fault,
I missed the tf version


add source/resolved addresses to net events

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
What is the new behavior?

Other information

Codecov Report

Merging #125 (a6154ee) into master (58ccc6a) will decrease coverage by 25.55%.
The diff coverage is 85.43%.

@@             Coverage Diff             @@
##           master     #125       +/-   ##
===========================================
- Coverage   44.49%   18.94%   -25.56%
===========================================
  Files         124      104       -20
  Lines       13354    10689     -2665
===========================================
- Hits         5942     2025     -3917
- Misses       7093     8491     +1398
+ Partials      319      173      -146

Flag
Coverage Δ

1.13.x
?

1.14.x
?

1.15.x
?

1.16.x
?

1.17.x
18.94% <85.43%> (-25.49%)
:arrow_down:

e2e
18.94% <85.43%> (-25.01%)
:arrow_down:

integration
18.94% <85.43%> (-25.01%)
:arrow_down:

macOS-latest
?

ratelimiter
15.59% <85.43%> (+0.22%)
:arrow_up:

scripting
14.44% <85.43%> (+0.22%)
:arrow_up:

table
?

ubuntu-latest
18.94% <85.43%> (-35.70%)
:arrow_down:

unit
?

windows-latest
?

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

Impacted Files
Coverage Δ

log/driver.go
62.21% <78.57%> (-14.88%)
:arrow_down:

internal/net/conn.go
88.23% <88.23%> (ø)

config/grpc_dial_options.go
84.21% <100.00%> (+4.21%)
:arrow_up:

internal/conn/conn.go
61.86% <100.00%> (-16.40%)
:arrow_down:

internal/table/trailer.go
0.00% <0.00%> (-100.00%)
:arrow_down:

internal/scheme/options.go
0.00% <0.00%> (-100.00%)
:arrow_down:

internal/table/keep_in_cache.go
0.00% <0.00%> (-100.00%)
:arrow_down:

internal/table/client.go
0.00% <0.00%> (-85.72%)
:arrow_down:

internal/table/transaction.go
0.00% <0.00%> (-85.11%)
:arrow_down:

internal/table/data_query.go
0.00% <0.00%> (-80.77%)
:arrow_down:

... and 73 more

Continue to review full report at Codecov.

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


Unexpected token ...

First off I'm not an expert concerning electron, so please forgive me if this is the wring place to raise that issue.
I'm trying to build this app and when running npm install this error occurs
node vendor/rebuild.js --instant

Rebuilding native modules for electron
/home/andreas/Diverses/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/spawn-rx/lib/index.js:139
    let cmdArgs = ['/C', exe, ...args];
                              ^^^

SyntaxError: Unexpected token ...
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:374:25)
    at Object.Module._extensions..js (module.js:417:10)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
    at Module.require (module.js:354:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/home/andreas/Diverses/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/electron-rebuild/lib/rebuild.js:38:16)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
    at Module.require (module.js:354:17)
    at require (internal/module.js:12:17)
    at Object.<anonymous> (/home/andreas/Diverses/Google-Play-Music-Desktop-Player-UNOFFICIAL-/node_modules/electron-rebuild/lib/cli.js:24:16)
    at Module._compile (module.js:410:26)

I guess this has something to do with the commit you guys pushed 4 days ago?
Thanks

Was using outdated nodejs version :( Sorry for bothering

Thanks for posting the solution!

What version of node are you using? I'm using node 4.1.1, and I get that error. It worked before though, so it seems very strange.


Build failure: pkgsStatic.cmake

Steps To Reproduce
Steps to reproduce the behavior:

build pkgsStatic.cmake

Build log
https://gist.github.com/lolbinarycat/96175a03a9ce9f1b71842a1b77fca1bd
Notify maintainers
@ttuegel @LnL7 @AndersonTorres

Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.7.10, NixOS, 23.11 (Tapir), 23.11.5742.219951b495fc`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - channels(binarycat): `"stable-23.05, unstable"`
 - channels(root): `"nixos-23.11"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Add a :+1: reaction to issues you find important.

This is already known, we are working on it.
Below are some links:

Duplicate of https://github.com/NixOS/nixpkgs/issues/271428.


Save new entity with primary key

The save method checks if there is a primary key in the input fields. If there is a primary key, it updates the entity if not, it creates a new one. It's incorrect behavior because a primary key can be passed to create a new entity.
https://github.com/platformatic/platformatic/blob/490c9167cb69f505d32ff8a385141253d97c8aba/packages/sql-mapper/lib/entity.js#L69

This is a tradeoff of the current implementation and a deliberate choice. It assumes primary keys are managed and set by the server and not by the client - it's a best practice. This is the decision I made when making save an upsert-like operation.

We can use IF EXISTS or check it manually. It's super confusing right now. I think the cases when you have a primary key as a foreign key from another DB or just uuid from your business logic a pretty common.
Plus insert method works correctly.

It's super confusing right now. It doesn't throw an error or something.

What happens right now? It should not be confusing.

Do you think it could be possible to implement it with IF EXISTS checks (or analog) on most of our supported databases? I'm worried about query round trip time when inserting/updating a large amount of data.

What happens right now?

Nothing, you call the save method with a primary key in the inputs. It doesn't insert a new entity and returns undefined.
If I call the save method with a primary key, I already know all column values, so most people would not check the return value.

If I call the save method with a primary key, I already know all column values, so most people would not check the return value.

This is the reason why we should fix this.


Don’t use chunkhash in development

As recommended by both Tobias and Kees from the webpack core team in serval issues, one of them is: https://github.com/webpack/webpack-dev-server/issues/377#issuecomment-241258405
Also fixes a race condition with styled-jsx CSS changes not being hot reloaded on the server.

Added a test for the issue @rauchg ran into with dynamic imports. Tested locally on canary the test fails, after this patch it passes.


Basic API improvements - general groupby

Add a possibility for user to specify more custom groupby  that based on explicitly providing ids of objects. For example, groupby lightcurves that have same or similar number of observations in a specific band.

Closed by #81


[Request] Ability to filter out MCreator mods

Hi! I love your tool, I use it all the time and recommend it to people constantly. So firstly, thank you VERY much for making it!
Secondly, I would love if there was a feature to exclude mods with the MCreator category.
I've tried sorting it by adding every category EXCEPT MCreator, but then it doesn't show any mods, even with max page size: https://i.imgur.com/deYc3jl.png
I know this won't filter out mods which don't add that category, but it would at least make things a little easier for me. Thank you!

Click twice on any checkbox to exclude it.
For example:
https://superstormer.github.io/cf-search/?categoryId=6484&sortField=2 (default)
https://superstormer.github.io/cf-search/?categoryId=6484&sortField=2&filtersExclude=4906 (excluding MCreator)

Additionally, selecting two visual filters means filter1 AND filter2, not filter1 OR filter2 (FWIW, this is also how modrinth handles filters).


CytoTRACE tutorial outdated

Description
If I am not mistaken, the API for the CytoTRACE kernel changed with theislab/cellrank#791. Previously, the all statistics were calculated when instantiating the kernel, i.e.,
ctk = CytoTRACEKernel(adata)

To achieve the same behaviour, the following code needs to be used
ctk = CytoTRACEKernel(adata).compute_cytotrace()

The tutorial has not yet been updated accordingly.

closed via #65


feat: Add sidekiq_host_processes gauge metric

Add a metric to show number of processes labeled by host name where the process runs and the quiet state.
This metric can be used to trace long running quiet  processes when einhorn is being used to reload sidekiq. Einhorn quiets old processes and waits for them to finish their jobs indefinitely in non-blocking way.
https://github.com/contribsys/einhorn

@Strech rearranged the metrics in template file

👋🏼 Hey @barthez thanks a lot for the release 0.2.0 now it's published 💎

Thank you very much!


Add registry-specific credential helper support, take 2

fixes https://github.com/docker/docker/pull/23496
Implemented https://github.com/docker/docker/pull/23496
Do-over of https://github.com/docker/docker/pull/24914 because I completely crapped the bed merging/responding to CR feedback. My bad!
Started the implementation PR as per @dmcgowan's advice during distribution meeting, so that developers can comment on something concrete.
This change adds a "credentialHelpers" member to the config file where users can specify credential helpers on a per-registry basis. This does not over-load the "credsStore" field, which now acts as the 'default' credential store in the event that one is not explicitly specified for the registry in question.
Signed-off-by: Jake Sanders<EMAIL_ADDRESS>

@thaJeztah @dmcgowan
Sorry!

@dmcgowan's previous comment

I am OK with the design, there are a few relevant issues which effect its usefulness though. These aren't blockers but should be kept in mind and hopefully find someone interested in taking them on.

There is no config subcommand, this setting needs to be done by manually editing a JSON file or an external tool
Having the scheme in registry names still seems to mess up the credential store, only effects docker login https://something, see #22910
docker build sends all the credentials up to the engine! This really needs to be fixed to only send up the credentials need to pull the base image. However as is this makes doing docker build with credential store enabled much slower.

No worries, poo poo happens :smile:

Think it's OK to begin the process of eliminating the email field? It's scheduled for deprecation in 1.13 anyway and I can do the work in auths pretty easily to make the behavior more intuitive from what you'd expect from the credential store API.

I think the email deprecation works needs to be separate from this change. Do you think it would help this implementation at all? I don't see it as directly related. The records in the auth config will still need to be set in order to know which keys to pull from the credential store. As for the bug I mentioned before, I might test this later but to my knowledge there is no tests for doing a docker build which does a pull from a private registry using the credential store.

It's directly related in the the email field is the only reason why native stores touch the docker config at all; The store API allows to poll the stores directly for the credentials that they contain, rather than maintaining a secondary list. That was my confusion, the internal helpers oddly leveraged the existing 'auths' when performing a GetAll instead of the (old) GetAll API on the helper or the new List -> foreach Get

No, I didn't see this in testing, but then again I also had a docker config that was full of GCR entries in auths because of gcloud docker

I think this could be solved then by ensuring that the list is first populated from the auth configs, then ensure the credential stores auths are loaded using the List method. Since none of the credential stores are storing email it is fine to overwrite, the api has no use for it.

Made a PR for the credential helper client.List, will make corresponding changes to the CLI code when it gets accepted.

Looks like a bad rebase, please rebase off master and update

sweet jesus, I swear I do this for a living.

rebased, still waiting on #26354 for this change to make sense

@KingEmet https://github.com/docker/docker/pull/26354 was merged.

Thanks! Is this ready to go too?

Ping, would be super duper sweet to get this through CR in time for 1.13

ping @runcom @aaronlehmann PTAL

fixed the nits, credentialHelpers -> credHelpers as the json key

ping @aaronlehmann @dmcgowan ptal

LGTM

C'mon buzzer beater! Thanks, y'all.

LGTM

ping @KingEmet sorry for the delay, could you rebase this?

done

Looks like I overlooked the docs review for this one; I think this needs changes to;
https://github.com/docker/docker/blob/master/docs/reference/commandline/cli.md#configuration-files
and
https://github.com/docker/docker/blob/a89f8f2d9318984dedc291cea8dca6fecf50c9e5/docs/reference/commandline/login.md#credentials-store
To describe the new functionality in the configuration file; could you do a follow up for those changes?

ping @KingEmet, looks like I was trigger happy indeed (see previous comment)

sure, I'll make a new commit for the docs (probably later than today, I'm on call ATM)

PR made for the docs


Adapt milestones within this repository

Description
not sure if it is by purpose (if yes, where does it come from?) or a bug, but the defined milestones seem not be correct.

In my opinion it should be 24.03 and 24.06. And a question to "Due by" -> What is it for?

Hi @stephanbcbauer was updated,

first editing was directly in the change of the CalVer and Dates was not communicated or know be me...
also modified the Views in the Release Board


Generalized RowSet generator

:mag: Description
Issue References 🔗

As described.
Describe Your Solution 🔧

Introduced a generalized RowSet generator BaseRowSetGenerator

extract common methods for looping and assembling the rows to TRowSet
support generation for either column-based or row-based TRowSet

Each engine creates a sub-generator of  BaseRowSetGenerator

focus on mapping and conversion from the engine's data type to the relative Thrift type
implements the schema data type and column value methods
create a generator instance instead of the previously used RowSet object, for isolated session-aware or thread-aware configs or context, eg. Timezone ID, and the Hive date formatters.

This PR covers the TRowSet generation for the server and the engines of Spark/Flink/Trino/Chat, except the JDBC engine which will be supported in the follow-ups with JDBC dialect support.

Types of changes :bookmark:

[ ] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Test Plan 🧪
Behavior Without This Pull Request :coffin:
No behavior changes.
Behavior With This Pull Request :tada:
No behavior changes.
Related Unit Tests
CI tests.

Checklists
📝 Author Self Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] This patch was not authored or co-authored using Generative Tooling

📝 Committer Pre-Merge Checklist

[ ] Pull request title is okay.
[ ] No license issues.
[ ] Milestone correctly set?
[ ] Test coverage is ok
[ ] Assignees are selected.
[ ] Minimum number of approvals
[ ] No changes are requested

Be nice. Be informative.

Codecov Report
Attention: 43 lines in your changes are missing coverage. Please review.

Comparison is base (4c029f9) 61.20% compared to head (8af2825) 61.33%.

:exclamation: Current head 8af2825 differs from pull request most recent head a7cc1bc. Consider uploading reports for the commit a7cc1bc to get more accurate results

Files
Patch %
Lines

...org/apache/kyuubi/sql/schema/RowSetGenerator.scala
17.07%
26 Missing and 8 partials :warning:

...kyuubi/engine/schema/AbstractRowSetGenerator.scala
82.00%
8 Missing and 1 partial :warning:

Additional details and impacted files
@@             Coverage Diff              @@
##             master    #5851      +/-   ##
============================================
+ Coverage     61.20%   61.33%   +0.13%
  Complexity       23       23
============================================
  Files           609      611       +2
  Lines         36281    36236      -45
  Branches       4976     4974       -2
============================================
+ Hits          22204    22227      +23
+ Misses        11671    11613      -58
+ Partials       2406     2396      -10

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Thanks, merged to master (1.9.0).


Microsoft Windows App SDK - winrt/c++

Can I use SciChart with Microsoft Windows App SDK - winrt/c++???

Hi there,
Currently SciChart supports WPF framework only, so you can use SciChart in a WPF or WinForms Application (thought the WPF ElementHost control). Unfortunately, WinUI 3 Apps don't fully support WPF at the moment, and SciChart cannot be used within such apps.
However, it is possible to use some of Microsoft Windows App SDK APIs in WPF Apps, so you may consider creating a WPF App:
https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/wpf-plus-winappsdk
Hope this answers you question!

Thanks, I build my own chart based on Win2d and it works well, but it is a lot work.
For me it is definitely not a solution to use c#.


fix: lubuild computed integrity not match when run yarn install

Description
Update the lubuild's computed integrity.
lubuild package in myget was covered today.

Fixes #1609

@lei9444 Help us understand why this happened?


Unable to connect athena using DBeaver

Description
I have created 4 connections to different athena environments (different AWS accounts) but I am able to connect only one connection at a time. for remaining connections, I get following error and If I disconnect from first connection and try to connect second connection, it works..
You are not authorized to perform: athena:StartQueryExecution on the resource. After your AWS administrator or you have updated your permissions, please try again. (Service: AmazonAthena; Status Code: 400; Error Code: AccessDeniedException; Request ID: 50bef882-f512-4544-abc8-a36c6a25be0c; Proxy: null)
DBeaver Version
23.0.2
Operating System
Windows
Database and driver
No response
Steps to reproduce
Just try to connect other connection when one connection is already active.
Additional context
No response

Hello @Dnirmania,
Can you please see which query has failed to execute in the query manager?
You can find more information here: https://github.com/dbeaver/dbeaver/wiki/Query-Manager

Hi @ShadelessFox
Thank you for your response!
I have already checked log file of DBeaver. its filled with similar error messages and Using query manager doesn't make any sense because I am unable to connect Athena..
I would like to add one more thing here, I am not using any hardcoded credentials like Access and secret key to connect Athena..   We have configured SSO for athena with the help of Azure AD. I have also verified from AWS end that athena is using same AWS IAM role whether connect fails or succeed.  I am using following class..
AwsCredentialsProviderClass: com.simba.athena.iamsupport.plugin.BrowserAzureCredentialsProvider

I just got few more records which are not useful..


git file diff theme Incompletes coverage

theme version 1.2.1
idea version 2020.3
on git file diff  window, theme Incompletes coverage.

Hi! Strange, it's not like this for me, is it the same for other languages too?

Do you maybe have any other appearance extensions installed?

Looks very similar to #14, actually

Hi, I'm sorry, I'm very busy these two days,  so can't reply in time . actually，theme Incompletes coverage because of another theme，uninstall， work perfect. Thank you.

Interesting, I just tried installing Cyan Light Theme, however it doesn't change anything if it's not enabled. But good that it works now!


Exception when working directory is not exisiting anymore

Description
An FileNotFound exception is raised when the working folder set in the IDE is not existing anymore (ie. folder has been deleted or moved) and you open a file.
It also happens when selecting a working directory from the drop-down list which is not existing anymore.
What steps will reproduce the problem?

Select a working folder in the IDE

Delete or move that folder

Press Open File icon

Delete or move a folder that is in the drop-down list of working folders

Select that folder in the drop-down list

What is the expected output? What do you see instead?
No exception, maybe switch to a default folder.
Please provide any additional information below
File "/home/wvogl/virtenv_3.6/lib/python3.6/site-packages/spyder/plugins/workingdirectory.py", line 286, in chdir
os.chdir(directory)
FileNotFoundError: [Errno 2] No such file or directory: '/home/wvogl/workingFolder'
Version and main components

Spyder Version: 3.2.3
Python Version: 3.6.3
Qt Versions: 5.9.1, PyQt5 5.9 on Linux

Dependencies
pyflakes >=0.6.0 :  1.6.0 (OK)
pycodestyle >=2.3:  2.3.1 (OK)
pygments >=2.0   :  2.2.0 (OK)
pandas >=0.13.1  :  0.20.3 (OK)
numpy >=1.7      :  1.13.3 (OK)
sphinx >=0.6.6   :  1.6.4 (OK)
rope >=0.9.4     :  0.10.7 (OK)
jedi >=0.9.0     :  0.11.0 (OK)
psutil >=0.3     :  5.3.1 (OK)
nbconvert >=4.0  :  5.3.1 (OK)
sympy >=0.7.3    :  1.1.1 (OK)
cython >=0.21    :  0.27.1 (OK)
qtconsole >=4.2.0:  4.3.1 (OK)
IPython >=4.0    :  6.2.1 (OK)
pylint >=0.25    :  1.7.4 (OK)

Seems to be fixed in 3.2.4.

Yep, we fixed this error in 3.2.4.


Reference docs: OAS Resource generation - kuadrantctl

What
Create some detailed reference docs for kuadrantctl commands & functionality, covering general usage but also OAS/GWAPI resource generation.
How
Some existing guides can be used / extended to flesh this content out:
https://github.com/Kuadrant/kuadrantctl/blob/main/doc/generate-gateway-api-httproute.md
https://github.com/Kuadrant/kuadrantctl/blob/main/doc/generate-kuadrant-auth-policy.md
https://github.com/Kuadrant/kuadrantctl/blob/main/doc/generate-kuadrant-rate-limit-policy.md
https://github.com/Kuadrant/kuadrantctl/blob/main/doc/openapi-kuadrant-extensions.md

[ ] Create a new sub-section beneath the components nav on docs.kuadrant.io for kuadrantctl
[ ] Link to the above guides as reference material and extend as we see fit

Seperately, we'll build out tutorials for usage of kuadrantctl - this issue is only concerned with reference docs for kuadrantctl:
https://github.com/Kuadrant/kuadrantctl/issues/53
https://github.com/Kuadrant/docs.kuadrant.io/issues/63]

Related: https://github.com/Kuadrant/kuadrantctl/pull/54


Bug: Disable test while ATSD bug will not fixed

Codecov Report

Merging #25 into master will decrease coverage by -0.24%.
The diff coverage is 88.23%.

@@             Coverage Diff              @@
##             master      #25      +/-   ##
============================================
- Coverage     48.93%   48.69%   -0.24%
+ Complexity      439      437       -2
============================================
  Files            84       84
  Lines          2152     2152
  Branches        122      122
============================================
- Hits           1053     1048       -5
- Misses         1036     1041       +5
  Partials         63       63

Impacted Files
Coverage Δ
Complexity Δ

.../main/java/com/axibase/tsd/client/DataService.java
69.23% <0%> (-3.3%)
23 <0> (-1)

...axibase/tsd/model/data/command/GetSeriesQuery.java
74.24% <93.75%> (-3.04%)
25 <15> (-1)

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 8d11830...1dadc57. Read the comment docs.


Remove unused variable in Handler

I found the unused variable in Handler func.

Sorry reply later.
Thank you!!!


Cancel embedding operations for hybrid search after a deadline is met

Currently, any embedding request Meilisearch makes to an embedding server will be retried up to 10 times, with exponential backoff.
The exponential backoff has a time limit of 2 minutes, so the longest theoretical wait time is about 20 minutes.
For indexing, this may be fine: when embedding millions of documents, it might be preferable to sometimes wait multiple minutes rather than cancel the whole operation.
For search, however, this is too long.

For hybrid search, we want to fallback to full-text search after one second.
For pure semantic search, we want to error after a couple seconds.

This task is about implementing that change. No API change is expected at this point.

in v1.12 in #4900


rewrite screenshots blocks timestamp with creation time

Currently screenshot block timestamp is based on screenshot blob construction time instead of when the screenshot was taken. As a result, the screenshot timestamp would be greater than the journey/end timestamp which is not true.

Wrong order
-- step/end timestamp
-- journey/end timestamp

--- screenshot/block timestamp
--- screenshot/block timestamp

-- end timestamp

Correct order
-- screenshot/block timestamp
-- screenshot/block timestamp

-- step/end timestamp
-- journey/end timestamp
-- end timestamp

Assuming the screenshot construction takes some amount of time, won'y this cause the step to appear to take longer because we’re counting the compute time to generate the screenshot?

@paulb-elastic Screenshot block construction logic is unchanged and it happens only after all the steps have been completed, so it wont get accounted in to the step/end time nor the journey/end time which we fixed recently as customers are seeing increased journey duration.
The idea here is to use the timestamp of when the screenshot taken vs when the screenshot was processed (converting to blocks). We are moving to former approach.

Thanks @vigneshshanmugam

7.16 Uptime UI looks good with good with beta.17. Timestamps for step/screenshot_ref are lower than timestamps for heartbeat/sumamry docs.


Create badge-4.html

Amazing work @rahulkarda thanks for the contribution. We will be there in codepeak2022 take a look at that as well.

Thanks, I'll check it out.
On Thu, 1 Dec, 2022, 9:28 pm Rajdeep Sengupta, @.***>
wrote:

Amazing work @rahulkarda https://github.com/rahulkarda thanks for the
contribution. We will be there in codepeak2022 take a look at that as well.
—
Reply to this email directly, view it on GitHub
https://github.com/Clueless-Community/seamless-ui/pull/654#issuecomment-1333985199,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASFMWP5NFTYF4LUGVRZJ6NDWLDDJTANCNFSM6AAAAAASQLDJOI
.
You are receiving this because you were mentioned.Message ID:
@.***>


Making some internal fields public and allow serialisation of the OwnedFace type.

Hi! I'm using the OwnedFace type and I have several needs that sound like something more people could use:

I'd like to access the information on where the glyf::Table data starts and where it ends. Would it be possible to either add an accessor to get reference to the glyf::Table::data or make it public?

I'm using the OwnedFace and I want to generate SDF representation of glyphs based on the binary data contained in it. I don't want to duplicate it, but unfortunately the SelfRefVecFace::data is private. Can we add accessor for this field, please?

Would it be possible to have serde::Serialize and serde::Deserialize derives for OwnedFace? Of course, this could be put behind a compilation flag. If we have an owned type, it seems that serialising / deserialising it may be a popular use case.

OwnedFace and SelfRefVecFace are part of  the owned_ttf_parser crate, not this crate.
Table data ranges in the original file are not preserved. The closest thing is RawFace::table_records which is currently private. Why would you even what this? Maybe you're looking for Face::table_data()?
Do you want to (de)serde the whole font? It would not be possible, because ttf-parser doesn't parse anything except the core layout by default, so there is nothing to serialize. Also, a json representation of a font could easily reach hundreds of megabytes.

@RazrFalcon thank you so much for the answers! As all of your questions are connected, let me reply not in points, starting with a short description of the use case I have here.
Use case
From legal reasons, we cannot ship the whole font representation in our app. So what I want to do is to parse the font, generate SDF representation of chosen glyphs, remove the glyph info from the font binary data, and serialise to disk the changed binary font data and the SDF glyph atlas. This way, we will have a binary data containing helper info (such as the kerning table) + glyph atlases but without exact glyph shapes (with zeroed values in the glyf::Table::data).
OwnedFace issue (not really important here)
Right now, I'm converting the Vec<u8> to OwnedFace with OwnedFace::from_vec, and unfortunately, I can't access it anymore, as it's kept as private field, so I need to keep clone of the original Vec<u8> in order to later modify it. I understand that this is something I should report on the other repo.
This library issues
Regarding Table data ranges in the original file are not preserved - this is surprising to me. I was sure that all the Tables are just slices over the original &[u8], which means that I could use pointer arithmetics to understand where the glyf::Table starts and ends in the original Vec<u8>. I've created a code to remove this data and it seems to work:
    pub fn remove_glyph_data(&mut self) {
        mem::take(&mut self.msdf_font);
        let data_slice = &self.data[..]; // This is original `Vec<u8>`.
        if let Ok(font_face) = ttf::RawFace::from_slice(data_slice, FONT_FACE_NUMBER) {
            if let Some(glyph_table) = font_face.table(ttf::Tag::from_bytes(b"glyf")) {
                let glyph_table_ptr = glyph_table.as_ptr();
                let data_ptr = data_slice.as_ptr();
                // Safety: This is safe, as both pointers refer to the same slice.
                let start_index = unsafe { glyph_table_ptr.offset_from(data_ptr) };
                for offset in 0..glyph_table.len() {
                    self.data[start_index as usize + offset] = 0;
                }
            }
        }
        if let Ok(font_face) = ttf::OwnedFace::from_vec(self.data.clone(), FONT_FACE_NUMBER) {
            self.font_face = font_face;
        }
    }

What I don't like in the code above is the operation duplication. I already have self.font_face : OwnedFace, so I could access its internal Vec<u8> and I could access the glyf::Table information there without the need of constructing RawFace. Does it make sense to you?

Ok, I understand the idea.

I don't think that zeroing glyf table is enough to avoid licensing issues. I think OpenType layout tables (GDEF, GSUB, GPOS) are more valuable. But IANAL.
Do you aware that glyf is not the only way to store outlines?
Do you aware that modern fonts do no use kerning?
You might be interested in using fonttools. You can use the ttx utility to convert a font into XML, edit it, and convert back to ttf. Which is still illegal.
Yes, you can use pointer arithmetic to get offsets, but we do not provide any kind of API for that. It's a very rare use case.
Also, technically, by zeroing glyf you're making the font invalid, because you also have to update table's CRC and checksumAdjustment in head table. But many TrueType parsers, just like ttf-parser, simply ignore CRC.

@RazrFalcon thanks so much for super fast answer!

Let me explain here an important thing – we are not trying to do anything illegal! We got an official information from the font store that if we will be able to display in our app glyphs but in such a way that the original fonts will not be extractable from the app, we can use a more liberal licensing. The whole thing is super strange, as they provide a lot of licensing options, including licensing for cloud-usage (which we are paying for), for phone-usage, even for watch-device-like usage, but there are no licenses available for standard desktop app installations. Anyway, what we are doing is not our "invention", we are following what our font provider told us.

I was not aware of it! Thank you so much for mentioning it! Would then zeroing GLYF, GDEF, GSUB, GPOS tables be enough to remove the info about glyph shapes?

I was not aware either. What is interesting is that so far we've been using DejavuSansMono in some parts of our app and it uses kerning. Using the rare opportunity that I can ask someone knowing much more about fonts than me, would you be so nice and tell me if there are any other tables that we should consider when lay outing glyphs on the screen assuming that we want to support English language only now? (We have custom WebGL font renderer).

Thanks for mentioning it! Regarding legal issues, I hope I covered them in point 1, however, I'm still very thankful that you take care of that and you guide me not to do something stupid. I really appreciate it. Regarding doing that with font tools (via XML) versus the method that I described in my previous post - would that have any advantages? Zeroing (or removing) the data as in my code above seems like a good automated solution to me.

My only question here is if it would be possible to have API to gett reference to glyf::Table::data and to Face::raw_face. If these references (immutable) could be exposed, a lot of my code will simplify and I believe that it would not introduce any downsides for other users. What do you think of that?

Again, thank you so much for mentioning it. We will be parsing the updated binary format only with tif-parser, so it will work in our case then.

@RazrFalcon Again, thanks for fast reply!

:)
Thank you so much for this info!
Gotcha! :) We were considering rustybuzz, but for now it seems like an overkill for our use case. Thanks for mentioning it!
Make sense, thanks!
Without these changes I am required to do parsing 2 times (constructing both OnwedFace and RawFace. It is not a huge overhead, however, it will be just nicer to be able to access these fields. If I understand correctly your reply, you are not willing to expose this information in the API, am I correct? If so, then yes, I would just keep parsing the font data twice – I was just hoping that exposing these accessors will not be a bigger issue, as it does not negatively affect other users and might actually enable them to implement some more exotic use cases (as this one).

Thank you once again for all replies and your help!

Glad to hear.
Ok, I will think about exposing Face::raw_face.

I would be really thankful for doing it!! ❤

You can access this data using:
if let Some(record) = face.raw_face().table_records.into_iter().find(|r| r.tag == Tag::from_bytes(b"glyf")) {
    println!("{:?}", record); // TableRecord { tag: Tag(glyf), check_sum:<PHONE_NUMBER>, offset: 28780, length: 105582 }
}


Solved serviceKey err "base.env is not a function"

Running "hana-cli serviceKey" I get error:
TypeError: base.env is not a function
Replaced base.env() with base.debug()

Sure enough that was a typo.  Thanks for the fix.


Revert CI settings for production because of security reason.

Revert to: https://github.com/AlisProject/welcome/commits/1.4.0

diff: https://github.com/AlisProject/welcome/compare/8830ddde2ed72a9e98651c12f5b42842191e971b...1ef753e49c0c708e4b6c4450c0c91ccf5a3e5999

@sot528 LGTM!


Getting "lookup":null

Hi in case of group search, Im getting "lookup" as null.
This is my code section
with_lookup=models.WithLookup(
# Name of the collection to look up points in
collection="us_fto_collection_master",
        # Options for specifying what to bring from the payload
        # of the looked up point, True by default
        with_payload=["file", "file_uuid"],

        # Options for specifying what to bring from the vector(s)
        # of the looked up point, True by default
        with_vectors=False,
    )

I need all fields from inner collection to return but behaviou doesnt change if I make with_payload=True,

No I didnt. I was looking up a normal string..Now corrected.
Thanks

@nairajay2k i have create the issue to improve our docs in Lookup in groups
Can issues you've created be closed or is there any problem remaining?

Please close
On Thu, 14 Sep, 2023, 7:02 pm George, @.***> wrote:

@nairajay2k https://github.com/nairajay2k i have create the issue to
improve our docs in Lookup in groups
Can issues you've created be closed or is there any problem remaining?
—
Reply to this email directly, view it on GitHub
https://github.com/qdrant/qdrant-client/issues/296#issuecomment-1719460647,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AJ6XWJ6DGVUP4C2MBLCVSUTX2MBPZANCNFSM6AAAAAA4XR4HDA
.
You are receiving this because you were mentioned.Message ID:
@.***>


digikam: 6.0.0 -> 6.1.0

Motivation for this change
https://www.digikam.org/news/2019-04-14-6.1.0_release_announcement/
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[x] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Basic photo management looks good! :)


chore(use-composable): add new useEscapeKeydown

Description
add useEscapeKeydown composable

Linked Issues
fixes #244
Additional context
Should I add a test for it because I only tried it on the Vue playground?

@Cr0zy07 yeah, I think you should a test also. Thank you

@dammy001, I have just added the test could you please check it 😅>

LGTM

Hey @dammy001, I am sorry, I just removed a duplicated block of code form the test, but I think it merged before my last commit😶. Can we revert that or should I make another PR. Sorry again...

Please create a new PR @Cr0zy07


[Icon Request] Support for Jest Snapshot

[x] I'm sure this issue is not a duplicate.

[x] I'm submitting an icon request:

Type: extension, languageId
Icon Name: Jest Snapshot
Sample original Icon:
Extensions: .js.snap, .jsx.snap, .ts.snap, .tsx.snap
Language ids: jest-snapshot

Language Extensions: https://marketplace.visualstudio.com/items?itemName=Orta.vscode-jest

Language Definition: https://github.com/jest-community/vscode-jest/blob/master/package.json#L34-L46

@JimiC  Just curious, why the Jest icon color is different from the official one?.

I believe it had that color then.


Clean up experimental examples

Change List

Fix bezier example
Remove outdated sun example

Coverage increased (+0.003%) to 80.914% when pulling 02b816242f0cc55f6175f9b9aaeec65ade0060a9 on x/experimental-clean-up into 9c2a962c2bca93fdaa4112de408e373cde64265b on master.


Move all fake files for testing to testutils package

Coverage increased (+1.2%) to 35.547% when pulling a973967e8554768e4c3408292fa0d0c20c80d4b4 on leonwanghui:updater into ef337ca8249394c0796bd385f24cfaedb77897c2 on opensds:development.


Infinite loading in the preview when uploading a corrupted image

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open any chat within the app.
Attach a corrupted file and observe the app reloading infinitely.

Expected Result:
When a user attaches a corrupted file as a messaging attachment, the app should display an error message informing the user that the file is corrupted and cannot be attached to the message.
OR                                                                                - The app should prevent the corrupted file from being attached to the message, thus preventing the issue of the app reloading infinitely and causing inconvenience to users.
Actual Result:
The app reloads infinitely when a corrupted file is uploaded, causing inconvenience to users.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.26-3
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
screen-capture (63).webm

https://github.com/Expensify/App/assets/43996225/979bc606-b6f9-4952-8835-3fd84f4df333
Expensify/Expensify Issue URL:
Issue reported by: @tewodrosGirmaA
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686146178831159
View all open jobs on GitHub

This looks like a dupe of https://github.com/Expensify/App/issues/19728

Nice catch @s-alves10 asking - https://github.com/Expensify/App/issues/19728#issuecomment-1589872372

Confirmed dupe https://github.com/Expensify/App/issues/19728#issuecomment-1589919821 Closing without action