enroot hangs up fuse_overlayfs by trying a circular mount dependency

To make it simple: Despite following the instructions what packages are required etc the 'elaborate' ;) build instructions of 'make install' do not work on my EL8 system (up to date Rocky Linux 8.6).
As there are no EL8 rpms in the release process I am forced to build it myself, but to no avail.
I get this message:

I tried to understand what Makefile is trying to do there, but I do not get it. Isn't it supposed to use the musl distribution it clones?
Is there any more elaborate build documentation?
I am stuck...although I have actually quite a bit of experience custom-compiling software. But this does not follow any standard configure or cmake-style buildflow and I wasn't able to find any further docs on the Makefile system sued in this project.
Any advice?
P.S.: In an effort to 'reverse-engineer' the Makefile I tried setting the FORCE_GLIBC env variable, this runs some build process, but ultimately gets stuck here:

This system has been used to build all kind of software for the cluster, so the gcc, g++ etc. build tool are all there and most definitely work.

The RHEL packages we ship should work on any distribution, everything is statically linked.

I can confirm they don't on EL8. At least for me.
I get complete hang-up when trying to start a container. Also, on the release page they are marked explicitly as EL7.
But anyway, the build process should work for anyone. But I made some progress meanwhile. When using a fresh RockyLinux 8 container and installing the dependency everything compiles. My guess is the Makefile cannot cope with the presence of ccache in the PATH.
I get to the point where the RPMS do build, but rpmlint throws all of this as errors:

Unfortunately, same result with the self-built rpms. Upon starting a container, I end up with this.
I tried this on a clean new RockyLinux 8 VM and on the target server where we wish to use it, same problem.
Frustrating.

This might be a kernel bug, I think I've faced similar issues on Ubuntu 22.04 with fuse-overlayfs.
I suggest to start by trying without relying on fuse-overlayfs, that is to say use enroot import ; enroot create ; enroot start instead of just enroot import ; enroot start image.sqsh as described in https://github.com/NVIDIA/enroot/blob/master/doc/cmd/start.md#starting-container-images

Thanks for the hint, I will try.

wow, ok, that worked.
So my question is now: we want to roll this out on a productive system. Is there any way (configuration or build time) to prevent usage of fuse-overlayfs?
Because this creates hanging processes which can only be removed by a reboot, very bad situation for a shared compute system.
Of course, it would actually even better if this would work, but if you say Ubuntu 22.04 is affected this alleged bug would affect a super wide range of kernels. (EL8 uses 4.18, Ubuntu 22.04 is certainly using 5.14 or newer).

So my question is now: we want to roll this out on a productive system. Is there any way (configuration or build time) to prevent usage of fuse-overlayfs?

Simply: do not install fuse-overlayfs and squashfuse on your system. Of course a user could still install those 2 applications from sources and point at those binaries with a custom $PATH, but that seems like an unlikely workflow.
I confirm that I'm still seeing issues on Ubuntu 22.04 with the 5.17 OEM kernel, and SIGKILL does not work.

Also you could try unloading fuse if it's a kernel module on your distro (looks like it's builtin on Ubuntu 22.04).

I guess removing squashfuse would be an intermediate solution.
Fuse itself is required for other puposes. But thanks for your hints, that is helpful as a workaround for now.

BTW I was told by a Canonical support engineer that you can add initcall_blacklist=fuse_init to the kernel boot parameters to prevent FUSE from loading even if it is builtin. In case you don't need it anymore of if someone else looks at this issue in the future.

Ok, so RedHat came back to me and the analyed the issue and claim it is an issue by enroot:
I quote from the ticket:
"that is a bug in enroot.
I see the current fuse-overlayfs process running:
fuse-overlayfs -f -o lowerdir=/run/user/1000/enroot/overlay/lower,upperdir=/run/user/1000/enroot/overlay/upper,workdir=/run/user/1000/enroot/overlay/work /run/user/1000/enroot/overlay
That means the overlay mount is created at /run/user/1000/enroot/overlay but the lower layer is also under that directory.  So when fuse-overlayfs needs to do a lookup on the lower directory (/run/user/1000/enroot/overlay/lower), will end up accessing its own mount (/run/user/1000/enroot/overlay).
Please report the issue upstream to enroot, since it is not a supported RHEL package."

Maybe so, but if enroot (an unprivileged process) can put a system in a bad state, then it is a risk for system stability and it probably needs to be fixed in the Linux kernel (unless I'm missing something).

I made that  statement as well, but the system is not really 'in a bad state', everything else runs perfectly fine.
It is just due to the 'circle dependency' the 2 fuse processes hang themselves up and frankly the kernel has no real chance of knowing how to resolve that. The requests being made are valid, but due to mounting that stuff in the way enroot does, it creates a classic deadlock situation.
Probably fuse would need to account for that by disallowing that.
Nevertheless, I think the point they are making that enroot is doing the mount requests in an incorrect manner is valid.
So even if fuse would'nt hang, it would need to decline whatever enroot tries to do.
Does that make sense?
So yes, Fuse could most likely improve here, nevertheless enroot has a problem here I'd say.

I made that statement as well, but the system is not really 'in a bad state', everything else runs perfectly fine.

Can you kill the fuse-overlayfs with SIGTERM or SIGKILL? If it's unkillable, I would argue the system is indeed in a bad state.

@3XX0 would have to take a look at the FUSE operations done by enroot when he's back.

I made that statement as well, but the system is not really 'in a bad state', everything else runs perfectly fine.

Can you kill the fuse-overlayfs with SIGTERM or SIGKILL? If it's unkillable, I would argue the system is indeed in a bad state.

No, it cannot be. You can free up the tty again by killing the bash process that launched enroot.
But the 2 fuse processes that wait for each other are stuck forever waiting for each other resources.
So no, it does not affect anything else on the server, but these 2 are stuck until reboot. So it is not an unstable, but dirty state.

Right, but if you use Slurm, it will not like this dirty state and will drain the node:
https://slurm.schedmd.com/slurm.conf.html#OPT_UnkillableStepTimeout
And I think this behavior makes sense, it usually indicates something might be very wrong with the system.

True, but for SLURM it will not really make a difference as the jobs would also fail if fuse would behave more elegant, as the circular mount dependency requested by enroot would make the job crash as well.
The only way currently is to uninstall squashfuse to make it impossible to run enroot start immidiately on a squashfs image.
This will do for now, but fundamentally the way enroot uses fuse_overlayfs must be fixed I guess.

Yeah I will look at it when I have time, but IIRC this shouldn't be a problem and I fixed several issues in fuse-overlayfs in the past that made it work. So I guess there has been some changes there.
In any case on newer kernels we should transition to unprivileged overlay and get rid of fuse-overlayfs

BTW I found two ways to cleanup this situation, the first one requires root and requires going into each mount namespace that is currently stuck:
sudo nsenter -t $(pidof fuse-overlayfs) -m umount -f -l /run/enroot/user-11838/overlay

The second one can be done unprivileged and does not require handling mount namespaces:
echo 1 > /sys/fs/fuse/connections/<ID>/abort

To find the right value of <ID>, a cleanup script would have to look for folders in /sys/fs/fuse/connections/ that are owned by the user:
$ ls -l /sys/fs/fuse/connections/
total 0
dr-x------ 2 root       root       0 Jul 27 12:15 44
dr-x------ 2 fabecassis fabecassis 0 Jul 27 13:34 50

Yeah I will look at it when I have time, but IIRC this shouldn't be a problem and I fixed several issues in fuse-overlayfs in the past that made it work. So I guess there has been some changes there.

You are absolutely right, it worked fine in all versions from 0.7 (in Ubuntu 20.04) to 1.6 (one version before what is shipped in Ubuntu 22.04. I filed a bug to hopefully clarify this situation once and for all: https://github.com/containers/fuse-overlayfs/issues/364


Avoid reveal modal closing upon click of an element not in the DOM

Before submitting a pull request, make sure it's targeting the right branch:

For documentation fixes, use master.
For bug fixes, use develop.
For new features, use the branch for the next minor version, which will be formatted v6.x.

If you're fixing a JavaScript issue, it would help to create a new test case under the folder test/visual/ that recreates the issue and show's that it's been fixed. Run npm test to compile the testing folder.
Happy coding! :)
Added check to make sure e.target is still in the DOM. I came across a bug when I created a google map canvas inside reveal modal, whereby upon closing the info popup on a map marker, the entire reveal modal gets closed. This is because when the overlay click handler is invoked, Google code has already removed the e.target  element and the overlay handler only gets a ghost element and can not find it in the modal element

@Owlbertz Could you please provide some feedback on this?


Install Command Line Tools as part of Xcode setup

This PR ensures the xcode-install gem can be installed into Chef gems by verifying that Command Line Tools are installed. If not installed, a temporary file is created to trigger the softwareupdate -l command into providing the product name for the latest CLT, which is then downloaded and installed.
Fixes #79.

Looks great. Thanks for making the changes quickly.


Dictionaries-based implementation appears 45x faster for rand

Hi there,
I need a categorical distribution with a fast rand method to be used in simulations.
I found the bare-bones implementation below to be about 45x faster for rand on my machine.
It is based on Dictionaries.jl.
Hopefully I've done the benchmarking correctly.
If so, is a Dictionaries.jl-based implementation suitable for CategoricalDistributions.jl?
Can it cover the uses cases that CategoricalDistributions.jl satisfies?
using Dictionaries
using Distributions
using Random

struct CatDist{K} <: Distribution{Univariate, Discrete}
    dict::Dictionary{K, Float64}  # TODO: Constructor that checks probs, unique levels, etc
end

CatDist(levels, probs) = CatDist(Dictionary(levels, probs))

Base.eltype(d::CatDist{K}) where {K} = K

function Base.rand(rng::Random.AbstractRNG, d::CatDist{K}) where {K}
    u = rand(rng)
    total = 0.0
    for (level, prob) in pairs(d.dict)
        total += prob
        u <= total && return level
    end
end

################################################################
using BenchmarkTools

d1 = Categorical([0.5, 0.4, 0.1])
@benchmark rand($(d1))  # 16ns

d2 = CatDist(["maybe", "no", "yes"], [0.5, 0.4, 0.1])
@benchmark rand($(d2))  # 16ns

using CategoricalDistributions
d3 = UnivariateFinite(["maybe", "no", "yes"], [0.5, 0.4, 0.1]; pool=missing)
@benchmark rand($(d3))  # 730ns

Thanks @JockLawrie for the insights here.
Started playing around with this but tripped on #65. I'll return to this after addressing that.

Okayed, I've looked into this bit more.
Choice of container
Currently the implementation already uses dictionaries but:

We use LittleDict from OrderedCollections
The dicts are keyed on CategoricalArrays's internal reference integers not on the raw labels.

If we swap out  Dictionaries.Dictionary from your implementation with LittleDict there is no significant change in performance (benchmarks attached below). So the container is not the issue here. (Side note, we currently use the Vector version of LittleDict's, which might be slightly improved by using the tuple version, ie, by freezeing the dicts, but I doubt the benefit will be much.)
Precomputation of inverse pdf
In the current implementation, a cumulative pdf is pre-computed (following the implementation of Distributions.Categorical, but which may have changed since we adapted it). This avoids repeating arithmetic when drawing multiple samples at once. So, if we repeat your experiment for 10_000 samples, but use UnivariteFinite's implementation for multiple samples, then the performance is basically the same. If we increase the number of classes from 3 to 100, the UnivariateFinite implementation is faster (but still the same order of magnitude). Multiple sampling may be even faster if we switch to the alias method and precompute the alias tables.
Next steps for the single sample case
It doesn't seem likely to me that the slowdown you have observed is mostly due to the precomputation of the inverse CDF, but I haven't tested this. My guess is the slowdown is somewhere else. Perhaps if we reimplemented UnivariateFinite using dictionaries keyed directly on the raw labels, that might be faster.  Doing might slow other methods down - I'm not sure. More investigation is needed before justifying the substantial refactor that would entail.

Needs CategoricalDistributions 0.1.12:
using Dictionaries
using OrderedCollections
using Distributions
using Random
using CategoricalDistributions

struct CatDist{K} <: Distribution{Univariate, Discrete}
    dict::Dictionary{K, Float64}  # TODO: Constructor that checks probs, unique levels, etc
end

CatDist(levels, probs) = CatDist(Dictionary(levels, probs))

Base.eltype(d::CatDist{K}) where {K} = K

function Base.rand(rng::Random.AbstractRNG, d::CatDist{K}) where {K}
    u = rand(rng)
    total = 0.0
    for (level, prob) in pairs(d.dict)
        total += prob
        u <= total && return level
    end
end

struct LittleCatDist{K} <: Distribution{Univariate, Discrete}
    dict::LittleDict{K, Float64, Vector{K}, Vector{Float64}}
end

LittleCatDist(levels, probs) = LittleCatDist(LittleDict(levels, probs))

Base.eltype(d::LittleCatDist{K}) where {K} = K

function Base.rand(rng::Random.AbstractRNG, d::LittleCatDist{K}) where {K}
    u = rand(rng)
    total = 0.0
    for (level, prob) in pairs(d.dict)
        total += prob
        u <= total && return level
    end
end

## Benchmarks for single sample

using BenchmarkTools

categorical = Categorical([0.5, 0.4, 0.1])
catdist = CatDist(["maybe", "no", "yes"], [0.5, 0.4, 0.1])
littlecatdist = LittleCatDist(["maybe", "no", "yes"], [0.5, 0.4, 0.1])
d = UnivariateFinite(["maybe", "no", "yes"], [0.5, 0.4, 0.1]; pool=missing)

@btime rand($categorical) # 11.6 ns
@btime rand($catdist) # 13.7 ns
@btime rand($littlecatdist) # 12.1 ns
@btime rand($d) # 855 ns

## Benchmarks for multiple samples

N = 10_000
@btime rand($categorical, N);  # 141 μs
@btime [rand($catdist) for i in 1:N];  # 136 μs
@btime [rand($littlecatdist) for i in 1:N];  # 128 μs
@btime rand($d, N);  # 137 μs

## Benchmarks for larger numbers of classes

N = 10_0000
M = 100
p = rand(100)
p = p ./ sum(p)
labels = 1:M

categorical = Categorical(p)
catdist = CatDist(labels, p)
littlecatdist = LittleCatDist(labels, p)
d = UnivariateFinite(labels, p; pool=missing)

@btime rand($categorical, N);  # 1.41 ms
@btime [rand($catdist) for i in 1:N];  # 6.50 ms
@btime [rand($littlecatdist) for i in 1:N];  # 6.40 ms
@btime rand($d, N);  # 4.62 ms

@JockLawrie For your use case, do you actually need a fast call of rand(d) or is it enough that rand(d, n) is fast, for n much bigger than 1?

Thanks for looking into this Anthony, much appreciated.
I do need a fast rand(d) for an agent-based model with millions of agents, where the distribution d changes for each individual over time and across replications. That is, I'm calling rand(d) for billions of different d in sequence.
Looks like the LittleDict implementation is just as fast as the Dictionary implementation, so no need to switch from the former to the latter.
Perhaps a pre-computed CDF for rand(d, N) but not for rand(d)?


Remove Jquery dependency

Hello,
I use Angular and i don't want to add Jquery lib in my program, is it easy to remove the Jquery dependency if i use my own lib for update the pictures ?

Unfortunately no. jQuery is necessary dependency. The plugin uses it heavily for all DOM manipulations and even 2 other plugin's dependencies (blueimp-file-upload and jquery-sortable) use jQuery themselves. If you don't want to use jQuery, you can try some other alternatives like Zepto, but I can't guarantee you it will work.


update platform_file / platform_url to reflect new release names

Starting with the 20190523 release [1], Joyent_Dev names for the platform image
are now of the form
platform-release-$date-$fulliso8601
This patch extracts the date and prepends -release-$date to the
platform filename make the download succeed.
Caveat: the name naming style is a sample size of n = 1, and I couldn’t find any mention of it, so it may not persist.
[1] http://us-east.manta.joyent.com/Joyent_Dev/public/SmartOS/20190523T082605Z/index.html

Reasonable. We can always revert if they do. :)


ElasticSearch: unparseable :

The following package contains ":" in the name: https://phaeton.hbz-nrw.de/gokb/resource/show/89d493cb-cf3b-4a44-845c-f7e64d4c07c3
When I make a search against ES Index, I do not get this package unless I seach exactly for the exact name. This is due to the colons in the package name.
This affects also LAS:eR side package linking since the package does not figure in that list, too.

So the ES Index should accept colons, i.e. should not interpret colons as functional characters. @hornmo , can this be fixed?

In LAS:eR, colons are already escaped.

I am assuming your are searching via the parameter name? That one only searches for whole words, and since : is not defined as a breaking character the only way to find this mislabeled package is by searching for the whole name. It can however be found by searching via the suggest parameter, which sounds like what you are looking for anyways:
https://gokb.org/gokb/api/find?componentType=Package&suggest=Wile
As you can see here
https://gokb.org/gokb/api/find?componentType=Package&name=Wiley
the colon itself is not a problem, but leaving out spaces is.
What should be fixed therefore is the name of the package, since it does not conform to the GOKb data manager package naming guidelines, which demands putting spaces after the colons.

The name is going to be changed.

Right, this seems to be a bug concerning the global search queries specifically, thanks for pointing that out.


fix: OIDC

Description
ported content to 3.0

Testing instructions
Preview link:
Checklist

[x] Review label added
[x] PR pointed to correct branch (main for immediate publishing, or a release branch: e.g. release/gateway-3.2, release/deck-1.17)

HI @mheap. The build preview fails because Liquid Exception: Could not locate the included file "/md/kic/http-test-service.md" in any of ["/opt/build/repo/app/_includes"]. Ensure it exists in one of those directories and, if it is a symlink, does not point outside your site source. in _src/kubernetes-ingress-controller/plugins/oidc.md We need to add this for release/kic3.0.

It’s been renamed to test-service-echo.md I think


updated note

@LanaChin  Changes look correct. Could you please review and merge? Thanks!

@jambirk - the note is about Teams Room System. Could you review please?


nvm.sh:114: parse error near `done'

Last week, I randomly started getting the following message when I open a new terminal window:
~/.nvm/nvm.sh:114: parse error near `done'

I tried uninstalling and reinstalling nvm with the following commands:
$ rm -rf ~/.nvm
# remove the nvm load script from my zshell config
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.2/install.sh | bash

but I'm still getting the message. Here are the relevant lines (110-114) from nvm.sh:
local pathdir
pathdir=$(dirname "$node_path")
while [ "$pathdir" != "" ] && [ "$pathdir" != "." ] && [ "$pathdir" != "/" ] && [ "$pathdir" != "$tree" ]; do
  pathdir=$(dirname "$pathdir")
done

@stevehanson what's nvm debug print out? Does the same thing happen in bash, or is it only in zsh?

@ljharb: The nvm command doesn't work. I get zsh: command not found: nvm.

oh, duh, that makes sense. what's echo $HOME; print out? does npm config get prefix print anything?

$ echo $HOME
> /Users/shanson

$ npm config get prefix
> /usr/local

And thanks for your help, @ljharb!

np, we'll figure this out one way or another :-)
Do you use oh-my-zsh, or set any zsh options prior to sourcing nvm? (also can you check in bash too)

Yes, I use oh-my-zsh and have this custom path setup:
PATH=/usr/local/bin:/usr/local/sbin:/usr/local/lib/node:$PATH
PATH=./bin:./vendor/bundle/bin:$PATH
PATH=$PATH:/opt/local/bin
PATH=$PATH:~/.dotfiles/scripts:~/.dotfiles/scripts/private
PATH=$PATH:~/bin
PATH=$PATH:~/go/bin
PATH=$PATH:~/.rbenv/bin:~/.rbenv/shims

eval "$(rbenv init -)"
export PATH

and then these two lines at the bottom of my zshrc, as inserted by the nvm install script:
export NVM_DIR="/Users/shanson/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

Also, I'm on a Mac (10.11.2), btw, if it's relevant.

As long as that PATH mutation is all happening before nvm runs, and not after, the only thing I can think of is the ~ - perhaps you could try using $HOME instead of ~ but i don't really think that will do it.
Could you also try disabling omz and using stock zsh? It would help to confirm that a zsh option is causing it (it's happened many times before with omz)

I just disabled omz by commenting out the line that sources it in my zshrc, and i'm still getting the same "parse error near done" error.

oh wait!

When I comment out my custom zshell config that I source from zshrc, I don't get the error anymore and nvm is working. Awesome. Looks like something from that file. Let me comment out little chunks at a time to see if i can find the troublesome line.

Awesome, thanks! whatever it turns out to be, if it's possible to make nvm work around it, I'll try to do so.

omg. i found it. I had set up an alias to connect to my digital ocean server:
alias do=ssh<EMAIL_ADDRESS>
can't believe it didn't hit me that do is a reserved word. Everything's working now. Thanks for all your help! I think you've taught me the skills to troubleshoot this on my own next time. cheers.

lol, glad we figured it out! thanks for being responsive!

@stevehanson this was EXACTLY my issue.

Excellent.  I had the same problems.  Thx for posting.. :)

I have got same issues, but just move this code below to before zsh configure on .zshrc file and it's work fine to me:
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

Thanks all,

FWIW, I had the exact same alias, and the same confusion about the do loop in zsh.

i had very similar issue. i was trying to reset a reserved command to something else. alias fi='gfli' was causing the problem for me. but @stevehanson 's answer above helped me to resolve it.

omg. i found it. I had set up an alias to connect to my digital ocean server:
alias do=ssh<EMAIL_ADDRESS>
can't believe it didn't hit me that do is a reserved word. Everything's working now. Thanks for all your help! I think you've taught me the skills to troubleshoot this on my own next time. cheers.

Just had this issue today and it's the exact same alias screwing it up. LMFAO

omg. i found it. I had set up an alias to connect to my digital ocean server:
alias do=ssh<EMAIL_ADDRESS>
can't believe it didn't hit me that do is a reserved word. Everything's working now. Thanks for all your help! I think you've taught me the skills to troubleshoot this on my own next time. cheers.

In 2020, I had a similar issue with
alias done='send notification to my machine'
Thank you for opening this issue 😹

I had the same problem 😄. Thanks for sharing 👍

I had the same issue and also an alias for digital ocean (do). Thanks!

The same issue with 'do' :). Thank you!

I'll add my name to the list of shame. Thanks for sharing!

Another one :) This time it is not Digital Ocean but a todo list in terminal.. Thought it was a good idea to create "do" alias 😵💫 Thanks for the help :)

for me the culprit was:
alias done='/usr/bin/notify-send "Command execution" "Done"'


add sentiment_analysis

add fine-grained sentiment_analysis that contains opinion extraction model, aspect-level sentiment classification and ppminilm model

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


Exceptions with ver 5.0

Hi.
I still try to acomodate the plugin :)
according to guideline for newest version you can specify extend_from_base option for Exceptions
Below is my sidebar-confonfig.yaml
title: Kopanka
sidebar_editable: true
order:

new_item: true
item: ESPHome
href: http://xxx.xxx.xxx.xxx:6052
target: _blank
icon: mdi:arrow-decision
order: 1
exceptions:

user:

lukasz
title: Murzyn
extend_from_base: false
sidebar_editable: false
order:

item: energy
hide: false

It shoul only display energy tab for "lukasz" logged user but he sees complete menu:

What do I do wrong ?
My goal is to allow user "lukasz" to have one and only one option in left sidebar,.

Hi @ilexpl01,
First of all, I don't know if it is because you didn't chose a proper code block but watch out the syntax and the identation, in yaml code this is crucial. This should be your config (you don't need to specify sidebar_editable in true, it is true by default):
title: Kopanka
sidebar_editable: true
order:
  - new_item: true
    item: ESPHome
    href: http://xxx.xxx.xxx.xxx:6052
    target: _blank
    icon: mdi:arrow-decision
    order: 1
exceptions:
  - user:
    - lukasz
    title: Murzyn
    extend_from_base: false
    sidebar_editable: false
    order:
      - item: energy
        hide: false

Secondly, you are trying to match an item called energy but as your language is not English, there is no Energy item in your sidebar, so either change energy to energia or try to use another matcher (data-panel or href).
And lastly, you missunderstood what extend_from_base does (you don't need to specify it if it is false, it is false by default, the same with the hide parameter on each item, it is false by default). From the documentation:

Pay attention to extend_from_base property. If it's set to false (default value), the main config will be ignored, leaving you with default sidebar modified only by the exception's options

This means that if you put only one item in the exceptions and setting hide in the energy as false, you will end up with a default sidebar without changes. If you want to hide everything for that user excluding the energy tab, you need to set hide in true for everything excepting the energy one 🙂
Let me know how it goes.

Thx 4 fast reply.
i have achieved my goal:

last question:
Can I disable the user an access to his profile ? There he can change the language and that may ruin the setup I guess.

Hi @ilexpl01,
If you match the items by data-panel or href it will work regardless of the language.
But anyway, you can hide the account item using kiosk-mode:
https://github.com/NemesisRE/kiosk-mode
Regards


Problems when connecting to xrdp (v0.8)

     My aim is to connect linux operating system(suse10sp2) for graphical operating by

freerdp client.So I installed xrdp(v0.8) in suse 10sp2 ,and I installed freerdp(FreeRDP-1.1.0)
client in my Windows 7 ,when I opened wfreerdp.exe to connect suse10sp2 in windows 7,I found
some characters are blank ,for example ,characters on the button can not be seen;When I open
a text file which contains characters,it displays blank.
But when I use mstsc to connect suse10sp2 in windows 7, it displays normally.
Does freerdp support to connect the linux operating system "suse10sp2" for  graphical operating? Have you ever test it on suse10sp2?Hope you can help me ,thanks!

Working on current debian stable (xrdp 0.9)


bug: Duplicate BOS Token in Hugging Face Chat Templates

Description:
When using chat templates in Hugging Face, the Beginning-OfSentence (BOS) token is often already included in the template. However, Llama.cpp also automatically adds the BOS token, resulting in a duplicate BOS token.
Expected behavior:
The system should automatically detect and remove any duplicate BOS tokens in the chat template. This would ensure proper functioning of the chat system without causing errors due to redundant tokens.
Additional context:
This issue may cause unexpected behavior or errors in the chat system. It is recommended that Cortex checks for and deduplicates the BOS token if it is present in the user's template to maintain a consistent and error-free chat experience.

@nguyenhoangthuan99 I am putting this as a sub-issue of #1151. This issue may be stale if HF has fixed upstream

Problem
This is example of huggingface chat template that we are using <|begin_of_text|><|start_header_id|>system<|end_header_id|>\n\n{system_message}<|eot_id|><|start_header_id|>user<|end_header_id|>\n\n{prompt}<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n\n
The token <|begin_of_text|> is BOS token. However, when we use this chat template, the llama.cpp engine automatically add <|begin_of_text|> to the prompt -> there are 2 BOS token in the prompt e.g. <|begin_of_text|><|begin_of_text|><|start_header_id|>system<|end_header_id|>\n\n{system_message}<|eot_id|>.
This issue won't affect too much to the response, and most model still work well with this. We are using cortex with double BOS token with llama.cpp engine without any error.
Solution
There are 2 solutions right now for this:

Handle at cortex.llamacpp engine. Every time, when run inference we need to check if there is BOS token of that model in the chat template. the BOS token is parsed from GGUF file by llama.cpp
Handle at cortex.cpp side. We need to save BOS token to model.yml and let cortex.cpp remove it when request to cortex.llamacpp engine.

I think the first solution is better because we don't need to update the cortex.cpp part and model.yml file which is related to many other parts of cortex.cpp

I want to close this issue because llama.cpp set tokenizer_add_bos default to false on this PR

For that reason, this bug no longer appear when running inference with llama.cpp.

Solved by llama.cpp upstream (thanks @nguyenhoangthuan99 for investigating)


Update TextBox.TextAlignment to reference HorizontalTextAlignment

The TextAlignment and HorizontalTextAlignment properties are synonyms for each other. The latter page already calls this out, this is adding the same remark to the former.

@MikeHillberg : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

@jwmsft for review
Thanks.

#sign-off

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Granian on django doesn't work with heroku

@madhanrajan can you provide more details on the error, like how you launch granian and stacktrace/logs?

I run it with this command in the Procfile web: granian --interface wsgi project.asgi:application
I encountered an error indicating that the server listened to the port but timed out

sorry, I did use wsgi but it still didn't work. Could you try replicating this on a heroku instance?

@madhanrajan no, I'm sorry, I don't have any quick way to replicate this on Heroku.
If you can provide at least some logs we can try to better understand what's happening.

@madhanrajan - have you tried setting the host to <IP_ADDRESS> instead of <IP_ADDRESS>

@madhanrajan it is very brutal to fill in an issue without an error. Especially when the error is very clear:
Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch

Heroku assigns a random port to $PORT and needs to be bind to the outside world. I tested it with the following command and it works as intentend.
granian --interface wsgi --port $PORT --host <IP_ADDRESS> server:app


Remind for necromancer every week on Monday during standup

The idea is to notify necromancer during standup every Monday as a reminder.
The names are:

@LalatenduMohanty
@praveenkumar
@gbraad
@hferentschik
@budhrg
@amitkrout
@agajdosi

? why do I need a reminder for something I do daily... ?

? why do I need a reminder for something I do daily... ?

We appreciate that you do it daily but as a team that effort should be divided across. :smile:

@budhrg thanks for creating the issue.

There should be a way to override to move to the next auto selected in case someone is out of office for that week.

There should be a way to override to move to the next auto selected in case someone is out of office for that week.

Of course. Some sort of manual intervention is needed.

Merged via pull request #33


pykafka mini-batch

Reason is :
Need to limit database connection access
by grouping key access together.
Hence, the idea of processing message by mini-batch.
msg_list = consume(10msg,...)
We can do ourself as a loop,
but wondering if this can be part of pykafka.

Thanks for the suggestion, @arita37. A count parameter on consume is certainly something we could add if enough users thought it would be useful. It's worth noting that it would only control how many messages were returned from the consume call and would have no effect on the batching logic that the consumer uses to fetch from kafka (which is controlled by kwargs on the consumer like fetch_message_max_bytes and num_consumer_fetchers, among others).
Your mention of needing to "limit database connection access" does give me some pause, though. Are you imagining an argument that would perform some kind of grouping based on message content? If so, that's better handled by producing with a partition key. It's also straightforward enough to build the list in client code, like so:
messages = [consumer.consume() for _ in xrange(10)]

Yes, that is the core of the question.
grouping message based on contents.
And post process the grouping messages.

Usually, latency come from post-processing
the messages (database access).
On Apr 11, 2018, at 1:50, Emmett J. Butler<EMAIL_ADDRESS>wrote:
Thanks for the suggestion, @arita37. A count parameter on consume is certainly something we could add if enough users thought it would be useful. It's worth noting that it would only control how many messages were returned from the consume call and would have no effect on the batching logic that the consumer uses to fetch from kafka (which is controlled by kwargs on the consumer like fetch_message_max_bytes and num_consumer_fetchers, among others).
Your mention of needing to "limit database connection access" does give me some pause, though. Are you imagining an argument that would perform some kind of grouping based on message content? If so, that's better handled by producing with a partition key. It's also straightforward enough to build the list in client code, like so:
messages = [consumer.consume() for _ in xrange(10)]
―
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

Pykafka aims to remain completely ignorant of the contents of the messages it processes, so I don't think mechanisms allowing grouping based on message content will ever be added. That said, Kafka itself provides partition keying as a way to consume messages in meaningful subgroups within a topic. You can pass an instance of the HashingPartitioner to the producer's partitioner kwarg. This will enable you to use the partition_key kwarg on Producer.produce to group messages logically (perhaps by some piece of their contents) into partitions on your topic. When consuming, you can use the partitions argument on SimpleConsumer to specify the exact partitions the consumer should listen to. This will allow each consumer to consume only messages from the same logical grouping.
I would also recommend examining your topic setup and considering using more topics to achieve your logical grouping. If every message in your topic is part of the same logical group, you'll be able to take advantage of pykafka's automatic consumption balancing via the BalancedConsumer class while maintaining your application's particular logical grouping of messages.


XPS 9350

hey @the-Quert, any chance this would work the i7 3K HD 520 XPS 13?

I tried to make my own repository but i absolutely cannot get the sleep wake to work without a black screen. Did you encounter this?

Since HD520 is SkyLake based, you have to change ig-platform-id to 0x19160000 from config.plist

Problem solved, case closed.


Windows spawned on a Layout.SimpleFloat workspace does not move with the workspace (multi-monitor setup)kspace

Problem Description
With a multi-monitor setup, i.e. multiple outputs setup with xrandr, Windows spawned on a workspace using XMonad.Layout.SimpleFloat stay on the monitor where the workspace was when they were spawned, even though the workspace is no longer displayed on that monitor.
This video demonstrates the problem: http://i.imgur.com/Fz9ZXON.mp4
Tested with XMonad 0.12 on Ubuntu 16.04, and the latest git version on Arch Linux, same result.
The video is based on the below config, except I added xmobar and logging as well to make identifying workspaces easier. The two screens are my laptop monitor (lowest resolution on the left) and an external monitor (highest resolution on the right).
Workspace 2 uses SimpleFloat as layout. I spawn a few windows on WS2 while it is visible on the ext/right monitor. When I switch back to the laptop/left monitor (mod+w) and request WS2 be displayed there (mod+2) the windows just spawned remain on the external monitor and overlay any other windows now visible there. The only way to not have the floated windows visible is to make sure no monitor is displaying WS2, I do that in the end of the video where I switch to WS1 and WS3 on the two monitors, making the float Windows disappear. See the list at the end of the post for the exact keystrokes.
Windows floated with mod+mouse on workspaces without the SimpleFloat layout they move with their workspace as expected.
XMonad.Layout.SimplestFloat does not seem to suffer from this problem, but it is also quite different, behaves more like mod+mouse floated windows, i.e. the windows in SimplestFloat layouts can not be moved without mod+mouse and they can not be mouse resized.
Configuration File
import XMonad
import qualified XMonad.Layout.PerWorkspace as PerWS
import qualified XMonad.Layout.SimpleFloat as Float

main = xmonad defaultConfig
        {  modMask = mod4Mask -- Use Super instead of Alt
         , layoutHook =    PerWS.onWorkspace "2" Float.simpleFloat
                         $ (Tall 1 (3/100) (1/2) ||| Full)
        }

Checklist

[X ] I've read CONTRIBUTING.md

[  ] I tested my configuration with xmonad-testing
No, it isn't really suited for multi-monitor testing, but did test with newest git on ArchLinux, and version 0.12 on Ubuntu 16.04. geekosaur suggests XMonad.Layout.LayoutScreens might work, but agrees that it ruins testing a bit since it requires modification of xmonad.hs

Appendix
The keystrokes used in video for changing monitors and workspaces

mod-e (focus right monitor)
spawn windows and rearrange with mouse
mod-w (focus left monitor)
mod-2 (viewing WS2 on laptop monitor, but windows stay on right monitor)
mod-1 ,   mod-2 ,  mod-1 (try again to get the windows moving)
mod-e (focus right monitor)
mod-1 (view WS1 on right monitor)
mod-w (focus left monitor)
mod-3 (view WS3 on left monitor, now the float windows are not visible because WS2 is not visible anywhere)
Float and drag the window in WS1 (right monitor) to verify the floated windows are not hiding there
mod-w (focus left monitor)
mod-2 (view WS2 on left monitor, floated windows reappear on the right monitor even though WS2 is not displayed there).

Sadly, that's more or less expected. Our floating window handling is
atrocious.
On Wed, Jan 25, 2017 at 5:57 PM, Jonas Camillus Jeppesen <
<EMAIL_ADDRESS>wrote:

Problem Description
With a multi-monitor setup, i.e. multiple outputs setup with xrandr,
Windows spawned on a workspace using XMonad.Layout.SimpleFloat stay on the
monitor where the workspace was when they were spawned, even though the
workspace is no longer displayed on that monitor.
This video demonstrates the problem: http://i.imgur.com/Fz9ZXON.mp4
The video is based on the below config, except I added xmobar and logging
as well to make identifying workspaces easier. The two screens are my
laptop monitor (lowest resolution on the left) and an external monitor
(highest resolution on the right).
Workspace 2 uses SimpleFloat as layout. I spawn a few windows on WS2 while
it is visible on the ext/right monitor. When I switch back to the
laptop/left monitor (mod+w) and request WS2 be displayed there (mod+2) the
windows just spawned remain on the external monitor and overlay any other
windows now visible there. The only way to not have the floated windows
visible is to make sure no monitor is displaying WS2, I do that in the end
of the video where I switch to WS1 and WS3 on the two monitors, making the
float Windows disappear. See the list at the end of the post for the exact
keystrokes.
Windows floated with mod+mouse on workspaces without the SimpleFloat
layout they move with their workspace as expected.
XMonad.Layout.SimplestFloat does not seem to suffer from this problem, but
it is also quite different, behaves more like mod+mouse floated windows,
i.e. the windows in SimplestFloat layouts can not be moved without
mod+mouse and they can not be mouse resized.
Configuration File
import XMonadimport qualified XMonad.Layout.PerWorkspace as PerWSimport qualified XMonad.Layout.SimpleFloat as Float
main = xmonad defaultConfig
{  modMask = mod4Mask -- Use Super instead of Alt
, layoutHook =    PerWS.onWorkspace "2" Float.simpleFloat
$ (Tall 1 (3/100) (1/2) ||| Full)
}
Checklist

[X ] I've read CONTRIBUTING.md
https://github.com/xmonad/xmonad/blob/master/CONTRIBUTING.md
[ ] I tested my configuration with xmonad-testing
https://github.com/xmonad/xmonad-testing
No, it isn't really suited for multi-monitor testing, but did test
with newest git on ArchLinux, and version 0.12 on Ubuntu 16.04. geekosaur
suggests XMonad.Layout.LayoutScreens might work, but agrees that it ruins
testing a bit since it requires modification of xmonad.hs
Appendix
The keystrokes used in video for changing monitors and workspaces

mod-e (focus right monitor)
spawn windows and rearrange with mouse
mod-w (focus left monitor)
mod-2 (viewing WS2 on laptop monitor, but windows stay on right
monitor)
mod-1 , mod-2 , mod-1 (try again to get the windows moving)
mod-e (focus right monitor)
mod-1 (view WS1 on right monitor)
mod-w (focus left monitor)
mod-3 (view WS3 on left monitor, now the float windows are not
visible because WS2 is not visible anywhere)
Float and drag the window in WS1 (right monitor) to verify the
floated windows are not hiding there
mod-w (focus left monitor)
mod-2 (view WS2 on left monitor, floated windows reappear on the
right monitor even though WS2 is not displayed there).

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/xmonad/xmonad-contrib/issues/140, or mute the thread
https://github.com/notifications/unsubscribe-auth/AB8SoNd6QBvjg4ie5gLfy6cc3BY5jkXBks5rV9NWgaJpZM4LuGu8
.

--
brandon s allbery kf8nh                               sine nomine associates
<EMAIL_ADDRESS><EMAIL_ADDRESS>unix, openafs, kerberos, infrastructure, xmonad        http://sinenomine.net

According to this old comment on reddit windows which appear floating in SimpleFloat layout is not actually floating according to xmonad internals, its some hack making it appear so. https://www.reddit.com/r/xmonad/comments/hktyb/ask_rxmonad_decorated_floating_windows/c20bzv5/
Maybe that is why it is not working, but mod+mouse floated windows work, and Layout.SimplestFloat works.
There is also a pull request on the xmonad repo concerning advanced decoration and floating: https://github.com/xmonad/xmonad/pull/41
Maybe that will be interesting in the future.

XMonad.Layout.WindowArranger is the problem IMO.  I think that we need a new issue for improving the documentation on most layouts and make it clear that XMonad.Layout.WindowArranger and any other layout using it keeps all windows in the floating layer.
I'm going to close this issue and open another one.


"Cannot Find KindleGen..." Problem on ubuntu 16.04 KCC 5.1.2

Hi, i am on ubuntu 16.04. I want to convert cbr/cbz to AZW3/MOBI but i have a "Cannot Find KindleGen..." problem. KindleGen downloaded and extracted, but i dont know what should i do in next steps. Help me my brothers

I solved it. No problem.

*kindlegen -> copy-paste to /usr/bin


Cross-compile Redis using zar as the archiver

https://github.com/kristoff-it/redis
https://kristoff.it/blog/maintain-it-with-zig/
This is a good test that zar can at least function as a theoretical drop-in replacement for llvm-ar.

[x] cross-compile from macOS to Linux
[x] cross-compile from Linux to macOS

As suggested by @kubkon on Discord.

On top of that I see using zar in the compilation of llvm would also be a good real world test.

So this now works!  LLVM might be a good test - but there's some general cleanup I would  like to do first - so I'm going to make a new issue so we can have an automated test for this of some kind.


Remove default SSH in favor of HTTPS

We noticed that some users were facing issues when trying to clone and fetch anonymously or without SSH and GitHub configured together because of SSH being enforced in the sub-modules.
We decided to remove SSH altogether in favor of HTTPS to permit anonymous access for automatic cloning (CI, scripts) and users having no prior configurations or using HTTPS instead of SSH on GitHub. It also makes it harder and is confusing users that are not familiar with git and SSH.
Users wanting SSH to gain write access through GitHub authentication can alter the remotes themselves which is straightforward for users that are familiar with git.
TBD:

Alter the git sub-modules configuration file
Alter the README

is there anyone who can review the request? I really need submodules to be https instead of ssh

Fixed in #58.


Bug with terrakube_workspace_schedule

Hi !
I just found a bug with the resource terrakube_workspace_schedule !
Step to reproduce:

Create a terrakube_workspace_schedule with an invalid cron expression, for instance "0 2 25 ? * * *". The apply will go well however, when you go on the UI workspace's schedule it will display a blank page and nothing more. Maybe we should check in the provider if the cron expression is valid before sending it to Terrakube ?

Regards!

I am not really sure if there is any golang library that can validate if a quartz expression is correct to add something like that inside the provider code

Right now it is only showing the message inside the logs, that can be improved later
https://github.com/AzBuilder/terrakube/blob/46feabdf9c208edd11b655f74ac3c2270a80cf9e/api/src/main/java/org/terrakube/api/rs/hooks/schedule/ScheduleManageHook.java#L43

Sure ! no problem !


Output build number

Feature request:
Can this step please output the build number that was used in the Info.plist?

Hey @davidmessem !
Thank you for the feedback. I will close this issue now, because it is not an exact issue with the step itself.
Just scheduled for the team to check and handle this question. I see you point, I think it would be a good feature to print it out.
🚀

Hi @trapacska , not to print it out but to output it in the workflow as a "output variable" so that subsequent steps in the workflow can use the variable

Feel free to send a Pull Request if you have some time, as it'll take some time for us to schedule this enhancement. It's definitely on our list but not scheduled yet.

Hey @davidmessem !
IT should be ready for use in the new version: https://github.com/bitrise-io/steps-set-xcode-build-number/releases/tag/1.0.7
Please let us know if it doesn't work as intended 🙂  I am closing the ticket for now. Thanks for the response! 🚀


Maze Game

I am reaching out to express my interest in contributing to the project by developing a Maze Game.
please assign me this under GSsOC'23 .

I have done the skeleton some logic implementation using JS is to done
we have to drag the key to home image to complete the game

It will look like this
we have to drag key to home image


Import ac1c95ea55: Moved shouldBePhysical from header function to cpp function (by Caitlyn)

This is an automated proposal to look at a commit made by Caitlyn and import it into Overte

Commit:
ac1c95ea55eb7579b34cb00f8866f9fd386af8e0

Author:
Caitlyn

Date:
Mon, 06 Apr 2020 10:01

Moved shouldBePhysical from header function to cpp function

Stats:

Filename
Stats
Lines
Added
Removed
Lines in blame

libraries/entities/src/EntityItem.cpp

7
7
0
5

libraries/entities/src/EntityItem.h

9
6
3
4

2 files
-
16
13
3
9

To work on this, please assign the issue to yourself, then look at the commit and decide whether this would be a good addition to Overte.

If the commit is useful, tag it with "Tivoli: Keep", and keep it open until it's merged.
If the commit is not useful, tag it with "Tivoli: Discard", and close it.
If the commit is not useful right now, but might be later, tag it with "Tivoli: Maybe later", and close it.
If it's hard to decide, tag it with "Tivoli: Discuss", and keep it open.

Useful commits should be submitted as a PR against Overte. Tag this issue in PR, so that it's automatically closed once the PR is merged.
You can cherry-pick this issue with this command:
git cherry-pick ac1c95ea55eb7579b34cb00f8866f9fd386af8e0

This seems okay, but needless


Cannot attach and detach existing event to Godot Node

This feature is already implemented into the forked repo.

Fmod consider 1px as 1 meter, we need set3DSettings.


Update config VALID_ARCHS for 64-bit Watch

Cupertino has introduced a 64-bit S4 chip in the Apple Watch Series 4. Therefore, frameworks must be build targeting a new arm64_32 ARCH.
Since CleanroomLogger enumerates VALID_ARCHs in the project .xcconfig, this will need to be updated when a new processor architecture is introduced in a shipping product, as has happened recently. This PR updates the config accordingly.

@EdSancha could you merge this? This change is now necessary for anyone who wants to use Cleanroomlogger in a WatchOS extension.


Polkadot Module Slides

Day 1
Morning

The Decisions of Polkadot [Shawn] - ❓ (@shawntabrizi moved your old slides as a stub but they might need attention)
Shared Security [Shawn] - ❓ (@shawntabrizi moved your old slides as a stub but they might need attention)
Introduction to Parachains Consensus [Maciej] - 🧰 WIP (first 1/3rd of Execution Sharding and Security, only need to slice and minor changes)
Data Preparation - Collation & Backing [Maciej] - 🧰 WIP (second 1/3rd of Execution Sharding and Security, only need to slice and minor changes)

Afternoon

Data Sharding - Data Availability [Bradley] - ✅ (@BradleyOlson64  no changes from HK?)
Execution Sharding - Approvals and Disputes [Maciej] - 🧰 WIP (third 1/3rd of Execution Sharding and Security, only need to slice and minor changes)
Coretime [Maciej] - 🧰 (WIP)
Cumulus Deep-dive [Bradley] - ✅ (@BradleyOlson64 no changes from HK?)

Day 2
Morning

Asynchronous Backing [Bradley] - ✅ (@BradleyOlson64 no changes from HK?)
XCMP [Shawn] - ❓(not sure what the status is here, @shawntabrizi, left empty stub)
NPoS & Staking [Ankan > Kian] - ❓(@kianenigma moved old NPoS lecture as a stub, might need some attention)

Afternoon

Contributing to Polkadot [Shawn] - ❓(@shawntabrizi  AFAIK done but just need to be added)
Ecosystem & Economy [Shawn] - ❓(@shawntabrizi AFAIK done but just need to be added)
Light Clients [Nikos] - ❓(@wirednkod not sure what the status is here)

TODOs:

[ ] move all assets to fix images

XCMP [Shawn] - ❓(not sure what the status is here, @shawntabrizi, left empty stub)

This is not on my backlog of todo items currently.
I have some very high level content on XCMP already created (with more of an emphasis of XCM): https://docs.google.com/presentation/d/1GzPF2ZN9JnuVkVT5hgnpz_NELkXVEYj6ueK6jxDsNHw/edit?usp=sharing
I am happy to present this, but anything with more details or low level look into XCMP should not really come from me

Thanks @shawntabrizi

I am happy to present this, but anything with more details or low level look into XCMP should not really come from me

I like the slides and think you should present it. There will be a slight overlap with what is brought up in the XCM module but I think I'm okay with it. There's only 1 thing I'd add to it: Currently parachains use UMP, DMP and a combination of both which is HRMP. We should definitely mention that even if we don't want to change the slides. I'd be there and I will be happy to add more details if needed.

Content [Ecosystem & Economy] should be in the repo already, and just needs to be copied

Added to the PR and edited the description to mark it's ready o7

This is currently in PPT form and would convert it on site or would appreciate help to convert it

Marking as done and adding the PPT link in the stub. :+1:
The only item that will need some attention before being delivered is:

The Decisions of Polkadot [Shawn] - ✅ (@shawntabrizi moved your old slides as a stub but they might need attention)

Everything else seems good :+1:


:bomb: Bug: Duplicate downloads

What Happened?
When using the init command, dtm checks for non-existent plugins and pulls them from the remote. However, I find that every time I use init, it triggers an md5 mismatch and re-downloads, even though the corresponding ones have all downloaded successfully.
I found that
https://github.com/devstream-io/devstream/blob/1d2c60493cc5327849862dce7e8f075591b5f3ba/internal/pkg/pluginmanager/manager.go#L75-L78
There is an error in the logic of this section. Here the download has already finished, but the StatError used is still the one before the download, which will cause pluginFileErr == nil && pluginMD5FileErr == nil to never hold.
I add some debug outputs.
log.Debug(isMD5Match, pluginFileErr, pluginMD5FileErr)

This means that every time a user uses init, twice as much traffic is consumed.
How to Reproduce?
dtm init -f quickstart.yaml --debug
Anything else
I will change the logic of this function and try to fix it.
Please assign me.
DevStream Version
latest

I'd like to tackle this issue.

@mangoGoForward I'm soooo sorry, I'm already working on this.

@mangoGoForward I'm soooo sorry, I'm already working on this issue.

That's nothing~

@iyear  Thank you for reporting this bug. If you come across any problems during your work, feel free to contact anyone in @devstream-io/devstream.


Apply SAP Fiori Fundamentals to all views in console

https://sap.github.io/fundamental/index.html

wrong repo -> https://github.com/kyma-project/console/issues/365


Getting Uncaught SyntaxError: Unexpected template string on production build with NextJS

Currently using NextJS for frontend and turborepo
Console error
Uncaught SyntaxError: Unexpected template string (at _app-f54835a384f76a9d.js:15:3257677)

Source is definitely pointing to the library's dist files

hey @mhroes9627 thanks for reporting this!
Could you provide some additional information for us to be able to reproduce this, specifically your:

nextjs version
react version
@thirdweb-dev/sdk version
@thirdweb-dev/react version
any config / files difference from a basic next.js installation

Even more helpful if you could provide a github repo or code sandbox that has this issue that we can clone and investigate.

Hey @jnsdls, thank you for taking the time to respond! I was able to fix the issue on our end by setting this config
swcMinify: false,

under this file
So setting swcMinify to true produces the same error.

Hey @jnsdls, thank you for taking the time to respond! I was able to fix the issue on our end by setting this config
swcMinify: false,

under this file So setting swcMinify to true produces the same error.

thanks for the update, I'll try to reproduce the setup with turborepo and our starter project to try to fix the underlying bug.
Glad that you found a workaround for now!


Document recent changes to Cores allowing for leak distances and percentage displays

See commit and Pablo's comments: https://github.com/PGMDev/PGM/pull/581#issuecomment-667688906
It would need to be clear that this is the closest it has gotten to leaking not the current state.

closing in favor of #9


Correct alignment of header

I want to correct the alignment of  "Company" (it's little off-center)
Please assign me this issue under GSSoC extnd. and Hacktoberfest.

i am closing this issue..beacuse many deployments are wasting because of this..
we have limited deployments... i am ver sorry for that ..
hey @khwa04 dont raise any PRs.. please..it s my kind request to you..please leave this issue check for other issues..
https://www.linkedin.com/in/manikumarreddyu/
connect me here if you want clasrifcation


Move the ConfigManager usage from the runtime to a stackable

We should check and if possible move a service config parsing/validation/overriding from the runtime to a stackable. This would allow us to incupsulate the config management logic and minimize the Runtime <--> Stackable interface (incupsulate configManage, configManagerConfig and schema)

@ivan-tymoshenko Isnt' this already done now?


Brace after if without braces is indented

unittest
{
    if (!fdmatch)
        goto Lfd;
-    {
+        {
    }
}

Where do you find code that looks like this?

In dmd of course!  I think some of it used to be like this:
#if DMD1
    if (x)
    {
    }
    else
#endif
    {
        ...
    }


[Call Readiness] Allow unsupported browser version users to join a call

What
https://user-images.githubusercontent.com/94866715/206335371-7e86a6a7-9bee-4db3-813e-9c25fe711f95.mp4

Introduce new button and logic to unsupported browser version screen in Call and CallWithChat composite
Why

Allows end users to be enabled to enter a call with a old version of a browser should they so choose.

https://skype.visualstudio.com/SPOOL/_workitems/edit/3054310
How Tested

Tested locally in debugger. see above video!

Spacing in the UI does not match the figma, each of the sections should be equidistant from each other:

Currently each section looks to be getting closer together:


GUI branch

As mentioned in multiple mock PE issues, many buttons in the GUI had no implementation on press.

Disabled said buttons
Included explanations that they are coming soon features in UG

Here is the updated UI after the change. LGTM


GuestOsFeatures documentation has []string]

https://github.com/GoogleCloudPlatform/compute-image-tools/blob/de0676695cc81af8f582db9a703e5e7c7a6a995f/docs/daisy-workflow-config-spec.md#L233

Based on Metadata, it appears the right answer is map[string]string.
I might send a PR for this. (I'm still trying to figure out if I can use this tool to achieve my task...)

Speaking of, what is your task? Maybe we can help you answer that question.

@adjackura

Automating the deployment of VMs to Google cloud. We have a Jenkins in GCE which automatically starts build nodes there which build our software.
For this project, I want to create modern "immutable" systems, so ideally when I start one, we give it some configuration, but it already has our software and the required system software enabled and mostly configured.
I've looked into chef/puppet/ansible and they're both painful to write and really not helpful, since the goal is that systems be immutable.
I'm considering using Terraform as the orchestrator.

Cool, depending exactly what you mean by immutable systems Daisy can probably help you here.
If you want to build GCE images that have your software pre-installed to then use to deploy instances that is absolutely what Daisy can do. Generally you would build your image using one of the GCE base images and bootstrap what you want and what you want configured on it. Technically, because Daisy is just an API workflow client, it can actually deploy instances from your images as well but that doesn't quite handle ongoing orchestration as such. It is useful for testing the image you just built however.
A conceivable workflow is:
derivative image build -> deploy to test instance -> run tests, on pass -> publish to production project/family for use with Terraform

[]string is the correct type (the ] on the end is a typo).
You can specify GuestOSFeatures as a a simple list of strings:
"GuestOsFeatures": ["VIRTIO_SCSI_MULTIQUEUE", "MULTI_IP_SUBNET"],
or you can use the more complex system the api uses:
"GuestOsFeatures": [
{
"type": "VIRTIO_SCSI_MULTIQUEUE"
},
{
"type": "MULTI_IP_SUBNET"
}
],


Chrome Double Downloading Image resources.

When comparing the network tab in chrome(v44)  vs firefox (v3.9), when using this the late load script, I notice chrome almost double downloads each resource.  29 requests in firefox becomes, 56 requests in chrome...

Hi @hagcin,
sometimes the Chrome inspector shows a double download if the cache is not disabled. Have you disabled Chrome's cache from its inspector first?
Otherwise, can you post a jsfiddle, jsbin, codepen example of what you are doing, so I can take a look at it?
Thank you

No reply.

Same issue. Happening only in Chrome with cache disabled.

Thank you, @williambout.
Can you post a jsfiddle, jsbin, codepen example of what you are doing, so I can take a look at it?
Thank you

After some tests, I find out the problem disappear on pre-production server, but persist on local server.

Good. So it's not a problem of the script I guess. Could you figure out why?

I think it's a bug in Chrome since I had no issue in Safari/Firefox.
It could be related to srcset : https://code.google.com/p/chromium/issues/detail?id=526630


Stoney ridge support

As Carrizo and Bristol Ridge are supported now, what about the same GCN 3rd generation Stoney Ridge APUs? WIll they be supported too?
Thanks!

This line is interesting:
The agent name is gfx801.

So Bristol ridge APUs have the same gfx801 code as Carrizo? I guess all three APUs are the same variations of Carrizo?

I have seen Carrizo and Bristol Ridge are not supported on ROCm.
you could read README.md once again.

I know people who had  Bristol Ridge system working with ROCm 1.6.4.  Which you can get on the archive.    The issue for our team is just testing matrix we have a small team so we have to stay focused

Thanks @procedural
As its very old issue, and no updates for the last 2 years, this issue is going to be closed.
Request to open a new ticket, if you found any.
Thank you.


Path.

Hi,
Is there any possibility that I could find missing paths by using some condition?
For example, I want to use the grid for an online game, as I am working with udp, so in this case there may be packet loss and I am also using interpolations. The grid can have walls and so on, so sometimes the interpolation can end up taking a path in which it is blocked, so my idea is to try to "recover" by calculating some points from packet losses. As each movement works with sequences or timestamp, then the idea of filling in, would be being able to limit the searches of the path, to find such a path, it needs to go through amount of time or sequence. He does not need to find the slowest or the fastest, but the necessary condition.
Thanks,
Regards.

Hey,
I'm sorry I don't fully understand the question. Is it correct that your problem is that clients are missing changes to the path finding graph because you sync it over UDP?
Most games use two streams of data. UDP for fast positional data which is overwritten by every new packet (things like, where is the player). And a TCP stream for important game data (things like state changes). In this case of adding or removing connection between two nodes on your path finding graph I would send those over the reliable (TCP) stream. As the changes aren't very often but it is very important that every client knows about them.
Of course I have now made a lot of assumptions about your game. But I hope this helps a bit. Feel free to expand on your problem so I can give a better answer :).

Yo,
Sorry, maybe I didn't explain it so well.
Image: https://i.imgur.com/rtgvWxh.png
What I meant, is about a new implementation to FindPath (), adding some new "conditions" to limit the search for paths. I tried to explain about UDP, since UDP may have packet losses, in those losses, if I have it viable, I would like to be able to "recover" something close to the position of the lost packets. With that, FindPath could have the option of limiting to find from start to finish, with a sequence of a maximum of 6 steps and from a certain distance in each path.
Cheers.

Sorry but, I'm really having trouble with understanding what problem you're trying to solve. FindPath only gives you the path that a unit should take. The server then moves that unit along the path.
Say the server executes FindPath() which results in a path with the following positions:  {a, b, c, d, e} for unitA to get from a to e.
Then the server sends the following packets to the client:
1: unitA is now at a
2: unitA is now at b
3: unitA is now at c
4: unitA is now at d
5: unitA is now at e

Due to packet loss the client might receive:
1: unitA is now at a
2: unitA is now at b
3: LOST
4: unitA is now at d
5: unitA is now at e

Is this the problem you are describing?
In this case what you could do (but is very much outside of the scope of this path finding library). Is to have the client store the current position and the velocity vector of the unit. Something like
After packet 1: position of unitA is a, velocity = 0
After packet 2: position of unitA is b, velocity = (b -a)
Packet 3 is lost, but let's assume the position of unitA is its last know position plus its velocity vector so the position of unitA is b + (b - a).
After packet4: position of unitA is d
After packet5: position of unitA is e

So the client predicts where the unit will be if the packet is lost, or late. Of course if the unit was about to take a turn the prediction is wrong, you can add some smoothing between the predicted position and the actual position to deal with that.
Does this help?


Modularize JavaScript Output and Update Binder

Modularize the JavaScript output and update the bindings to match. This
has two important advantages:

Modularizing the JS output namespaces the classes to prevent name
collisions when including multiple libraries.
The JS module has a callback that is called when the runtime is ready
that fixes a problem where your code tries to use the Emscripten classes
before they are initialized.

This also includes an update to the sample to use the JS init callback. The sample would actually fail for me without this patch because the point class was not initialized by the time that the sample code ran.

I think this should be made more crossplatform, so users don't have to #if js
Also, the import most likely fails on not js targets

You are right about the import. :+1:
I am a little unsure about how to make it more cross-platform, though. What do you think about just making the init function work on HL and JS and for HL just have it call the callback immediately so that the workflow is the same for both targets?

Yes. Although it would be optional on HL.
Le jeu. 7 févr. 2019 03:25, Zicklag<EMAIL_ADDRESS>a écrit :

You are right about the import. 👍
I am a little unsure about how to make it more cross-platform, though.
What do you think about just making the init function work on HL and JS and
for HL just have it call the callback immediately so that the workflow is
the same for both targets?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ncannasse/webidl/pull/10#issuecomment-461266244, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AA-bwBh87Cd5MxRdi1WtKI6ENbcNiYsNks5vK463gaJpZM4akYmq
.

It should be good now. The init function can be called the same on both HL and JS.


Inconsistent version numbers

Hi,
the version numbers are pretty inconsistent :kissing_smiling_eyes:
Badge in Readme:

Current npm release:

Current bower release:

Git Tags / Github releases:

How to solve this

Clean up Git tags

Ad least I would do a

git tag -d v<IP_ADDRESS>
git push origin :refs/tags/v<IP_ADDRESS>

Automate releasing
Use a dynamic badge in the readme

Either based on Git tags
Or based on npm releases

I’m willing to help you clean up that mess 😘

[x] github badge
[ ] github release
[ ] bower package
[x] npm version


RS backend: Check calculate elements for international Standing Order Consent

Description
Check implementation of calculate elements to ensure that International Standing order calculate elements are supported, if not will be necessary make that implementation.

Hey team! Please add your planning poker estimate with Zenhub @frlaura-jianu @mariantiris

Calculate elements controller is implemented for international standing orders.


Added notebook to retrieve eventlist

Some bugs due to recent updates in postprocessing
Still need to properly save the eventlist that is generated

@cmantill something that occurred to me. we should make sure not to veto events in the BDT training when printing these events lists


Update wellknown.md

add Hiawatha to list

Weird webserver, never heard of it, but okay, merged in 88267db7e2c5ae63533594fa7330a1058efe1e49, thx.


Quota management needs to be more robust

See: https://github.com/ovro-lwa/lwa-issues/issues/213

https://github.com/ovro-lwa/lwa-issues/issues/211 also seems related where slow downs in the quota management impact the status and performance updates.

I think I was seeing oddities related to data recorders for slow visibilities. In one case, I saw a recorder display the command line arguments in the logging, but then did not start the logging loop (e.g., with lags, etc). After a while, the quota management logged that it removed 5000 files. Then, the regular logging loop started up and all seemed fine.
Another potentially relevant point: the two data recorders on a node show very different disk levels, but they write to the same disk. Not sure how that could happen.

I've tried several different things to try to fix that but the fundamental problem is that quota stuff is slow when there are a large number of files.  The only two remaining ideas I have are to either:

move the quota management stuff into its own thread or
turn off the quota management entirely.

(1) doesn't actually address the problem and I don't know if it will work well with lustre.  (2) is probably the better solution but quota management would still need to happen somewhere .
On your second point:  were they both slow recorders or some mix of slow, fast, and power beam?

I was only using slow recorders. I saw the statement about removing files in one log file, but didn't compare to the other one.
I'd be ok with turning off quota management and setting a policy for disk usage in the short term. Currently, people are struggling with observing for a variety of reasons (last logging before my run was first week of January), so I'd like to make it as easy as possible.

The current setup for the services is that there are two slow recorder for cal/im node and only one of them has file deletion part of the quota management enabled.  That could explain what you are seeing in the logs.

I guess I was more confused the the fact that the monitor points of the two recorders was different, despite sharing the same disk on one server. But maybe that's an artifact of the design you mentioned.

Monitor points as in information in the log or as in something exposed through the etcd interface?

The etcd info, as accessed via your mcs Client class.
I display that on the Monitoring Dashboard, which you can get to via https://ovro-lwa.github.io/ (and tunneling to lxdlwacr).

That's strange, I wouldn't have expected that.  What exactly were the differences?

I suspect it's the recursive stat calls that's giving it trouble. For measurement sets...I mean we know how big each measurement set is, so we can probably just list the directories under data0x/slow (or fast) and then multiply the number of directories by the known size.

I had tried something similar to that where I found the size of each directory once and then cached it.  It did help but the quota management would still get into a situation where deleting took minutes.

hmmmm. probably still helpful (eventually) to stick quota management in its own thread and have it run less frequently and not block logging. With or without lustre, I think we have some overhead room for the usage to go over so that even if deletion takes ~30min, we should still be fine. And maybe it can delete an hour worth (or some configurable amount) of data at a time?

https://github.com/lwa-project/ovro_data_recorder/pull/23 makes deletion a less busy wait on the spawned rm process. This seems to help with rm taking a while and blocking all other threads (yay GIL).
The update (glob and stat) still takes anywhere from 0.3 s (probably cached) to 10 s (the typical number) to 400s since glob does block.  Could probably Popen that too but a few minutes seem tolerable.
With lustre coming on I'm still worried about the glob and stat, probably should cache the list of files written on etcd or somewhere and not glob all the time, but we'll see how the newer version of lustre does.
Also started a branch to make quota management its own process.

@yupinghuang thanks for the pull request.  I'll leave some comments on it.
With regards to making quota management its own process I think that is a good idea.  The data recorders should only focus on recording data and quota management should be its own thing.  Maybe that ultimately needs its own repo depending on the scope/features.

Addressed with #23.


Show options without having started typing

Hello !
Is there a way to display the different options by default without having to write the first letters of the search first?
I use ->belongsToMany(Resource::class) and my list contains only 10 elements. So it's faster to see the list directly than to have to search.
Thank you!

Yeah, the second parameter of ->belongsToMany allows you to toggle between async and sync.
You can just use
->belongsToMany(Resource::class, false)

When using the api this is not the case...

When using the api this is not the case...

I got same issue when using the api in field. Any update?


Update themes.toml

added new theme
[[themes]]
name = "Quick minimal look"
author = "90th"
description = ""
tags = ["dark", "purple"]
date = "pr-merge-date"

Thank you for contributing to this project. :heart:


Incompatibility with cuDNN 1.3.1

The recently released cuDNN 1.3.1 bumps the CUDNN_jll dependency to 9.0, which provides libcudnn.so.9. This is not compatible with the ONNXRunTime CUDA extension, which needs libcudnn.so.8 to be loaded before loading libonnxruntime_providers_cuda.so. Things might still work if libcudnn.so.8 happens to be found in system libraries but that's obviously not something we want to depend on.
For future releases (until we can be compatible with CUDNN 9) we can upper bound cuDNN with
cuDNN = "~1.1, ~1.2, =1.3.0"

but I suspect we also had better retroactively cap the dependency for existing versions (0.4 and up) in the General registry. I know how to prepare a registry PR to that effect if it sounds good.

Sounds good, thanks a lot! GPU support is such a pain.


ReferenceError: global is not defined

Describe the bug
When rendering QueryClientProvider with<EMAIL_ADDRESS>the following error is observed in the browser's console:
QueryClientProvider.js:13 Uncaught (in promise) ReferenceError: global is not defined
    at getQueryClientContext (QueryClientProvider.js:13)
    at QueryClientProvider2 (QueryClientProvider.js:43)
    at renderWithHooks (react-dom.development.js:14985)
    at mountIndeterminateComponent (react-dom.development.js:17811)
    at beginWork (react-dom.development.js:19049)
    at HTMLUnknownElement.callCallback2 (react-dom.development.js:3945)
    at Object.invokeGuardedCallbackDev (react-dom.development.js:3994)
    at invokeGuardedCallback (react-dom.development.js:4056)
    at beginWork$1 (react-dom.development.js:23964)
    at performUnitOfWork (react-dom.development.js:22776)

The issue appears to have been introduced in<EMAIL_ADDRESS>no error is observed with<EMAIL_ADDRESS>I believe the source of the problem is this commit: https://github.com/tannerlinsley/react-query/commit/19e07237ce4630521a826eb350fc05893f866740.
When global is undefined, typeof global evaluates to undefined, but attempting to evaluate global throws an error. The culprit appears to be is this line: https://github.com/tannerlinsley/react-query/commit/19e07237ce4630521a826eb350fc05893f866740#diff-0cee58d9679ff6f79b5250cc0611ce6eaf8bc46a77416a09384ae4670adc9872R21.
e.g. in the browser devtools:
> typeof global
"undefined"
> global || window
VM328:1 Uncaught ReferenceError: global is not defined
    at <anonymous>:1:1

To Reproduce

Set up a bare-bone React application
Render a QueryClientProvider
Observe the error

I’ll roll out a fix for this
Tanner Linsley
On Feb 16, 2021, 8:02 AM -0700, Henri Maurer<EMAIL_ADDRESS>wrote:

Describe the bug
When rendering QueryClientProvider with<EMAIL_ADDRESS>the following error is observed in the browser's console:
QueryClientProvider.js:13 Uncaught (in promise) ReferenceError: global is not defined
at getQueryClientContext (QueryClientProvider.js:13)
at QueryClientProvider2 (QueryClientProvider.js:43)
at renderWithHooks (react-dom.development.js:14985)
at mountIndeterminateComponent (react-dom.development.js:17811)
at beginWork (react-dom.development.js:19049)
at HTMLUnknownElement.callCallback2 (react-dom.development.js:3945)
at Object.invokeGuardedCallbackDev (react-dom.development.js:3994)
at invokeGuardedCallback (react-dom.development.js:4056)
at beginWork$1 (react-dom.development.js:23964)
at performUnitOfWork (react-dom.development.js:22776)
The issue appears to have been introduced in<EMAIL_ADDRESS>no error is observed with<EMAIL_ADDRESS>I believe the source of the problem is this commit: 19e0723.
When global is undefined, typeof global evaluates to undefined, but attempting to evaluate global throws an error. This line therefore throws in the browser: 19e0723#diff-0cee58d9679ff6f79b5250cc0611ce6eaf8bc46a77416a09384ae4670adc9872R21.
e.g. in the browser devtools:

typeof global
"undefined"
global || window
VM328:1 Uncaught ReferenceError: global is not defined
at :1:1
To Reproduce

• Set up a bare-bone React application
• Render a QueryClientProvider
• Observe the error
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

@tannerlinsley
any timing on this one ?

Pushing the fix now 👍


Issue with refresh after tagging image

There is actually an issue with refreshing images after tagging.
 Closing the issue as this is solved.


Support .NET Core 3.0

Is your feature request related to a problem? Please describe.
I'm always frustrated when I see this message in VS:

Describe the solution you'd like
Re-target the app to netcoreapp3.0
Describe alternatives you've considered

Multi-target the app to netcoreapp3.0/net48 (or older versions of .NET Framework)
Re-target the app to netstandard2.1/netstandard2.0

Additional context
https://github.com/hvanbakel/CsprojToVs2017
https://github.com/dotnet/try-convert

How to reproduce this problem?

@jingwood well, it's not a problem, actually, just an improvement. Your library already works as is in .NET Core 3.0 projects. But the warning above is pretty annoying (:
To reproduce the warning you just need to create a new .NET Core 3.0 windows forms / wpf project, and add your library through nuget.

Workaround:
https://stackoverflow.com/questions/45738982/how-to-hide-net-core-compatibility-warnings-when-referencing-net-4-6-nuget-pac

Resolved by #390 and #391


Use Boot/Binder/Binding Bootstrap Servers in KafkaTopicProvisioner

See https://github.com/spring-cloud/spring-cloud-stream/issues/2576#issuecomment-1348666138
Override the boot properties with the binder/binding properties, if present.

Invalid; the linked problem is about the KafkaAdmin used by the template when configuring observability; the provisioner already normalizes binder properties.


libretro: use input bitmask

Setting up tag
https://github.com/libretro/RetroArch/issues/11217

Should be good to merge.


Seeking Assistance regarding integrate custom DID method

I'm looking for help with how to successfully integrate custom DID method into aca-py project. Currently, I'm using a trial-and-error approach to incorporate our implemented DID method into the existing project. Can someone provide a structured approach to accomplish this task effectively?
What I've Accomplished So Far:

Integrated the resolver for resolving our custom DID.
Started the demo agent with our custom DID instead of did:sov.
Stored this custom DID in our ledger.
Created a VC schema and credential definition using the custom DID and stored it in our ledger.

What I Aim to Achieve:

To fully implement the SSI flow using our custom DID, including VC issuance, proof requests, and more.

Is there a more structured and efficient approach to achieving this?

Are you trying to just integrate the DID Method (for getting/resolving DIDs) or are you also trying to use AnonCreds?  Sounds like you are trying to use AnonCreds as well.
Assuming that, we are in the midst of merging AnonCreds RS (implementation) into ACA-Py to make it easier to use any ledger/storage method. That will be a big help to you, but not sure we're far enough along.

Thank you @swcurran, for the response. I am trying to integrate DID method and AnonCred.
To work with anoncred-rs in aca-py is there any specific documentation to streamline the process?

Also please let me know if there is any structured way to integrate a new DID method.

hey I am just working on same,integrate customised DID method to ACA Py agent.Did you just replace code file or any other processes required?

Hello @dixadholakiya , I couldn't achieve the objective in aca-py. But I have achieved the same using credo-ts agents.


loading stuck at 0%

I am having the same issue when installing the package, and running it.

a gentle bumpe @victorsoares96

@vishal27shenoy have you been able to solve the issue?

any updates?

If anyone is still facing issues, try the following steps:

Delete the "node_modules" folder.
Remove the "@epubjs-react-native/core" package from your dependencies.
Run npm install to reinstall dependencies.
Install version 1.1.0 of the "@epubjs-react-native/core" package using the command npm i<EMAIL_ADDRESS>


Create DRPC  client  printer class reusable for local and remote DRPC

+1

+1

JIRA? Rationale?

@ptgoetz I have filed a JIRA which describes the motivation and necessity for this patch. Let's let me know if you need further clarification.

+1 thanks for the update @hmcl

@hmcl can you open a PR against 1.x-branch as well.


Add option to hide sync checkbox

I can't think of any reason why you don't want to sync between the language tabs, so it would be good to have an option to hide the sync checkbox.

+1

+1

+1
On every Umbraco site I have used Vorto I have added a script that does exactly this, it also removes the language selection from each individual property and places it the header of the admin screen & adds a globe icon next to the property to indicate it is multilingual. Personally I try to keep the forms as compact as possible so am not a fan of having a language selection dropdown on very property.

@anth12 care to share your code?

@mattbrailsford sure I will dig it out, but I'm warning in advance its not pretty ;).

Ok so I normally use Umbraco's manifest to inject the following:
$(window).on('vorto-ready', function() {

	//Ensure its not already been setup by another property firing duplicate events
	if ($('.umb-panel-header .vorto-tabs').length == 0) {

		setTimeout(function() {
			//Move the tabs
			$('.vorto-tabs').first().insertAfter($('.btn-toolbar.pull-right.umb-btn-toolbar'));

		}, 10);
	}
});

.vorto-tabs {
    display: none;
}

.umb-panel-header .vorto-tabs {
    display: inline!important;
    float: right;
    margin-top: 15px;
}

	.umb-panel-header .vorto-tabs .vorto-tabs__item {
		height: 29px;
		border-bottom-color: #ddd;
	}

	.umb-panel-header .vorto-tabs .vorto-menu {
		left: auto;
		right: -1px;
	}

And finally I modify the vorto.js file to fire the 'Vorto-Ready' ($(window).trigger('vorto-ready');) event- obviously this is not an idea solution as upgrades overwrite the change.
I do much prefer having one central language selector but using the standard customisation in Umbraco I'm not sure it would be possible.


DNN-9166

Media queries and css to help better render Advanced Search Dropdown on small devices.

@DNNMonster The changes you did are good but they do not keep the flyout div visible for all sizes when there is active Persona Bar (Pls see image below). Please check the sizing and alignment with PB. Closing this PR. Please submit new PR with the changes.


Add C++ wrappers for ZCL Clusters

Problem
In #3879, an OnOffCluster class has been introduced. This class has been handrolled to have a base template.
This PR generates C++ wrappers for the ZCL clusters from the all-clusters-app, which is what has been used to generate the code inside chip-tool and src/app.
Included in this PR are the templates used for generating the wrappers.
One thing I don't like in the code/template is the repetition of:
CHIP_ERROR err         = CHIP_NO_ERROR;
    uint16_t payloadLength = 0;

    System::PacketBufferHandle buffer = System::PacketBuffer::NewWithAvailableSize(kMaxMessageLength);
    VerifyOrExit(!buffer.IsNull(), err = CHIP_ERROR_NO_MEMORY);

    payloadLength = encode{{asCamelCased parent.name false}}ClusterWrite{{asCamelCased name false}}Attribute(buffer->Start(), kMaxMessageLength, mEndpoint, value);
    VerifyOrExit(payloadLength != 0, err = CHIP_ERROR_INVALID_MESSAGE_LENGTH);
    VerifyOrExit(payloadLength <= kMaxMessageLength, err = CHIP_ERROR_INTERNAL);

    buffer->SetDataLength(payloadLength);
    VerifyOrExit(buffer->DataLength() >= payloadLength, err = CHIP_ERROR_NO_MEMORY);

    err = SendCommand(buffer, onCompletion);

This is something I would like to fix in a followup, by solving https://github.com/project-chip/connectedhomeip/issues/965

Ah. I guess CI is all red because I did this one from a all-clusters-app configuration containing the changes for #4127...
It should not really matters for review, though. So I will rebase this one depending on which one is ready first to land.

One thing I don't like in the code/template is the repetition of:
CHIP_ERROR err         = CHIP_NO_ERROR;
    uint16_t payloadLength = 0;

    System::PacketBufferHandle buffer = System::PacketBuffer::NewWithAvailableSize(kMaxMessageLength);
    VerifyOrExit(!buffer.IsNull(), err = CHIP_ERROR_NO_MEMORY);

    payloadLength = encode{{asCamelCased parent.name false}}ClusterWrite{{asCamelCased name false}}Attribute(buffer->Start(), kMaxMessageLength, mEndpoint, value);
    VerifyOrExit(payloadLength != 0, err = CHIP_ERROR_INVALID_MESSAGE_LENGTH);
    VerifyOrExit(payloadLength <= kMaxMessageLength, err = CHIP_ERROR_INTERNAL);

    buffer->SetDataLength(payloadLength);
    VerifyOrExit(buffer->DataLength() >= payloadLength, err = CHIP_ERROR_NO_MEMORY);

    err = SendCommand(buffer, onCompletion);

can the boilerplate can be put in a single function that takes the encode function as an argument?

can the boilerplate can be put in a single function that takes the encode function as an argument?

What I want to do is to have the various encode{{asCamelCased parent.name false}}Cluster* methods to do all the PacketBufferHandle related work directly.
So the signatures of the methods may be something like:
CHIP_ERROR encodeOnOffClusterOnCommand(chip::System::PacketBufferHandle & buffer, chip::EndpointId endpointId);

And so the embedding calling site may be something like:
System::PacketBufferHandle buffer;
ReturnErrorOnFailure(encodeOnOffClusterOnCommand(buffer, mEndpoint));
ReturnErrorOnFailure(SendCommand(buffer, onCompletion));
return CHIP_NO_ERROR;

Or maybe the PacketBufferHandle could be returned by the encode* method. The signature could then be:
chip::System::PacketBufferHandle encodeOnOffClusterOnCommand(chip::EndpointId endpointId);

In this case the calling site could be:
return SendCommand(encodeOnOffClusterOnCommand(mEndpoint), onCompletion);

The reason why I'm not doing it in this patch is because it just because of timing.
Cleaning src/app/chip-zcl-zpro-codec-api.h and src/app/encoder.cpp, as well as the current calling sites will take a few days,  and in the meantime people won't be able to use those C++ wrappers.
While If I land the C++ wrappers first, then more work can be added on top of them while their internal code is being rewritten.

Cleaning src/app/chip-zcl-zpro-codec-api.h and src/app/encoder.cpp, as well as the current calling sites will take a few days, and in the meantime people won't be able to use those C++ wrappers.
While If I land the C++ wrappers first, then more work can be added on top of them while their internal code is being rewritten.

I end up opening #4181 for that finally.

I pushed an update using the changes from #4181, so using a PacketBufferHandle value returned by the ZCL API instead of building it manually.

I pushed an update using the changes from #4181, so using a PacketBufferHandle value returned by the ZCL API instead of building it manually.


Document locking down Epinio with NeuVector

We should generate a ruleset to allow NeuVector to secure the Epinio components. This should be relatively straightforward since we can let it train the ruleset based on test runs then store in a CRD for distribution.

First things first, I installed neuvector alongside Epinio following their documentation.
I had to enable ingress and set k3s.enabled to true to make it work with k3d:
helm upgrade --install neuvector --namespace neuvector neuvector/core  --set imagePullSecrets=regsecret --set manager.ingress.enabled=true --set manager.ingress.host=neuvector.<IP_ADDRESS>.omg.howdoi.website --set k3s.enabled=true