lima+wayland

Thanks for this amazing project!
I wonder if it would make sense devise a roadmap to support high-performance graphics in the style of https://github.com/microsoft/wslg ?
"WSLg is short for Windows Subsystem for Linux GUI and the purpose of the project is to enable support for running Linux GUI applications (X11 and Wayland) on Windows in a fully integrated desktop experience."
There were some discussions about Wayland on macOS (Miguel de Icaza https://twitter.com/migueldeicaza/status/1254929025988005889). XQuartz worked great before retina display was introduced but AFAIK support for full resolution was never completed (https://gitlab.freedesktop.org/xorg/xserver/-/issues/187).

Does QEMU support it? If so, yes, Lima will be able to support it.

I don't think QEMU alone is going to help here, it needs a compositor + a host-side renderer to achieve something like WSLg.
I'm not sure of the performance impact of using vsock (just read about it) but it would be interesting to have a custom Wayland compositor in the guest, where the pixel buffer of a surface ("window" in layman terms) is forwarded over vsock to a host-side client renderer. I don't think DMA-BUF is possible using current means, so copying between the guest and the host seems necessary for a start.
Writing a custom Wayland compositor using something like Mir (https://mir-server.io/) sounds like one approach. It's supported by a company, has a pluggable platform mechanism (which could handle the pixel buffer forwarding) and would handle the Wayland client protocol.

Is something like this of interest to the Lima developers @AkihiroSuda? I'm not sure of Lima/QEMU's limitations currently, so if there is interest I would like to use this issue to plan ahead, collecting opinions etc.

I guess we can use https://github.com/knazarov/homebrew-qemu-virgl (https://gist.github.com/akihikodaki/87df4149e7ca87f18dc56807ec5a1bc5) to support this, but anyway we need to have the app nap issue to be fixed first https://gitlab.com/qemu-project/qemu/-/issues/334

Agreed. That's the QEMU fork I'm currently focusing on, yeah.
Also, the comment on how to fix App Nap was done by me. But maybe we can even get away with making an off-screen window in QEMU to allow handling OpenGL acceleration, avoiding the need to spawn an actual QEMU Cocoa window and App Nap screwing around in the first place.
What it needs though is a macOS-side app that presents the pixels pushed by the guest-side compositor to the host. I'm not familiar with GUI programming in Go, so I would probably do it in C++ using something like SDL or Qt if that's okay.

Hi there, I'm the author of the fork.
As you may noticed know, there is a major problem in graphics virtualization: zero-copy buffer sharing. DMA-BUF is a solution for this but specific to Linux. The problem appears all over the place.
The issue has two different parts:

providing a "headless" graphics device to the guest
integrating the guest windows to the host window system

1 is not that hard. QEMU already has egl-headless, which provides headless OpenGL for the SPICE and VNC server. It should work with ANGLE, an OpenGL ES compatibility layer which I use with my fork. However, egl-headless depends on GBM to provide zero-copy buffer sharing. The feature is optional, so you can just add #ifdefs to remove the dependency. egl-headless may require some additional code to configure ANGLE properly. As it would be a simple command line program, App Nap should not matter.
2 is the difficult part. While X was designed as a remote protocol, Wayland is designed for zero-copy buffer sharing. As such, Wayland relies on shared memory and Direct Rendering Mechanism provided by Linux kernel, which are obviously incompatible with remote communication.
A possible solution here is to create a Wayland compositor which talks a protocol for remote communication. Waypipe is a transparent proxy program specific to Wayland. WSLg used RDP with their proprietary VAIL extension to allow zero-copy buffer sharing for RAIL (remote applications integrated locally). VAIL relies on an interface of Windows and Hyper-V to share frame buffers among them.
You have to develop a Wayland compositor for macOS if you use Waypipe. If you use RDP-RAIL, you may be able to use Microsoft Remote Desktop for mac and bunch of open source software modified for WSLg. (Microsoft Remote Desktop is of course proprietary. A free alternative, FreeRDP does not support RAIL on macOS, but I think implementing RAIL on FreeRDP on macOS is much easier than implementing a full Wayland compositor.)  Ultimately the problem should be solved by implementing a VAIL-like protocol, which requires to hack all of the guest-side proxy, QEMU, and the host-side compositor. Today Macs have Retina displays so zero-copy buffer sharing is very important in my opinion.

Hey @akihikodaki, thanks for jumping into the discussion.
Yeah I'm aware that writing a whole Wayland compositor from scratch might be a little much, so I'm thinking of using something off-the-shelf, like Mir. I've talked to the Mir developers about a two-step PoC process:

Write a simple Mir shell that  glReadPixel's every surface on damage and sends the pre-rendered buffer over the wire to the host compositor. It's enough for an initial PoC, though not very performant since pixels get pushed and pulled from the vGPU unnecessarily.

Write a Mir "platform" that receives raw, unrendered buffers (not sure when that is ready in Mir yet) and send that over the wire. It's not zero copy, but still better than approach 1.

Right now, since the RAIL/VAIL stuff seems a little complicated for my taste, I might as well implement a custom protocol for now and abstract that away as soon as other alternatives prove to become better.

The project for my proposal is now located at: https://github.com/fredldotme/stereopticon
This repo includes sources for both the guest as well as the host side, and it's using Mir (guest compositor) and SDL (host window painter).
Both processes are able to spawn but are not exchanging data yet, that will come soon(tm).
It's now using a custom protocol (structs located in src/common/guestpixelbuffer.h) instead of RDP, good enough for most applications.

I welcome contributions, but keep in mind that I haven't decided on the license yet, other than on the guest side (GPLv2 OR GPLv3)
I'm thinking the shared common code and host side might be better off with Zlib though.

I just tried to implement vsock capabilities into the compositor but it turns out that QEMU on macOS can't be built with that support enabled.
@akihikodaki do you by any chance know what's necessary to get this kickstarted?

@fredldotme Apparently vsock relies on vhost, which is a Linux kernel feature. vhost-user is a userspace alternative, but it may also rely on some Linux-specific. (At least, it was not compatible enough with macOS to bring vhost-user-gpu. It provides a process isolation of graphics stack and is necessary for security and reliability.)
If vhost-user does not work, there are two alternatives: ivshmem and TCP/IP.
ivshmem stands for Inter-VM shared memory device. It can share memory and deliver interrupts among guests and the host. ivshmem-server is a server and QEMU and your application will connect to it with a library named ivshmem-client. Both of ivshmem-server and ivshmem-client are included in QEMU. It can be exposed as a PCI device to the guest but the kernel apparently does not have a driver so you will instead use uio_pci_generic. It should be trivial enough to use the device without a special driver anyway. See docs/specs/ivshmem-spec.txt to know how to use the device. Still, programming with shared memory is difficult by nature while it should provide better performance.
TCP/IP is the easiest for sure. I don't think there are much overhead when comparing with vsock. The greatest gap should exist between ivshmem and socket-based communications (including both of vsock and TCP/IP).

Thanks for the valuable info @akihikodaki! Highly appreciated!
So based on that, I'm actually thinking of implementing both.
There's something to be said of running a RPi4 connected to an iPad via USB-C and having TCP be used in that scenario, as I'm already doing regularly via SSH, as well as having a locally-optimized variant for Guest-VM-communication via shared memory, assuming it's really not doing copies somewhere.
Doing a semaphore between a guest and the host might be interesting for sure. If it turns out to be too cumbersome I will just scan out prepared buffers based on the host's vsync.

macOS seems already supporting vsock, though not supported by QEMU
https://github.com/apple/darwin-xnu/blob/xnu-7195.81.3/bsd/man/man4/vsock.4

macOS seems already supporting vsock, though not supported by QEMU
https://github.com/apple/darwin-xnu/blob/xnu-7195.81.3/bsd/man/man4/vsock.4

The interface is for the guest, not for the host. The host implementation is up to the virtualization application, and QEMU in particular uses vhost, which is specific to Linux kernel.

I'm struggling to find ways how to word this:
My approach currently implies queue semantics. Add commands to the host-queue, read that out until empty, and proceed to do what the guest compositor wants the host to do during read.
I haven't done that sophisticated shared memory development yet, though I'm willing to try.
Having variable-size messages inside a shared memory "queue" will be hard, let alone draining it fully, without leaving traces.
Does anyone have a suggestion here on how to proceed?

Arrrggh, ivshmem in QEMU requires eventfd, another Linux-only feature: https://github.com/akihikodaki/qemu/blob/master/configure#L5364
Seems the only way to properly go here is with TCP/IP.

Heh, I figured "why not" and enabled IVSHMEM support (without doorbell/eventfds) on macOS:
https://github.com/fredldotme/qemu/tree/macos-ivshmem
Verified by using this tool in the guest and writing some values to the PCI device: https://github.com/Martoni/pcie_debug
Read on the host by using less on the memory-backed file it exposes.
@akihikodaki is this of interest to you? Should I open a PR and wait for a review from you?

@fredldotme I suggest to submit the patches to the upstream. I'd appreciate if you CC me when you email them.

Hi all, I'm with the Chromebrew project, and we've been using google's sommelier to enable X11 on ChromeOS. Google uses this from their (slow) crostini VM in ChromeOS, whereas we're using it bare metal with the ChromeOS Exo wayland server. Google also uses that with Crostini to proxy both wayland & x11 connections (via Xwayland) to the host wayland through a virtwl device.
There has apparently been some extensive work on a macos native Wayland server. See https://mastodon.technology/@bugaevc/101603518023241841 by @bugaevc (he appears to be  dev on the darling project too.)
If any of that info or work is useful....
(Also, this is off-topic, but @fredldotme Is there any chance that your https://github.com/fredldotme/stereopticon might be of use by providing an alternate wayland interface on a Linux host? We in chromebrew have to use Xwayland for some apps because the Exo Wayland server is limited and doesn't work for apps like, ironically enough, Firefox.)

There has apparently been some extensive work on a macos native Wayland server. See https://mastodon.technology/@bugaevc/101603518023241841 by @bugaevc (he appears to be dev on the darling project too.)

Hi! :wave:
So it sounds like you are interested in making use of Owl :owl: (my Wayland compositor) to transparently run Linux Wayland apps?
If/when I release it, how would you expect the users to install it? Would you just tell them that they have to install Owl themselves in whatever way, or would you incorporate Owl into Lima (note: Owl is / will be GPL, so you wouldn't be able to directly link against it), or would you get Owl packaged in Homebrew and depend on it?
Wayland relies heavily on shared memory (both RAM and shared GPU memory) to pass buffer between clients and the compositor zero-copy; is that something Lima would support between Linux clients and macOS-native Owl?

Hi @bugaevc ! The easiest way to use Owl would be to set it as a dependency. In Homebrew for instance, you would have lima having owl as a dependency, no?

PR to support Owl is appreciated, but Owl should be an optional dependency

Where is the repo of Owl? Is it a library? Or an executable binary?

Where is the repo of Owl?

On my laptop :slightly_smiling_face: I have not publicly released the source code yet.

Is it a library? Or an executable binary?

It is an app, so, a .app bundle. A lot like XQuartz.

One other reason for lima+wayland (through owl or whatever) is the possibility of virtualizing ChromeOS, which would be great for debugging releases on our Chromebrew project.  (I already have a script up for building docker containers for ChromeOS which we use in our project: https://gist.github.com/satmandu/6829f229d18363ddeaf52d4b43a80623 )
@bugaevc If there is any chance you might have the time or inclination to consider a release of owl soon, some of us would be happy to beta/dogfood it.

@satmandu Sorry for responding so late, I wasn't notified until now about your request:
Theoretically yes, the design would be adaptable, meaning it could either go through shared memory between VM and host or some socket on the local host as would be the case for Chrome.
For macOS+QEMU I was thinking of making use of shared memory instead of a vsock, since it would be faster.
But if something like Owl is out there already I guess Lima doesn't really need it, other than to have some competition. :)

If there is any chance you might have the time or inclination to consider a release of owl soon,

Unfortunately, right now I'm very busy with fixing GNU Hurd — and that is very urgent, I have to make it in time for the upcoming Debian release.
But after that, perhaps! While I have many to-do's for it, surely I can release the source code in the not-100%-perfect state too.

some of us would be happy to beta/dogfood it.

Would anybody here also be interested in contributing to Owl?
Wayland itself presents another, larger, issue. My port of Wayland to OS X was in a very unupstreamable state, full of hacks and workarounds. Do you happen to know if someone has worked on a cleaner port since then? The Owl source code is not very useful if you can't build it.

@bugaevc Good luck with your GNU Hurd developments, I feel the pain (UBports core dev here)
Question: Is Owl expecting host-locality right now, meaning both client and server run on the same host?

Owl is "just" a Wayland compositor, much like all the other compositors. It's not some virtualization or containerization solution z and it's not aware of them in any way.
Compositors (Owl included) expect clients to connect and talk to them over a Unix domain socket; that's enough to get basic Wayland communication going. So you'll have to somehow proxy the data though the VM boundary.
Then to actually show anything on the screen, the client has to pass some rendered content to the compositor; in Wayland this is done out-of-line in buffers. Owl supports two kinds of buffers:

Shared memory buffers (as defined in the core Wayland protocol). For this to work, the client has to create a (perhaps anonymous) file, map it into memory, render some pixels into it, and pass the file descriptor to the compositor. This is easy to do if both the client and the compositor run on the same host, and will be non-trivial for you.
Shared IOSurface buffers (via the zowl-iosurface protocol extension) for zero-copy hardware-accelerated OpenGL rendering. zowl-iosurface is of course Owl-specific; (most) other compositors support something analogous using low-level Linux GPU primitives (dmabufs). In addition to somehow proxying the IOSurfaces themselves, you'll also have to do something with the Mach ports that represent them, as that is how Owl expects the clients to send it the IOSurfaces.

There's the waypipe project that has already figured out many details of proxying Wayland over network, including shared buffers; you will probably want to either use it directly or use their code somehow.

Thanks for the quick response @bugaevc, I'm asking because of design decisions in the bigger picture and compatibility questions. Your design is interesting for sure, so I'd like to have something to compare to.
To not rely on hacks and risk compatibility with existing Wayland clients, no matter the implementation, with Stereopticon I decided to go the route of pre-rendering the individual frames on the guest-side (since you can't easily share a PRIME fd'ed GBM buffer across VM boundaries), transferring them over shared memory to the host and presenting them there.
In this world the guest knows best on how to deal with Wayland, it's extensions, how to pass buffers between client and compositor, etc. I just take the result of a frame draw over shared memory and read it into a host-side presenter .app.
As long as Virgl is used in the VM it should be "fast enough".
The way I see it the design of Stereopticon is in between Waypipe and Owl.

I don't think I'm making this clear enough 🙂
Owl is not concerned with isolation and virtualization, or with forwarding anything. There's no "guest" and "host" as far as Owl is concerned, just the one machine Owl runs on, and its clients. There's no specific design in that, every Wayland compositor works that way.
Your Stereopticon, and Waypipe are concerned with forwarding, hosts and guests, etc.
To get a working Wayland forwarding from some guest to a host running macOS, you'll want to run a compositor (Owl) on the host, and some forwarding solution like Waypipe between the guest and the host. The compositor is not involved in the forwarding, and doesn't even know any forwarding takes place.
Alternatively you could do something like you're describing: let the clients do all the Wayland things entirely on the guest, and then come up with another protocol (that is not Wayland) between the host and the guest, and display the bitmaps on the host somehow. In this case, you don't need a Wayland compositor on the host at all.

By the way, while using someone like RDP or VNC may indeed be nice, you better make sure your protocol of choice supports modern features like HiDPI / scaling and touchpad gestures. These are the things users rightfully expect, from both macOS and Linux desktops.
So that's one argument in favor of forwarding Wayland, which has all of this already figured out — it has to, since it's not a remote display protocol, it's the display protocol. That being said, Owl currently implements neither HiDPI nor touchpad gestures, but there's nothing stopping it from implementing features like that.

@bugaevc Thanks. I'm well aware that a compositor doesn't deal with forwarding or virtualization.  But a wayland compositor is essential for proxying wayland apps to.
But currently, there is no meaningful wayland compositor on macos. And we'll need a working compositor to get wayland apps working at all on macos if we ever want to proxy wayland apps from a VM out to a display on macos.

And @bugaevc I think you make the same arguments that Google made when they decided to use wayland as the basis for the ChromeOS display server. :)

Hello good people of Lima 🙂
The Owl repo is now finally public, along with its dependencies like the port of Wayland itself. The announcement can be read here.
Please let me know if you succeed in building and running it.

@bugaevc I am new to this, how do I use Owl rep to actually see the GUI. Could you pls guide me.
Thank You.


Battle queen katarina

Can you fix the daggers of battle queen katarina it doesnt works :(

#1

i dont underqtand i can fix the skin by myself but how ?

you cant fix the sins. Some characters have certain server sided animations that skin changers cant access.


Handling "visible" TextEditor in api

window.visibleTextEditors and window.onDidChangeVisibleTextEditors(actualState) while splitscreen does not have all visible TextEditors in it.
Steps to Reproduce:

clone https://github.com/peni4142/work-as-two
debug my extension
open a few TextEditor in split-screen
set a breakpoint in work-as-two/src/integration/api.ts at line 16
open another TextEditor
check the value actualState.length

Does this issue occur when all extensions are disabled?: Yes

while splitscreen does not have all visible TextEditors in it.

Not sure what that means

One picture could say more than thousands of words.

actualState.length should have been 4. There are 4 visible TextEditor.

This is a duplicate. Unfortunately, I don't recall the exact issue number nor its title :flushed: Anyways, searching for issues with the same labels will likely help you :point_right:
https://github.com/microsoft/vscode/issues?utf8=✓&q=is%3Aopen+label%3Aapi+label%3Afeature-request

https://github.com/microsoft/vscode/issues/15178

At all, it does not match the description:

I think you should open the thread again until the description matches the functionality. A possible description would be: "The currently visible editors in the active column or an empty array."


Encoding / Decoding will fail if no temp folder in current path

while the tests run smooth in the cloned project, an npm install based use will result in the encoding / decoding failing if the temp/raw and temp/encoded folders aren't created in project path.

I can not confirm this behavior. It should automatically exist a temp/raw/ and temp/encoded/ folder in your node_modules/node-lame/, which is used for the temp files. Do they exist? You do not have to create extra folders in your project path.
Demo project, to test your issue (and worked fine):
example_project.zip

demo project works perfect, digging to see why I though I had to create this temp folder

hasty conclusion on my side, apologies


Organizational email signups

Styling things which are a little off:

scrollbar is for entire table but should only be for tbody

Other Notes:
I'm wondering if the placement of some code is ok. ex: For the table styling, I added to the App.scss file because it seemed like the only option.
Below are some screenshots of how the page looks.
Before adding users:

After adding users (iPhone X Screen size):

After sending invites (if successful):

On iPad screen size:

Ex of pop up error (after trying to send invite w/o lastname):

you should be good to go :)


Add changeDelegation to ILockingVault

Based on previous discussion, this PR adds the changeDelegation method to the ILockingVault interface so that we can safely expect all locking vaults to include delegation via this prescribed method name + args.
This was done by copying the changeDelegation signature and docblock from here: https://github.com/element-fi/council/blob/main/contracts/vaults/LockingVault.sol

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 94.126%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
506

Relevant Lines:
523

💛  - Coveralls


Improvements for Android XR SDK

Fix an failure on startup falling back to null anchor manager.
Improved detection of loss of tracking (should help FW engine achieve better quality).
Bump dependency to FW v1.1.0.
Increase version to v1.3.2.

/azp run


[Bug]

Bug report
In the list page I am using $this->crud->addClause() to customize the list query. One of my pages must show 31 entries (4 pages 10 entry per page). Unfortunately, It's showing only one page. I used $this->crud->setOperationSetting('showEntryCount', false) to exceeds this issue. Unfortunately, the next button is working fine but the Prev button is always returning me to the first page.
Numbered pagination and total number of entries is not working fine when using custom queries  $this->crud->addClause() .

It must be Showing 1 to 10 of 31 entries

There must be 4 pages, but it's showing only 1!
Backpack, Laravel, PHP version
I am using "backpack/crud": "^5.3.11"
When I run php artisan backpack:version the output is:
PHP VERSION:
PHP 8.1.14 (cli) (built: Jan 13 2023 10:43:50) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.14, Copyright (c) Zend Technologies
with Zend OPcache v8.1.14, Copyright (c), by Zend Technologies
with Xdebug v3.2.0, Copyright (c) 2002-2022, by Derick Rethans
LARAVEL VERSION:
v8.83.27

I have fixed it by overriding the following methods:
public function search()
{
$this->crud->hasAccessOrFail('list');
    $this->crud->applyUnappliedFilters();

    $start = (int) request()->input('start');
    $length = (int) request()->input('length');
    $search = request()->input('search');

    // if a search term was present
    if ($search && $search['value'] ?? false) {
        // filter the results accordingly
        $this->crud->applySearchTerm($search['value']);
    }
    // start the results according to the datatables pagination
    if ($start) {
        $this->crud->skip($start);
    }
    // limit the number of results according to the datatables pagination
    if ($length) {
        $this->crud->take($length);
    }
    // overwrite any order set in the setup() method with the datatables order
    $this->crud->applyDatatableOrder();

    $entries = $this->crud->getEntries();

    // if show entry count is disabled we use the "simplePagination" technique to move between pages.
    if ($this->crud->getOperationSetting('showEntryCount')) {
        $totalEntryCount = $this->getFilteredQueryCount();

        $filteredEntryCount = $this->getFilteredQueryCount() ?? $totalEntryCount;
    } else {
        $totalEntryCount = $length;
        $filteredEntryCount = $entries->count() < $length ? 0 : $length + $start + 1;
    }

    // store the totalEntryCount in CrudPanel so that multiple blade files can access it
    $this->crud->setOperationSetting('totalEntryCount', $totalEntryCount);

    return $this->crud->getEntriesAsJsonForDatatables($entries, $totalEntryCount, $filteredEntryCount, $start);
}

public function getFilteredQueryCount()
{
    // check if the filtered query is different from total query, in case they are the same, skip the count
    $filteredQuery = $this->crud->query->toBase()->cloneWithout(['orders', 'limit', 'offset']);
    return $filteredQuery->toSql() !== $this->crud->totalQuery->toSql() ? $filteredQuery->get()->count() : null;
}

Glad you fixed @SalmaANegm 👌
I'll just ping @pxpm, because he has been working with the page filters.
Also, this was your diff;

@pxpm do you think this may be a bug?


RATIS-1037. Remove flatbuffers from thirdparty.

See https://issues.apache.org/jira/browse/RATIS-1037
Revert "RATIS-969. Add flatbuffers to Ratis thirdparty."
This reverts commit 8c146817485f7f104ccac595ad346ffe09038435.

@szetszwo Thanks for the contribution! I have committed the PR to master branch.


Update jsonnet to new release

This was already done with https://github.com/coreos/prometheus-operator/pull/2420. Closing here, but the contribution attempt is much appreciated! :slightly_smiling_face:


ReadonlySignal should not inherit from Signal type

Environment

[x] I am using @preact/signals

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
const numberSignal: ReadonlySignal = useSignal<number>(0)

This assignment should not be allowed as signal is not readonly
the bug is here:
https://github.com/preactjs/signals/blob/main/packages/core/src/index.ts#L660
interface ReadonlySignal<T = any> extends Signal<T> {
	readonly value: T;
}

Expected behavior
There should be a type error

This is the intended behavior I believe.
The purpose of ReadonlySignal is to stop you from writing to an incoming signal, not assert whether the signal can be written to. For example, a component might take a ReadonlySignal to show it only consumes, it won't try to write to that data.

This is the intended behavior I believe.
The purpose of ReadonlySignal is to stop you from writing to an incoming signal, not assert whether the signal can be written to. For example, a component might take a ReadonlySignal to show it only consumes, it won't try to write to that data.
Edit: Besides, the only API to return ReadonlySignal is computed/useComputed, and it makes no sense for a consumer to distinguish between them.
As such, I'll close this on out.

I had a bug in my code where I had a component that consumed a ReadonlySignal, but did not edit it. I then computed an ReadonlySignal and passed to it. Everything good. Then I modified the original component to edit the passed on signal and made the component Signal. All was allegedly good in compiling part, but then when I run the code, I got runtime exception which should have been caught at compilation time.
This can be fixed by doing the inheritance the other way around. This is clearly a bug in the library as the library is using typescript wrong.
this is like "Apple" is a string, that should be able to things that expect string. But If a function expects "Apple", passing a string to it is not sufficient, as the string could be "Banana", which clearly is not "Apple", while both of them are strings.
"Apple" is of type string, but string is not type of "Apple"
"Banana" is of type string, but string is not type of "Banana"

All was allegedly good in compiling part, but then when I run the code, I got runtime exception which should have been caught at compilation time.

I don't see how this could possibly be an issue of the types, passing a Signal as a ReadonlySignal is perfectly valid. You'd need to show a more concrete example, as this is incredibly unclear.

This is clearly a bug in the library as the library is using typescript wrong.

This is very much not the case. It sounds more like a misunderstanding of what this type is meant to guard against. A Signal is a completely valid ReadonlySignal, it's how the API works. ReadonlySignal is just there to raise a warning if you try to set it's .value prop, nothing more.

All was allegedly good in compiling part, but then when I run the code, I got runtime exception which should have been caught at compilation time.

I don't see how this could possibly be an issue of the types, passing a Signal as a ReadonlySignal is perfectly valid. You'd need to show a more concrete example, as this is incredibly unclear.

This is clearly a bug in the library as the library is using typescript wrong.

This is very much not the case. It sounds more like a misunderstanding of what this type is meant to guard against. A Signal is a completely valid ReadonlySignal, it's how the API works. ReadonlySignal is just there to raise a warning if you try to set it's .value prop, nothing more.

Hey, Sorry. I had my report the wrong way around (I edited it). Sorry for the confusion. It should be like this:
const numberSingal: ReadonlySignal<number> = useSignal<number>(0) // ok
const numberSignal: Signal<number> = useComputed<number>(0) // should error

import { ReadonlySignal, Signal } from '@preact/signals-core'

declare const readonlySignal: ReadonlySignal<number>
const writeableSignal: Signal<number> = readonlySignal // should error, doesn't
writeableSignal.value = 5 // runtime error!

declare const writeableSignal2: Signal<number>
const readonlySignal2: ReadonlySignal<number> = writeableSignal2 // ok, but only because TypeScript doesn't correctly check readonly (soundness)
readonlySignal2.value = 5 // correctly errors

The problem is that the only difference between the two types is if a property is readonly or not. There is a soundness bug in Typescript. Currently, the readonly modifier prohibits assignments to properties so marked, but it still considers a readonly property to be a match for a mutable property in subtyping and assignability type relationships. A flag is being added to typescript to fix this issue: https://github.com/microsoft/TypeScript/pull/58296 . When this flag is enabled that would break preactjs/signals. This flag is going to be part of strict mode at some point.

Gotcha, that makes more sense.


feat(*)!: Adds version to control API

This should be the final breaking change of the API and it will require a two phased rollout. I'll need to cut new core and host versions first and then update wash to use the new host for tests.

Going to bypass the review from wash since that was a single version pin change


merge package template from Kronos-Tools/npm-package-template

Updated standard to latest version

Codecov Report

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

@@           Coverage Diff           @@
##           master      #57   +/-   ##
=======================================
  Coverage   89.47%   89.47%
=======================================
  Files           1        1
  Lines          19       19
=======================================
  Hits           17       17
  Misses          2        2

Continue to review full report at Codecov.

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


docs: SBOM Linking ADR

6. SBOM Linking
Date: 2024-09-18
Status

Proposed
Context

SBOM Document Linking (link command)
Bomctl needs the ability to create external references between documents. A use-case for this
feature could be a user that containerizes an application and then needs an SBOM for the new
container, with external references to the SBOMs of the container image and the application
binaries.
Another feature to discuss is the ability to express relationships between the components in the
SBOM.
Related issue: #81
Decision

TBD.
Consequences

:heavy_check_mark: Cross-referencing and tracking components will become easier. By allowing
external references and expressing relationships between components, tracking and understanding the
connections between various parts of a system will become more manageable. This will enable more
efficient analysis, such as impact assessment when making changes or upgrades.
:heavy_check_mark: Vulnerability scanning will be more thorough. With external references, it
will be easier to correlate SBOM components with known vulnerabilities in external repositories,
improving the overall security of the system.
:x: Data validation and consistency will become harder. With external references, ensuring data
consistency and validating the accuracy of information from external sources could become more
challenging. Implementing robust validation and error-handling mechanisms will be crucial to
maintain data integrity.

The ADR ID 6 is already in use, can you update title to docs: ADR-0009 SBOM Linking, description header to 9. SBOM Linking, and corresponding markdown file name


TreeSetMaker lacks createFrom and createFromSink methods

Though TreeSetMaker's createFrom and createFromSink are documented and in the codebase, they appear to be missing from the Maven Central 3.0.4 release.
TreeMapMaker has these methods and they appear to work correctly.

Fixed in master branch, will be in 4.0, not goint to fix in 3.0


STM32 memory locations off by 10 bytes

I confirmed the memory locations in the STM32411CE Reference Manual as well, but the memories displayed by "memview" are all off by 10 bytes as you can see in this screenshot. "memview" shows the ARR register in 0x4001001c instead of 0x4001002c.

I can confirm this offset of 0x10 on my setup. Writing location 0x0e001830 to all F's will read correct for CortexDebug v1.6.4, but fail vor v1.6.6.
Old MemoryView on v1.6.4

New MemoryView on v1.6.6

Hmmm. Looking at it now...Thanks for reporting

Can you try the latest version 0.0.14, please?
Should be in the marketplace now.

Fixed it for me! Thanks a lot!

Fixed it for me, thanks!

Fixed here as well


API filtering 'OR' logic not working on foreign key ID fields

Environment

Python version:  3.6.8
NetBox version:  2.6.0

Steps to Reproduce

Issue an API query with filter parameters specifying two different related object IDs, for example:
https://netbox/api/dcim/interfaces/?device_id=2761&device_id=2762

Expected Behavior
API will return interfaces associated with the devices having ids 2761 and 2762.
Observed Behavior
API returned only the interfaces associated with the last given device id, in this case 2762.

FYI this is because we're employing a method-based filter to also match on devices belonging to the same virtual chassis, so it's not covered by the default MultiValue* filters.


AsNavFor, Breakpoint and Init Events.

JSFiddle: http://jsfiddle.net/0u5qyg8x/

Merge in and amend @limonte asNavFor patch - allowing use of $() objects as targets.
Fix up a small bug in @limonte patch as it was incorrectly type-checking for null
Add the ability to asNavFor on mulitple slick instances.

Add unslick event which will also expose the breakpoint at which it unslicked (if possible).
Take cue from @muddylemon branch to prevent using self as asNavFor target.

===

closes #865
closes #1298
closes #1150

===
This patch's jsfiddle also neatly demonstrates some of the bugs in Slick.prototype.slideHandler() regarding non-infinite-carousels as targets from infinite-carousels (wrong index is passed).  So left it alone for now.

Going to Merge this, @kenwheeler - It's stable and well tested locally and on JSFiddle provided. But as mentioned; the fiddle highlights a few slideHandler bugs when used from asNavFor.


CKS: fix /opt/bin/deploy-cloudstack-secret in CKS control nodes

Description
This PR fixes the typos in deploy-cloudstack-secret script.

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[x] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)
[ ] build/CI

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[ ] Minor

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[x] Minor
[ ] Trivial

Screenshots (if appropriate):
How Has This Been Tested?

How did you try to break this feature and the system with this change?

@blueorangutan package

@DaanHoogland a [SL] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result [SF]: ✔ el7 ✔ el8 ✔ el9 ✔ debian ✔ suse15. SL-JID 8758

this is a help string update, 2 lgtm, gha passed; merging


Implementation of a cache lookup scheduler

This scheduler sits in front of another one and looks up actions in
the cache if requested before queueing them.

This change is

I'm not sure if the cache lookup should validate the results are in the CAS, it's probably a good optimisation as we can probably talk to it a lot faster than the client.

cas/scheduler/cache_lookup_scheduler.rs line 60 at r3 (raw file):
Previously, allada (Nathan (Blaise) Bruer) wrote…
We should not guarantee order schedulers are created here. Instead we should do what RefStore does by looking up the store on first invocation. In all honesty, I would not use support RefScheduler at all and instead have the scheduler be nested (VerifyStore is a good config example of this).
In the future we can add a custom RefScheduler if we want to reference the scheduler by name instead of have it owned by another scheduler.

That raises the question of whether CacheLookupScheduler should implement WorkerScheduler or not... it should only implement it if the nested one does.

Now we've got most of the changes into the main branch I managed to test this out this evening on our cluster.  I had a few little hiccups, but generally it's gone well.  It's using way less CPU than it used to on the storage server and everything appears to be incredibly responsive.

cas/scheduler/tests/utils/mock_scheduler.rs line 28 at r10 (raw file):
Previously, allada (Nathan (Blaise) Bruer) wrote…
nit: In the future use Box on the large struct. (I'll fix in the scheduler clippy PR).

I wasn't sure it was worth it for a mock.


Question: client meta data

@patatoid sorry for the slew of new issues recently, but as I discover more about the library, the more I am trying to figure out!
Is there a way to extend the clients to include additional data? For example, an image (for a consent page), or other attributes that could be used for other things that fall outside the scope of this library?
I know you're working on boruta_server which appears to maybe address some of this — I noticed a consent page — but I haven't noticed if you're maybe doing anything more with the clients that falls outside the scope of authorization. (Ex: showing a list of clients a user account has authorized)

You are welcome, it is great to see involvement in the project.
For the story, the repo was once on gitlab. There there was a similar issue about client metadata.
I think the best is to add a foreign association in the application layer in order to link those to the clients. If it is part of some standard, leave a note for us to include it in the library.
For the queries, you can perform them like in the Boruta.Ecto.Admin module. If they are generic, they can also be included in the library.

Hi @barkerja
I just reminded there is a logo_uri attribute for clients in OpenID Connect. I can add this to the clients' schemas if it helps and fit your needs..


New favicons

Added code for each logo size
Added new favicons + logos

Looks like you're using wrong line-endings. Check https://github.com/dotKom/onlineweb4#installation on how to use the correct one (This is why it looks like you remove all of base.html and frontpage.html, and add it again. This makes it really really hard to read the diff for those files).

Fixed! I had to change line separators to CRLF in PyCharm


When set require=false in the demo async-validation-update-on, the validator will be executed on page loaded

Description
In the demo async-validation-update-on, the require is true default. But when set require to false, the validator will be executed on page initialized, and more than once:

Minimal Reproduction
https://stackblitz.com/edit/ngx-formly-ui-bootstrap-tdbxw4
Your Environment

Angular version: 8.2.14
Formly version: 5.10.29

I've made an optimization https://github.com/ngx-formly/ngx-formly/pull/3143 which reduce the number of calls to 2, the remaining calls for now are required:

The first one is called after Formly build the form (initial call)
The second is called during the view (template) render (which is done by Angular)

I've tried to get rid of the first one but didn't find a proper solution yet, so I suggest handling that case from your side by ignoring the async call if the value is empty for example or assuming its a valid model (model loaded from the backend).
expression: (control: FormControl) => {
  return new Promise((resolve, reject) => {
    if (isEmpty(value) || validValue(value)) {
      return ...
    }

    // ...
  });
},


[Minor] [DOC] Fix broken word2vec link

Follow-up of SPARK-12199 and #10193 where a broken link has been left as is.

cc @jkbradley @yinxusen @mengxr

LGTM thanks!

Test build #47627 has started for PR 10282 at commit 8937801.

Test build #47627 has finished for PR 10282 at commit 8937801.

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

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

Merged build finished. Test PASSed.

Confirmed, merged to master/1.6


Is this for Scorm builder or for LMS side deleloper?

You call it runtime( inside Scorm), but it looks more as a Adapter(LMS side).    So is this for Scorm builder or for LMS side deleloper?

Hello - this is a SCORM runtime, Javascript layer. This allows direct communication between an e-course and the javascript layer. This allows you to easily get a JSON object at the conclusion of your e-learning session for easy saving to your LMS.


Node.new(something) is not assigning relations

Given this nodes:
class Node1
  include Neo4j::ActiveNode
  has_one :out, :node2, type: :relation
end

class Node2
  include Neo4j::ActiveNode
  has_many :in, :node1, type: :relation
end

I noticed that, when I instantiate Node1 passing Node2 as parameter, it's not assigned:
node2 = Node2.create
node1 = Node1.new(node2: node2)
node1.node2 # => nil

Instead if I create it, instead, it seems to work:
node2 = Node2.create
node1 = Node1.create(node2: node2)
node1.node2 # => #<Node2 ... >

Is it the correct behavior?

I think perhaps that there is an issue with the gem, but there's also a bug in your code.  The origin option should refer to the association's name, not the Neo4j relationship type.  So if your case the node1 association should look like:
  has_many :in, :node1, origin: :node2

Alternatively you could just specify the type again:
  has_many :in, :node1, type: :relation

When I make this change I get:
2.2.3 :018 > node1 = Node1.create
 CYPHER 76ms CREATE (n:`Node1` {props}) RETURN ID(n) | {:props=>{:uuid=>"357237c2-1618-45c4-bdde-b509be274a3b", :created_at=>1450102958, :updated_at=>1450102958}}
 => #<Node1 uuid: "357237c2-1618-45c4-bdde-b509be274a3b", created_at: Mon, 14 Dec 2015 14:22:38 +0000, updated_at: Mon, 14 Dec 2015 14:22:38 +0000>
2.2.3 :019 > node2 = Node2.new(node1: node1)
 => #<Node2 uuid: nil, created_at: nil, updated_at: nil>
2.2.3 :020 > node2.persisted?
 => false
2.2.3 :021 > node2.node1
 => #<AssociationProxy @query_proxy=#<QueryProxy Node2#node1 CYPHER: "MATCH node2 WHERE (ID(node2) IS NULL) MATCH node2<-[rel1:`relation`]-(result_node1:`Node1`)">>

I'm thinking, though, that associations on unpersisted objects should never return an AssociationProxy because there would never be a starting point to the query that would be executed.  For example when I call node2.node1.to_a I get:
2.2.3 :023 > node2.node1.to_a
 Node2#node1 33ms
  MATCH node2
  WHERE (ID(node2) IS NULL)
  MATCH node2<-[rel1:`relation`]-(result_node1:`Node1`)
  RETURN result_node1

Which is ridiculous because you'll never have ID() of any node be NULL.  I wonder if @subvertallchris agrees with my logic here.
Another point to make is that node1 is a has_many association, so the syntax to set it up with new or create would be as an Array like:
node2 = Node2.new(node1: [node1])

But still, I get an AssociationProxy.

Sorry, I really did a mess with my example. I switched Node1 and Node2 names.
I fixed it in the first post, but still I'm having the issue.
Please take a look.

Yup, I see that it's returning nil.  Thanks for the update.  I think it's still the same problem.  With has_many it was returning an AssociationProxy and with has_one it tries to return one object.    I hope that helps you work around your issue for the moment.
I'd like to hear my colleague @subvertallchris 's opinion and then I think we can fix this in relatively short order.

Oh, fine!
Thank you :)

Yup, the change you suggested to AssociationProxy seems like the thing!

Ok, I think I've fixed it.  Could you try this in your Gemfile?
gem 'neo4j', github; 'neo4jrb/neo4j', branch: '6.0.x'

I tested in my real app:
irb(main):020:0> a = Article.new(creator: Person.first)
 CYPHER 6ms MATCH (n:`Person`) RETURN n ORDER BY n.uuid LIMIT {limit_1} | {:limit_1=>1}
=> #<Article uuid: nil, abstract: nil, created_at: nil, pg_id: nil, slug: nil, title: nil, updated_at: nil>
irb(main):021:0> a.creator
 Article#creator 9ms MATCH article WHERE (ID(article) IS NULL) MATCH article-[rel1:`creator`]->(result_creator:`Person`) RETURN result_creator
=> #<Person uuid: "0384906e-2faa-44b7-a267-d0aaa2977891", created_at: Wed, 16 Dec 2015 14:54:37 +0000, first_name: "John", last_name: "Doe 7", pg_id: 8, updated_at: Wed, 16 Dec 2015 14:54:37 +0000, username: "john-doe-7">

It seems ok :+1:

Awesome, I also just released it as 6.0.2, so that should fix it for you.  Thanks!


DL: Remove quote_ident to allow tables on schemas

JIRA: MADLIB-1388

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/1110/

I have added a test with a special character in table name.
I am not sure if we actually have a sql injection risk in this case. The very first case these user-defined strings get used in a sql query is in the table exists function. There, we put the string in quotes before checking against pg_namespace. Since it is treated as a string, not a sql command, I think the check will fail before we execute anything else.

I have added a test with a special character in table name.
I am not sure if we actually have a sql injection risk in this case. The very first case these user-defined strings get used in a sql query is in the table exists function. There, we put the string in quotes before checking against pg_namespace. Since it is treated as a string, not a sql command, I think the check will fail before we execute anything else.

Adding quotes manually will allow it to work with table names that have spaces, tabs, or capital letters in their name.  But it won't help guard against SQL injection, which usually works by the attacker ending the quotes and then inserting a command, then starting the quotes again later.   I think this is the main reason for the existence of the quote_ident function, since just using quotes would work to handle most other cases.  It also allows table names to have quotes in them, which doesn't work with manual quoting--but that's a fairly obscure use case that doesn't seem important to support.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/madlib-pr-build/1114/


Ability to set custom folder via ARM template?

For two agents to be configured on one machine, the name of the agent and the folder name needs to be unique.
Unfortunatly there is no documentation on setting a custom folder location when installing an agent via ARM template.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 09fa0c14-9937-41bc-cc34-179edb379083
Version Independent ID: 10fe3600-21a5-12db-5e21-5ade3a8fa484
Content: Provision agents for deployment groups - Azure Pipelines
Content Source: docs/pipelines/release/deployment-groups/howto-provision-deployment-group-agents.md
Product: devops
GitHub Login: @alexhomer1
Microsoft Alias: ahomer

Thank you for your feedback. I have passed this on to the product team for advice.

It would be great addition as well to have a possibility for setting a custom account for the agent.


alpha.cuelang.org: add macOS to the trybot build matrix

We currently only have Linux coverage in the trybot workflows.
But we have developers who contribute from other platforms.
Re-running the preprocessor requires Docker. We should therefore add other platforms to the build matrix to ensure that those documented steps work on non-Linux platforms.
This work as been started in https://review.gerrithub.io/c/cue-lang/cuelang.org/+/554322.
This issue tracks the completion of that work.

This was implemented, so closing. Noting #2533.


ignored list should allow ellipsis

ignored lists a set of packages (not projects) that are ignored when dep statically analyzes source code. Ignored packages can be in this project, or in a dependency.
ignored = ["github.com/user/project/badpkg"]

This is problematic for a package that has many subpackages.
ignored = [
  "github.com/user/project/badpkg",
  "github.com/user/project/badpkg/a",
  "github.com/user/project/badpkg/b",
  "github.com/user/project/badpkg/c",
  "github.com/user/project/badpkg/c/c1",
  "github.com/user/project/badpkg/c/c2",
  ... etc
]

This is simply unscalable, but a neat solution would be to honour the idiomatic ellipsis, e.g.
ignored = [
  "github.com/user/project/badpkg/..."
]

@rickb777 Thanks for taking the time to file an issue.
We already have an issue and a PR regarding this: #691 & #709.


v051

Fix VariablePrimalStart

Codecov Report
Patch coverage: 33.33% and project coverage change: -0.12% :warning:

Comparison is base (4e70b7d) 91.76% compared to head (43cd359) 91.65%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff             @@
##             main      #14      +/-   ##
==========================================
- Coverage   91.76%   91.65%   -0.12%
==========================================
  Files           5        5
  Lines         595      599       +4
==========================================
+ Hits          546      549       +3
- Misses         49       50       +1

Files Changed
Coverage Δ

src/MOI_wrapper/MOI_wrapper.jl
84.56% <33.33%> (-0.14%)
:arrow_down:

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


Configurable Build Options

Currently when you run nuxthub deploy it ends up running nuxi build --preset=cloudflare-pages. It would be helpful to be able to pass other nuxi build options such as --dotenv .dev.vars to the build command when running nuxthub deploy.
A couple of ideas on implementation:

Use nuxt.config.js hub option

hub: {
  extraBuildOpts: ['--dotenv .dev.vars']
},

Allow pass through from nuxthub cli
nuxthub deploy --dotenv .preview.vars

Related to #5


Errors in the doc's

Location 1: https://developers.google.com/web/tools/workbox/modules/workbox-cacheable-response#caching_based_on_headers
Location 2: https://developers.google.com/web/tools/workbox/modules/workbox-cacheable-response#caching_based_on_headers_and_status_codes
Has the code line:
import {CacheFirst} from 'workbox-strategies';

Yet the code is calling: StaleWhileRevalidate
I think you need to replace the code line with:
import {StaleWhileRevalidate} from 'workbox-strategies';

Same error in both code snippets.

Thanks for letting us know!

closing as merged


Log Details (WARNING)

Hi, its just a warning -
Core
2024.6.0
Supervisor
2024.06.0
Operating System
12.3
Frontend
20240605.0
Logger: homeassistant.util.loop
Source: util/loop.py:84
First occurred: 8:11:58 am (597 occurrences)
Last logged: 8:12:01 am
Detected blocking call to open inside the event loop by custom integration 'eight_sleep' at custom_components/eight_sleep/pyEight/eight.py, line 179: timezone = pytz.timezone(self.timezone) (offender: /usr/local/lib/python3.12/site-packages/pytz/init.py, line 108: return open(filename, 'rb')), please create a bug report at https://github.com/lukas-clarke/eight_sleep/issues Traceback (most recent call last): File "", line 198, in _run_module_as_main File "", line 88, in _run_code File "/usr/src/homeassistant/homeassistant/main.py", line 223, in  sys.exit(main()) File "/usr/src/homeassistant/homeassistant/main.py", line 209, in main exit_code = runner.run(runtime_conf) File "/usr/src/homeassistant/homeassistant/runner.py", line 190, in run return loop.run_until_complete(setup_and_run_hass(runtime_config)) File "/usr/local/lib/python3.12/asyncio/base_events.py", line 672, in run_until_complete self.run_forever() File "/usr/local/lib/python3.12/asyncio/base_events.py", line 639, in run_forever self._run_once() File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1988, in _run_once handle._run() File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run self._context.run(self._callback, *self._args) File "/usr/src/homeassistant/homeassistant/config_entries.py", line 742, in async_setup_locked await self.async_setup(hass, integration=integration) File "/usr/src/homeassistant/homeassistant/config_entries.py", line 594, in async_setup result = await component.async_setup_entry(hass, self) File "/config/custom_components/eight_sleep/init.py", line 138, in async_setup_entry await user_coordinator.async_config_entry_first_refresh() File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 277, in async_config_entry_first_refresh await self._async_refresh( File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 312, in _async_refresh self.data = await self._async_update_data() File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 268, in _async_update_data return await self.update_method() File "/config/custom_components/eight_sleep/pyEight/eight.py", line 233, in update_user_data await obj.update_user() File "/config/custom_components/eight_sleep/pyEight/user.py", line 670, in update_user await self.update_routines_data() File "/config/custom_components/eight_sleep/pyEight/user.py", line 846, in update_routines_data self.next_alarm = self.device.convert_string_to_datetime(nextTimestamp) File "/config/custom_components/eight_sleep/pyEight/eight.py", line 179, in convert_string_to_datetime timezone = pytz.timezone(self.timezone)

Yea seeing the same thing


354 awesomplete

When inputing Region field of Place, it shows suggestions.
This PR introduces  awesomplete as suggested by https://github.com/Terrastories/terrastories/issues/354#issuecomment-544772698 .
It will look like:

Close #354

Since it has been a while, I also rebased this branch onto the current master.


Sort auto-generated tests modules by spec names

By this change, tests/suite/mod.rs will be generated as an already formatted code.
This prevents rustfmt from creating new diffs.

Thanks!


Make quickstart guide work reliably on all platforms

There have been issues with the guide not working, due to things like changes the kind command line.
Ensure it works on all platforms, and add automated tests to keep it working.
Relevant issues/PRs:
https://github.com/G-Research/armada/issues/867
https://github.com/G-Research/armada/issues/865
https://github.com/G-Research/armada/issues/268
https://github.com/G-Research/armada/pull/866

This PR should fix issues - https://github.com/G-Research/armada/pull/957


Adding covid19rt.in

Please add my webapp: https://covid19rt.in to the list. Kindly let me know if I need to specify anything differently.

Hi, great work on the website. However, we have stopped adding derivate works to the webpage as we couldn't do justice to all the requests. We've removed all entries from the api mainpage. Hope you'll understand.


incorrect dependency on javax.xml.soap.Node

One test in CustomQuery.java has an incorrect dependency on javax.xml.soap.Node
Should be org.w3c.dom.Node (as seen elsewhere in the code). This affects only a single test. This will cause an issue on Java 11 and up, since JAX-WS has gone from deprecated to fully removed, and this class is not available (aside from being the wrong Node class to use anyway).
I have a fix in hand.

https://github.com/marklogic/marklogic-contentpump/pull/256

This dependency has been updated as a part of jena upgrade on 11.1.0


Docker Container variant

Seems like it requires OpenCL, but is it possible to run it in docker containers for easier deployment on servers or cross-platform development?

Where did you get the impression that it requires OpenCL?

Regarding Docker container, yes, it could theoretically run inside a Docker container, however, seeing as how it's a realtime algorithm that can easily run on any platform, most likely even the web, I'm not quite seeing the point of using Docker? Is there some use-case that I'm overlooking.

Impression was from when I ran everything within docker containers: (I hate to post logs but..)
PS D:\same> docker run -v ${PWD}:/anime 4kanime ruby 4k.rb Aug 15, 2019 11:44:14 AM com.aparapi.internal.opencl.OpenCLLoader <clinit> SEVERE: Check your environment. Failed to load codegen native library  or possibly failed to locate opencl native library (opencl.dll/opencl.so). Ensure that OpenCL is in your PATH (windows) or in LD_LIBRARY_PATH (linux). Exception in thread "main" javax.imageio.IIOException: Can't read input file!         at java.desktop/javax.imageio.ImageIO.read(ImageIO.java:1308)         at com.bloc97.anime4k.Main.main(Main.java:36)
Host OS: Windows 10 Pro
Docker-image: openjdk:12-alpine
Perhaps its an alpine problem, I apologize for not checking if its an alpine problem before reporting, but I shall go do that tomorrow.
For starters, I prefer to not have Java installed on my computer.
Bu main reason being it makes if I were running servers that use the image to post-process image or anything of that sort, deployments will be much simpler than to write scripts to pre-install FFMPEG and JDK & curling the jar binary for every server spun up. Building it into a static image would make my other service dependent on it more readily.

Oh, you're right about the OpenCL usage. Arapi uses OpenCL to execute Java code on the GPU, which means that you would need a Docker image with OpenCL support.

It works without OpenCL but complains while running.
On Docker Ubuntu apt-get install -y ocl-icd-opencl-dev removes the complaining, but I don't notice a speed difference.

The algorithm is so simple that it is easy to be bounded by the memory speed. (Copying the image back and forth from the System Memory to the GPU Buffers) If your CPU is powerful enough (Recent CPUs with 8+ cores) it might even outperform GPUs since PCIe lanes are not as fast as the memory bus.

I have created a PR for basic Dockerfile, to build an ubuntu image that's portable.
I also have another one that packs FFMPEG into the image and added a script upscales videos by splitting and merging them (quite slow due to the restart of image kernel each time), should I add a PR for that too?


fix($compile): don't allow constructor to overwrite input bindings

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
FIX
What is the current behavior? (You can also link to an open issue here)
Changes to input bound properties inside the controller constructor are overwriting the
initial value of the input binding.
What is the new behavior (if this is a feature change)?
We now reassign these properties after calling the constructor.
Does this PR introduce a breaking change?
No - previous releases of Angular 1.5.x over-wrote these properties both
after the constructor and after $onInit.
Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit-message-format
[x] Tests for the changes have been added (for bug fixes / features)
- [ ] Docs have been added / updated (for bug fixes / features)

Other information:
Previously any input bindings would be reassigned after the constructor
and the $onInit hook had been called because of an invalid extra update
in the input binding watch handler.
In<PHONE_NUMBER>92f9805b9cf77e51aacc9cfbb09921 we removed this extra update,
which resulted in changes to the controller properties in either the
constructor or the $onInit hook to be kept.
It turns out that the fact that we can overwrite the input bindings in the
constructor is invalid. Really the bindings should have been assigned
only after the constructor is called but due to a historical feature that
enabled developers to access the bindings from within the constructor this
was possible.
To prevent this we now assign the bindings before calling the constructor
and then reassign them after the constructor but before the call to $onInit.
This is the behaviour that we want in the long term, where we will remove
the feature of pre-binding properties before calling the constructor any
way.

lgtm

I agree with @gkalpak - I think that this PR actually confuses things.
We should document clearly that changing bindings inside either the constructor or the $onInit hook will overwrite the initial value from the binding.

Also this PR was failing on a bunch of tests, which to fix would require changes to tests, which also indicates BC


Reduce color set to those that are easily recognized via STT

Scope of Changes

Reducing the set of colors tjbot understands to those that are easily recognized via STT

This may not entirely be necessary, but it may make it easier to select distinct colors with a smaller list.

I felt like the majority of colors we're pulling in are inaccessible via speech, which was the whole point of having named colors in the first place.  I also feel that we probably should provide a list of colors that TJBot recognizes in the documentation, which would be too unwieldly if we have a gigantic list.  What do you think?

Decided not to merge this one.


[5.7] Make variadic builder overloads AEIC

This is a cherry pick of https://github.com/apple/swift-experimental-string-processing/pull/520
Resolves: rdar://94358614

@swift-ci please test


Workflow Ordering Activities (Transitions)

I'm trying to get a work transitions in order .
whenever i add a new activity its inserted as the first Activity in the transitions List from the workflowContext .

I'm not sure what your question is. Can you rephrase and or elaborate what you're trying to do, what you need to know, or how it's failing?

@sfmskywalker thank you for your reply .
what i'm trying to achieve is i'm making a dynamic Wizard using Dynamic Forms and Workflows  So i'm creating for example 3 Forms .
and i'm using workflows with a custom activity , i'am redirecting the user from one page (Form) to another .
so i want to be able to get how many Steps (Pages) i have .
this is easy however i need to sort those Redirections  on the workflow and then i would know that in workflow the Activity x (which contains a redirection to Page 1 (Step1) will be executed first and then the next redirection etc ...

using Transitions record is not sorted . because in the index[0] i'm getting a transitions which will be executed after some other transitions . so the transitions on the WorkFlowContext  class is not Sorted.


The Composer installer script did not run correctly [exit code 259] and no output was returned.

Hey guys i just got a new device so i tried installing composer on it, so i downloaded it from getcomposer.org
and i tried installing but then after clicking next on the ready to install page, ittook me to the page where the installation progress shows but it ended up with the error message below:
"An error occcured. Clicking retry may resolve this issue.
The Composer installer script did not run correctly [exit code 259] and no output was returned."
Please help

Hi,
I also have the same issue, Please help if there is any solution?

I'm having the same error. But I think It has to do with the windows not composer

We are more than willing to help here, but we can't do anything without a log file. Please create a new issue https://github.com/composer/windows-setup/issues/new/ and follow the instructions.

ya please helppppppppppppppppppp


Consider adding file with specific post-processing functions

Languages and subtitles have already started adding their own specific rules, and more of this could quickly add a lot of overly-specific code to parse.py.
To make parse.py more about general parsing, we could add a new file that holds a list of functions that will run on specific keys after all of after the main parsing is done. Functions could take in self.parts and do whatever they have to do using and changing it.
Not sure if this is worth it, as most rules are fine now, and being able to easily add specific function rules makes it more tempting to add those rather than regexes, which should be preferred as they are simpler to manage in great quantities.
Currently this would be very useful for #14, but might not be necessary in the end - if more of these specific cases come up, this will probably be added. For now, it's just an idea.

To be fair, group, encoder, and episodeName all fall under this post-processing thing. Though episodeName could go to patterns.py.

group, encoder, and some current fixes on subtitles would be split off into here, so will actually be doing this.


Update US19JanTaxR1.md

fixing taxes

Docs Build status updates of commit dabcc20:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

dynamics-gp/payroll/US19JanTaxR1.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit dabcc20:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

dynamics-gp/payroll/US19JanTaxR1.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


Multi datasource support

Description
mds support for neo
cache changes
Issues Resolved
https://github.com/opensearch-project/dashboards-query-workbench/issues/266
Check List

[ ] New functionality includes testing.

[ ] All tests pass, including unit test, integration test and doctest

[ ] New functionality has been documented.

[ ] New functionality has javadoc added
[ ] New functionality has user manual doc added

[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Can we add test details with screenshots or recording?

Uploading Screen Recording 2024-04-25 at 4.50.21 PM.mov…

https://github.com/opensearch-project/dashboards-query-workbench/assets/107440906/61da59b4-55a9-4aed-a05c-0ea932ca2c98

@sumukhswamy Can you please create an issue for fast follow on the linter issues? We can fix these after this PR is merged.


Upgrade PG, selenium-web-driver and JWT[OC-ID]

Description
Bundled following dependbot PRs

https://github.com/chef/chef-server/pull/3360
https://github.com/chef/chef-server/pull/3386
https://github.com/chef/chef-server/pull/3385

Issues Resolved
[List any existing issues this PR resolves, or any Discourse or
StackOverflow discussions that are relevant]
Check List

[ ] New functionality includes tests
[ ] All buildkite tests pass
[ ] Full omnibus build and tests in buildkite pass
[ ] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/main/CONTRIBUTING.md#developer-certification-of-origin-dco
[ ] PR title is a worthy inclusion in the CHANGELOG

Ad-hoc build link - https://buildkite.com/chef/chef-chef-server-main-omnibus-adhoc/builds/4702

Build is green if we use IGNORE_CACHE=true
cc: @dheerajd-msys


Fix dependencies for deploy

Disable optional dependency on pydense CRF.
Docs already mention how to install it correctly (i.e. via pip and not optional dep) so should not cause any issues to just comment it out.

@MMathisLab Just waiting for checks to pass and I will merge; I'll take care of the release as well !


can't install in linux droplet

Hello i just have a Linux server arch : x64 after install i receive this log issues
><EMAIL_ADDRESS>install /root/site/node_modules/sharp
> node-gyp rebuild

make: Entering directory `/root/site/node_modules/sharp/build'
  TOUCH Release/obj.target/libvips-cpp.stamp
  CXX(target) Release/obj.target/sharp/src/common.o
make: g++: Command not found
make: *** [Release/obj.target/sharp/src/common.o] Error 127
make: Leaving directory `/root/site/node_modules/sharp/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:285:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Linux 4.4.0-63-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /root/site/node_modules/sharp
gyp ERR! node -v v6.9.5
gyp ERR! node-gyp -v v3.6.0
gyp ERR! not ok
npm WARN optional SKIPPING OPTIONAL DEPENDENCY<EMAIL_ADDRESS>(node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for<EMAIL_ADDRESS>wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN<EMAIL_ADDRESS>No repository field.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the sharp package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs sharp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls sharp
npm ERR! There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2017-04-14T22_12_20_435Z-debug.log

node v = 6.9.5
python v = 2.7
is there any fix about this?

just figured out, hope helps anyone else
sudo apt-get install make build-essential bcrypt


想加入学习调试技术，怎么联系

If submitting a bug please make sure

[ ] If you are using gdb

[ ] gdb --version >= 7.7.1
[ ] it works on the command line with gdb
[ ] cwd and target are properly set

[ ]  If you are using lldb

[ ] lldb --version >= 3.7.1
[ ] it works on the command line with lldb-mi
[ ] cwd and target are properly set

Screenshots are helpful but not required

您好，可以加下我微信：untilthedayibecome

If submitting a bug please make sure

[ ]  If you are using gdb

[ ]  gdb --version >= 7.7.1
[ ]  it works on the command line with gdb
[ ]  cwd and target are properly set

[ ]   If you are using lldb

[ ]  lldb --version >= 3.7.1
[ ]  it works on the command line with lldb-mi
[ ]  cwd and target are properly set

Screenshots are helpful but not required

您好，可以加下我微信：untilthedayibecome

您好，已加


Access Denied on folders while using --backup

Which version of the AzCopy was used?
10.11.0 and 10.10.0
Note: The version is visible when running AzCopy without any argument
Which platform are you using? (ex: Windows, Mac, Linux)
Windows 10 and WIndows Server 2019
What command did you run?
in my case is a network folder , my account is in the Backup operator group in the domain , ran the command in elevated Powershell sessions (and Cmd too)
Azcopy copy "G:\testfolder" "https:\sto.file.core.windows.net\SharetestSASkey" --backup --recursive --preserve-smb-info=true
Note: Please remove the SAS to avoid exposing your credentials. If you cannot remember the exact command, please retrieve it from the beginning of the log file.
What problem was encountered?
can't copy folders with message Accessing "G:\testfolder"
INFO : Accessing '\?\G:\testfolder' failed with error : open \?\G:\testfolder: access denied
verified my privileges with WHOAMI /priv and SeBackupPrivilege  is listed (disabled but listed which is normal)
How can we reproduce the problem in the simplest way?
re-run the command on a folder where you don't have access rights
Have you found a mitigation/solution?
no

--backup Activates Windows' SeBackupPrivilege for uploads, or SeRestorePrivilege for downloads, to allow AzCopy to see and read all files, regardless of their file system permissions, and to restore all permissions. Requires that the account running AzCopy already has these permissions (for example, has Administrator rights or is a member of the Backup Operators group). This flag activates privileges that the account already has.
Hi @Hamza-Benm, unfortunately we cannot help debug environment issues. Please double check that you have the right permissions.


Adopting boolean module

Could you please review? @bordoley @glennsl  Thanks!

Not directly related, but why are you prefixing the file/module names with b. I only did this in Imm.re for modules that conflicted with existing stdlib names. Also, personally I've decided not to define mli files per private modules and instead expose a single top level module in as single mli. This allowed me to consolidate all documentation in a single place, and also had the nice side effect of allowing my public api to have recursive dependencies which are not actually possible in the underlying definition, because the underlying functions are defined in different modules. For instance, using the private List module in Iterable, while the private List module has a public toIterable function.

@bordoley Thanks for the review. I updated the PR according to it.

The thing is, without a .mli file, I personally find two disadvantages:

access control is limited, we could not have private/helper functions?
I cannot express that Bool is an instance of Comparable? With a .mli file I can just say include Comparable.S with t := t.

This is why I prefer a .mli file.

@dorafmon I'm not arguing against mli files altogether. Instead, I'm arguing that you should add src/containers.mli, and in that file define all the type/module signatures. This will provide you the benefits of ensuring that your underlying implementations implement all the expected public types/signatures (Comparable, etc.) and also centralizes your documentation in a single file. It also allows you to disconnect your public interface from private implementation, such that you can define functions on modules that otherwise would not be possible otherwise to circular dependencies.

@bordoley we have a top level .mli file, it is src/containers.mli

@dorafmon I only see a top level src/containers.ml, not mli. Is that file checked in?

@bordoley ah yes that is the file I am talking about, I agree with you that it is beneficial to have a top level module (in our case it is containers.ml, I will provide a core.ml shortly afterward to isolate out the core modules).


enabled poddisruptionbudget in case more than one broker instance is used

enabled poddisruptionbudget in case more than one broker instance is used

I will have a look at the linting tomorrow morning first thing. It might have to do with my VSCode

@ChrisJBurns can you please have another look?

@sherifkayad  Would you be able to bump the minor version as it's a new feature, I can approve and run the workflow once this is done 👍

@ChrisJBurns can you help me identify why the linting is failing?

locally helm lint is succeeding

@sherifkayad I believe it's trailing whitespaces:
charts/pact-broker/values.yaml
  Error: 348:1 [trailing-spaces] trailing spaces

Can we re-check now?

@ChrisJBurns seems to be passing now 😅

can you check now? again did a sign-off and forced pushing

@sherifkayad Sign-off is a great addition, but I was referring to commit signing. Apologies for being a pain, but it does add a layer of security to the commits.

@ChrisJBurns also done ;) there you go

@sherifkayad Thanks again! All merged :)

Sure thing! Thanks for your time reviewing as well.


Adding support for AfterFind

Resubmitting (https://github.com/ParsePlatform/parse-server/pull/2962) and fix git history issue.
For security reasons, I need to hide certain fields (like email) and rows from the API for use cases which are not supported by the current ACL framework. This plugin will enable all sorts of manipulation. With the promise, one can even augment their parse data !

ok done with all the changes. Hopefully this one is the good one !

https://github.com/parse-server-modules/parse-evolution/commit/b90c0f0ca6f8849f16734069d62c34b8d0508131

@flovilmart thanks for the awesome feedback, this week was crazy , I will fix all those concerns over the week end

@jbpringuey any update?

@jonas-db  almost done, I could not get too much time last week end but will be done this week end

@jonas-db @flovilmart hopefully that one is good.

@flovilmart great catch, fixed !

Thanks @jbpringuey ! Merging now!

thanks !


tf.cast() can't cast string to number

OS: Win10 64bit
Tensorflow version: 1.5.0
It looks like tf.cast() can't cast string to number,  but the documents doesn't explain it.
I found this problem when I migrated older versions of tensorflow code to a new version.
When I used tf.cast() to cast string to float, I got error "Unimplemented: Cast string to float is not supported".
And when I used tf.string_to_number () instead of tf.cast (), the problem was solved.

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce


Fix permissions for product types attribute assign

I want to merge this change because it allows apps to assign attributes to product types.
As far as I can tell there is no real reason not to allow apps to assign attributes to product types.

Fixes #8247
Impact

[ ] New migrations
[ ] New/Updated API fields or mutations
[ ] Deprecated API fields or mutations
[ ] Removed API types, fields, or mutations
[ ] Documentation needs to be updated

Pull Request Checklist

[ ] Privileged queries and mutations are guarded by proper permission checks
[ ] Database queries are optimized and the number of queries is constant
[ ] Database migration files are up to date
[ ] The changes are tested
[ ] GraphQL schema and type definitions are up to date
[ ] Changes are mentioned in the changelog

Looks good, thank for opening the PR!


timezone resource failing on RHEL 8.1

Description
The timezone resource is failing on RHEL 8.1 when it tries to install tzdata
Chef Version

15.4.45
15.7.32
15.8.23

Platform Version
RHEL 8.1
Replication Case
Create a cookbook that has the following resource:
timezone 'UTC' do
  timezone 'UTC'
  action :set
end

Client Output
         * timezone[UTC] action set
           * dnf_package[tzdata] action install

             ================================================================================
             Error executing action `install` on resource 'dnf_package[tzdata]'
             ================================================================================

             RuntimeError
             ------------
             dnf-helper.py had stderr output:

             Traceback (most recent call last):
        File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 566, in load
          ret = self._repo.load()
        File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 503, in load
          return _repo.Repo_load(self)
             RuntimeError: Failed to synchronize cache for repo 'rhel-8-for-x86_64-appstream-rpms'

             During handling of the above exception, another exception occurred:

             Traceback (most recent call last):
        File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 106, in <module>
          query(command)
        File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 52, in query
          sack = get_sack()
        File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 32, in get_sack
          base.fill_sack(load_system_repo='auto')
        File "/usr/lib/python3.6/site-packages/dnf/base.py", line 400, in fill_sack
          self._add_repo_to_sack(r)
        File "/usr/lib/python3.6/site-packages/dnf/base.py", line 135, in _add_repo_to_sack
          repo.load()
        File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 568, in load
          raise dnf.exceptions.RepoError(str(e))
             dnf.exceptions.RepoError: Failed to synchronize cache for repo 'rhel-8-for-x86_64-appstream-rpms'

             Resource Declaration:
             ---------------------
             # In /opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/resource/timezone.rb

       39:           package "tzdata" do
       40:             package_name platform_family?("suse") ? "timezone" : "tzdata"
       41:           end
       42:         end

             Compiled Resource:
             ------------------
             # Declared in /opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/resource/timezone.rb:39:in `block in <class:Timezone>'

             dnf_package("tzdata") do
        package_name "tzdata"
        action [:install]
        default_guard_interpreter :default
        declared_type :package
        cookbook_name "pt_linux"
             end

             System Info:
             ------------
             chef_version=15.8.23
             platform=redhat
             platform_version=8.1
             ruby=ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]
             program_name=/bin/chef-client
             executable=/opt/chef/bin/chef-client

           ================================================================================
           Error executing action `set` on resource 'timezone[UTC]'
           ================================================================================

           RuntimeError
           ------------
           dnf_package[tzdata] (/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/resource/timezone.rb line 39) had an error: RuntimeError: dnf-helper.py had stderr output:

           Traceback (most recent call last):
             File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 566, in load
        ret = self._repo.load()
             File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 503, in load
        return _repo.Repo_load(self)
           RuntimeError: Failed to synchronize cache for repo 'rhel-8-for-x86_64-appstream-rpms'

           During handling of the above exception, another exception occurred:

           Traceback (most recent call last):
             File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 106, in <module>
        query(command)
             File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 52, in query
        sack = get_sack()
             File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 32, in get_sack
        base.fill_sack(load_system_repo='auto')
             File "/usr/lib/python3.6/site-packages/dnf/base.py", line 400, in fill_sack
        self._add_repo_to_sack(r)
             File "/usr/lib/python3.6/site-packages/dnf/base.py", line 135, in _add_repo_to_sack
        repo.load()
             File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 568, in load
        raise dnf.exceptions.RepoError(str(e))
           dnf.exceptions.RepoError: Failed to synchronize cache for repo 'rhel-8-for-x86_64-appstream-rpms'

           Resource Declaration:
           ---------------------
           # In /tmp/kitchen/cache/cookbooks/pt_linux/recipes/default.rb

            11: timezone 'UTC' do
            12:   timezone 'UTC'
            13:   action :set
            14: end
            15:

           Compiled Resource:
           ------------------
           # Declared in /tmp/kitchen/cache/cookbooks/pt_linux/recipes/default.rb:11:in `from_file'

           timezone("UTC") do
             action [:set]
             default_guard_interpreter :default
             declared_type :timezone
             cookbook_name "pt_linux"
             recipe_name "default"
             timezone "UTC"
           end

           System Info:
           ------------
           chef_version=15.8.23
           platform=redhat
           platform_version=8.1
           ruby=ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]
           program_name=/bin/chef-client
           executable=/opt/chef/bin/chef-client

       Running handlers:
       [2020-03-04T02:21:12+00:00] ERROR: Running exception handlers
       Running handlers complete
       [2020-03-04T02:21:12+00:00] ERROR: Exception handlers complete
       Chef Infra Client failed. 2 resources updated in 30 seconds
       [2020-03-04T02:21:12+00:00] FATAL: Stacktrace dumped to /tmp/kitchen/cache/chef-stacktrace.out
       [2020-03-04T02:21:12+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
       [2020-03-04T02:21:12+00:00] FATAL: RuntimeError: timezone[UTC] (pt_linux::default line 11) had an error: RuntimeError: dnf_package[tzdata] (/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/resource/timezone.rb line 39) had an error: RuntimeError: dnf-helper.py had stderr output:

       Traceback (most recent call last):
         File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 566, in load
           ret = self._repo.load()
         File "/usr/lib64/python3.6/site-packages/libdnf/repo.py", line 503, in load
           return _repo.Repo_load(self)
       RuntimeError: Failed to synchronize cache for repo 'rhel-8-for-x86_64-appstream-rpms'

       During handling of the above exception, another exception occurred:

       Traceback (most recent call last):
         File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 106, in <module>
           query(command)
         File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 52, in query
           sack = get_sack()
         File "/opt/chef/embedded/lib/ruby/gems/2.6.0/gems/chef-15.8.23/lib/chef/provider/package/dnf/dnf_helper.py", line 32, in get_sack
           base.fill_sack(load_system_repo='auto')
         File "/usr/lib/python3.6/site-packages/dnf/base.py", line 400, in fill_sack
           self._add_repo_to_sack(r)
         File "/usr/lib/python3.6/site-packages/dnf/base.py", line 135, in _add_repo_to_sack
           repo.load()
         File "/usr/lib/python3.6/site-packages/dnf/repo.py", line 568, in load
           raise dnf.exceptions.RepoError(str(e))
       dnf.exceptions.RepoError: Failed to synchronize cache for repo 'rhel-8-for-x86_64-appstream-rpms'

Actually investigating this more this seems more like an issue with the package resource.  If you have multiple package resources in a recipe, the first one kicks off just fine, but the subsequent ones fail with the same error.

Sorry this is my bad.  Apparently dnf-utils went back to being yum-utils in RHEL 8.1...sigh...I will close this out.


React-Radio-Group Item click event firing twice/click firing after navigating away

Bug report
Current Behavior
I am currently using the Item primitive from react-radio-group to behave as a checkbox. After clicking on an Item, then navigating away and coming back, the onClick event fires again:
https://user-images.githubusercontent.com/57578761/124640316-7a8ded80-de4a-11eb-8b35-0580b6e546b0.mov
I noticed there seems to be an onClick handler on two elements within Item:

Expected behavior
I expect when I assign an onClick handler to an Item for it not to fire twice and/or fire again upon mounting/after navigating away from the page and navigating back.
Reproducible example
CodeSandbox Template
Suggested solution
If I use a onMouseDown event handler instead of an onClick handler, the problem goes away. Wondering if perhaps not passing down the onClick handler to both the button and its children is the answer here. We would ideally want to use onClick instead of onMouseDown for uniformity across our app and ease of testing. If this is some simple HTML/React problem I have overlooked, apologies in advance.
Additional context
N/A
Your environment

Software
Name(s)
Version

Radix Package(s)
react-radio-group
^0.0.14

React
n/a
17.0.1

Browser
Chrome
91.0.4472.114

Assistive tech

Node
n/a
n/a

npm/yarn

Operating System
macOS
Big Sur

Hi @anchung333,

I am currently using the Item primitive from react-radio-group to behave as a checkbox.

Can I ask why you're not just using the Checkbox primitive if that's what you're after?

@anchung333 I agree with Benoit that it looks like Checkbox is what you need but have you tried upgrading to the latest version? We made some changes recently which may have fixed this in Checkbox and RadioGroup.

@benoitgrelard @jjenzz Yes I ended up using the Checkbox primitive, as there was a miscommunication on the packages we should have employed for this feature. Thanks for all of your help and assistance; I will close this issue for now.


BackupVSS - Domino VSS writer sometimes finishes with a snapshot status of "Snapshot created" instead of "Auto recovery snapshot created"

Environment:
Domino 1202FP5 on Windows.
Backup VSS snapshot backups configured for Domino servers using the R1Soft CDP backup and restore software.
Issue:
Domino VSS writer sometimes finishes with a snapshot status of "Snapshot created" instead of "Auto recovery snapshot created"
More info:
The snapshots are done at a drive level, so for example snapshots are taken of the C: drive and the D: drive.
When the snapshot for the D: drive is done, which is where the Domino database files reside, the backup always completes with a status of "Auto recovery snapshot created" (as expected) and we can see in the logs the following:-
13/12/2024 06:02:18   Backup: Ready for VSS Snapshot
13/12/2024 06:02:19   BackupVSS: DominoVSSWriter::OnFreeze Domino in Freeze Mode after 17 seconds!
13/12/2024 06:02:20   BackupVSS: Sending unfreeze to Domino Backup
13/12/2024 06:02:20   Backup: VSS Post Snapshot status reached after 1 seconds!
13/12/2024 06:02:20   Backup: Capturing changes in 535 database(s) [SnapShotMode]
13/12/2024 06:02:23   Backup: Delta file apply completed.
13/12/2024 06:02:24   Backup: VSS Snapshot Backup finalized
13/12/2024 06:02:24   BackupVSS: DominoVSSWriter::OnPostSnapshot Post backup changes applied after 4 seconds.
However, when the snapshot is taken of the C: drive, where no Domino data is stored, the backup always completes with a status of "Snapshot created" and we can see in the logs the following:-
13/12/2024 06:01:38   Backup: Ready for VSS Snapshot
13/12/2024 06:01:38   BackupVSS: DominoVSSWriter::OnFreeze Domino in Freeze Mode after 17 seconds!
13/12/2024 06:01:40   Backup: VSS Post Snapshot status reached after 2 seconds!
13/12/2024 06:01:40   Backup: Capturing changes in 535 database(s) [SnapShotMode]
13/12/2024 06:01:41   BackupVSS: Sending unfreeze to Domino Backup
13/12/2024 06:01:41   Backup: VSS Snapshot Backup finalized
13/12/2024 06:01:41   BackupVSS: DominoVSSWriter::OnPostSnapshot Post backup changes applied after 0 seconds.
Due to the "snapshot status" being reported as "Snapshot created", in the "Logs" views of the "dominobackup.nsf" database, a "timer" icon is displayed instead of a green tick icon, implying something either did not complete or additional action is required.
This doesn't look similar to https://github.com/HCL-TECH-SOFTWARE/domino-backup/issues/23 nor https://support.hcl-software.com/csm?id=kb_article&sysparm_article=KB0105922
Is this working as designed or are there any configuration changes required?
Thanks

Please see comments in Issue #28.
Why do you create two issues. This is confusing.
You claimed it works and you are creating AutoRecovery snapshots in the other issue.
Now you saying here that no AutoRecovery snapshot is created.
I need full logs to see what is happening. Also please start backupvss with the -d flag.
There is a gap in the logic to continue when no snapshot backup is available.
The backup continues and generates delta files -- which is not what we want for a snapshot backup.
I need a full log and not just logs of what you think what the problem is.
Please don't open two issues at the same time for related problems you see which even contradict each other.

Also please explain what sometimes means. This implies the AutoRecovery snapshot works sometimes with this backup vendor?
We need more information to help you. Can you provide details how often it fails and how often it works and how it looks in both cases?
Thanks