The running of the step2 phase code is always killed

When I run the step2 bash scripts/infer_distant_bert.sh ${name} ${load_dir} # for BERT command in a 4090+120GB environment, the process is always killed inexplicably, which is weird. But when I found out that I only read the first 1,000 pieces of data in the train_distant.json file, it was successful again.

Hi @Wh9511 , thank you for your interest in this project, and I am very sorry for the late reply.
It seems to me that the process is killed because the RAM has run out.
The experimental environment we are using has 360GB of CPU RAM available. By monitoring memory usage with the htop command, we found that step 2 consumes a maximum of ~220GB of memory. Due to the large number of samples in train_distant.json, if computing resources are limited, we have two alternative solutions:

Split train_distant.json into two or three parts and calculate the attention scores separately for each part. Then, combine the multiple files together for subsequent training. Each file contains a list of np.array, so merging the contents of several lists sequentially should suffice.
Convert the saved attention in run.py at line 158to float16 format: attns.extend([a.to(torch.float16).cpu().numpy() for a in attn]). Please note that this may affect the learning accuracy of the next step.

I hope this will help you solve your problem.


VQGanVAE1024  "vae must be an instance of DiscreteVAE"

@lucidrains I believe the relevant line is here:
https://github.com/lucidrains/DALLE-pytorch/blob/2268864941d8eef2ba73a4488fe05673d447d493/dalle_pytorch/dalle_pytorch.py#L306
I tried adding it in myself, but it needs the taming imports and I'm not familiar with those.

Here's a branch where I've added it myself:
https://github.com/lucidrains/DALLE-pytorch/pull/88
After remembering to changed the dim parameter to 1024, I'm now getting this message:
using pretrained VAE for encoding images to tokens Working with z of shape (1, 256, 16, 16) = 65536 dimensions. loaded pretrained LPIPS loss from taming/modules/autoencoder/lpips/vgg.pth VQLPIPSWithDiscriminator running with hinge loss.
    loss = dalle(text, images, mask = mask, return_loss = True)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/dalle_pytorch-0.3.1-py3.8.egg/dalle_pytorch/dalle_pytorch.py", line 437, in forward
    image = self.vae.get_codebook_indices(image)
  File "/opt/conda/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/dalle_pytorch-0.3.1-py3.8.egg/dalle_pytorch/vae.py", line 138, in get_codebook_indices
    _, _, [_, _, indices] = self.model.encode(img)
  File "/opt/conda/lib/python3.8/site-packages/taming_transformers-0.0.1-py3.8.egg/taming/models/vqgan.py", line 52, in encode
    h = self.encoder(x)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/taming_transformers-0.0.1-py3.8.egg/taming/modules/diffusionmodules/model.py", line 413, in forward
    hs = [self.conv_in(x)]
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 889, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 399, in forward
    return self._conv_forward(input, self.weight, self.bias)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/conv.py", line 395, in _conv_forward
    return F.conv2d(input, weight, bias, self.stride,
RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED

actually, that error only shows up if i hardcode
/opt/conda/conda-bld/pytorch_1614378083779/work/aten/src/ATen/native/cuda/Indexing.cu:662: indexSelectLargeIndex: block: [19,0,0], thread: [63,0,0] Assertion srcIndex < srcSelectDimSize failed.
AssertionError: Sequence length (4096) must be less than the maximum sequence length allowed (1024)

@afiaka87 ack yes, you are correct! just fixed the remaining issue hopefully https://github.com/lucidrains/DALLE-pytorch/commit/187d62ca761a875c31c5834202921f1b676a6243

@afiaka87 there's the possibility this could train a lot faster, given it is 256 tokens instead of 1024! (it has an extra layer of downsampling)

@lucidrains have you gotten it working? i was debugging it for awhile but then i realized my actual problem was that my cuda installation on my cloud instance was borked.

@afiaka87 yup, I just verified it works, at least that I can get the codebook indices and reconstruct them. I also did a quick run in conjunction with DALL-E and it seems to be fine (though obviously haven't trained it yet)

@afiaka87 Also realized, that if this VAE works well with DALL-E, it opens up the possibility of training 512 by 512 images :)

i'll be sure to do another hyperparameter sweep on this one if I can get it working.

@afiaka87 wow, running at 32 depth, 16 heads (reversible OFF) and it only needs 11 GiB of VRAM!

@lucidrains  it's significantly faster as well. Perhaps converging too quickly. need to check. I'll post back here with a live notebook of the session.

@lucidrains here you go! https://wandb.ai/afiaka87/full_attention/reports/Live-Training-of-the-VQGanVAE1024-with-DALLE-pytorch--Vmlldzo1MzQ3MDE

seems to have converged too quickly.

@afiaka87 haha yea, agreed something doesn't look right

starting over. gonna have a non-live go at this lol. be back with my results in a few hours probably.

@afiaka87 ok! i'll keep thinking on whether there may be a bug somewhere

@lucidrains just for your sanity, i'm already achieving significantly better results just switching back to 3e-4 for my loss. Probably should have done that in the first place. Found 5e-4 worked well for OpenAI's vae in another post, but clearly that's not the case for this vae. Anyway, my dataset has corrupted pngs in it so i'm dealing with that right now, but I just had a much more stable training session:
-depth=32 --heads=8 --learning_rate=3e-4 --batch_size=32
falls to ~4.5 to ~5.5 and starts to hover around there in the same way that OpenAI's VaE would go to around 5.5 to 6.5 during training. But honestly? I've never been able to use a batch size of 32 until now. Even on this pricey A100 with 40GB of RAM and reversible set to True. Just doesn't work. So this is crazy.

@afiaka87 yes, you are experiencing the Achilles heel of attention networks - they explode in quadratic costs with token sizes. the German group was able to get a high quality VAE by combining it with GAN training, so their token length is 1/4th of OpenAIs, leading to 1/16th the cost of training DALL-E (token length of 256 vs 1024)

@afiaka87 the VQGAN-VAE isn't without its own problems though https://colab.research.google.com/github/CompVis/taming-transformers/blob/master/scripts/reconstruction_usage.ipynb#scrollTo=3aNc2aEEs0BY You'll notice that it misses certain details in the reconstruction (pinecone)

Not a panacea, but certainly a welcome improvement.

@lucidrains I'm pretty past out of my depth at this point, but I know how to make a hyperparameter sweep with wandb.ai and have access to an A100 for the next day. This is where I'm out of my depth. The loss is dropping...too quickly? I would assume that means we're moving to fast and to decrease the learning rate. But in my hyperparameter sweeps from before, I was minimizing all hyperparameters on the loss. Doing that here will just give me more of these bad results, but maximizing isnt what I want either.
Any ideas on how to cut down search time for a good learning rate?

If the loss is dropping precipitously, that's usually a bug, probably with the masking, although I'm not sure why you wouldnt see the same bug when training with OpenAIs VAE 🤔

I think (?) you can see all my runs here. https://wandb.ai/afiaka87/vqgan_frac_1
I'll be dealing with the occassional hiccup and changing parameters and what not frequently. But in general I'm trying to stick with what I already know - 32 depth, 8 heads. I'll increase to 64 once i've stabilized that.

@afiaka87 are you using any of the sparse attentions? or just full attention throughout?

@lucidrains I can't use sparse unfortunately. They haven't updated to cuda 11.0.
Everything til now has been 'full', 'axial_row', 'axial_col', 'conv_live'. I'm going to switch back to just 'full' for run 7 as I had trouble training with axial attention on openai's vae as well.

@afiaka87 ok, full (and sparse) are probably the safest
i'll double check the axial sparse attention code tomorrow morning

@afiaka87 ok, full (and sparse) are probably the safest
i'll double check the axial sparse attention code tomorrow morning

Awesome yeah from what I remember it just seemed like it was chunking a bunch of blue blocks into various columns and rows.

@lucidrains removing axial and conv_like attention has definitely helped.

@afiaka87 awesome :) if you could put one back and see which one fails the run again (loss drops too much), that would be another big help :pray:

@afiaka87 perhaps they both have leakage lol

next run will be ('full', 'axial_row')

@lucidrains and then i'll do ('full', 'axial_col')

@afiaka87 ok, and a ('full', 'conv_like') too, if you could :pray:

I can confirm that the loss dropped really quick when using the whole package of attention. Went from 7 to 0.005 after about 400 image/text pairs.

I can confirm that the loss dropped really quick when using the whole package of attention. Went from 7 to 0.005 after about 400 image/text pairs.

Always good to know it's working on someone else's machine as well, at least. You can check the link about for my current live runs.
@lucidrains 'axial_row' seems more stable.

@afiaka87 so the culprit is probably conv_like? (wouldn't be surprised)

@lucidrains yeah, it's fine. Moving on to axial_col.

I can confirm that the loss dropped really quick when using the whole package of attention. Went from 7 to 0.005 after about 400 image/text pairs.

Always good to know it's working on someone else's machine as well, at least. You can check the link above for my current live runs.
@lucidrains 'axial_row' seems more stable.

wish I could run in parallel but my colab hates me right now

Yeah I have to resort to these pricey (but somehow cheapest on the market?) instances from vast.ai.

This is soooooooooooo much faster. Would've waited an hour before on these same parameters.

it is insane it's doing 400 batches in like a couple of minutes :o

increase the image size to 512x512, and it'll be just as slow as OpenAI's VAE lol

it's all about this elephant in the room, the N squared cost of attention

I'm curious to see if your transganformer will be a possible candidate for this.

@lucidrains alright, this is stable too. moving to conv_like. And oh look at that we found a corrupted png this session!
rm -rf --no-preserve-root<PHONE_NUMBER>_0.png

@TheodoreGalanos yea, the GAN + text conditioning is a totally different approach than DALL-E, but i'm excited to see if the duplex attention from GansFormer will work better for conditioning image generation from text

@afiaka87 i'm pretty sure the bug is in the conv like attention, even before you run the experiment lol

@TheodoreGalanos yea, the GAN + text conditioning is a totally different approach than DALL-E, but i'm excited to see if the duplex attention from GansFormer will work better for conditioning image generation from text

that's alright, I honestly don't even think DALL-E was the breakthrough. I really love the work being put into parts that are closer to CLIP + cool_mode_here side of things.

@lucidrains this seems to be running fine... what?

i'll eat those words. it's dropping.

@afiaka87 oh what lol

@afiaka87 woohoo! i knew it, thank you thank you :pray:

Yep, it's following that first bad run almost verbatim.

@afiaka87 so interestingly enough, OpenAI's paper said that one conv like attention layer is necessary at the very last layer of DALL-E, but for now, you can just remove it altogether

cool. will do. keep me posted on a fix.

@afiaka87 yup, that pattern is a leak in the masking, where the past attends to the future by accident. it comes up again and again in autoregressive transformer training

will do!

til then, i'm gonna train the hell out of this thing.

Is there a suggested combination of attention we should use?
Also, OT, but does anyone have a good intuition about the values? I don't totally get dim size for dalle.

@TheodoreGalanos You can't go wrong with all full attention if you can, especially when the image sequence is low, is my opinion. Dimensions, just keep it at 1024 if you can, 512 on a budget. Heads at 8 minimum, more if possible

Thank you @lucidrains !

@lucidrains so full is generally going to be better, but more compute heavy?

@afiaka87 One last side now. Since you've experimented with the vqgan, is it amenable to transfer learning? I don't want to necessarily train one today (I have a vqgan already) but would fine tune one if it was possible.

@afiaka87 One last side now. Since you've experimented with the vqgan, is it amenable to transfer learning? I don't want to necessarily train one today (I have a vqgan already) but would fine tune one if it was possible.

I just ran it for the first time like 3 hours ago ha. I've actually not successfully done transfer learning on any of these options. I just start over each time trying to make it better from scratch. No clue, unfortunately.

Oh okay! thanks, will try and train one then. I'm not entirely sure how easy it would be, I'll take a look.

If you were late to the party or (like me) need a refresher on what happened here, here is a graph of the live session we were all viewing. The relevant runs are runs 7 through 10


How to wait until page loads?

Code:
AdminLoginPage.LoginButton.ClickAndGo<AdminPage>();
After clicking on LoginButton, AdminLoginPage can take a very long time to load, but the framework already goes to AdminPage without login, so a test fails.
In Selenium this problem is solved with one code line: wait.until(document.readyState == "completed")

You just need to add [WaitForDocumentReadyState] attribute to the needed page object class.

Thanks, it works.
@YevgeniyShunevych could you please answer another question:
When I use the [FindByXPath("//*[@id='save']/..")] attribute, it turns into (//*[@id='save']/..)/descendant-or-self::*", so how do I remove descendant-or-self::* from the query?

Basically, you can't cut that part in FindByXPath.
But let's take a look at your XPath. You want to find an element with id='save' and then take it's parent. I would change the logic of finding to: find an element that has a child with id='save'. Almost the same, just a bit straightforward.
Now instead of:
[FindByXPath("//*[@id='save']/..")]

you can write it this way:
[FindByInnerXPath("child::*[@id='save']")]

The generated XPath should be cleaner for this case.

It works, thanks.
But I don't think that adding or changing selector is a good idea. If you wrote //*[@id='save'] selector, it should be unchanged

Sorry for a late response, @vadim-96. Regarding XPathes.
One of the basic ideas behind Atata is to get rid of traditional direct XPath and CSS locators as much as possible. In Atata we try to operate components (page objects and controls). Each control can and basically should have some [ControlDefinition("some-xpath")] that describes basic XPath of the control element. Basic XPath for a Link control is "a", for example. This signifacantly narrows down the number of elements on the page that can match out further selector and guarantees that other kind of element will not be found. Then, for example, if we add [FindById("some-id")] selector to a Link property, the result XPath will be a combination of 2 parts: the logic of [FindById] (find some element with specific ID) and basic XPath. So it will be ".//*[@id='some-id']/descendant-or-self::a". Yes it could be shorter .//a[@id='some-id']. But descendant-or-self gives you additional ability to find a control not directly with specific ID, but also inside that element with ID. It is quite useful when there is no adequate identifiers on the needed element but there are some in the parent or grand-parent element.


gdl testsuite fails with 4.4.1 - ../../libsrc/nc_hashmap.c:106: rehashVar: Assertion `count == hm->count' failed

Environment Information

What platform are you using? (please provide specific distribution/version in summary)

[x ] Linux
[ ] Windows
[ ] OSX
[ ] Other
[ ] NA

32 and/or 64 bit?

[x ] 32-bit
[ ] 64-bit

What build system are you using?

[x ] autotools (configure)
[ ] cmake

Can you provide a sample netCDF file or C code to recreate the issue?

[ ] Yes (please attach to this issue, thank you!)
[ ] No
[ x] Not at this time

Summary of Issue
Since updating Fedora to netcdf 4.4.1 from 4.4.0, I'm seeing this test failure in gdl on 32-bit only:
116: Adding dim, var, rename dim, var
116: -quiet: ../../libsrc/nc_hashmap.c:106: rehashVar: Assertion `count == hm->count' failed.

This assertion appears to have been added as part of commit 1f9eb8093c476f5420edf5db7a5594f62377da32
Steps to reproduce the behavior
gdl/idl code is:
pro nct_create_complex2, f1

catch, error
if(error eq 0) then begin
    id=ncdf_create( f1, /clobber)
    d1=ncdf_dimdef(id, "dim1", 10)
    v1=ncdf_vardef(id, "dim1", d1,/float)
    v2=ncdf_vardef(id, "var1", d1,/float)

    ncdf_control, id, /endef
    ncdf_varput, id, v1, findgen(10)
    ncdf_varput, id, v2, findgen(10)*2.0

    ncdf_close, id

    id=ncdf_open(f1,/nowrite)
    inq=ncdf_inquire(id)

    n=strarr(inq.nvars)
    for i=0, inq.nvars-1 do begin
        v=ncdf_varinq(id,i)
        n[i]=v.name
    endfor

    m=strarr(inq.ndims)
    for i=0, inq.ndims-1 do begin
        ncdf_diminq,id, i,name,s
        m[i]=name
    endfor
    print, "var: ",n
    print, "dim: ",m

    ncdf_varget,id, 0,q
    print, n[0],": ",q
    ncdf_close,id

print, "Adding dim, var, rename dim, var"

    id=ncdf_open(f1, /write)
    ncdf_control,id,/redef
    ncdf_varrename, id, 0,"dim_new1"
    ncdf_dimrename,id, 0, "dim_new1"

    d2=ncdf_dimdef(id, "dim2", 20)
    v3=ncdf_vardef(id, "dim2", d2,/float)
    v4=ncdf_vardef(id, "var2", [d1,d2],/float)

    ncdf_control, id,/endef
    ncdf_varput, id, v3, findgen(20)
    ncdf_varput, id, v4, findgen(10,20)

    ncdf_varget, id, 0, q
    print, "start"

Crash must happen somewhere between the last two prints.  At the abort:
(gdb) print count
$1 = 3
(gdb) print *hm
$4 = {table = 0x572769c0, size = 11, count = 2}

On entry to rehashVar():
2: *hm = {table = 0x57295680, size = 5, count = 3}

Then hm->size gets set to 11 on line 92.  table entries:
(gdb) print table[4]
$26 = {data = 1, flags = 1, key = 756578944}
(gdb) print table[3]
$27 = {data = 1, flags = 1, key =<PHONE_NUMBER>}
(gdb) print table[2]
$28 = {data = 0, flags = 0, key = 0}
(gdb) print table[1]
$29 = {data = 2, flags = 1, key =<PHONE_NUMBER>}

It looks like that one of the calls to NC_hashmapAddVar when copying over the elements doesn't update count in the new table.  Not sure why.

Try the following:
diff --git a/libsrc/var.c b/libsrc/var.c
index a510ba5..7729a7e 100644
--- a/libsrc/var.c
+++ b/libsrc/var.c
@@ -740,14 +740,14 @@ NC3_rename_var(int ncid, int varid, const char *unewname)
            return NC_ENOMEM;
        if(NC_indef(ncp))
        {
+               /* Remove old name from hashmap; add new... */
+               NC_hashmapRemoveVar(&ncp->vars, old->cp);
+
                newStr = new_NC_string(strlen(newname),newname);
                free(newname);
                if(newStr == NULL)
                        return(-1);
                varp->name = newStr;
-
-               /* Remove old name from hashmap; add new... */
-               NC_hashmapRemoveVar(&ncp->vars, old->cp);
                NC_hashmapAddVar(&ncp->vars, varid, newStr->cp);
                free_NC_string(old);

@@ -755,13 +755,14 @@ NC3_rename_var(int ncid, int varid, const char *unewname)
        }

        /* else, not in define mode */
+       /* Remove old name from hashmap; add new... */
+       NC_hashmapRemoveVar(&ncp->vars, old->cp);
+
        status = set_NC_string(varp->name, newname);
        free(newname);
        if(status != NC_NOERR)
                return status;

-       /* Remove old name from hashmap; add new... */
-       NC_hashmapRemoveVar(&ncp->vars, old->cp);
        NC_hashmapAddVar(&ncp->vars, varid, varp->name->cp);

        set_NC_hdirty(ncp);

The problem is that the name was being updated prior to the old variable being removed from the hashmap.  It checks whether the key and the name of the variable being removed match, but since the name had already been updated, the names did not match so the variable was not removed.  The patch above removes the variable from the hashmap first, then updates the name, and then adds the variable with the new name to the hashmap.
Here is a c program that reproduces the gdi/idl code above and shows the same issue:
#include <netcdf.h>
int main()
{
  int  status;
  int  id;
  int  rh_id, varid, v1, v2, v3, v4;
  int  dimids[2];

  nc_create("foo.nc", NC_CLOBBER, &id);
  nc_redef(id);

  status = nc_def_dim(id, "dim1", 10, &dimids[0]);
  status = nc_def_var(id, "dim1", NC_FLOAT, 1, dimids, &v1);
  status = nc_def_var(id, "var1", NC_FLOAT, 1, dimids, &v2);

  nc_close(id);

  nc_open("foo.nc", NC_WRITE, &id);

  nc_redef(id);
  nc_rename_var(id, v1,"dim_new1");
  nc_rename_dim(id, dimids[0], "dim_new1");

  status = nc_def_dim(id, "dim2", 20, &dimids[1]);
  nc_def_var(id, "dim2", NC_FLOAT, 1, &dimids[1], &v3);
  nc_def_var(id, "var2", NC_FLOAT, 2, dimids,    &v4);

  nc_close(id);
}

Note that we probably need the same restructure on the NC3_rename_dim code.  Not sure why it didn't trip the assert also.

diff --git a/libsrc/dim.c b/libsrc/dim.c
index ef7dfb3..7d904ee 100644
--- a/libsrc/dim.c
+++ b/libsrc/dim.c
@@ -475,10 +475,12 @@ NC3_rename_dim( int ncid, int dimid, const char *unewname)
                free(newname);
                if(newStr == NULL)
                        return NC_ENOMEM;
-               dimp->name = newStr;

                /* Remove old name from hashmap; add new... */
                NC_hashmapRemoveDim(&ncp->dims, old->cp);
+
+               dimp->name = newStr;
+
                NC_hashmapAddDim(&ncp->dims, dimid, newStr->cp);
                free_NC_string(old);

@@ -487,13 +489,15 @@ NC3_rename_dim( int ncid, int dimid, const char *unewname)

        /* else, not in define mode */

+
+       /* Remove old name from hashmap; add new... */
+       NC_hashmapRemoveDim(&ncp->dims, old->cp);
+
        status = set_NC_string(dimp->name, newname);
        free(newname);
        if(status != NC_NOERR)
                return status;

-       /* Remove old name from hashmap; add new... */
-       NC_hashmapRemoveDim(&ncp->dims, old->cp);
        NC_hashmapAddDim(&ncp->dims, dimid, dimp->name->cp);

Thanks for the bug report, @opoplawski and thanks for the C test and patches, @gsjaardema .  I'm catching up on other things now post 4.4.1 release, but will be incorporating the test into our set of tests ASAP.  I'll also look at adding gdl to our docker-based regression tests, along with things like the python interface and NCO.

gdl tests pass with this patch.  Thanks.

The fix has been tested and merged. Thanks!


Your code in google collab are not working expect Inference.py

While running the Supervised Training.ipynb in google collab. I got error "TypeError: Lacss.call() got an unexpected keyword argument 'gt_locations'".

While running "point with label only.ipynb". I am getting thise error

Hi，is the main branch working now? I met the same error when running "train_with_point_label.py".

@jiyuuchc Thanks for CoLab link. It is working fine


After first acquired dataset, PycroManager acquisition is stuck (headless mode)

I'm currently running PycroManager on a separate thread which is called from the user interface. I'm using the Acquisition API as context manager. After acquiring a first dataset, the command line reports the following:
sys:1: ResourceWarning: unclosed file <_io.BufferedReader name='C:\\Users\\jacop\\OneDrive\\Documenti\\ImSwitchConfig\\recordings\\2023-10-09\\17h54m29s_rec_1\\17h54m29s_rec_NDTiffStack.tif'>
ResourceWarning: Enable tracemalloc to get the object allocation traceback

I tried using tracemalloc to dump some statistics but I could not figure out much from those, so I don't have much of a traceback to show. From the Python side of PycroManager I'm noticing that there is a refence to the collected dataset; could it be that for some reason it is not released properly whenever I trigger a new acquisition?
EDIT: forgot to specify that I'm running PycroManager in headless mode.

could it be that for some reason it is not released properly whenever I trigger a new acquisition?

Yes, but I don't think it should be released because you'd still like to be able to call acq.get_dataset after the acquisition is finished. I tried to reproduce this based on your description, but I don't see anything similar. Can you make a minimal way to reproduce this with the demo config? Here was my attempt:
from pycromanager import Acquisition, multi_d_acquisition_events, start_headless
import threading

mm_app_path = r'C:\Users\henry\Micro-Manager-nightly'
config_file = mm_app_path + "/MMConfig_demo.cfg"
start_headless(mm_app_path, config_file)

save_dir = r"C:\Users\henry\Desktop\data"

def run_acq():
    with Acquisition(directory=save_dir, name="tcz_acq", show_display=False) as acq:
        # Generate the events for a single z-stack
        events = multi_d_acquisition_events(num_time_points=5)
        acq.acquire(events)

    with Acquisition(directory=save_dir, name="tcz_acq", show_display=False) as acq:
        # Generate the events for a single z-stack
        events = multi_d_acquisition_events(num_time_points=5)
        acq.acquire(events)

# run on a different thread
thread = threading.Thread(target=run_acq)
thread.start()

thread.join()

Just tested myself. This works. I also tested with a version using QThread and works as well. I think that this has to do with some internals of ImSwitch that do not release properly the data after acquiring. Closing.


Update to add centos9 for weekly build

What changes were proposed in this pull request?
To add Centos9 also to weekly builds.
How was this patch tested?
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

@PHILO-HE - I have added Centos9. But, I had a question :  I have used gcc-toolset-12 and apache-maven-3.9.7-bin.tar.gz  in my environment while building. Not sure if it will work with other versions too.
Is there anyway that this gets tested ?

@deepashreeraghu, the modification of velox_weekly.yml can trigger the running of that job. You can check the failure message. If you need to test in local, you can pull a docker image to do the test.

@PHILO-HE - the build-job went fine with Centos9 too. Please review and let me know.
cc: @majetideepak


TypeError: Finding a Remainder in Javascript

Challenge Waypoint: Finding a Remainder in Javascript has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36 OPR/34.0.2036.25.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:
// Only change code below this line

var remainder = 11 % 3

if i add a semicolon at the end it does pass.

@DDaems Initial look into this and I see the following from Developer Console when the error is thrown
var remainder = 11 % 3
(function(y){return 'remainder = '+y;})(remainder);

leading to incorrectly interrupting your code as 3(...)(remainder); and since as we know 3 is not a function, we get TypeError: 3 is not a function as error.
Hence it is always good to add ; at the end of each statement because we have no idea what other code runs along in the backend.
More detailed explanation can come from core FCC member (if required)

@DDaems Initial look into this and I see the following from Developer Console when the error is thrown
var remainder = 11 % 3
(function(y){return 'remainder = '+y;})(remainder);

leading to incorrectly interrupting your code as 3(...)(remainder); and since as we know 3 is not a function, we get TypeError: 3 is not a function as error.
Hence it is always good to add ; at the end of each statement because we have no idea what other code runs along in the backend.
More detailed explanation can come from core FCC member (if required)

@smrajagopal The supplied code is still valid and should not trow a TypeError. Its a bug, that should be addressed.

@smrajagopal The supplied code is still valid and should not trow a TypeError. Its a bug, that should be addressed.

This is an unavoidable side effect of the way the code is executed and there's a linting error on the side saying a semicolon should be added, so I don't think this is a problem.
Thanks and happy coding!

This is an unavoidable side effect of the way the code is executed and there's a linting error on the side saying a semicolon should be added, so I don't think this is a problem.
Thanks and happy coding!

@ltegman
I agree that this isn't a really big problem, certainly nothing dealbreaking.
But this is still a bug that could be pointed out to the module creator/maintainers.
Can we maybe leave it open temporarly with some tags as: 'low-priority', 'fcc-core', 'hard'?
Untill someone has passed it along to the creator/maintainers of the module.
So this bug doesn't dissapear in the void, because its not all to important.
@BerkeleyTrue @SaintPeter
Opinions on this?

@ltegman
I agree that this isn't a really big problem, certainly nothing dealbreaking.
But this is still a bug that could be pointed out to the module creator/maintainers.
Can we maybe leave it open temporarly with some tags as: 'low-priority', 'fcc-core', 'hard'?
Untill someone has passed it along to the creator/maintainers of the module.
So this bug doesn't dissapear in the void, because its not all to important.
@BerkeleyTrue @SaintPeter
Opinions on this?

I'll leave it up to @BerkeleyTrue whether this is something that should be reopened for a fix or not. I've seen similar bugs closed in the past which is why I closed it.

I'll leave it up to @BerkeleyTrue whether this is something that should be reopened for a fix or not. I've seen similar bugs closed in the past which is why I closed it.

The supplied code is still valid and should not trow a TypeError.

This is a syntax error and the reason you should always use semicolons. Always use semicolons and you won't run into this problem.
Happy Coding!

The answer is "var remainder = 2; 11 % 3;" ...

I have no idea why you bumped this issue providing a answer, because its exactly not what this is about. Anyway, i might aswell thank you. Else i likely wouldn't have fixed it. ;-)

I bumped this issue for the sole purpose of you not having a idea lmao

Other!.

@ncarrasco
Please do not post your solution on here. You could help people at FreeCodeCamp Chat Room or Forum. GitHub Issues are for reporting bugs on the website only.
Happy Coding!

You have var remainder = 11 % 3
but you should have
var remainder = 11 % 3;

The answer is:
var remainder = 2;
remainder = 11 % 3;


Additional semicolon added in text after url

after pasting an example into the channel the representation I saw added a semicolon which it seems wasn't pasted to others (thank goodness). That said it is curious. It is likely related to embedding and thus may be about LinkEmbedder but I am going to start it out here for the time being.

https://irclog.perlgeek.de/mojo/2017-10-30#i_15376130

Adding the actual IRC log inline:
18:32 <jberger> well that was exciting
18:32 <jberger> for the log, I tried `mojo get 'http://tcdecks.net/format.php?format=Pauper' title text` and it worked fine for me
18:33 <jberger> odd where did that semicolon come from?
18:33 <jberger> looks like a strange convos artifact


Remove special "tabs" permission from manifest and reconsider the inclusion of Google Analytics

The "tabs" permission is no longer necessary, as long as you don't need the specific urls of tabs, among other things.
Please remove this permission from the manifest as soon as possible, so your extension can be installed completely without any worries about potential privacy violations in this or future versions. It's awesome that you link this extension directly to GitHub – I wish everyone would follow your example in this respect. With this tiny adjustment, noone in the future would need to spend time checking through your code, just to make sure that everything is above board – which, of course, it totally is 🙂

Additionally – as have been argued by plenty of people – there's simply no place for Google Analytics inside a browser extension. I understand that GA is standard for most web development, but when it comes to the private browser behavior that any single individual chooses to install on their local machine, any kind of uploaded data should be specifically declarered and accepted by the user before any cloud data collection 🙏

Additionally – as have been argued by plenty of people – there's simply no place for Google Analytics inside a browser extension.

Concretely, the standard should be something like this: https://github.com/stefanXO/Tab-Manager-Plus/blob/master/PRIVACY.md

Additionally – as have been argued by plenty of people – there's simply no place for Google Analytics inside a browser extension.

Partially related:

https://developer.chrome.com/blog/cws-analytics-revamp/

@dalgard I definitely see your point, and agree with your concerns. This was a quick chrome extension I hacked together for myself back in 2013, and it's only been very minimally updated since (last update was in 2018).
I can't remember my exact motivations, but I think I added Google Analytics so that I could see if/how often the extension was being used, and which features within the extension are being used; with the goal/theory to be understanding what parts are useful, and what parts aren't.
While I haven't exactly done much development/refinement on this extension making use of that, it's a feature I still value having. I'm not particularly wed to using Google Analytics for any reason other than that's what I was familiar with at the time. If there are alternative/better privacy preserving options these days, that would still allow me to track (anonymised) usage + which parts of the extension are used, I would definitely be open to hearing more about them.
I'm also open to adding this analytics as a configurable option, though right now it's more effort than I have time/energy to spend on this extension. There is currently no options page, so I would need to build that in first (see #5). At some point 'soonish' i'll need to update the extension for Manifest v3 (see #13), which I think might restrict/remove the ability for GA to work anyway; but at least at that point, I might have the focus/bandwidth to implement the options page/etc.
A few references for future me:

https://stackoverflow.com/questions/70908984/add-google-analytics-into-a-chrome-extension-using-manifest-v3

https://developers.google.com/analytics/devguides/collection/protocol/ga4

https://www.indiehackers.com/post/how-to-add-google-analytics-with-manifest-v3-468f1750dc
https://developer.chrome.com/docs/extensions/mv3/tut_analytics/

Caution: This page was migrated directly from the Manifest V2 documentation set. It has not yet been validated for compliance with Manifest V3.

RE: the inclusion of Google Analytics, there is also a need to update from the old 'Universal Analytics' to the new 'Google Analytics 4', which depending on the effort involved, may impact on my decision forward here:

https://support.google.com/analytics/answer/11583528

Google Analytics 4 has replaced Universal Analytics

https://support.google.com/analytics/answer/10759417

[GA4] Make the switch to Google Analytics 4

Google Analytics 4 has replaced Universal Analytics. Starting July 1, 2023, standard Universal Analytics properties stopped processing data. (360 Universal Analytics properties with a current order will receive a one-time processing extension ending on July 1, 2024.)

Starting March 2023: If you didn't manually migrate your active standard Universal Analytics property to a new Google Analytics 4 property and didn't opt out of an automatic property creation, we created a Google Analytics 4 property on your behalf. Automatically created Google Analytics 4 properties reuse existing site tags whenever possible.

Starting July 1, 2023: Standard Universal Analytics properties stopped processing hits, including standard properties in accounts that also contain 360 properties. Some properties continued to process data for a short period after this as we staged the shutdown of Universal Analytics. You'll be able to access your previously processed data in your Universal Analytics property until July 1, 2024.

https://support.google.com/analytics/answer/11583832

[UA→GA4] How to check whether you have Universal Analytics or Google Analytics 4 (GA4)

Universal Analytics property IDs start with UA and end with a number (UA-XXXXXXXXX-1).

Google Analytics 4 property IDs have only numbers (XXXXXXXXX).

https://github.com/0xdevalias/chrome-NewWindowWithTabsToRight/blob/ce39cb4a414ca3e221eae3688eaa72d32620c760/js/googleAnalytics.js#L8

Some high level stats/reports from the old Google Analytics tag:
Sessions Per Week

Browser/OS
(obviously heavily biased since it's a Chrome Extension)

Top Countries
(Stopped showing them once we got to ~1k sessions per country)

Top Events

From that high level overview, it's interesting how many users/sessions are listed, vs the relatively small number of actual events tracked. That data will be somewhat skewed as I believe views of the Chrome Extension Store page are also tracked within that, so I would need to slice the data by source to get a more accurate number of 'actual users' vs 'events', but at least from that high level view of data, it seems to imply that (assuming all events logged correctly) the extension doesn't have a very high number of actual usages over the years, and that apparently newWindowWithCurrentAndTabsToRight is MUCH more popular than newWindowWithTabsToRight (which to be fair, is probably my more used option as well).
Not sure if I did this slice properly.. but basically filtered for users who landed on /_generated_background_page.html as a proxy for 'actual extension user' (rather than just a random extension store viewer/etc), which makes it look more like this:
New Users Per Day:

Users Per Day:

Sessions Per Day:


Init InventoryService with backend/ispn stub + REST API

Can one of the admins verify this patch?

I am +1 to migrate.
We have discussed to migrate this functionality into a .war inside the former hServices architecture.
I can prepare that.
Minor question for me is if to create a mwm-wf branch that we can use to consolidate, then this branch can be used for poc purposes as the other one would need a little bit more of plumbing and glue code.

@lucasponce or for going on with two branches (actually I think mwm-wf will become the only active one but anyway it doesn't cost to create branches)


great

Coverage decreased (-0.7%) to 53.819% when pulling 60f4499228e6e66812b35788230021da5052065c on Dogbone0714:master into bce8000aebbb231b9344cccd1ac8c2323431516c on tdsmith:master.


Wait fails when test container is started within another container

I've a build setup where the test containers are started inside a build container.
The Docker host socket is mapped into the build container.
This is the command I use to run the build container
docker run --privileged=true -v /var/run/docker.sock:/var/run/docker.sock -t ${BUILD_IMAGE}

Everything is fine when I run the tests from my local machine. But when I start the tests inside the the build container wait fails to check if the port specified port ist opened.
This is how I start the test container
@ClassRule
public static GenericContainer = new GenericContainer("rabbitmq:3").withExposedPorts(5672).waitingFor(Wait.forListeningPort());

Hi @wbiller,
You mentioned build container. Are you talking about the latest Docker with multi-stage Dockerfiles?
Thanks,
Sergei

Hi Sergei,
no, it's just a container which is run by Jenkins to build an application.


Create Setters don't work for arrays

My yaml is like below, I have an array of containers and I want to make container image as a setter.
apiVersion: core.oam.dev/v1alpha2
kind: Component
metadata:
  name: example-component
spec:
  workload:
    apiVersion: core.oam.dev/v1alpha2
    kind: ContainerizedWorkload
    spec:
      containers:
        - name: my-nginx
          image: nginx:1.16.1
          resources:
            limits:
              memory: "200Mi"
          ports:
            - containerPort: 4848
              protocol: "TCP"
          env:
            - name: WORDPRESS_DB_PASSWORD
              value: ""

I create a setter by using following command:
$ kpt cfg create-setter sampleapp/ image nginx:1.16.1 --field "spec.workload.spec.containers[0].image" --description "use to set image for component" --set-by "sampleapp developer"

But it didn't work when I try to set this setter:
$ kpt cfg set sampleapp/ image nginx:latest
set 0 fields

Nothing changed to my container image.

Arrays aren't indexed.  Try:
kpt cfg create-setter sampleapp/ image nginx:1.16.1 --field "image" --description "use to set image for component" --set-by "sampleapp developer"

@pwittrock  does it mean kpt using value to index when there are multiple containers?


shift_key, set src in image element

Hi, I did the requested changes. You are welcome to pull it.

Thanks Milan.
I'd like to see that inplace_textbox you mentioned with the set_value as well.
I apologize for not responding to the previous message, I thought I had, and then got distracted.
But the set_value is interesting to me, I'd just like to see it in use.  So if you were to issue a pull request with your inplace_textbox that uses the set_value, I'd be very interested in looking to load that into the nitrogen.js.
Thanks again for your work :)


Rename the theme

A small one but this long name is a bit of a pain to repeatedly type in!

As we're moving to a platform where themes will be built for things other than PyBossa, this still makes the most sense, closing.


Uknown Type 11

    local root = Game.GetPlayer():FindComponentByName('root')
    local animRig = root.rig

    print(Dump(animRig, false))

This is quite old at this point, if it is still an issue, feel free to reopen.


check if a repo containing a .travis.yml file is using travis-ci.org, travis-ci.com, or neither.

https://openedx.atlassian.net/browse/BOM-1980
Adding a check to see if the repo is integrated with travis-ci.org or .com
For ecom it is showing
travis_ci:
    active_on_com: true
    active_on_org: false

For registrar
travis_ci:
    active_on_com: false
    active_on_org: true

Please give PR's titles that make their purpose clear.  A Jira ticket reference is a fine thing to include in the description as supporting information.

I don't think this is working as intended, see https://docs.google.com/spreadsheets/d/1VCxNVq-niT-uv5BFmsYPF21r6I2-IQ-GJbidF0zUPBc/edit#gid=921158295 (same values for every repository).  Maybe we hit an API rate limit so the request is now always failing?


When using kubectl() method errors are not returned

invoking kubectl should return all output and error streams, currenlty it doesn't

Fixed in https://github.com/giantswarm/pytest-helm-charts/pull/163


Customizing URL and Method of dynamic component generation through environmental variables

Current Behavior
At the below line, we have hardcoded the URL and generation method(Manifest or HELM) for dynamic component generation
https://github.com/meshery/meshery-istio/blob/74711eb2ea12d970ce3539d6a54a3f2ddd2dd0f6/main.go#L184
Desired Behavior
These should be further customizable by passing environmental variables. In absence of env variables, the current logic can be used as a fallback.

[Optional] Alternatives
A brief description of any alternative solutions or features you've considered.
[Optional] Additional context
Add any other context or screenshots about the feature request here.
Contributor Resources
The meshery.io website uses Jekyll and GitHub Pages. Site content is found under the master branch.

See the Contributing to Meshery.io Website section of the readme.md and other contributing instructions, too.
See Meshery site designs in this Figma designfile. Fill-in the Layer5 Community Member Form and join the Layer5 Community Slack for access.

@Revolyssup Does this need reopened as a future enhancement or has this been addressed already?


TypeError: Object # has no method 'use'

I have code like this:
var Download = require('download');
var progress = require('download-status');
var download = new Download({extract: false, mode: '755'})
                                  .get(url)
                                  .dest(cachePath)
                                  .use(progress());

When executing, the error in title shows up.
Not sure what's going on there, it used to work a week ago. Is there any api update in v4.0.0 that can cause an issue like this?

Yeah, use 3.x.x in case you need "plugin" functionality. It was removed in https://github.com/kevva/download/commit/f1db98ef44604eb69813decb34ef7e78c58fbd96. I'm planning to add something similar back in but I just don't know how it should look yet.


Fixed text to show as link.

🚀 Pull Request
Description
Small PR to change text that currently exposes some markdown (I think due to it being within a bold sentence), instead make it a link to the requirements/ci folder.
The change is to item 4 on https://scitools-iris.readthedocs.io/en/latest/developers_guide/contributing_pull_request_checklist.html.
As is:

To be (this PR):

Change has been built locally and renders ok, including the link.
I think this is a very minor PR so no whatsnew is needed.

Consult Iris pull request check list

@tkknight You're good to rebase now. Go for it, and I'll merge, thanks :+1:

@tkknight Awesome, cheers 👍


[SPARK-30953][SQL] InsertAdaptiveSparkPlan should apply AQE on child plan of write commands

What changes were proposed in this pull request?

This PR changes InsertAdaptiveSparkPlan to apply AQE on the child plan of V1/V2 write commands rather than the command itself.
Why are the changes needed?

Apply AQE on write commands with child plan will expose LogicalQueryStage to Analyzer while it should hider under AdaptiveSparkPlanExec only to avoid unexpected broken.
Does this PR introduce any user-facing change?

No.
How was this patch tested?

Pass Jenkins.

Test build #118945 has started for PR 27701 at commit d2bf2b3.

Merged build finished. Test PASSed.

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

Test build #118945 has finished for PR 27701 at commit d2bf2b3.

This patch fails due to an unknown error code, -9.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Jenkins, retest this please.

Test build #118957 has started for PR 27701 at commit d2bf2b3.

Merged build finished. Test PASSed.

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

Ping @cloud-fan please take a look, thanks!

Test build #118957 has finished for PR 27701 at commit d2bf2b3.

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

Merged build finished. Test PASSed.

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

Test build #121090 has started for PR 27701 at commit 130e006.

Merged build finished. Test PASSed.

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

Test build #121092 has started for PR 27701 at commit 8745c37.

Merged build finished. Test PASSed.

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

ping @cloud-fan @maryannxue

You need tests to ensure future changes don't break this.

Test build #121092 has finished for PR 27701 at commit 8745c37.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

Test build #121090 has finished for PR 27701 at commit 130e006.

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

Merged build finished. Test PASSed.

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

Merged build finished. Test PASSed.

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

Test build #121148 has started for PR 27701 at commit e57092e.

Test build #121148 has finished for PR 27701 at commit e57092e.

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

Merged build finished. Test PASSed.

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

Test build #121182 has started for PR 27701 at commit 226f95d.

Merged build finished. Test PASSed.

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

Test build #121182 has finished for PR 27701 at commit 226f95d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test PASSed.

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

Test build #121201 has started for PR 27701 at commit 226f95d.

Test build #121201 has finished for PR 27701 at commit 226f95d.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

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

retest this please

Merged build finished. Test PASSed.

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

Test build #121212 has started for PR 27701 at commit 226f95d.

Test build #121212 has finished for PR 27701 at commit 226f95d.

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

Merged build finished. Test PASSed.

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

thanks, merging to master/3.0!

thanks all!


rww-play as implementation of SoLiD

I think rww-play counts as an implementation of SoLiD. Could that be listed too? This is where a table of features implemented by SoLiD would be useful, and each server can specify which features it implements - perhaps to what level .

Yes, can you please create a PR with a new (markdown) file containing all the bullet points you had in https://github.com/linkeddata/SoLiD/issues/6#issuecomment-96326833?


Bad state: Stream has already been listened to.

example:
import 'dart:convert';
import 'package:get/get.dart';
import 'package:shike/common/api/api.dart';

class BaseProvider extends GetConnect {
  @override
  void onInit() {
    httpClient.baseUrl = API.DOMAIN;

    //
    httpClient.addRequestModifier<void>((request) async {
      var stream = request.bodyBytes;  //
      var requestParams =
          await stream.transform(utf8.decoder).transform(LineSplitter()).toList();
      print("requestParams 002 ${requestParams}");

      return request;
    });

    httpClient.addResponseModifier((request, response) {
      return response;
    });
  }
}

To Reproduce
when add addRequestModifier, and get request.bodyBytes
error :
E/flutter (22690): [ERROR:flutter/lib/ui/ui_dart_state.cc(186)] Unhandled Exception: Bad state: Stream has already been listened to. E/flutter (22690): #0      _GeneratedStreamImpl._createSubscription (dart:async/stream_impl.dart:505:18) E/flutter (22690): #1      _StreamImpl.listen (dart:async/stream_impl.dart:473:9) E/flutter (22690): #2      new _SinkTransformerStreamSubscription (dart:async/stream_transformers.dart:49:16) E/flutter (22690): #3      _BoundSinkStream.listen (dart:async/stream_transformers.dart:171:9) E/flutter (22690): #4      _AsBroadcastStream.listen (dart:async/stream_impl.dart:824:31) E/flutter (22690): #5      _HttpOutgoing.addStream (dart:_http/http_impl.dart:1555:22) E/flutter (22690): #6      _StreamSinkImpl.addStream.targetAddStream (dart:_http/http_impl.dart:652:22) E/flutter (22690): #7      _StreamSinkImpl.addStream (dart:_http/http_impl.dart:658:51) E/flutter (22690): #8      _HttpOutboundMessage.addStream (dart:_http/http_impl.dart:871:20) E/flutter (22690): #9      Stream.pipe (dart:async/stream.dart:698:27) E/flutter (22690): #10     HttpRequestImpl.send (package:get/get_connect/http/src/http/io/http_request_io.dart:46:35) E/flutter (22690): <asynchronous suspension> E/flutter (22690): #11     GetHttpClient._performRequest (package:get/get_connect/http/src/http.dart:197:22) E/flutter (22690): <asynchronous suspension> E/flutter (22690): #12     GetHttpClient.post (package:get/get_connect/http/src/http.dart:344:22) E/flutter (22690): <asynchronous suspension>
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Flutter Version:
Flutter (Channel stable, 2.0.6, on macOS 11.2.3 20D91 darwin-x64, locale
en-CN)
Getx Version:
get: ^4.1.4
Describe on which device you found the bug:
ex: Moto z2 - Android.

 var stream = request.bodyBytes?.asBroadcastStream();

i have same problem ;
request.bodyBytes is build from Stream.fromIterable, that is single-subscription stream,
if call request.bodyBytes?.asBroadcastStream() ，that means single-subscription  has been listen,
so when call above before send request , it will throw this exception。


Testing

Problem

Level 2

Solution

Apply example_ynh

PR Status

[ ] Code finished and ready to be reviewed/tested
[ ] The fix/enhancement were manually tested (if applicable)

Automatic tests
Automatic tests can be triggered on https://ci-apps-dev.yunohost.org/ after creating the PR, by commenting "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!". (N.B. : for this to work you need to be a member of the Yunohost-Apps organization)

LGTM! But I want to test it on my machines first


Attribute macros inside impl blocks seem to ignore/remove function bodies

Expected Behaviour
After adding tracing's instrument macro to the list implemented in #11193.
I expect bar in the following to be recognized as just an ordinary function:
impl Foo {
  #[tracing::instrument]
  fn bar() {}
}

Actual Behaviour
Attribute macro expansion "Not Available" inside impl blocks, and seems to break ~both outside function completions and~ all ra features inside the function body ~as well~.
#[tracing::instrument] // Works
fn foo() {
    #[tracing::instrument] // Also works
    fn foo_inner(s: String) {
    }
}

impl Foo {
    #[tracing::instrument] // Does not work
    fn no_rust_analyzer_allowed() {
        // This function body is guaranteed 100% rust-analyzer-free.
    }
}

Adding/removing the macros from rust-analyzer.procMacro.ignored does not make a difference.
rust-analyzer version: 2fb6f5e46 2022-01-07 nightly
rustc version: rustc 1.57.0 (f1edd0429 2021-11-29)

Actually, even with rust-analyzer.experimental.procAttrMacros: false the mere presence of the attribute seems to break the function body in all cases I tried.

Might be a result of https://github.com/rust-analyzer/rust-analyzer/pull/11208

The problem is most likely the FIXMEs here, https://github.com/rust-analyzer/rust-analyzer/pull/11208/files#diff-d8dfb3db867db48288d543c75638f4eb67e70d7ec2a0b48a3253ddedd20fc04d
The file id check fails, because we are querying sources for the source file id, but the assoc items live in macro file ids so we skip them.


d1: attempting to add d1 bindings

trying to get d1 binding working locally and then getting some results from the db logged out
remote/production build seems to work fine

@harryhcs @peterp Got it working with Prisma!
Code for using Prisma client in react component:

Working in dev:

Working in CF deployment:

Will add context on the approach taken soon! Merging in the meantime to unblock.


App center export documentation

I Was reading thought the docs on how to export analytics.
In this topic is mentioned the blob_path_format_kind but I can't find it documented in the App Center API.
Need some clarification on this.

@jzeferino I'll have the team take a look at making a docs update for this, thanks for bringing it to our attention. In the mean time, App Center support is provided directly from within the App Center portal. Any time you need help, just click the blue chat button in the lower-right corner of any page and our dedicated support team will respond. For additional information, see the App Center Help Center.


Repository structure and contents

What is all that stuff in the repository?
HTML5 boiler plate
I don't think that HTML5 boiler plate should be in the root of this project.
I don't think it should be in this project in the first place.
If we want to make a site with live samples, we could make a
github page, and commit HTML5 boiler plate there instead.
Also when creating an issue this appears at top, caused by the existence of CONTRIBUTING.md:

.idea
What are these files?
They seem to be some kind of cached information from a tool that you might be using.
Please, don't commit them if you don't think these files should be shared with others.
In some projects I commit Resharper .DotSettings files and Settings.StyleCop.
They are coding style settings that I want to share with other developers.
If these .idea files have this purpose then I think it is ok, but by looking at their contents, it doesn't appear to be that.
Structure
Here is a structure that fulfils the purpose of this repository:

components\ - only the code of our components: scripts and styles made by ourselves

default\ - the default presentation structure (our own)

pager.jsx - the pager component rendered with our own structure
skins\ - skins for our presentational structure

light\ - light themed skin

pager.css - skin for the pager component

dark\ - dark themed skin

pager.css - skin for the pager component

bootstrap-3\ - components using the bootstrap-3 presentation framework

pager.jsx - pager component rendered for bootstrap-3
skins\ - shouldn't exist, since bootstrap has it's own skins

samples\ - samples of component usage

pager-basic-samples\

pager-default.html - sample using the pager
pager-bootstrap-3.html - sample using the pager with bootstrap-3 structure...
the code is the same as the above file, but including the corresponding pager.jsx file
pager-sample.js - script compatible with both structures (because they can be swapped)

Notes:

Components in different folders, but with the same name, must have the same function,
and they must be swappable:

components\default\pager.jsx and components\bootstrap-3\pager.jsx behave exactly the same,
only the HTML structure is different between them.
names inside JavaScript should also be the same

The samples should be built with component swapping in mind.

When components are not swappable, then they must have different names, both file and inside
the JavaScript.

Thoughts?

I agree. Except that I would put the components inside a src folder because it seems like there's a tool called gulp that is widely used and it allows you to compile your code into a dist folder.

I'm including the .idea folder in the .gitignore

Nice, I totally agree.


gulp e2e --sauce=linux-chrome-41 failure on linux

builder@rh6-intel64-80-qa-dev-2$ gulp e2e --sauce=linux-chrome-41
[11:43:30] Starting 'clean'...
[11:43:30] Starting 'middle-tier-start'...
[11:43:30] Finished 'middle-tier-start' after 739 μs
[11:43:30] Starting 'selenium-start'...
Skipping task selenium-start because there is no desktop environment
[11:43:30] Finished 'selenium-start' after 219 μs
[11:43:31] Finished 'clean' after 409 ms
[11:43:31] Starting 'bower-files'...
[11:43:31] Finished 'bower-files' after 535 ms
[11:43:31] Starting 'build'...
[11:43:31] processing files
[11:43:34] saw 221 files
[11:43:35] Finished 'build' after 3.91 s
Skipping task e2e because there is no desktop environment
[11:43:35] 'e2e' errored after 1.95 ms
[11:43:35] Error: task completion callback called too many times
at finish (/home/builder/marklogic-samplestack/node_modules/gulp/node_modules/orchestrator/lib/runTask.js:15:10)
at cb (/home/builder/marklogic-samplestack/node_modules/gulp/node_modules/orchestrator/lib/runTask.js:29:3)
at /home/builder/marklogic-samplestack/shared/js/dev-tasks/tasks/e2e.js:145:48
at /home/builder/marklogic-samplestack/shared/js/dev-tasks/context.js:304:11
at /home/builder/marklogic-samplestack/node_modules/async/lib/async.js:254:17
at async.each (/home/builder/marklogic-samplestack/node_modules/async/lib/async.js:121:20)
at _asyncMap (/home/builder/marklogic-samplestack/node_modules/async/lib/async.js:248:13)
at Object.map (/home/builder/marklogic-samplestack/node_modules/async/lib/async.js:219:23)
at _parallel (/home/builder/marklogic-samplestack/node_modules/async/lib/async.js:568:20)
at Object.async.parallel (/home/builder/marklogic-samplestack/node_modules/async/lib/async.js:598:9)

gulp once
gulp e2e --sauce=linux-chrome-41
Got the above error , my assumption is above should be running with sauce .

Fixed


Migrating from 3.x to 4.x - TypeError: Cannot read property 'history' of undefined

I am getting TypeError: Cannot read property 'history' of undefined when migrating from 3.x to 4.1.1.
Please find the below sudo code for reference.
/*
* server.js
*/

import Express from 'express';
import { renderToString } from 'react-dom/server';

import Header from './components/header';
import LeftNav from './components/laft-nav';
import Content1 from './components/content1';
import Footer from './components/footer';

const app = new Express();

app.get('*', (req, res) => {
	//Render and stream Header component
	let headerCompString = renderToString(<Header/>);
	res.write(headerCompString);

	//Render and stream LeftNav component
	let leftNavCompString = renderToString(<LeftNav/>);
	res.write(leftNavCompString);

	//Render and stream Content1 component
	let content1CompString = renderToString(<Content1/>);
	res.write(content1CompString);

	//Render and stream Footer component
	let footerCompString = renderToString(<Footer/>);
	res.write(footerCompString);
	res.end();
});

/*
* AppRoutes.js
*/

import React from 'react';
import { BrowserRouter as Router } from 'react-router-dom';
import routes from './routes';

export default class AppRoutes extends React.Component {
  	render() {
    	return (
      		<Router history={browserHistory} routes={routes} onUpdate={() => window.scrollTo(0, 0)}/>
    	);
  	}
}

/*
* routes.js
*/

import React from 'react'
import { Route } from 'react-router-dom'

import Content1 from './components/content1';
import Content2 from './components/content2';

const routes = (
 `<div id="main">
    	<Route path="/page1" component={Content1}/>
    	<Route path="/page2" component={Content2}/>
  	</div>`
);

export default routes;

/*
* client.js
*/

import React from 'react';
import ReactDOM from 'react-dom';
import AppRoutes from './components/AppRoutes';

ReactDOM.render(<AppRoutes/>, document.getElementById('main'));

This is a bug tracker, not a support system. For usage questions, please use Stack Overflow or Reactiflux. Thanks!

There is no clear usage document for v 4.x.  I can use Stack Overflow or Reactiflux only when I get into issue even after following the document.  Please share the usage document and then close the issue.

https://reacttraining.com/react-router/web/guides/quick-start

FWIW, I ran into the same issue suddenly, and only on production build, and it turns out it was because of a bug in the minifier i use. If you use babili, check out https://github.com/babel/babili/issues/580


Slider: added bi-directional support to slider

Please make sure these boxes are checked before submitting your PR, thank you!

[ x] Make sure you follow Element's contributing guide (中文 | English | Español).
[ x] Make sure you are merging your commits to dev branch.
[ x] Add some descriptions and refer relative issues for you PR.

@anatoly314 format your code and tell us which feature is added.

I see, this is adding something like that.

Exactly what I am looking for ;-)

@Tlapi , Yes it's functionality I've been added. I will try to reformat my code and submit this pull request on this weekend.

@anatoly314 netlify build failed.


No protection of Tokens

If your mobile gets stolen the tokens are completely unprotected. Yes, the attacker is still missing the password for the respective site, but he now has the mail in hand too.
Allthough it will not totally secure your secrets, the app should itself ask for a pin, password, fingerprint or whatever as a hurdle to ensure at least a minimum protection, maybe with a configurable grace period after lockscreen.

Would adding an option to require biometric authentication to start up work?

Any authentication will work.. and as differnt people have different biases i would not only offer biometrics, but also pin/pass, pattern.. wonder if it's possible to rely on existing androids auth services, but may be more protective to make it inapp.. at least when i have a secret from e.g. paypal i want as much protection as possible

sorry.. misclicked

I would add that it doesn't appear that the Token keys are stored securely (e.g. encrypted) ... simply adding a PIN won't fix that.
Check out https://developer.android.com/topic/security/data

True ... must be done as well ... the question is whether the data encryption key and the app access key should or should not be identical. If changing the key the data must be reencrypted in that case.

Currently the token keys does not have additional encryption. It relies user's device security. If your device is rooted, the file system is not encrypted, or without device pin, the attacker can easily retrieve the tokens. However, most of the security oriented users should have all those so it is unlikely attacker can easily retrieve the secrets.
So, I don't have immediate plan to implement any additional encryption. Additional biometric verification is good to have since it prevent causal user peeking into your tokens.

Well, it's a pitty that you more or less reject the encryption. And your arguments are bashing on the users that for some important reasons rooted their phone, their fault, bad luck, no security for them. As danieldjewell showed you its very easy. And stressing on biometric solution guides to the idea that you tend to sort out users with phones having no fingerprint reader, oder phones, other restrictions, bad luck, buy a propper phone, fix your restrictions. Your app is a tool to increase security, great, but stopping half way sounds not a good idea. I hope you will rethink your position.

I am not reject the idea outright. It is just time and priority. I am open to contribution, and the project is completely open sourced.

Ok, then.. which IDE do you recommend, which OS (win, tux) do you think provides a smoother start?

Android Studio on any OS will provide a smooth start:
Google has extensive tutorials:
https://developer.android.com/training/basics/firstapp


Support configuration of max number per version code

These should only need 1000 per version number not 10000 by default. And this should be configurable, perhaps on a per-digit basis, such as 9.99.9999

Added in a0de3eb16


After u, dd delete 2 lines...

Hello,
When i use neovim, ale and standard for javascripts files, I have trouble when delete after undo.
When type fastly : ddudd, normalely vim remove one line, but this bug remove 2 lines.
I making a dockerfile for you test in same configuration : https://github.com/apoutchika/bug-neovim-ale
Thank you for you'r help !

This is a big on NeoVim. Look through the open issues in ALE for an existing issue covering this. There's nothing we can do about it. Either wait for NeoVim 0.20 or switch to Vim 8.

The bug is that NeoVim completes key sequences like deleting lines whenever any timer callback is fired.

Ok, i switch to Vim 8.
Thank you for your prompt response


Forked processes should pass back exception

Unless a process fails critically and abruptly (SIGKILL), the exception thrown inside a forked process (such as in coverage plugin) should be passed back to the spawning parent and rethrown to appear in build tracebacks with a full stack, rather than relying on a generic ("processes exited with an error code").

I think this behaviour is desirable but would hide it by default behind the -X (debug) switch.
There are a lot of other cases where PyBuilder only reports there was a failure and -v yields more information (log or output) while -X adds the stack trace on top.
IMHO running a python application should not show a stacktrace by default but provide the possibility to get one.

Let me expand on it further. Right now forked processes can only signal error exit with exit code. If a fork throws BuildFailedException that exception will most likely appear as traceback disregarding -X or -v options, and the spawning process, at best, can detected that the fork exited abnormally.
What should happen is that the parent receives the exception from the fork and either wraps it in BuildFailedException or re-raises it.

I see, thanks for clarifying. We should definitely do this - can you provide an example where a subprocess does not correctly provide a stacktrace? I'll try to find some timebto have a look. Also I think we should put together a best practice page on the new documentation, will open a separate issue for that.

Also maybe we should not rethrow the actual exception but rather add a cause' field to the BuildFailedException`. I still see value in a common supertype for exceptions that fail the build.

I'm about to PR the fix with correct tracebacks

Ok, so here's the skinny - the code simply passes forked process exception through. The reasoning behind this is as follows: we should behave as if the function executed was not forked. If the fork throws BuildFailedException - awesome. If the fork throws something else it's the problem of the forked function rather than of the fork_process utility.


Run an all-pairs check against a subset of the fingerprints

Whilst Holmes is designed to meet the 1:N fingerprint check (index v all the other samples) - when it comes to investigations it would be useful to be able to get the real somalier all-pairs output.
Somalier all-pairs does not scale up well (certainly not if running on lambdas) - so there will need to be a ceiling on the number of BAMs that can be compared in all pairs mode (50?)

What are the memory requirements here? Somalier fingerprint files are pretty small

Its possibly much much more that 50 that we can do on big lambdas now - I just remember reading some issue on somalier github where someone was saying they were running it on 10,000(?) samples and it was grinding their EC2 instances into the ground.

https://github.com/brentp/somalier/issues/89

@alexiswl can you get a feel for the mem/time requirements from files you have on your EC2? Would be good to understand
50 pairs = 20MB and 1:00
1000 pairs = 1GB and 3:35
(all numbers made up but you get the drift)

There is now a pairs step function that returns the all pairs HTML from somalier - and takes a list of BAMs. I have not tested for what sort of number of BAMS will start to hit lambda limits. I am expecting this to be used for investigating false negatives etc (i.e < 50 bams)


Automatically reserve username package prefix

From @dasMulli on July 3, 2018 17:45
The bar to register a prefix on nuget.org is "quite high" at the moment and requires manual steps, which is good for arbitrary prefixes.
I suggest automatically reserving the prefix matching the username of nuget.org users.
E.g. my username is "dasMulli", so I should be the only one allowed to upload new packages starting with "DasMulli."
Copied from original issue: NuGet/Home#7088

@diverdan92 ?

I think this goes against the purpose of ID prefix reservations. Since the reservation indicates authenticity between the owner and the author they are identifying, some form of manual approval will be necessary (to confirm the legitimacy of the request). If we were to consider reserving user name prefixes, then we would need to manually approve all NuGet.org user names so that nobody claims a name that doesn't belong to them.
Marking this closed as I don't think we should do this, but please let me know if you disagree.


New logo

I think it might be time for our logo to get a little refresh. Perhaps something more colorful and modern, like this for example. We currently have 5 uses where a new logo would need to work, as a favicon, as a gravatar, on t-shirts, and of course in the menu bar and at the bottom of the site.

It might be nice to stick with Myriad Pro for the typeface. But i wouldn't really mind switching to something else like Futura if it fits.

The Logo is fresher and elegant.

I don't really want to limit the scope for ideas, but the logo i imagine currently would be a somewhat geometric cloud. With a color palette that's friendly but also a bit stylish and modern. Something like the Firefox color palette.

I have a few contacts and am getting some info.  Do you have any idea how many hours might be required for this?

@s1037989 Thank you, we already found a designer and the new logo is almost done. 😀

A small preview. The logo should be finalized next week.

Looks great!!
On Fri, Aug 3, 2018, 9:47 AM Sebastian Riedel<EMAIL_ADDRESS>wrote:

A small preview. The logo should be finalized next week.
[image: mojologious]
https://user-images.githubusercontent.com/30094/43648946-1d56f8f8-973c-11e8-8e0c-e262c5d6be55.png
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/kraih/mojo/issues/1245#issuecomment-410275101, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAflelpz1UMZu-S1huQdW9xfUhLar8d9ks5uNGKEgaJpZM4VqNig
.

Hi
The Squarish logos shall be better in more situations.
The logos look great!
regds
Rajesh Kumar Mallah.
On Fri, Aug 3, 2018 at 8:17 PM, Sebastian Riedel<EMAIL_ADDRESS>wrote:

A small preview. The logo should be finalized next week.
[image: mojologious]
https://user-images.githubusercontent.com/30094/43648946-1d56f8f8-973c-11e8-8e0c-e262c5d6be55.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/kraih/mojo/issues/1245#issuecomment-410275101, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AHHZucz74kxtBSf2sivlm2Mr-ae37kE7ks5uNGKLgaJpZM4VqNig
.

Maybe it's good if the background is dark, there are no cloud lines or thinner cloud lines.
but if the background uses bright colors, the lines of clouds with dark colors

I have a concept with a logo that doesn't matter using any color.

Can also be used as follows:

Why is the cloud flat a the bottom? Everyone makes it this way, so we should not.
The colors look nice.

No changes, it's perfect.


Add SiliconCloud support

What this Pull Request (PR) does
This Pull Request adds SiliconCloud support.
Related issues
Screenshots

@xssdoctor 👀

how is silicon ai


Terminals do not appear in the buffer list

It looks like the terminals are not listed in the buffers list which is available with CTRL-b
Is it a design choice and what about a special shortcut to list only the available terminals ?
Anyway atom-term2 is one of my favorite plugin, great job !
Thanks you very much :)
François

I guess it's not intentional. PR welcome to improve that :)


[C] Implement name resolver time tracking.

This PR contains the following changes:

Adds time tracking for name resolver resolve and lookup functions. The same as the Java media driver.
Adds GENERIC_MESSAGE logging event to ensure compatibility with the Java MD.
Fixes a bug where the aeron_duty_cycle_stall_tracker_t was used instead of aeron_duty_cycle_tracker_t.
Aligns admin events definition with the Java implementation, i.e. only exclude FRAME_IN and FRAME_OUT events.

LGTM.

LGTM. The only question I have is the naming of GENERIC_MESSAGE. Not sure if it can be better named.

@mjpt777 The GENERIC_MESSAGE was there in the Java driver first and I just copied that to the C side.


Replacement for serve_incoming

I have been using serve_incoming to provide a https server (with native-tls + tokio-tls) but it seems to be deprecated in 0.13. Is there a replacement in 0.13 to be able to provide https?

Didn't see hyper::Server::builder/Builder::new the following appears to work.
        let identity = fs::read(cert_path)?;

        let identity = native_tls::Identity::from_pkcs12(&identity, "")?;
        let acceptor = tokio_tls::TlsAcceptor::from(
            native_tls::TlsAcceptor::new(identity)?,
        );

        let http = hyper::server::conn::Http::new();

        let listener = tokio_net::tcp::TcpListener::bind(&addr)
            .await?;
        let incoming = listener.incoming().err_into().and_then(move |stream| {
            async move {
                acceptor.accept(stream).await.map_err(|err| {
                    info!("Unable to accept TLS connection: {}", err);
                    Box::new(err) as Box<dyn ::std::error::Error + Send + Sync>
                })
            }
        });

        struct Acceptor<S>(S);
        impl<S, T, E> hyper::server::accept::Accept for Acceptor<S>
        where
            S: Stream<Item = Result<T, E>>,
        {
            type Conn = T;
            type Error = E;
            fn poll_accept(
                self: Pin<&mut Self>,
                cx: &mut task::Context<'_>,
            ) -> Poll<Option<Result<Self::Conn, Self::Error>>> {
                self.0.poll_next(cx)
            }
        }

        return hyper::server::Builder::new(Acceptor(incoming), http)
            .serve(hyper::service::make_service_fn(move |_| {
                ...
            }))


Google testing didn't run on a PR

On #123842, I'd have expected the "Google testing" check to run, but I don't see it anywhere in the list of checks.

It's had plenty of time to start; the last update to the PR was over 2 hours ago.

It's documented to start when a Flutter hacker approves the PR.
The PR's author (me) is a Flutter hacker, so I'd expect that to count, just like it counts toward the two approvals required by the autosubmit bot. And I think I've seen that working on other PRs.

Is this intended behavior in some way? Or is there a bug or an operational issue?
Possible related issues:

Sometimes the check does appear, but stays in "Pending" status indefinitely: #123289
Other issues linked to from that one.

Thanks for filling the issue. As you mentioned google testing should start after the PR is approved by a member (opening a PR as a member does not count as an approval)

Thanks for the swift reply.
I've made a small edit to that wiki page https://github.com/flutter/flutter/wiki/Understanding-Google-Testing to make that point explicit, in case I'm not the only person who's been confused about it.


Update requirements.txt

adding a requirement for local development as it was giving error

Exception: Install 'email_validator' for email validation support.

in ubuntu 18.04
the resource used: link

To prevent the Travis CI builds from failing, this dependency also has to be added to requirements-dev.txt.
I guess this fixes all the build errors over there?

To prevent the Travis CI builds from failing, this dependency also has to be added to requirements-dev.txt.
I guess this fixes all the build errors over there?

it's not solving the issue, Travis CI builds is falling because of abc module
Error:ImportError: No module named abc
it will be better if this repo drops support for python2

it's not solving the issue, Travis CI builds is falling because of abc module
Error:ImportError: No module named abc
it will be better if this repo drops support for python2

Agree, but I can't find this error in the job log? https://travis-ci.org/github/flask-admin/flask-admin/jobs/698373472

Fixed with #2094.


Fails with docker action

I deployed the cache server right along my runners with kubernetes. The npm jobs worked perfectly. Both uploading and downloading.  But when it came to the docker/build-push-action@v5 step, cache download and upload failed.
Here is the relevant step:
- name: Build and push
  uses: docker/build-push-action@v5
  with:
    context: .
    push: true
    tags: |
      tag1
      tag2
    cache-from: type=gha
    cache-to: type=gha,mode=max
    file: apps/${{ matrix.app }}/docker/Dockerfile
    provenance: false
    sbom: false

The error (downloading the cache):
#4 importing cache manifest from gha:6098406064130472668
#4 ERROR: Get "http://cache-server:3000/---token---/_apis/artifactcache/cache?keys=index-buildkit-1-f921bd05&version=693bb7016429d80366022f036f84856888c9f13e00145f5f6f4dce303a38d6f2": dial tcp: lookup cache-server on 46.38.225.xxx:53: no such host

The other error (uploading the cache):
ERROR: failed to solve: Get "http://cache-server:3000/---token---/_apis/artifactcache/cache?keys=buildkit-blob-1-sha256%3A067b0579ac4a7184ba4d6bd836719a8fa7286f4d20291d4f10a0b8c85ffca4c9&version=693bb7016429d80366022f036f84856888c9f13e00145f5f6f4dce303a38d6f2": dial tcp: lookup cache-server on 46.38.225.xxx:53: no such host

No idea, where the ip address 46.38.225.xxx comes from. Its not one of mine (but it is from the hoster I am using).
I have three physical server in my cluster (with 16 runner pods). But in the other step they were perfectly able to connect to the cache server and use it.

Looks like the runner cannot connect to the cache server. Are you sure it works with other actions? There should be no difference between npm and docker jobs (if they use the official actions/cache action)

If there are no logs for the docker cache, it probably cannot even reach the cache server. dial tcp: lookup cache-server on 46.38.225.xxx:53: no such host would also suggest that the networking in kubernetes is misconfigured.

I am not a k8s expert, but my thoughts were – if the lookup works for npm it should work for everything. How can I make sure, that it works correctly?

Docker probably uses the wrong DNS server (46.38.225.xxx:53) so it cannot find the ip for hostname cache-server. Is 46.38.225.xxx:53 one of your servers?

No, not one of the 3 servers in my k8s cluster. But it definitely belongs to the hoster.


Edit message should support update of metadata and asset

What if new metadata/asset is null, shall i consider it is emptying asset/metadata or keeping it unchanged?

@howawong maybe should have function overload? So if users don't want to update metadata / asset they should skip them? Or any idea?

Please also check if ios support update message meta data


Added root option and made bindEventHandlers public

The root option determines where the click, mouseover and touchstart events should be bound to. This allows links outside of the $container to load using SmoothState.js.
root can be used like so:
$("#page").smoothState({
    root: $(document)
}).data('smoothState');

bindEventHandlers has been made public to allow the user to manually rebind all events. For example: if $("*").off() has been called, and all event handlers have been destroyed, then it is necessary to re bind SmoothState's events.
An example from one of my projects:
render: function(url, container, content) {
        $("html, body").css('cursor', 'auto')
             .find('a').css('cursor', 'auto');
        container.html(content)
        elements = $(document).add("*")
        elements.off() // removes all previous events to stop double registration when calling `initialisePage()`
        smoothState.bindEventHandlers($(document))
        initialisePage()
}

Hopefully you find these additions useful!

@neon64 thanks for the contribution. I'm not able to merge this in because of conflicts with the source. Additionally, it would be best to create separate pull request for each one of these features. Don't forget to update the documentation as well.
Closing.


ENC28J60 Support ,iram1_0_seg Error

Hello Martin,
I have only enabled the ENC28J60 in the user_config.h and get the following error:
.text' will not fit in region iram1_0_seg'
Do you know this error? Can you help me?
Do you have a compiled image with the ENC28J60 enabled?
Greetings
GrafvonWolfenstein

Same thing happened to me.
ENC28J60 enabled  in the user_config.h  (#define HAVE_ENC28J60 1)
Linux terminal :
user@user-virtual-machine:~/Desktop/project2/esp_wifi_repeater-master$ make clean
user@user-virtual-machine:~/Desktop/project2/esp_wifi_repeater-master$ make
CC driver/spi.c
CC driver/new_uart.c
CC user/config_flash.c
CC user/ringbuf.c
CC user/rboot-ota.c
CC user/acl.c
CC user/user_main.c
CC user/rboot-api.c
CC user/sys_time.c
CC mqtt/mqtt.c
CC mqtt/mqtt_msg.c
CC mqtt/queue.c
CC mqtt/utils.c
CC mqtt/ringbuf_mqtt.c
CC mqtt/proto.c
CC easygpio/easygpio.c
AR build/app_app.a
/home/sanjeewa/Desktop/project2/esp-open-sdk/xtensa-lx106-elf/lib/gcc/xtensa-lx106-elf/4.8.5/../../../../xtensa-lx106-elf/bin/ld: build/app.out section .text' will not fit in region iram1_0_seg'
collect2: error: ld returned 1 exit status
Makefile:132: recipe for target 'firmware/0x02000.bin' failed
make: *** [firmware/0x02000.bin] Error 1
Thanks
Sanjeewa.

Hey @GrafvonWolfenstein and @ulsanjeewa I was not able to fix this, however I found out an alternative solution:

Fork this repo: https://github.com/shafr/esp_wifi_repeater
Make your changes to the code and push to your repo
You should see builds happening in "Actions" tab.

If you just want the ENC option enabled, I have already compiled it in my repo: https://github.com/GiVeMeRoOt/esp_wifi_repeater/actions/runs/1117319242 (firmware.tar.gz on this page)


connection.onstreamended never called on Safari

Using any demo based on RTCMultiConnection, i noticed that when remote stream disconnect, in Safari there is no call to the connection.onstreamended function.
I have check everywhere on the code and i have no idea what happen with Safari.

I too am having this issue. Safari 13.0.3 on macOS High Sierra v 10.13.6. @ifcall you closed this issue, did you figure a solution?


feat: better card styling and functionality

Fixes #26

I have rewritten to use MUI components, the UI looks much smarter now. Thanks Anna!


Qiskit Services through REST APIs under docs/run section

Added a new menu Qiskit Runtime through REST APIs under the docs/run section to cater to the API-only IBM Quantum partners.
Menu structure (all using REST APIs only):

Initialize account and setup tokens
Qiskit Transpiler Service
Working with Sampler Primitive
Working with Estimator Primitive
Run jobs in different Execution modes

@pacomf @johannesgreiner @Bagherpoor

Thanks for your feedback, @javabster! Let me discuss with the team and get back asap :)

2c06be9 proposes the following changes:

Combined Sampler and Estimator primitives using REST APIs in a single file (mimicking the structure given here).
Most of the admonitions have been removed and API references have been added where necessary (please let me know if I missed any)
Account initialization has been moved to start/setup-channels. The wordings and the storyline might need some changes depending on how you'd like to integrate Set up account using REST APIs in this file.
Qiskit Transpiler Service has been renamed to Transpilation using REST APIs and moved to the transpile folder.
rest-api-primitives.mdx tries to mimic the structure of primitives-get-started, with an additional section on Runtime Options (since these options using REST APIs weren't really fitting into Configure runtime options).

Looking forward to your feedback @javabster

@abbycross I've addressed the comment. Good to go from my end. Thanks :)

I've addressed your latest comment @javabster. Thanks :)


Metadata file instead of deps file

https://github.com/pavlix/network-testing/issues/21 reminds me, that  it would be nice, to get testname based on some metadata, not exactly on directory name.
for example:
deps file will be removed
metadata file will be added and will contain for example using syntax of https://docs.python.org/2/library/configparser.html
[Description]
name = superpingtest
summary: this test is testing ping somehow
   and it is very perfect ultimate test

[Dependencies]
rpm=abc def
deb=abc xyz

[Executables]
server=../othertest/server
client=client

[Environment]
variable=I dont know what to write there now

Then it will be possible easily extend schedule possibilities or add some filtering options (some tests are irrelevant for some environments for example)
and also names will be independent on directory structure.
more less all of sections could be omitted, only description have to be there.

Or there can be used json parser for config file instead of that one, becasue it is now used, so no more python dependencies needed, although congfigparser is general part of python.


New arena: Grand crevice

Description: Whitebox grand canyon inspired bane

[x] komme på level design (promotere "Oppover")
[ ] sette inn props
[x] make giant fans to stream player upwards

Easy moveability at lower levels (lower risk, less reward)
Harder and harder to move upwards, at higher levels it is higher risk and higher rewards (high ground)

props and newer models will be done in issue  Grand Crevice modeling #237