Can't setup the environment

I've been trying to build a docker image by following the steps from INSTALL.md, but I'm stuck on this:
# Setup MSDeformAttn
cd oneformer/modeling/pixel_decoder/ops
sh make.sh

I tried installing CUDA toolkit globally, I also tried without using conda at all. No luck, I keep getting all kinds of errors. Please help, I've been pulling my hair with this all day. Here is my Dockerfile so far:
# Use the official Ubuntu 20.04 LTS image as the base image
FROM ubuntu:20.04

# Set environment variables to avoid interaction during package installation
ENV DEBIAN_FRONTEND=noninteractive

# Update the package index and install required packages
RUN apt-get update && apt-get install -y --no-install-recommends \
    wget \
    ca-certificates \
    bzip2 \
    build-essential \
    git

# Set the working directory
WORKDIR /opt

# Download and install Miniconda
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh \
    && chmod +x Miniconda3-latest-Linux-x86_64.sh \
    && ./Miniconda3-latest-Linux-x86_64.sh -b -p /opt/conda \
    && rm Miniconda3-latest-Linux-x86_64.sh

# Add conda to the system PATH
ENV PATH="/opt/conda/bin:${PATH}"

# Create the "oneformer" virtual environment
RUN conda create -y -n oneformer

# Activate the "oneformer" virtual environment and run any further commands within it
SHELL ["conda", "run", "-n", "oneformer", "/bin/bash", "-c"]

RUN git clone https://github.com/SHI-Labs/OneFormer.git /OneFormer
RUN cd /OneFormer
WORKDIR /OneFormer

# Install Pytorch
RUN conda install -y pytorch==1.10.1 -c pytorch
RUN conda install -y torchvision==0.11.2 -c pytorch
RUN conda install -y cudatoolkit=11.3 -c pytorch

# Install opencv (required for running the demo)
RUN pip3 install -U opencv-python

# Install detectron2
RUN python -m pip install detectron2 -f \
    https://dl.fbaipublicfiles.com/detectron2/wheels/cu113/torch1.10/index.html

# Install other dependencies
RUN pip3 install git+https://github.com/cocodataset/panopticapi.git
RUN pip3 install git+https://github.com/mcordts/cityscapesScripts.git
RUN pip3 install -r requirements.txt

# Setup wand
RUN pip3 install wandb
#ENV WANDB_API_KEY=...
#RUN wandb login

# Setup MSDeformAttn
# THIS IS WHERE IT BREAKS
# ENV CUDA_HOME=/opt/conda/envs/oneformer/lib/python3.9/site-packages/torch/cuda
# ENV FORCE_CUDA=1
RUN cd oneformer/modeling/pixel_decoder/ops && \
    sh ./make.sh

# Set the entrypoint to use the "oneformer" virtual environment by default
ENTRYPOINT ["conda", "run", "--no-capture-output", "-n", "oneformer"]

# Set the default command to run when starting the container
CMD ["/bin/bash"]

And this is the error that I'm getting:
[19/19] RUN cd oneformer/modeling/pixel_decoder/ops &&     sh ./make.sh:
#0 1.605 /opt/conda/envs/oneformer/lib/python3.9/site-packages/torch/utils/cpp_extension.py:381: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
#0 1.605   warnings.warn(msg.format('we could not find ninja.'))
#0 1.605 error: [Errno 2] No such file or directory: '/opt/conda/envs/oneformer/lib/python3.9/site-packages/torch/cuda/bin/nvcc'
#0 1.605
#0 1.605 ERROR conda.cli.main_run:execute(47): `conda run /bin/bash -c cd oneformer/modeling/pixel_decoder/ops &&     sh ./make.sh` failed. (See above for error)
#0 1.605 No CUDA runtime is found, using CUDA_HOME='/opt/conda/envs/oneformer/lib/python3.9/site-packages/torch/cuda'
#0 1.605 running build
#0 1.605 running build_py
#0 1.605 creating build
#0 1.605 creating build/lib.linux-x86_64-3.9
#0 1.605 creating build/lib.linux-x86_64-3.9/functions
#0 1.605 copying functions/__init__.py -> build/lib.linux-x86_64-3.9/functions
#0 1.605 copying functions/ms_deform_attn_func.py -> build/lib.linux-x86_64-3.9/functions
#0 1.605 creating build/lib.linux-x86_64-3.9/modules
#0 1.605 copying modules/__init__.py -> build/lib.linux-x86_64-3.9/modules
#0 1.605 copying modules/ms_deform_attn.py -> build/lib.linux-x86_64-3.9/modules
#0 1.605 running build_ext
#0 1.605
------
failed to solve: executor failed running [conda run -n oneformer /bin/bash -c cd oneformer/modeling/pixel_decoder/ops &&     sh ./make.sh]: exit code: 1

On a sidenote, adding a dockerfile in the /demo folder would be amazing.

Another docker file with a different error:
#0 16.18 /usr/local/lib/python3.8/dist-packages/torch/utils/cpp_extension.py:381: UserWarning: Attempted to use ninja as the BuildExtension backend but we could not find ninja.. Falling back to using the slow distutils backend.
#0 16.18   warnings.warn(msg.format('we could not find ninja.'))
#0 16.18 Traceback (most recent call last):
#0 16.18   File "setup.py", line 69, in <module>
#0 16.18     setup(
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/setuptools/__init__.py", line 153, in setup
#0 16.18     return distutils.core.setup(**attrs)
#0 16.18   File "/usr/lib/python3.8/distutils/core.py", line 148, in setup
#0 16.18     dist.run_commands()
#0 16.18   File "/usr/lib/python3.8/distutils/dist.py", line 966, in run_commands
#0 16.18     self.run_command(cmd)
#0 16.18   File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
#0 16.18     cmd_obj.run()
#0 16.18   File "/usr/lib/python3.8/distutils/command/build.py", line 135, in run
#0 16.18     self.run_command(cmd_name)
#0 16.18   File "/usr/lib/python3.8/distutils/cmd.py", line 313, in run_command
#0 16.18     self.distribution.run_command(command)
#0 16.18   File "/usr/lib/python3.8/distutils/dist.py", line 985, in run_command
#0 16.18     cmd_obj.run()
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/setuptools/command/build_ext.py", line 79, in run
#0 16.18     _build_ext.run(self)
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/Cython/Distutils/old_build_ext.py", line 186, in run
#0 16.18     _build_ext.build_ext.run(self)
#0 16.18   File "/usr/lib/python3.8/distutils/command/build_ext.py", line 340, in run
#0 16.18     self.build_extensions()
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/torch/utils/cpp_extension.py", line 735, in build_extensions
#0 16.18     build_ext.build_extensions(self)
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
#0 16.18     _build_ext.build_ext.build_extensions(self)
#0 16.18   File "/usr/lib/python3.8/distutils/command/build_ext.py", line 449, in build_extensions
#0 16.18     self._build_extensions_serial()
#0 16.18   File "/usr/lib/python3.8/distutils/command/build_ext.py", line 474, in _build_extensions_serial
#0 16.18     self.build_extension(ext)
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/setuptools/command/build_ext.py", line 202, in build_extension
#0 16.18     _build_ext.build_extension(self, ext)
#0 16.18   File "/usr/lib/python3.8/distutils/command/build_ext.py", line 528, in build_extension
#0 16.18     objects = self.compiler.compile(sources,
#0 16.18   File "/usr/lib/python3.8/distutils/ccompiler.py", line 574, in compile
#0 16.18     self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/torch/utils/cpp_extension.py", line 483, in unix_wrap_single_compile
#0 16.18     cflags = unix_cuda_flags(cflags)
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/torch/utils/cpp_extension.py", line 450, in unix_cuda_flags
#0 16.18     cflags + _get_cuda_arch_flags(cflags))
#0 16.18   File "/usr/local/lib/python3.8/dist-packages/torch/utils/cpp_extension.py", line 1606, in _get_cuda_arch_flags
#0 16.18     arch_list[-1] += '+PTX'
#0 16.18 IndexError: list index out of range
------
failed to solve: executor failed running [/bin/sh -c cd oneformer/modeling/pixel_decoder/ops &&     sh ./make.sh]: exit code: 1

And here is the dockerfile:
FROM nvidia/cuda:11.3.1-devel-ubuntu20.04

RUN apt-get update && apt-get upgrade -y
RUN apt-get install -y --no-install-recommends \
    python3 python3-pip python3-dev build-essential \
    libgomp1 \
    git
RUN update-alternatives --install /usr/bin/python python /usr/bin/python3 1
RUN python -m pip install --upgrade pip wheel

# Install PyTorch 1.10.1 and torchvision 0.11.2 with CUDA 11.3 support
RUN python -m pip install torch==1.10.1+cu113 torchvision==0.11.2+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html

# Clone the OneFormer repository
RUN git clone https://github.com/SHI-Labs/OneFormer.git /OneFormer
RUN cd /OneFormer
WORKDIR /OneFormer

# Install detectron2 and other dependencies
RUN python -m pip install 'git+https://github.com/facebookresearch/detectron2.git'
RUN pip install git+https://github.com/cocodataset/panopticapi.git
RUN pip install git+https://github.com/mcordts/cityscapesScripts.git
RUN pip install -r requirements.txt

# Setup wand
RUN pip install wandb
#ENV WANDB_API_KEY=...
#RUN wandb login

# Setup MSDeformAttn
RUN pip3 install -U opencv-python
ENV CUDA_HOME=/usr/local/cuda-11.3
ENV FORCE_CUDA=1
RUN cd oneformer/modeling/pixel_decoder/ops && \
    sh ./make.sh

# Set the default command to run when starting the container
CMD ["/bin/bash"]

This is as far as I got:
FROM nvidia/cuda:11.3.1-devel-ubuntu20.04

# Set environment variables
ENV DEBIAN_FRONTEND=noninteractive
ENV LANG=C.UTF-8
ENV LC_ALL=C.UTF-8

# Update package list and install dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
    wget \
    ca-certificates \
    git \
    build-essential \
    libglib2.0-0 \
    libsm6 \
    libxext6 \
    libxrender1 \
    libyaml-cpp-dev \
    libopencv-dev \
    && rm -rf /var/lib/apt/lists/*

# Install GCC, G++ 9
RUN apt-get update && apt-get install -y --no-install-recommends \
    gcc-9 \
    g++-9 \
    && rm -rf /var/lib/apt/lists/* \
    && update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 100 \
    && update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 100

# Install conda 4.12.0
RUN wget https://repo.anaconda.com/miniconda/Miniconda3-py38_4.12.0-Linux-x86_64.sh -O miniconda.sh \
    && chmod +x miniconda.sh \
    && ./miniconda.sh -b -p /opt/conda \
    && rm miniconda.sh \
    && /opt/conda/bin/conda clean -tipsy \
    && ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh \
    && echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc \
    && echo "conda activate base" >> ~/.bashrc

# Set some environment variables
ENV PATH /opt/conda/bin:$PATH
ENV WANDB_API_KEY=646b74fba301c9f817c9ad79fe08ecd78469acb8
ENV CUDA_HOME=/usr/local/cuda
ENV FORCE_CUDA=1

# Clone OneFormer repository and set working directory
RUN git clone https://github.com/SHI-Labs/OneFormer.git /OneFormer
WORKDIR /OneFormer

# Install dependencies
RUN conda install pytorch==1.10.1 torchvision==0.11.2 cudatoolkit=11.3 -c pytorch -c conda-forge
RUN pip3 install -U opencv-python
RUN python -m pip install detectron2 -f https://dl.fbaipublicfiles.com/detectron2/wheels/cu113/torch1.10/index.html
RUN pip3 install git+https://github.com/cocodataset/panopticapi.git
RUN pip3 install git+https://github.com/mcordts/cityscapesScripts.git
RUN pip3 install -r requirements.txt
RUN pip3 install wandb
RUN wandb login
RUN pip3 install colormap
RUN pip3 install easydev

# Setup MSDeformAttn
ENV TORCH_CUDA_ARCH_LIST="6.0;6.1;6.2;7.0;7.5;8.0;8.6+PTX"
RUN cd oneformer/modeling/pixel_decoder/ops && \
    chmod +x make.sh && \
    ./make.sh

# Downgrade numpy
RUN pip3 uninstall numpy -y
RUN pip3 install numpy==1.23.1

# Set the default command to run when starting the container
CMD ["/bin/bash"]

This image works, but the model can't be trained on RTX4090 due to a bug in cuda 11.3:
Traceback (most recent call last):
  File "/OneFormer/workspace/oneformer-scripts/train.py", line 448, in <module>
    trainer.train()
  File "/opt/conda/lib/python3.8/site-packages/detectron2/engine/defaults.py", line 484, in train
    super().train(self.start_iter, self.max_iter)
  File "/opt/conda/lib/python3.8/site-packages/detectron2/engine/train_loop.py", line 149, in train
    self.run_step()
  File "/opt/conda/lib/python3.8/site-packages/detectron2/engine/defaults.py", line 494, in run_step
    self._trainer.run_step()
  File "/opt/conda/lib/python3.8/site-packages/detectron2/engine/train_loop.py", line 395, in run_step
    loss_dict = self.model(data)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/OneFormer/oneformer/oneformer_model.py", line 296, in forward
    losses = self.criterion(outputs, targets)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/OneFormer/oneformer/modeling/criterion.py", line 306, in forward
    indices = self.matcher(aux_outputs, targets)
  File "/opt/conda/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/opt/conda/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 28, in decorate_context
    return func(*args, **kwargs)
  File "/OneFormer/oneformer/modeling/matcher.py", line 202, in forward
    return self.memory_efficient_forward(outputs, targets)
  File "/opt/conda/lib/python3.8/site-packages/torch/autograd/grad_mode.py", line 28, in decorate_context
    return func(*args, **kwargs)
  File "/OneFormer/oneformer/modeling/matcher.py", line 161, in memory_efficient_forward
    cost_mask = batch_sigmoid_ce_loss_jit(out_mask, tgt_mask)
RuntimeError: nvrtc: error: invalid value for --gpu-architecture (-arch)

nvrtc compilation failed:

#define NAN __int_as_float(0x7fffffff)
#define POS_INFINITY __int_as_float(0x7f800000)
#define NEG_INFINITY __int_as_float(0xff800000)

template<typename T>
__device__ T maximum(T a, T b) {
  return isnan(a) ? a : (a > b ? a : b);
}

template<typename T>
__device__ T minimum(T a, T b) {
  return isnan(a) ? a : (a < b ? a : b);
}

extern "C" __global__
void fused_neg_add(float* ttargets_1, float* aten_add) {
{
  float v = __ldg(ttargets_1 + (long long)(threadIdx.x) + 512ll * (long long)(blockIdx.x));
  aten_add[(long long)(threadIdx.x) + 512ll * (long long)(blockIdx.x)] = (0.f - v) + 1.f;
}
}

I can't update the cuda version, otherwise MSDeformAttn doesn't build. This is the issue in the pytorch repo: https://github.com/pytorch/pytorch/issues/87595#issue-1420810328

Hi @nikolaydyankov, thanks for your interest in our work. Did you take a look at the Dockerfile used for hosting our HuggingFace Space demo? If not, it might be worth a look.

I'm running into the same problem with the architecture mismatch. Unable to run on a RTX4090. I've temporarily replaced all the JIT functions with regular functions and it runs, but its very slow.

@nikolaydyankov Hi, I encounter exactly the same problem as you. Thanks to @praeclarumjj3 , I found the key point in Dockerfile used in oneformer's huggingface space.
Two key command in the dockerfile is below:
ARG TORCH_CUDA_ARCH_LIST=7.5+PTX
RUN cd /path/to/ops && FORCE_CUDA=1 python setup.py build install

The TORCH_CUDA_ARCH_LIST seems need to change to fit your GPU and cuda version.~~


Lecturer's notes

Context
A chore management system about list of chores to do at home.
Kind of Chores

[ ] Laundry
[ ] Kitchen (cooking)
[ ] Cleaning
[ ] Car washing
[ ] Sweeping
[ ] Baby sitting
[ ] Shopping (groceries)

People

[ ] Date of birth
[ ] Gender
[ ] Roles (supervisor, etc)
[ ] First name
[ ] Last name
[ ] Phone

Creating entities

[ ] Identifying entities.

Interfaces/Pages

[ ] Login
[ ] Home/welcome
[ ] Sign up
[ ] User profile
[ ] Chores page
[ ] Dashboard
[ ] Deadline tracker page
[ ] A leaderboard???
[ ] Admin page for parents.

Register Page

Form (required attributes - action, method, name, id)
First name input (required attributes - placeholder, type, name, id, any validation attribute).
Last name input (required attributes - placeholder, type, name, id, any validation attribute).
Radio button for gender (required attributes - name and id) (0-Male, 1-Female)
Dropdown for family role (required attributes - name and id) (0-select, 1-father, 2-mother, 3-son, 4-daughter)
Date of birth input (required attributes - placeholder, type, name, id, any form validation attribute) (validation is optional).
Phone number input (required attributes - placeholder, type, name, id, any form validation attribute).
Email input (required attributes - placeholder, type, name, id, any form validation attribute).
Password input (required attributes - placeholder, name, type, id, any form validation attribute).
Password retype input (required attributes - type, name, id, any form validation attribute).
Register button (required attributes - type, name, id).
Login link to redirect to login page.

Ask a question about the Roles and Role ID

https://aucampus-my.sharepoint.com/:w:/g/personal/dsampah_ashesi_edu_gh/ESS2lS4-nYJKtdSovOphmgsBVVJLpsFuDvYi4bFhdowkvA?e=xCdAO1


replace forums link with slackin

one of these is more active than the other... by a couple orders of magnitude ;)

done now!


How to override the default post_init function?

Currently it seems the watchdogs are disabled by default in the __post_init function. Is there a possibility to override or modify this behaviour?
https://github.com/esp-rs/esp-hal/pull/763

I'm pretty sure you can just re-enable the watchdog in your main function. There should be an example as well.

Won’t there be some time where its disabled then? I would prefer never to
disable it
ons 19 juni 2024 kl. 22:26 skrev Dominic Fischer @.***>:

I'm pretty sure you can just re-enable the watchdog in your main function.
There should be an example as well.
—
Reply to this email directly, view it on GitHub
https://github.com/esp-rs/esp-hal/issues/1698#issuecomment-2179417282,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC3FNEO5JLHYR35BEL6BIRTZIHSOPAVCNFSM6AAAAABJSP5EAKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZZGQYTOMRYGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

We'd probably add this behind a configuration option. We don't have a complete story for this yet see #1111.

For this sort of thing, rather than a config option, which can only be specified once per crate. This should probably be part of the entry macro, which can be specified once per application/binary (of which there could be multiple in a crate).
#[entry(watchdog, psram(80))]
fn main() {
    // stuff
}

I would prefer never to disable it

Not that I think this is bad to want or something, I'm just curious what you're worried about happening between the disable and re-enable? Or is this a matter of principal?

Im worried that I have made a bad OTA image and get stuck in it :/
ons 19 juni 2024 kl. 22:53 skrev Dominic Fischer @.***>:

For this sort of thing, rather than a config option, which can only be
specified once per crate. This should probably be part of the entry macro,
which can be specified once per application/binary (of which there could be
multiple in a crate).
#[entry(watchdog, psram(80))]fn main() {
// stuff}
I would prefer never to disable it
Not that I think this is bad to want or something, I'm just curious what
you're worried about happening between the disable and re-enable? Or is
this a matter of principal?
—
Reply to this email directly, view it on GitHub
https://github.com/esp-rs/esp-hal/issues/1698#issuecomment-2179443884,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AC3FNELZDHY6L4GCLARGULTZIHVVJAVCNFSM6AAAAABJSP5EAKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZZGQ2DGOBYGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>

With the changes to how we initialize the hal, we can now make this a global configuration option. (Bear in mind this issue on the esp32 when implementing: https://github.com/esp-rs/esp-hal/issues/2105)


Possible to send database from local development to dev environment via terminus / drush command?

Is it possible to send database from local development to dev environment via terminus / drush command?
Bypassing the need to login to the Pantheon dashboard, manually uploading and importing the database file?

This is a great suggstion. There is some planning work in #235. If you have thoughts about implementation, please add them there.


Restore pinned cudf dependency mode

Restore pinned dependency mode disabled as a workaround in  #1929 once it is fixed

build

This is currently blocked by an issue with picking up patches for pinned dependencies, see rapidsai/cudf#15512

build


Don't Merge! PR real time test for webhook case

Docs Build status updates of commit 6409eec:
:clock10: Pending: waiting for processors (17 builds ahead of you)
:warning: Docs Build is busy, currently there are 17 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit 6409eec:
:clock10: Full build: the average full build time is 5 min(s) 59 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit 6409eec:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/testing.md
:warning:Warning
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)
Details

docs-ref-conceptual/testing.md

[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.
[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.
[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Can you achieve something similar to newm?

https://github.com/jbuchermn/newm
https://www.youtube.com/watch?v=mDw-hMW0b70
Thanks.
If it can be achieved, what configurations should I make?

Sorry, this is not the intended goal of this plugin.


Should we simplify all namespaces for a single one?

Sometimes we need a lot of using to get the job done:
using Snake.Framework;
using Snake.Framework.Animations;
using Snake.Framework.Geometry;
using Snake.Framework.Graphics;

Maybe we should use just:
using Snake.Framework;

I totally agree. It would make things simpler.


Is there a way to limit unnecessary array depth?

Next question-- (Sorry for all the questions, I'm trying to evaluate this for a large project, would love to talk to you about it.)
When using the example javascript.js, or even in writing short grammar of my own, the parser seems to generate unnecessarily deep array structures. For instance, with parsing something like this:
(function() {
  var blah = 'blah';
});

I get a structure like this:

Most of the arrays contain nothing but another array. Even from the text output, you can see it's creating arrays with no value.

Since each array increases the number of JS objects in memory, is there a way to keep this structure a little flatter and eliminate empty arrays (or arrays with one value which is another array)? Seems like matching entities like variable names or values could be pushed as a single value. Does nearley support that?

Yes! You're looking for the "postprocessor" feature. Read about "postprocessors" in the README. :-)

(The reason javascript.js doesn't use postprocessors is because I haven't implemented them. It'll take me 20-30 minutes, max.)

I had it so it outputted completely flat output, meaning it would just output the input. I imagined it being used for building macros. The reason why it has so much nesting is because (as a loose examples) "1+1;" might be a statement which is a statement_expression which is an expression which is an addition_expression.... and so on many layers deep. Simplifying it with post processors would be trivial, it would just depend on exactly what you wanted the output to be.

Ah, okay, I figured it was something like that. So it segments everything by... expression I guess? But then you collapse /  said expressions, I take it. Okay, that makes a certain kind of sense. If it's "as expected", it's a little less scary. :)

Related: I'm coming along with writing the grammar. I read about postprocessors, but that still left me with a few questions. Such as:

What does {% id %} do? It's tangentially referenced, or referenced as "you should probably know this already".
If my parsing output has multiple copies of input throughout the array, is that a sign of ambiguous grammar? Or... does that just happen without proper post processing.
Similarly, when I run nearley-test with my input, it parses, but produces 21 charts. What do "charts" mean? Is "1" the target number of charts?

See below:
// input:
.a .b, .c { b: 123; }

// parser results
[ [ [],
    [ [ [ [ [ [ '.', [ null, [ 'a' ], [] ] ] ],
            [ [ [],
                [ [ ' ' ] ],
                [],
                [ [ '.', [ null, [ 'b' ], [] ] ] ] ] ],
            null ],
          [ [ [],
              ',',
              [ [ ' ' ] ],
              [ [ [ '.', [ null, [ 'c' ], [] ] ] ],
                [],
                null ] ] ] ],
        [ [ ' ' ] ],
        [ '{',
          [ [ ' ' ] ],
          [ [ [ [ [ null, [ 'b' ], [] ],
                  [],
                  ':',
                  [ [ ' ' ] ],
                  [ [ [ [ [ '1', '2', '3' ] ] ] ],
                    [] ] ] ],
              [ ';' ] ] ],
          [ [ ' ' ] ],
          '}',
          null ] ] ],
    [] ],
  [ [],
    [ [ [ [ [ [ '.', [ null, [ 'a' ], [] ] ] ],
            [ [ [],
                [ [ ' ' ] ],
                [],
                [ [ '.', [ null, [ 'b' ], [] ] ] ] ] ],
            null ],
          [ [ [],
              ',',
              [ [ ' ' ] ],
              [ [ [ '.', [ null, [ 'c' ], [] ] ] ],
                [],
                null ] ] ] ],
        [ [ ' ' ] ],
        [ '{',
          [ [ ' ' ] ],
          [ [ [ [ [ null, [ 'b' ], [] ],
                  [],
                  ':',
                  [ [ ' ' ] ],
                  [ [ [ [ [ '1', '2' ] ] ] ],
                    [ [ [], [ [ [ [ '3' ] ] ] ] ] ] ] ] ],
              [ ';' ] ] ],
          [ [ ' ' ] ],
          '}',
          null ] ] ],
    [] ],
  [ [],
    [ [ [ [ [ [ '.', [ null, [ 'a' ], [] ] ] ],
            [ [ [],
                [ [ ' ' ] ],
                [],
                [ [ '.', [ null, [ 'b' ], [] ] ] ] ] ],
            null ],
          [ [ [],
              ',',
              [ [ ' ' ] ],
              [ [ [ '.', [ null, [ 'c' ], [] ] ] ],
                [],
                null ] ] ] ],
        [ [ ' ' ] ],
        [ '{',
          [ [ ' ' ] ],
          [ [ [ [ [ null, [ 'b' ], [] ],
                  [],
                  ':',
                  [ [ ' ' ] ],
                  [ [ [ [ [ '1' ] ] ] ],
                    [ [ [], [ [ [ [ '2', '3' ] ] ] ] ] ] ] ] ],
              [ ';' ] ] ],
          [ [ ' ' ] ],
          '}',
          null ] ] ],
    [] ],
  [ [],
    [ [ [ [ [ [ '.', [ null, [ 'a' ], [] ] ] ],
            [ [ [],
                [ [ ' ' ] ],
                [],
                [ [ '.', [ null, [ 'b' ], [] ] ] ] ] ],
            null ],
          [ [ [],
              ',',
              [ [ ' ' ] ],
              [ [ [ '.', [ null, [ 'c' ], [] ] ] ],
                [],
                null ] ] ] ],
        [ [ ' ' ] ],
        [ '{',
          [ [ ' ' ] ],
          [ [ [ [ [ null, [ 'b' ], [] ],
                  [],
                  ':',
                  [ [ ' ' ] ],
                  [ [ [ [ [ '1' ] ] ] ],
                    [ [ [], [ [ [ [ '2' ] ] ] ] ],
                      [ [], [ [ [ [ '3' ] ] ] ] ] ] ] ] ],
              [ ';' ] ] ],
          [ [ ' ' ] ],
          '}',
          null ] ] ],
    [] ] ]

Obviously, I'd want to get rid of empty arrays, semi-colon terminators, spaces, nulls and braces in the AST. How do I condense the AST to the "target" entities?

A lot of good questions here!
1 - {% id %}: recall that post-processors are just JavaScript functions which are fed the parsed array for processing. id is a pre-defined "constant" function which returns the first element of an array. That is, we define function id(x) {return x[0]; } somewhere for you. This lets you write something like:
document -> program {% id %}

rather than
document -> program {% function(d) {return d[0]; } %}

Note that without the post-processor, nearley's output using that grammar will be wrapped in an array, because as far as it's concerned, all nonterminals' expansions are an array—even those with just one element. :-)
2 - Yes, that means you have some ambiguity. Each member of the top-level list is a valid parsing of your input with the grammar. Looking at your pasted output, I see that the only difference between these parsings is the way "123" is broken up as digits—I suggest you double-check the part of your grammar that parses a number.
3 - nearley-test is not as documented as it should be. As such, though, #charts should correspond to the number of characters in the input—not some metric to minimize. In theory, you'd want to minimize the number of rows in each chart, too, but don't worry about that. It won't be a significant performance boost.
I'm glad to see your grammar's coming along well! Keep me posted, and don't hesitate to ask any questions you might have. Seeing these misconceptions is actually really helpful to me when I design new features or write documentation. :-)
Cheers!

Here's an example of using a post-processor to condense the arrays:
thing -> "a" "b" "c"

Without postprocessors, when run on "abc", this results in ["a", "b", "c"].
With a postprocessor, we can do something like:
thing -> "a" "b" "c" {% function(d) {return "A thing:" d[0] + d[1] + d[2];} %}

When you run that on "abc", you get the output "A thing:abc".

Okay, so now I have a concern. I came here to say, "Never mind, I don't think it's ambiguity because when I started putting in postprocessing, it eliminated the duplicates."
So now my worry is: is the grammar still ambiguous, but I'm hiding the problem because of post-processing? All I did was start returning objects with labels so I could see what was happening. As soon as I did that, I only got one permutation for the number value. o_O
I actually have the number value collapsing down to just:
[ [ { num: '123' } ] ] ] ],

... from the original result. My goal is to get to the most performant parsing possible, so I don't want to hide issues.

Hmmm… that shouldn't be happening. But, in any case, if nearley returns only one result, then it's unambiguous. There's no postprocessed-value-equality-testing magic going on.
Again, it's really hard for me to guess what's up without looking at your actual grammar. As I said, grammar-writing is tricky, tricky stuff and you can get caught up in subtleties very easily! :-)
Finally: it's probably worth writing a grammar in its entirety first, before you try to optimize it. Unlike many other things, it's pretty easy to optimize a grammar once it's written.

Ah. Well, here's what I have so far if you want to take a look. https://gist.github.com/matthew-dean/67891922dd5b78b4214c - It's for the Less language (the CSS preprocessor-- I'm part of the core team, so I'm researching ways to do faster parsing).
I'm having more fun than I thought I would solving this puzzle, so thanks so much for getting me past the initial roadblocks!

Whoo, that's amazing! You can't imagine how gratifying it is to see all those fancy syntactic sugars I added to nearley be used in the wild. :D

Well, it's not in use YET. The whole team makes those decisions (these fine people here - http://lesscss.org/about/), not just me, and I can imagine some reluctance to replacing the entire parsing component, so I want to get it to a point to generating a benchmark comparison with our existing parser. My instinct is that this your parser generator will be much faster than: https://github.com/less/less.js/blob/master/lib/less/parser/parser.js but I can't yet prove it.
But, as an example, look at the code for recognizing an element:
e = parserInput.$re(/^(?:\d+\.\d+|\d+)%/) ||
      parserInput.$re(/^(?:[.#]?|:*)(?:[\w-]|[^\x00-\x9f]|\\(?:[A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9]))+/) ||
      parserInput.$char('*') || parserInput.$char('&') || this.attribute() ||
      parserInput.$re(/^\([^&()@]+\)/) ||  parserInput.$re(/^[\.#:](?=@)/) ||
      this.entities.variableCurly();

Now, I suck at regex, and I know nothing about manually optimizing tokenizing and parsing, but it turns out I'm decent at writing grammar. So maybe I can pull this off. :smile: (The team talked about the possibility of generating the parser as one idea to address performance, so I said I would go off and research.)
Plus, if I finish this, Less would have an (official) defined grammar for the first time, which would help for other people who are maintaining ports.


split out "Integral" from "BoundedOperation" and better specify bounds

The integral is the only one that has a left/right bounds where as the other ones can have either start,stop bounds or indentifier-in-set bounds.

Fixed by https://github.com/kevinbarabash/math-ast/commit/115e94d28c1a2cef1ac9b0e7301a8dfc12b311e6.


HIP-631 - add SDK support for virtual addresses

Signed-off-by: Nikola Genov<EMAIL_ADDRESS>Description:
This PR adds java SDK support for virtual EVM addresses to a Hedera Account
Related issue(s):
Fixes #
Notes for reviewer:

Checklist

[ ] Documented (Code comments, README, etc.)
[ ] Tested (unit, integration, etc.)

Noting this PR should not be merged until we have reached final design decisions for this HIP and approved the API design in the design review meetings.


[Bug] Alternative STA threads do not play nice with WhenAnyValue and dependency properties.

What is the current behavior?
<TextBox x:Name="FilterText"/>

and
this.WhenAnyValue(p=>p.FilterText.Text).Subscribe(Console.WriteLine)

will crash with a cross thread access exception. This happens if the window the control in hosted in is running in a different thread than the RxApp.MainSchedular
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem
Full description is here
https://stackoverflow.com/questions/44236317/whenanyvalue-throws-a-threading-exception-when-used-against-a-dependency-propert/44237800#44237800
What is the expected behavior?
When WhenAnyValue is executed in a specific synchronization context then it should not blindly dispatch to RxApp.MainThreadScheduler.
What is the motivation / use case for changing the behavior?
My logging window does't work :(
Which versions of ReactiveUI, and which platform / OS are affected by this issue? Did this work in previous versions of ReativeUI? Please also test with the latest stable and snapshot (http://docs.reactiveui.net/en/contributing/snapshot/index.html) versions.
Currently running 7.2
Other information (e.g. stacktraces, related issues, suggestions how to fix)
https://stackoverflow.com/questions/44236317/whenanyvalue-throws-a-threading-exception-when-used-against-a-dependency-propert/44237800#44237800

I wasn't able to reproduce this in a brand new WPF project. Is there any additional complexity in the way you call CreateAndShowStaWindow or in your factory?
I used:
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            await CreateAndShowStaWindow(() => new Window1());
        }

        public static Task<T> CreateAndShowStaWindow<T>(Func<T> factory) where T : Window
        {
            var windowResult = new TaskCompletionSource<T>();

            var newWindowThread = new Thread(() =>
            {
                var window = factory();
                window.Show();
                windowResult.SetResult(window);
                window.Events().Closed.Subscribe( _ => window.Dispatcher.InvokeShutdown() );
                System.Windows.Threading.Dispatcher.Run();

            });
            newWindowThread.SetApartmentState(ApartmentState.STA);
            newWindowThread.IsBackground = true;
            newWindowThread.Start();
            newWindowThread.Name = "STA WPF";

            return windowResult.Task;
        }
    }

    public partial class Window1 : Window
    {
        public Window1()
        {
            InitializeComponent();

            this.WhenAnyValue(x => x.FilterText.Text).Subscribe(x => Console.WriteLine(x));
        }
    }

Yeah. I just did the same and the error does not occur. Something evil going on :(

I'll try and isolate some more features of my large project in the test project and get back to you soon.

I can't figure it out. Is there anything in the code that might try to dispatch to another context under certain conditions?

Got it.
Add in the following calls
       Locator.CurrentMutable.InitializeReactiveUI();

I have a reproducing repository.
https://github.com/bradphelan/RxUIBug1375
There is probably a bit more guff in there than necessary to reproduce as I was adding in more and more stuff till I found the trigger. I'll try to pare it back a bit.

The reason I was calling InitializeReactiveUI in the following context. In my main application code I set up the RxUI / Ninject binding.
    public static void Init(IKernel kernel)
    {
        var customResolver = new FuncDependencyResolver
            (
             (service, contract) =>
             {
                 if (contract != null)
                     return kernel.GetAll( service, contract );
                 var items = kernel.GetAll( service );
                 var list = items.ToList();
                 return list;
             }
             , (factory, service, contract) =>
             {
                 var binding = kernel.Bind( service ).ToMethod( _ => factory() );
                 if (contract != null)
                     binding.Named( contract );
             } );

        Locator.CurrentMutable.InitializeSplat();
        Locator.CurrentMutable.InitializeReactiveUI();
        Locator.CurrentMutable = customResolver;
        Locator.CurrentMutable.RegisterLazySingleton(() => new WeinCadViewLocator(kernel), typeof(IViewLocator));

        var log = SerilogExtensions.DefaultLogger;
        Log.Logger = log;
        SerilogSplatLogger.Register(log);
    }

This should not be marked as stale as there is a reproducing example provided


Component does not update if the query is "fast".

I'm trying graphql with a local server, so results come pretty fast. But apparently the component wont re-render when result of the query returns quickly.
const query = `
    query ASDF {
        tracks {
            name
        }
    }
`

export const UrqlUser: React.FC = () => {
    const [res] = useQuery({
        query: query,
    })
    if (res.fetching) return
Fetching ...

    if (res.error) return
Error ...

    return
{JSON.stringify(res.data)}

}

I tried to render UrqlUser but it gets stuck on Fetching..., but if I use chrome network throttling, it works fine. I've tested several different throttling settings, any delay below 50ms is problematic. Sometimes it gets stuck on fetching and sometimes it doesn't, but the lower the delay the more it gets stuck.

same problem

I have tried reproducing this in the examples folder as well as in a test and can't seem to get this to work. Could you provide a repo/codesandbox where we can see the problem?

Here
You can configure the delay in fetch.ts#98.


Update CONTRIBUTORS.md

@ozllmozdmrr HI Ozlem, thanks for your contribution!
Don't forget to follow me or this organization to stay tuned to future updates for this project :)


Fix static_cast warnings in BIR Reader and ConstantPool

Resolves #318

@shubhamnarlawar : I think you should at least  use assert to check whether the dynamic cast was successful. Otherwise we are not getting a benefit from the additional overhead associated with the dynamic cast( vs static casts).

@shubhamnarlawar : I think you should at least use assert to check whether the dynamic cast was successful. Otherwise we are not getting a benefit from the additional overhead associated with the dynamic cast( vs static casts).

I tried to put a assert statement before a dynamic_cast as below -
        assert(dynamic_cast<PackageCpInfo *>(poolEntry));
        auto *packageEntry = dynamic_cast<PackageCpInfo *>(poolEntry);

Its passing. Should I put a assert statement before every dynamic_cast?

Its passing. Should I put a assert statement before every dynamic_cast?

Assert after every dynamic cast like this:
auto *packageEntry = dynamic_cast<PackageCpInfo *>(poolEntry);
assert(packageEntry);

Its passing. Should I put a assert statement before every dynamic_cast?

Assert after every dynamic cast like this:
auto *packageEntry = dynamic_cast<PackageCpInfo *>(poolEntry);
assert(packageEntry);

Done. Thanks!

@KavinduZoysa - Shall we merge this PR

Closeing since project is moving to attic


How to visualize when training like isaacGYM

I want to visualize training process (not only rewards but also robot moving), does brax suport this>

Hi @kassasin , you can use the policy_params_fn callback to render videos for every eval that gets run


fix(bal-file-upload): Empty Value submitted

Current Behavior
With the last release (13.16.1) the upload submits empty values, although files have been uploaded
Expected Behavior
Values that have been uploaded should be submitted
Steps to Reproduce
Regular Upload usage
Version
13.16.1
Browsers
No response
Device
No response
Code Reproduction URL
No response
Additional Information
No response
Code of Conduct

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

/cib


bug: grouping not working

Grouping by dragging column is not working > 6.1.8
Demo: https://codesandbox.io/s/react-forked-eywb8o?file=/src/App.js
Related: https://github.com/material-table-core/core/issues/727#issuecomment-1407677555

Seems like draggable changed the id to force it to be a string. Will be fixed with the next release

@Domino987  yes! this also fixes another bug I was seeing in the grouping. Thank you ❤


Timsort: incorrect minRunLength() computing minRun to be too small

https://github.com/Morwenn/cpp-sort/blob/32b874fb025a6e8f86f1db568cd38682cb9f62d9/include/cpp-sort/detail/timsort.h#L192
This line has the same issue as reported in your Timsort repo here.

Yeah, I planned to change it here too. I just haven't had the time to take care of it yet (I'm running the tests and benchmarks to check whether they can find any difference).

Thanks. I would expect more insertion sorts being done to hit the minRunLength that is now usually longer (for cases with short runs like random data). As such, worst and random cases should have improvements. Not sure how significant it would be though.

My benchmarks didn't show much improvement. I wouldn't be surprised if it made the a bit slower because most of the library has a limit around 32 for insertion sort which came from benchmarking, but the benchmarks almost exclusively use scalar types, which is not representative of the Python-specific tradeoffs timsort was originally designed for.


Remove miscroseconds from metadata API Signed.expires

This change removes microseconds from expiry in order to fit TUF
specification
Fixes #1678

[x] The code follows the Code Style Guidelines
[n/a] Tests have been added for the bug fix or new feature
[n/a] Docs have been added for the bug fix or new feature

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

3 of 3 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.0009%) to 97.582%

Totals

Change from base Build<PHONE_NUMBER>:
0.0009%

Covered Lines:
4034

Relevant Lines:
4118

💛  - Coveralls

We'll want think this through for all the different cases: deserialization, users calling the api , serialization... it's a little detail but could make life difficult in the future

I'd want to see docstrings for public API at least
is it correct that we accept non-spec-compliant dates on deserialize?
is it correct that we change the date to compliant on deserialize?

@jku

is it correct that we accept non-spec-compliant dates on deserialize?

It think that spec-compliant should mean spec-compliant with no exception, so if metadata is not in the correct form, we should throw an error.

is it correct that we change the date to compliant on deserialize?

I think it's fine, when it comes to preventing a bug, coming not from the metadata, but from the implementation (and in this case - python specific)   as we guarantee that it won't break the deserialisation. But we should guarantee that the metadata is correct at the same time.
May be I'd need to add a check, which is now missing.

I agree with @jku that we need to be careful here. This is what I think about the different cases:

deserialization:
The deserializer shouldn't accept non-spec compliant metadata, regardless of its importance. If we start modifying the semantics of inputs during deserialization, we'll likely end up with determinism problems (goal: data == serialize(deserialize(data))

Object API:
Ideally, we don't accept non-sepc compliant inputs here either. But in reality this is hard to enforce, because properties can be set in different ways. So I think it is easier and okay to only enforce spec compliance on the de/serialization boundaries.

Serialization:
Under above assumptions, i.e. that we don't accept non-spec compliant metadata in deserialization, and that some properties that were modified during object life-time contain additional (unneeded) information, certain transformations should be fine, e.g. removing unnecessary microseconds. We need to find a balance between expected behaviour and usability.

I think I lean in the same direction:

spec defines the date format exactly: we should only accept that in deserialization?
constructing a new object should probably accept microseconds and just remove them
deserialization and constructing new object currently use same code path (in the constructor)

so possibly

from_dict() should be strict, and should fail if format is not exactly as defined in spec
but the constructor should use set_expiry() as your PR does: so constructing new object does not fail on microseconds ...

I'm not 100% sure of this yet, but that's my thinking...

I agree with the overall direction...

from_dict() should be strict, and should fail if format is not exactly as defined in spec

This makes sense, and we might need to revise existing data validation in from_dict/__init__-methods, because I saw that some is performed in one and some in the other.

but the constructor should use set_expiry() as your PR does: so constructing new object does not fail on microseconds
I guess we can do that, but we need to to be careful that there's no unexpected behavior, above all upon serialization, if the expires field is modified outside of the constructor

but we need to to be careful that there's no unexpected behavior, above all upon serialization, if the expires field is modified outside of the constructor

Yes, and should consider buggy code as well (obviously we'd never write bugs but just theoretically speaking): we should ensure we rather fail than persist metadata that is invalid. #1696 has some discussion on this

In the latest update I stick to:

__ini__() uses set_expiry(), so that we guarantee microseconds are not added on runtime
a format verification for "expires" in _common_fields_from_dict()
no format changes (which I pushed earlier) in _common_fields_to_dict()

Thanks for working on this @ivanayov. I think it's a fair approach for the first two use cases discussed above. We still need to figure out what to do for the 3rd use case, that is do we allow serialisation of invalid metadata. But maybe we don't have to do this here. Would you mind adding a test for what you have so far?

@lukpueh @kairoaraujo Just pushed an update with latest comments.

We still need to figure out what to do for the 3rd use case, that is do we allow serialisation of invalid metadata

Martin opened #1696 about this relevant question in general: maybe we can continue there (the issue is big enough to maybe have a chat as well, to discuss some possible ways to deal with it)

oh a new idea: since one of the problems here is that our expiry is a datetime but most datetimes are not valid expiries (because microseconds), how about we hide the variable and make expiry a property (where the setter is Ivanas function) -- that would effectively prevent a user from accidentally setting signed.expiry to an invalid value.


Link one grid to another

I am working on a lite DNS editor... I can very easily get all my zones to load up in the first grid and have my rows setup using the click handler that then gives me an alert with the ID (perfect)
What I need some assistance with is somehow passing that to the second grid.
I've created the HTML and script for the second grid (unique ID, etc), however, I cannot seemingly find a way to pass that ID over to an action that the second grid will then use and reload with the records for the chosen zone.
I didn't see any stackoverflow or other examples show this functionality.
Anyone out there have grids tied together?

http://www.jquery-bootgrid.com/Documentation#events
It appears you can use events and methods, although I have not tried it. I'd see if there is an event you can tie to one grid, and then fire a method on your second grid to update it/load it.

http://gijgo.com/grid/demos/connected-jquery-grids

Thank you @stvowi


Can not locate the barcodes.tsv file

I just installed velocyto, and want to run velocyto run10x -m repeat_msk.gtf mypath/sample01 somepath/refdata-cellranger-mm10-1.2.0/genes/genes.gtf according to tutorial.
My code is velocyto run10x /Cell_Ranger_Processed_Data/GTE001/out/filtered_feature_bc_matrix /Cell_Ranger/opt/refdata-cellranger-hg19-3.0.0/genes/genes.gtf
However, I got the error:
2020-02-26 13:10:05,451 - ERROR - This is an older version of cellranger, cannot check if the output are ready, make sure of this yourself
2020-02-26 13:10:05,451 - ERROR - Can not locate the barcodes.tsv file!
Traceback (most recent call last):
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/bin/velocyto", line 8, in <module>
    sys.exit(cli())
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/lib/python3.6/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/lib/python3.6/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/lib/python3.6/site-packages/click/core.py", line 1137, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/lib/python3.6/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/lib/python3.6/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/public-supool/home/wuhaoda/anaconda2/envs/Grim3.6.8/lib/python3.6/site-packages/velocyto/commands/run10x.py", line 91, in run10x
    bcfile = bcmatches[0]
IndexError: list index out of range

I updated Cellranger to the latest version (3.0.2 -> 3.1.0). And I unzip the ".gz" file. However, I got the same error. Should I run Cellranger one more time to get a new "out" file? Or any other solutions?

And I tried using files ('.tsv.gz' or '.tsv') exported from seurat by
library(DropletUtils)
library(Seurat)

setwd("D:/personal data/")
Patient.object <- readRDS...

write10xCounts(x = Patient.object@assays$RNA@counts, version="3", path = "D:/personal data/3")
write10xCounts(x = Patient.object@assays$RNA@counts, version="2", path = "D:/personal data/2")

And I got the same error information.

Try
velocyto run10x /Cell_Ranger_Processed_Data/GTE001 /Cell_Ranger/opt/refdata-cellranger-hg19-3.0.0/genes/genes.gtf

Thanks. Using the output of higher version of CellRanger, I successfully ran Velocyto~

For me the problem was I provided a subdirectory of the directory velocyto was expecting. velocyto expects samplefolder to be the one that contains 'outs/filtered_feature_bc_matrix/barcodes.tsv.gz'. Also it only worked for me when barcodes.tsv.gz was zipped.

Thanks. Using the output of higher version of CellRanger, I successfully ran Velocyto~

Hello, could I ask how to avoid error below:
ERROR - This is an older version of cellranger, cannot check if the output are ready, make sure of this yourself
Thank you!

@amasden - Did you resolve your issues? If so, would you mind posting the solutions plz?

Hi, @denvercal1234GitHub ,
Barging in here, as I faced the same problem. The issue is that the cellranger output is too old for velocyte to understand. So I managed to send my data through the the traditional velocyte approach (i.e. velocyto run). An example is below.
velocyto run \
    --bcfile /velocyte/C2Routput/outs/filtered_feature_bc_matrix/barcodes.tsv.gz \ # filtered barcode file in gzipped format
    --outputfolder /velocyte/C2Routput \ # location for the output to go
    --samtools-threads 18 \ # optional, doesn't increase the speed much
    --samtools-memory 8000 \ # optional, doesn't increase the speed much
    -vvv \ # highest verbosity so I can debug if needed
    /velocyte/C2Routput/outs/possorted_genome_bam.bam \ # BAM file path
    /velocyte/mm10-transgene-premrna/genes/genes.gtf  # GTF file path - GTF file that was used for creating the cell ranger output

HTH,
Shani.

Hi, @denvercal1234GitHub ,
Barging in here, as I faced the same problem. The issue is that the cellranger output is too old for velocyte to understand. So I managed to send my data through the the traditional velocyte approach (i.e. velocyto run). An example is below.
velocyto run \
    --bcfile /velocyte/C2Routput/outs/filtered_feature_bc_matrix/barcodes.tsv.gz \ # filtered barcode file in gzipped format
    --outputfolder /velocyte/C2Routput \ # location for the output to go
    --samtools-threads 18 \ # optional, doesn't increase the speed much
    --samtools-memory 8000 \ # optional, doesn't increase the speed much
    -vvv \ # highest verbosity so I can debug if needed
    /velocyte/C2Routput/outs/possorted_genome_bam.bam \ # BAM file path
    /velocyte/mm10-transgene-premrna/genes/genes.gtf  # GTF file path - GTF file that was used for creating the cell ranger output

HTH, Shani.

Thank you, you've given me a lot of help


allow requesting with a body

After many hours of debugging wondering why my requests always failed, I traced the issue back to the https module.
It doesn't currently write the body to the request, making it almost useless for anything other than a GET request.

Can I ask what are you using it for?

Can I ask what are you using it for?

I fail to see how this is relevant, this is a requests module which needs to support body.

I fail to see how this response was necessary. But no, this will be deprecated going forward and since no one else has complained about this bug I disagree.

The response was necessary as you are asking for my use case which is irrelevant in the context of a HTTP requests client that most of the web needs to function.
HTTP clients are 80% useless without a body as most methods other than GET require one. You aren't able to access any APIs that even slightly rely on user input.
There is nothing to disagree about here, you are simply going off-spec and deteriorating the developer experience and the possibilities that can emerge from external APIs.
I can see why BetterDiscord's developer experience has never been a strong point.

I asked your use-case out of interest, I don't really see anything wrong with that.
I think you're being a bit hyperbolic with most of what you're saying. I disagree that this is an urgently needed fix since we are moving off of a polyfill and onto a fetch-like API as shown in #1610 which already supports body. This is the product of actually working with our developers to see what they need/want.

No one complained because they most likely don't even know that the request is not sending a body, would you expect this from a HTTP client? No.

No one complained because no one used it. Hence my interest in what use-case you found.

I can see why BetterDiscord's developer experience has never been a strong point.

I'm sorry you feel that way, hopefully you can improve your mindset going forward, have a nice day.


Code Request

Hello. I have read your work and find it very inspiring. I want to try reproducing your code.
I wonder if you could provide the code file for me to learn and reference? Thanks.

me too

Thanks for the intention of uploading the code!
Do you have any estimates of when the code will be available @QiushiYang ?
Thanks!

Thanks a lot for your attention on our work. I am recently preparing the journal version of this work, and plan to release source codes after the journal revision.
The main implementation of the core idea, i.e., relation masking, is very simple. You can firstly try to apply the element-wise masking on attention maps to improve the pre-training of MAEs on your tasks.

Thanks for your attention on our work. We are recently preparing the journal version of this work, and plan to release source codes after the journal revision.
The main implementation of the core idea, i.e., relation masking, is very simple. You can firstly try to apply the element-wsie masking on attention maps to improve the pre-training of MAEs on your tasks.


[Mono] Godot editor crashes due to exported properties on a resource pt. 2

Godot version:

80618700ca668a595fd214ca8db43a69ca2a8b67
OS/device including version:

Antergos
Issue description:

Editor crashing again (#20987) when building due to exported properties in resources.
Unhandled Exception:
System.NullReferenceException: Object reference not set to an instance of an object

Is what the console gives.
The crash may occur when buildling, when inspecting a resource with a C# script attached, or when the game runs.
Steps to reproduce:
using Godot;

public class ResA : Resource
{
    [Export]
    public ResB resB;
}

using Godot;

public class ResB : Resource
{
    [Export]
    public string x;
}

Assign these scripts to two different resources.
Minimal reproduction project:

CustomResourceCrash.zip

I just tested without the project you uploaded. I can reproduce the crash in the game but not in the editor.

#26773 fixes the crash I experienced when running the game. Let me know if anything is missing.


SSL error for https://tachyons.io

For your information

We haven't implemented SSL so we don't serve the site over https.


Steam Library entries not created

Hello,
After running the scripts, the launchers appear to have been installed correctly, however the entries have not been added to Steam Library. Checked after a reboot and in desktop/game mode. Is there any log file I can get to help?
Thanks in advance.

(They are also not in the Uncategorized / "Sem Categoria" group)

@srcamarda can you send the log, its in the downloads folder

Sure. Sorry I didn't realize the log was there.
So I decided to do a Fresh Start to get a clean log, and found another weird behavior. When trying to install again, it did not let me continue without filling a custom website link. The field was left blank and I pressed Ok, like before. The log for this is bellow:
NonSteamLaunchers-install1.log
Then I just put "google.com" and was able to continue. And here is the log for the install itself (no shortcut was created on this try also):
NonSteamLaunchers-install2.log

@srcamarda i believe this has been fixed with the latest updates to the .sh file can you confirm it is working on your end?

I have the same issue still even with the new update :(

@yuri-becker could you send the log i need to compare to the other ones, its in the downloads folder

Sure, here you go:
NonSteamLaunchers-install.log
Thank you for investigating this.

@srcamarda i believe this has been fixed with the latest updates to the .sh file can you confirm it is working on your end?

Hi @moraroy.  I switched my SSD so I tried again, and I can confirm that for me it's working now! The website link thing also worked normally. Thanks for the help!

NonSteamLaunchers-install.log
Here is my log. I'm having this issue, even with the latest update. Thank you in advance for all of your hard work!

@trackmastersteve i just attempted a fix ,let me know, i just deleted a potential line of code that was creating this bug

@yuri-becker same for you as well let me know

@yuri-becker same for you as well let me know

Still no luck, sorry

I just noticed that on the other user (the Steam deck has two steam accounts logged in) the entries are there.

My deck remains locked at epic login, very bad experience tbh

Every time i try to log on epic in desktop mode or game mode my deck dies and nothing responds, very bad experience tbh, back to lutris, take care with this f** app, finally i do a hard reset, this app does something bad to my deck, great devs!

This is GitHub not Facebook - if you want your problem fixed, please create a separate issue describing your problem, what lead to it and how to possibly reproduce it.
We don't condone this tone here, and I am truly thankful for @moraroy sacrificing their spare time to develop something for the community, completely free of charge.
I would like to ask you to delete your comment and I will do the same, so the discussion of this very issue stays on topic.

I just noticed that on the other user (the Steam deck has two steam accounts logged in) the entries are there.

Now that you mentioned, I think I did have 2 accounts when I was having the issue, so this could be the cause.

The Deck I was having issues on, originally had two accounts. The first was a dummy account to test all of the controls (because it was second hand). And the second account was the real one. But the first account was deleted. Maybe the first account still exists in the file system?

Hi,
Same issue for me. The installer works and restarts steam after installing the launchers but it doesn't show up in the steam library. I can't seem to find the installed launchers folder either.

@winterfrost999 home/deck/.steam/root/ubuntu12_32/steam-runtime/run.sh: line 164: /home/deck/.steam/root/compatibilitytools.d/GE-Proton8-13/proton: No such file or directory
In your log it says you don't have the proton file. So it's not installing anything. Delete the "compatabilitytools.d" folder and install the latest proton GE either through proton upqt from the discovery store or through my script again. Once my script is ran again your installers will install. For some reason you are missing the proton file in that folder.

Thanks a lot! It works for me (:

Still not working for me after installing Proton-ge from discovery store


[JSDoc] Add missing documentation for botframework-streaming websocket and payloads folders

Addresses # 2602
Description
This PR introduces the change to jsdoc/require-jsdoc in the .eslintrc.json file from warn to error and adds all the missing JSDoc documentation for botframework-streaming based on the errors thrown. Some documentation is ported and adapted from botbuilder-dotnet

Note: We divided the work for this library into two PRs to ease the review. PR# 150 contains the rest of the botbuilder fixes.

Specific Changes

Private methods' documentation that does not exist on botbuilder-dotnet we added the @private tag in the JSDoc comment.
Added JSDoc comments in 15 files.

Testing
In the following image there is a sneak peek about the ESLint Report with no JSDoc errors.

Thanks @santgr11, feedback applied.

promoted


*: key handler should write auth error as etcd error

We should return etcd error json for all request under /v2/keys/
Fix part of https://github.com/coreos/etcd/issues/3235
/cc @raoofmd

lgtm


$http : config.url checked too early

Hi angular team,
Since 1.4.9 and the following fix https://github.com/angular/angular.js/commit/c5bf9daef6dfdb3e4a2942c21155a9f67d92e237
We cannot call $http any more.
Indeed, we have an interceptor that create the config.url parameter but the fix above check config.url too early, before the call to the interceptor.
Is there a way to postpone this test after the interceptor is called ?
Thanks for any comment on this.

I see. But that just means you have to call $http with an empty string if you set the url later.

The workaround is very straightforward for this unusual case, so this is a won't fix.


Can "RE-flex" be used as a full drop-in replacement for "flex"?

As the title states, can RE-flex fully replace flex?

Yes, but only for C++ projects as the description says. To do so use option --flex. I've tested RE/flex dozens of Flex projects. We and others have converted Flex projects to RE/flex.

If I understood correctly, and from a Linux distribution developer point of view, I have to use both flex and RE-flex to cover for both C and C++ lexing, am I right? Or is there something I'm missing here?
Also, are there plans to cover C lexing as well, to make RE-flex truly a full drop-in replacement for flex?

If I understood correctly, and from a Linux distribution developer point of view, I have to use both flex and RE-flex to cover for both C and C++ lexing, am I right? Or is there something I'm missing here?

To cover C scanning/lexing applications please use Flex. But you will miss out on many new features added to RE/flex. Most C projects rather trivially convert to C++ anyway. The old C++ standard was rather specific about this. So you can use RE/flex with C projects, but compiled as C++ which is almost always compilable with older C code (e.g. a few rather arcane const pointer syntax rules are different between C and C++).
RE/flex is a replacement of flex++ as the doc says and accepts Flex lexer specs. Note the flex++ has been broken for many years, e.g. try something as simple as --main and it won't work. The trouble with flex++ is mentioned in Levine's excellent textbook. For that reason and other such as teaching Compiler Construction for 20 years explaining limitation of Flex, was the breaking point for me to produce a more usable upgrade.

So to answer your question succinctly: no, you do not need Flex any longer (assuming C++ is not a challenge to use).

Thanks for your time and effort!


Allow hooking invalid form submission for a WizardView step

Looking here:
https://github.com/jazzband/django-formtools/blob/master/formtools/wizard/views.py#L294
It appears that there is no way for me to do anything when a step's form submission fails, without overriding all of post() to put an else: on the if form.is_valid() conditional.
Firstly, am I right in this assertion?
If so, it'd be beneficial for me personally to have this ability. I don't want to intercept and provide a new response, I just need to do some background logging.

My particular issue was sidestepped by messing with some form code. It is not ideal in my case, and can foresee circumstances in which I'd still want my original request.

I might have a similar issue: I have two steps using a ModelForm and a ModelFormset.. One of these forms does not validate and I am lacking a proper way to log or debug.


Fix bug 8792

Pre-Submission Checklist

[ x] Your pull request targets the staging branch of FreeCodeCamp.
[ x] Branch starts with either fix/, feature/, or translate/ (e.g. fix/signin-issue)
[x ] You have only one commit (if not, squash them into one commit).
[ ] All new and existing tests pass the command npm run test-challenges. Use git commit --amend to amend any fixes.

Type of Change

[x ] Small bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds new functionality)
[ ] Breaking change (fix or feature that would change existing functionality)
[ ] Add new translation (feature adding new translations)

Checklist:

[ x] Tested changes locally.
[ ] Closes currently open issue (replace XXXX with an issue no): Closes #8792

Description

fix bug 8792 by changing           "The computer has 3 basic parts.",
to   "The computer only has 3 basic parts.",

@estherfang09 Please rename your commit to something more relevant like Fixed test on the 4 Basic Parts of a Computer challenge. Use commit --amend to solve this.

@estherfang09 You seem to have some unneeded commits. Please drop the following commits using git rebase -i HEAD~3 and changing squash to drop:

Fixd test on the 4 Basic Parts of a Computer Challenge
Merge branch 'fix/8792' of https://github.com/estherfang09/FreeCodeCamp into fix/8792

To change the commit name, just edit the original commit using git commit --amend.

Sorry, I am new to git. After doing the git commit --amend. Do I need to re-push to my local branch?

@estherfang09 Yeh use git push -f

@estherfang09 Unfortunately, you seem to have pushed another unwanted commit. Please git rebase -i HEAD~2 and remove the unwanted commit. The force push using git push -f Thanks!

So Do I need to drop the second commit?

@estherfang09 Yeh drop Removed /labs from about page

Thx! Hope this time it works

:sparkles: :sparkles: LGTM :+1: :sparkles: :sparkles:
:tada: Thanks for contributing @estherfang09 and congratulations on your first PR submission to FreeCodeCamp! :tada:


fix: IO handling in HTML4::DocumentFragment.parse

What problem is this PR intended to solve?
Previously an exception (TypeError: no implicit conversion of File into String) would be raised.
Fixes: #2069

Have you included adequate test coverage?
Yes.

Does this change affect the behavior of either the C or the Java implementations?
No.

@sharvy Nice! Thank you for putting this together.  Thanks.

@sharvy This looks good! I corrected some things in the doc string but otherwise this is great! Thank you!


Reading: Update specs to respect validations

From more strictness in https://github.com/studentinsights/studentinsights/pull/2628.

selfie


added option to handle epoched data

Reference issue
#7070
What does this implement/fix?
I have proposed some mayor and minor changes:
Mayor changes

Added an option to handle both raw and epoched data.
Added an option to sort the component with respect spectral ratio
Added the "apply" function to back project the decomposition into the signal space

Minor changes

The boolean input "subtract_signal" is not longer available, since for estimating the noise, this step should always be done
While plotting the psd of the ssd components, I highlight the freq-band of interested that should be enhanced after ssd.

Additional information
I based this implementation on the example provided here by @dengemann and the Matlab implementation available here https://github.com/svendaehne/matlab_SPoC/tree/master/SSD

@vpeterson are you happy -- in principle with your PR ? We could merge it to move on and then discuss what's next.

@vpeterson are you happy -- in principle with your PR ? We could merge it to move on and then discuss what's next.

I nevertheless found a few points. I suggest we merge once you have addressed those.

@dengemann how do you find the last version?

I see lots of progress, thank you! There are a few points that may require a bit of deliberation. Most of my comments are minor however and whoever first gets to work on them can address them.

What is your plan @vpeterson with this. Do you have time to continue iterating or shall I take over and merge after adding some edits?

Hi @dengemann  ! It is in my this week to do list! In fact I have already implemented most of your comments but there are two that I'm still not sure what you were mentioned to. I'll left my comments. Most probably I'll commit the changes between today and tomorrow !

Ok great. Just asking to get an idea :) Things will go a bit more easy once we have merged this.

Hi @dengemann ! Since I'm not sure if yesterday the commit were pushed correctly, please let me know if you see the last changes.

Thank you very much @vpeterson for your work. It looks good. I will be offline this weekend but will take a moment for checking things / amending / merging as soon as possible, Sunday/Monday.

@vpeterson sorry for delay, I have been swamped. how do things look on your side? Shall I pull and test the example and merge if happy?

I feel positive that it will be a happy testing ! :) so, please go ahead! looking forward to see how in the end works!

Hi @dengemann ! I'm just curious about the merge stage. Does it work? Looking forward !

Thanks for following up! It's on top of my task-stack now. Looking into it today/tomorrow.

On 20 Oct 2020, at 14:52, vpeterson<EMAIL_ADDRESS>wrote:
Hi @dengemann https://github.com/dengemann ! I'm just curious about the merge stage. Does it work? Looking forward !
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/dengemann/mne-python/pull/22#issuecomment-712826356, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAOR7CVDABZ6B6FENZLS7FTSLWBYBANCNFSM4RNHUDRA.

@vpeterson looks cool so far.
I found the epoch example running very slowly on my small dev computer. I'll try to speed up things a bit by changing the epoching to 2 second windows and applying some decimation.

@vpeterson I'll also look if we can avoid the averaging of covariances when epoching. To me it's not necessary (compared to CSP/SPoC where you compute at least one weighted average) and we should just get there by computing the cov over all signals. The only difference should be that you have a whole bunch of shrunk covariances that you average VS having something that's better conditioned and closer to the empirical covariance. Single trial info is actually not used for estimating the SSDs in my understanding.

@vpeterson a third question. Do you have a concrete use case where you want to support epoched ndarrays instead of epochs objects? I think we could probably simplify the API + testing + maintenance by just supporting Raw or Epochs. What do you think?

@vpeterson I'll also look if we can avoid the averaging of covariances when epoching. To me it's not necessary (compared to CSP/SPoC where you compute at least one weighted average) and we should just get there by computing the cov over all signals. The only difference should be that you have a whole bunch of shrunk covariances that you average VS having something that's better conditioned and closer to the empirical covariance. Single trial info is actually not used for estimating the SSDs in my understanding.

I tried your current implementation (averaging epochs) VS what I would suggest (compute full covariance as in mne.compute_covariance(epochs, ...)).
Current code (first 4 patterns):

My proposal (first 4 patterns):

We can see that in the second one we find the alpha generator as in the initial example with the raw data and shows less noisy patterns.
What do you think?

@vpeterson a third question. Do you have a concrete use case where you want to support epoched ndarrays instead of epochs objects? I think we could probably simplify the API + testing + maintenance by just supporting Raw or Epochs. What do you think?

Yeah, in fact for our project we have nd-arrays, and for using SSD within a pipeline for sklearn before CSP/SPoC could be useful. Or at least it is in the way I thought of use it

@vpeterson I'll also look if we can avoid the averaging of covariances when epoching. To me it's not necessary (compared to CSP/SPoC where you compute at least one weighted average) and we should just get there by computing the cov over all signals. The only difference should be that you have a whole bunch of shrunk covariances that you average VS having something that's better conditioned and closer to the empirical covariance. Single trial info is actually not used for estimating the SSDs in my understanding.

I tried your current implementation (averaging epochs) VS what I would suggest (compute full covariance as in mne.compute_covariance(epochs, ...)).
Current code (first 4 patterns):

My proposal (first 4 patterns):

We can see that in the second one we find the alpha generator as in the initial example with the raw data and shows less noisy patterns.
What do you think?

wow! I do see the effect now ! undoubtedly, this patterns are smoothers and more similar to the ones gotten by raw implementation! greaaat!

Is that something that could be handled via the tools in mne.decoding ? We have support for vectorisers and other wrappers that allow you to use epochs as inputs with regular sklearn code. See https://mne.tools/stable/index.html

@vpeterson I'll also look if we can avoid the averaging of covariances when epoching. To me it's not necessary (compared to CSP/SPoC where you compute at least one weighted average) and we should just get there by computing the cov over all signals. The only difference should be that you have a whole bunch of shrunk covariances that you average VS having something that's better conditioned and closer to the empirical covariance. Single trial info is actually not used for estimating the SSDs in my understanding.

I tried your current implementation (averaging epochs) VS what I would suggest (compute full covariance as in mne.compute_covariance(epochs, ...)).

Current code (first 4 patterns):

My proposal (first 4 patterns):

We can see that in the second one we find the alpha generator as in the initial example with the raw data and shows less noisy patterns.

What do you think?

wow! I do see the effect now ! undoubtedly, this patterns are smoothers and more similar to the ones gotten by raw implementation! greaaat!

For my understanding it's also scientifically correct. It would definitely allow us to simplify the code. Perhaps we can briefly discuss with Vadim via email. I pinged him already.

Is that something that could be handled via the tools in mne.decoding ? We have support for vectorisers and other wrappers that allow you to use epochs as inputs with regular sklearn code. See https://mne.tools/stable/index.html

mhm the link send me to the main mne page. Was that correct? Anyway I understand that it is cleaner to handle raw and epoched objects. So,  I can only second you on that :)

Is that something that could be handled via the tools in mne.decoding ? We have support for vectorisers and other wrappers that allow you to use epochs as inputs with regular sklearn code. See https://mne.tools/stable/index.html

mhm the link send me to the main mne page. Was that correct? Anyway I understand that it is cleaner to handle raw and epoched objects. So, I can only second you on that :)

Oh yeah. Sorry for that. I meant this here: https://mne.tools/stable/auto_tutorials/machine-learning/plot_sensors_decoding.html#id11

Is that something that could be handled via the tools in mne.decoding ? We have support for vectorisers and other wrappers that allow you to use epochs as inputs with regular sklearn code. See https://mne.tools/stable/index.html

mhm the link send me to the main mne page. Was that correct? Anyway I understand that it is cleaner to handle raw and epoched objects. So, I can only second you on that :)

Oh yeah. Sorry for that. I meant this here: https://mne.tools/stable/auto_tutorials/machine-learning/plot_sensors_decoding.html#id11

Thinking about it for a second we should probably provide 2 interfaces ... One that takes an argument X and is compatible with sklearn conventions and one that handles MNE objects. Or we figure out a very simple API based on 2d + 3d arrays.

Ok @vpeterson latest thought. How about we remove support for Raw/Epochs instances and just support 3d/2d arrays as X in fit (with unused y argument for sklearn compatibility).

Ok @vpeterson latest thought. How about we remove support for Raw/Epochs instances and just support 3d/2d arrays as X in fit (with unused y argument for sklearn compatibility).

Definitely, that would makes things easier. But how does it go along the other similar APIs already implemented in MNE ?

Ok @vpeterson latest thought. How about we remove support for Raw/Epochs instances and just support 3d/2d arrays as X in fit (with unused y argument for sklearn compatibility).

Definitely, that would makes things easier. But how does it go along the other similar APIs already implemented in MNE ?

It would look more like CSP/SPoC. For our existing examples it would just mean you do ssd.fit(raw.get_data() etc.

If we go with this last

Ok @vpeterson latest thought. How about we remove support for Raw/Epochs instances and just support 3d/2d arrays as X in fit (with unused y argument for sklearn compatibility).

Definitely, that would makes things easier. But how does it go along the other similar APIs already implemented in MNE ?

It would look more like CSP/SPoC. For our existing examples it would just mean you do ssd.fit(raw.get_data() etc.

perfect! It is in fact the way I used it within my codes. Should I make the changes and commit them?

perfect! It is in fact the way I used it within my codes. Should I make the changes and commit them?

While awaiting input from Vadim, I can take care of this. I have anyways staged a few changes already. I think I like the direction for the simplicity it brings us.

We should then probably also add an example that shows how SSD can be used inside a decoding pipeline. But that can also happen in a second step after merging the first PR.

@vpeterson I am now at a point where SSD looks the same whether you use it with epochs or with raw ... I think there are still a few things to figure out. I fear we are loosing some clever defaults in Epochs/Raw by going directly via arrays. But I'm not sure. For sure, we loose annotation handling and we loose advanced channel-specific handling of the covariances. Perhaps one way out could be to pass an info to the constructor to at least tell _regularized_covariance what channels it sees. Another consideration might be to support reject/flat parameters and kick out extreme artifacts before fitting as we do when fitting mne.preprocessing.ICA. I'll try to wrap up here such that you can take a look at what I did.


[WIP] Refactor parse.Run to use an event generator

Pull the timers out of parse.Run and into a new GenerateFunc,
implemented by TimedEventProducer.Generate.
Motivation:

This should make it easier to test parse.Run deterministicly
without needing to write a time-based test framework.
This should also make parse.Run look more like a Reconcile loop
from controller-runtime, which paves the way for further
refactoring.
This is not an ideal solution yet, just a next step towards
something that's easier to test and easier to change.

Dependencies:

https://github.com/GoogleContainerTools/kpt-config-sync/pull/1299

/retest

/retest

/retest

/cc @Camila-B


Windows Mac Linux web support

can I use your camera package on Windows Mac Linux web

Sorry, this work only on Android and iOS for now.


Remove id property from persona

We can assign a unique ID on the fly just like the path property.
thoughts

Do we even need an id? It made sense back when parentData had the entire seeded persona instead of just the parent resources, but not so much anymore.
My one thought is, what if OutputStore.get returned a class that helped in retrieving values instead of just the seeded persona? That way, you could do something like output.get('taxReturnId') instead of having to do output.user[0].firm[0].client[1].taxReturn[3].

Agreed 👍


Use device_tracker latest state after reboot hass

Description:
after reboot hass, try to reload last device_tracker state from database if device tracker entity not exists in .storage/core.restore_state
Checklist:

[x] The code change is tested and works locally.
[ ] Local tests pass with tox. Your PR cannot be merged unless tests pass
[ ] There is no commented out code in this PR.
[ ] I have followed the [development checklist][dev-checklist]

Hi there @zhumuht!
The builds on this PR have failed, and in the meantime, a merge conflict has appeared. Are you planning on moving this PR forward?

I suggest we close this PR. We shouldn't rely on the db to restore state.

I agree.

With the new approach, it's up to the integrations to decide how to be restored.


Strict RLP decoding / Enforce PaymentTransaction according to spec

Description
Recent efforts to achieve a 1:1 mapping from an RLP tx to a decoded PaymentTransaction have recently been merged into the root chain contracts ( PR https://github.com/omisego/plasma-contracts/pull/476). This issue proposes to implement the same mechanisms to achieve a 1:1 mapping and to decode/encode only well-formed PaymentTransactions.
Suggested Implementation Steps
Enforce non overlapping RLP decoding
Achieving a 1:1 relationship between decoded and encoded RLP message is not trivial and there are some edge cases that can easily be overlooked. Check out the test inputs in https://github.com/omisego/plasma-contracts/blob/182908d4c7ef669e426356c0bce528a5ebe75593/plasma_framework/test/src/utils/fixture/ and the RLP related test runners in https://github.com/omisego/plasma-contracts/blob/182908d4c7ef669e426356c0bce528a5ebe75593/plasma_framework/test/src/utils/. The implementation in Elixir should cover all of the tests that have been specific on the plasma-contracts.
Define Data types
The current RLPReader implements RLP conform decoding as specified here https://github.com/ethereum/wiki/wiki/RLP.  It also introduces 3 data types that are application specific.

RLPReader.toUint():  treats leading zeros as invalid. Must be between 1 and 32 bytes.
RLPReader.toAddress() requires the item data to be exactly 20 bytes.
RLPReader.toBytes32() requires the item data to be exactly 32 bytes.

Decode/Encode only valid PaymentTransaction
During PaymentTransaction decoding it is also checked that the tx is well formed and according to spec:

Transaction inputs must be decoded as bytes32
Transaction inputs cannot be empty (all zeros)
Transaction outputs cannot be empty (a list that has zero items)
Transaction output.amount must be greater than zero
Transaction output.outputType must be greater than zero
Transaction metadata must be bytes32

CC @kevsul feel free to add details.

Additionally update https://github.com/omisego/elixir-omg/blob/master/docs/transaction_validation.md if changes are required.

Thanks for the detailed write up, this is very helpful.
I'm currently on top of this, as part of the https://github.com/omisego/security-issues/issues/2 effort and #1164.
It should be relatively straightforward to handle the invalid values and test that on the elixir-omg side.

blocked on https://github.com/poanetwork/ex_abi/issues/22


Added commands 'lsof -i :' and 'kill '

Added command which helps to detect process which is using the port you want to use, and command which terminates a process with process ID you found using the previous command

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

@uppermanis Awesome! Thanks! Congrats on your first open source contribution to this repository!


zed query: read inputs sequentially

The zed query command merges its inputs by ascending ts field. This
behavior makes limited sense for Zeek logs and none for general use.
Remove the merge and read inputs sequentially instead.

I'm with you on the Multi* pattern. I'll change it to ConcatReader.

@philrz: I'm concerned that the output changes under docs/language/ render the examples less interesting. Do you think this is something we should address (perhaps by tacking on a sort ts)?

@nwt: I'd thought the docs casualties from this change would be worse than they actually are. I just looked at them side-by-side and I'd say only one of them became significantly less clear because of the change, but even that's not a catastrophe. You're right to think of adding a sort, but part of my my goal with what's there now was to try to introduce concepts without requiring the reader to learn other things at the same time (e.g. a bare search should ideally just be a bare search), so I'm game to let it ride as you have it. Ultimately these examples are not long for this earth, since I'm due to start rewriting them with some generic data similar to @mccanne's fruit examples. In the meantime, the page https://github.com/brimdata/zed/tree/main/zql/docs (which is what the Brim app v0.24.0 help menu points at) links directly at to how the docs were as of that GA tag v0.29.0, so those users can still see the prior rev of the docs whose output will match the behavior of their version of Brim/zq.


Add cors-headers to dev

Otherwise we get CORS errors.
https://github.com/adamchainz/django-cors-headers

Or we can run nginx in dev and avoid core issues

All served behind NGINX instead


Account ownership cards : logic change

Objective is to create the account ownership card on demand of the user and associate the card to the DID of the profile

remove the card automatic issuance at setup of the wallet. No VC are issued at creeation

In Discover add a category "Get a proof of crypto account ownership" with one card by by blockchain to click. -> There 5 cards for each profile DEFAULT/EBSI/DIIP. Nothing for CUSTOM and BASELINE profile

when user clics issue and sign a card with issuer as the crypto account and credentialSubject.id as the active DID of the profile (same as previous but with the active DID of the profile )

If vc format is ldp_vc : the vc is signed as a json-ld with didkit (same as previous)
If the vc format is jwt_vc or jwt_vc_json sign a jwt with the json ld inside as a vc sent by ebsi or dutch issuer.

Format in profile with jwt_vc_json like DIIP is not correct as the VC must be a jwt signed with a json_ld not signed. and attributes of jwt are missing
see below an example of a jwt_vc_json :
eyJhbGciOiJFZERTQSIsImtpZCI6ImRpZDp3ZWI6YXBwLmFsdG1lLmlvOmlzc3VlciNrZXktMSIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3NDAxNTEyMTgsImlhdCI6MTcwODYxNTIxOCwiaXNzIjoiZGlkOndlYjphcHAuYWx0bWUuaW86aXNzdWVyIiwianRpIjoidXJuOnV1aWQ6ZTMyZGQyNGEtZDE5NS0xMWVlLWI1MTctMGExNjI4OTU4NTYwIiwibmJmIjoxNzA4NjE1MjE4LCJub25jZSI6ImUzMGI3ZjI3LWQxOTUtMTFlZS1hYjk0LTBhMTYyODk1ODU2MCIsInN1YiI6ImRpZDpqd2s6ZXlKamNuWWlPaUpRTFRJMU5pSXNJbXQwZVNJNklrVkRJaXdpZUNJNkluWlJiRXBHT1VaNWRXZDZjazFDZFdwWE1VUlpPR2QxYUU0dE5WQTNZa3RPV0ZkNk5scFhYMnQyUzI4aUxDSjVJam9pWVdwWk1rSlNXRE5WVTJaNUxXSnlWbmhMVWxKblFtdFBkbFEyVWxkR09WaGhNM3BQWTI1cWQxQkxUU0o5IiwidmMiOnsiQGNvbnRleHQiOlsiaHR0cHM6Ly93d3cudzMub3JnLzIwMTgvY3JlZGVudGlhbHMvdjEiXSwiY3JlZGVudGlhbFN1YmplY3QiOnsiZW1haWwiOiJ0aGllcnJ5QGFsdG1lLmlvIiwiaXNzdWVkQnkiOnsibmFtZSI6IkFsdG1lIn0sInR5cGUiOiJFbWFpbFBhc3MifSwiZXhwaXJhdGlvbkRhdGUiOiIyMDI1LTAyLTIxVDE1OjIwOjE2LjkxNjA2OFoiLCJpZCI6IiIsImlzc3VhbmNlRGF0ZSI6IjIwMjQtMDItMjJUMTU6MjA6MTZaIiwidHlwZSI6WyJWZXJpZmlhYmxlQ3JlZGVudGlhbCIsIkVtYWlsUGFzcyJdfX0.gZG-RJDQ_pZVyBhc_Y_phps4yJOxr1tOQw5PluIoNFmXidFPVeHwI27X1rpsk6rRcKPV-NqFfrr2qrwuoqULDQ
Check header and payload structure
In our case teh kid must be the did:pkh:xxxx of teh crypto account (as previous) and teh jwt must be signed with the key of the crypto account
the iss must be the DID of the wallet


Put precache resque job in own queue and prioritize

Description
The precache jobs were starving the higher pri jobs.
Notes

until this PR, all the resque jobs were in the same queue, @queue = :q03_pipeline_run... that seems like poor design

five resque workers are created... I'm wondering if that is optimized QUEUE=* COUNT=5 rake resque:workers

In the interest of preserving existing behavior, I set the queue priority to q03_pipeline_run,precache_report_info,*. However, we could easily come up with a more rational system such as high,*,low.

to be sure, I checked the ruby source of queue priorities: https://github.com/resque/resque/blob/master/lib/resque/worker.rb#L200

Test
test in staging
wait for benchmark run to finish
see precache success in datadog logs
see precache in separate redis queue

I checked in staging and everything looks good.


Improve IntelliJ Integration.

When using JUnit, I can tell IntelliJ to run a single test by right-clicking on it in the test results window or by right clicking on the test method name in the text area.  With Spek tests, I am unable to do either of these things and it appears I can only run entire test classes (not individual given, it or on blocks).  When all of the tests are passing this is fine.  However, when I have a failing test that I want to debug this means I have to either comment out all other tests in the class or do some other kind of code-level test ignoring in order for my break points to not be hit when other (passing) tests in the suite are run.
Sadly, the inability to run single tests in IntelliJ has driven me away from Spek and back to JUnit for the time being.  I'll watch this issue though as I would like to go back at some point.  :)

Test structure is not known upfront (unlike JUnit, where whole test structure information can be extracted via reflection prior to execution), so it is not possible to mark single given, it or on to run same way as in JUnit.
However, it may be good idea to add focus idiom to Spek - similar to specta for iOS, where you can add f prefix to make only focused specs run. It would look like this:
given("a calculator") {
	on("add two numbers") {
		it ("returns sum") {}
	}
	fon("substract two numberts") {
		it ("returns difference") {}
		it ("doesn't return sum")
	}
}

in example above, execution result is as follows:
given: a calculator
	on: substract two numbers
		it: returns difference
		it: doesn't return sum

Drawback: your test code has to be modified to run single or a bunch of specs, instead of just telling IDE to run specified test without touching sources.
@hhariri, wdyt?

@jskierbi really not in favor of having to modify tests to be honest :/

@jskierbi

Test structure is not known upfront (unlike JUnit, where whole test structure information can be extracted via reflection prior to execution), so it is not possible to mark single given, it or on to run same way as in JUnit.

Sorry, but that's untrue, in scalatest we can able to run single test from a hierarchy
class Test extends FunSpec with Matchers {
  describe("1") {
    describe("2") {
      it("31") {
        println("1")
      }
      it("32") {
        println("2")
      }
    }
  }
}

Screenshot

@yaroslav-ulanovych does scalatest come with its own IntelliJ plugin? As for now, for current execution model, without additional logic on the IDE side, for my knowledge this is not possible.

@jskierbi The IntelliJ Scala plugin comes with good ScalaTest support. Anyway I believe pull requests with spek support should be gladly accepted by IntelliJ team.

Branch 1.0 should solve this.

@hhariri I just downloaded 1.0.0 and I still don't appear to be able to run individual tests.  IntelliJ does show them separately (as before) but I don't see any way to run them in isolation.
Is there something more I need to do in order to run isolated tests?

Sorry. I was closing a few different issues, and mistakenly closed this one. This current limitation still remains (for now)

I've taken a stab at implementing focused tests here: https://github.com/JetBrains/spek/pull/75
Does this address your issue @Zoltu ?

It partially addresses my issue, but I don't think it does so enough to make me switch back from JUnit to Spek for test authoring.  I utilize the JUnit IntelliJ integration pretty heavily and use the GUI to run, debug or coverage one test at a item, or a whole class of tests depending on what I am doing.  I also sometimes use the run configurations created by doing that to switch back and forth between a couple of different tests.
This fix does allow me to debug a single test, which is a significant improvement, but I still am missing the GUI integration which I heavily rely on.  I may try to switch back to Spek again at some point in the future to see how having this feels... but I'm worried that I'll be frustrated at not having the GUI integration working as I would expect.
Also, I believe this won't allow me to do things like use the "re-run all failing tests" feature in IntelliJ, since that will result in all classes with any failing tests being fully re-run.

For now this won't be resolved due to the way Spek is designed and the impossibility of actually running individual functions. If/when we move to scripts and Kotlin provides support for identifying line numbers or expression trees, then we can try and address this issue.


Add cmd option to pass Rustc arguments containing spaces

I am trying to pass pre-link-args and link-args to Rustc using Cargo. These dynamic an hence cannot be in the Cargo.toml. Since they contain spaces, I cannot use CARGO_RUSTC_FLAGS. If cargo had an option as --rustc-arg=, it would be possible to pass (multiple) arguments through to Rust, even if some would contain spaces. This could be useful for passing library paths, too.

cc #6139, another issue about spaces in flags.

The problem of arguments with spaces in CARGO_RUSTC_FLAGS has been addressed with the introduction of CARGO_ENCODED_RUSTFLAGS in #9601 and the viability of the solution confirmed as part of working on rust-lang/rust/pull/85967. Although this issue proposes a command line option, unless @humenda objects I would argue that this issue can be closed.
@rustbot ready

CARGO_ENCODED_RUSTFLAGS is the thing that was missing and I have been
wanting for quite some time. Thanks for spotting the new feature.

Thanks everyone for participating in this issue. Glad the inconvenience has been resolved!
As a result, this is going to be closed. For a more general --rustflags CLI option, you can find recent discussions here https://github.com/rust-lang/rfcs/pull/3310.


add CGPM tests that do not require sklearn/venture/&c.

Candidate fix is here https://github.com/probcomp/bayeslite/commit/f51392960a9b575df58d18fde052853c5752cf07