[eframe native-windows] Entire program crashes when eframe viewport is resized from a corner

Describe the bug

I am using eframe version 0.26.2 on Windows 11. Whenever I resize the eframe window from the corner, the entire program crashes with the exit code 0xc0000005 which is STATUS_ACCESS_VIOLATION. No panic message is printed to the console. This is the same bug I found in an earlier project of mine that used version 0.25.0.
Video showcasing the bug
https://github.com/emilk/egui/assets/82794982/258ef1e8-fdd6-4739-8540-2b4fe33552a1
To Reproduce
Steps to reproduce the behavior:

Create a new NativeOptions variable, with a resizable viewport
Open up a new eframe window using eframe::run_native() using the same NativeOptions
Use your mouse to drag any of the four corners of the eframe window in any way

Expected behavior

When I resize the window from the corner, I am expecting it to successfully resize as I drag my mouse, without any program crashes.
Screenshots

Here are the screenshots of the exit codes cargo run gave me

Desktop:

OS: Windows 11
Version: 23H2 build 22631.3085
CPU: Core i9 10900k

Additional context

This bug is forcing me to make a UI with a fixed viewport size.
This is not an issue about debug or release build profiles, as it happens in both of them.
This is also not an issue about the terminal in VSCode or compiling without #![windows_subsystem = "windows"], since the issue remains in the VSCode terminal, in the native windows terminal, compiling with the "windows" windows subsystem, and compiling without said attribute. I testes the issue with all of these.
This issue does not affect fullscreening the window. That is safe.
I don't know if I am doing something wrong or if my OS configuration is messed up, or if this is an actual issue not fixed, because this seems like a large issue for eframe, yet I see no issue opened or closed about it. I am pretty sure resizing a window is not supposed to crash its entire program with a memory related status code.
This issue is coming from a personal project of mine to help me learn more about what I can do in Rust.

Have you tried the wgpu backend?

How would I use it natively?

Just enable the wgpu feature of eframe

Thank you!
Adding the wgpu feature does prevent the crashing, but it does also make the viewport look slightly stretched while I resize it, as well as doubling the file size of the output binary. Both of these I don't really like.
Not much of an issue though, and I can use it for now, but I would prefer if the default backend worked properly (no crashing when resizing from a corner)

@OSCH2008
If you could make a simple example with one file (panic occurs when resizing), it would be helpful to check.

I tried running the hello_world example on Windows 11 with the default features, and it didn't crash when resizing. Have you tried that? You have another dependency called screen-info that has a lot of unsafe code. Does it crash without that dependency as well? If you're only using it to center the window on the screen at startup, you can do that by passing centered: true to NativeOptions.

I did use screen-info to calculate the center of my screen for the window, because I didn't like the inaccuracy of centered = true in one of my previous projects. But removing that dependency and using centered = true instead still did not stop the crashes.

@rustbasic
struct MainWindow;
impl MainWindow {
    fn create(_cc: &eframe::CreationContext<'_>) -> Self {
        Self
    }
}
impl eframe::App for MainWindow {
    fn update(&mut self, ctx: &eframe::egui::Context, _frame: &mut eframe::Frame) {
        eframe::egui::CentralPanel::default().show(ctx, |_ui| {
            // empty app
        });
    }
}

fn main() -> eframe::Result<()> {
    let options = eframe::NativeOptions::default();
    eframe::run_native("vscode", options, Box::new(|cc| Box::new(MainWindow::create(cc))))
}

using eframe v0.26.2

@OSCH2008
With the above source code, I tested it with egui v0.26.2 on Windows 10.
There is nothing wrong.
I added one Viewport as follows and tested it all, and there was no problem.
struct MainWindow;
impl MainWindow {
    fn create(_cc: &eframe::CreationContext<'_>) -> Self {
        Self
    }
}
impl eframe::App for MainWindow {
    fn update(&mut self, ctx: &eframe::egui::Context, _frame: &mut eframe::Frame) {
        eframe::egui::CentralPanel::default().show(ctx, |ui| {
            ui.label("Main : Corner resize TEST");
            dev_viewport_immediate(ui);
        });
    }
}

fn main() -> eframe::Result<()> {
    let options = eframe::NativeOptions::default();
    eframe::run_native("vscode", options, Box::new(|cc| {
        Box::new(MainWindow::create(cc))
    }))
}

pub fn dev_viewport_immediate(ui: &mut egui::Ui) {

    let title = "Immediate Viewport";
    ui.ctx().show_viewport_immediate(
        egui::ViewportId::from_hash_of(title.clone()),
        egui::ViewportBuilder::default()
            .with_title(title.clone())
            .with_inner_size([800.0, 600.0]),
        |ctx, class| {
            assert!(
                class == egui::ViewportClass::Immediate,
                "This egui backend doesn't support multiple viewports"
            );

            egui::CentralPanel::default().show(ctx, |ui| {
                ui.label("Viewport : Corner resize TEST");
            });

            if ctx.input(|i| i.viewport().close_requested()) {
                // Tell parent viewport that we should not show next frame:
            }
        },
    );
}

I copied the code and ran it on my machine, and I still had the same problem with both viewports. It might be an issue with Windows 11 or just my machine.

I copied the code and ran it on my machine, and I still had the same problem with both viewports. It might be an issue with Windows 11 or just my machine.

cargo update
After trying once, try compiling again.

@rustbasic

still the same issue

@khyerdev I am trying to repro on windows 11. I used the 20 line source that was posted above. Can you post your cargo.toml file. I have a bare minimum
[dependencies]
eframe = {version="=0.26.2", default-features=false, features=["glow"]}
egui = {version="=0.26.2", default-features=false}

program runs for me, also works if I allow all defaults.
Can you run it in vscode debugger. You can see the failing stack trace. I edited the code to force a 0xc00005, this is what vscode shows

could you post a similar screenshot, it would be very helpful.

@pm100 hi
i stopped using vscode a long time ago and havent even used windows much, so i probably wont be able to give my stacktrace
but i can link the repo i was working on when i encountered this bug
https://github.com/khyerdev/whisperer
i only made this for my ap csp test so dont judge it too much

@khyerdev I am sure you are fed up with this by now but nobody else can repro. But Can I ask one more effort from you.
Its fairly  easy to tell windows to generate a mini dump when an app crashes
Use procdump from the sysinternals tools set - https://learn.microsoft.com/en-us/sysinternals/downloads/procdump
You can run it without installing it via \\live.sysinternals.com\tools\procdump
Start your app, suppose its called crasher then run
\\live.sysinternals.com\tools\procdump -e crasher.exe
in a different console window. procdump is now watching the app and waiting for it to crash. Note . you must start the app first otherwise procdump will say it cant find the app.
Now crash the program by resizing the window , procdump will tell you it created a mindump file - about 5-10mb and where it is.
Then upload that dump somewhere (github, google drive, dropbox....) and let me know
Tx

well if nobody else can repro its probably an issue with just my machine
im sorry

I am also struggling with this issue. I did not use egui when this problem arose, but I stumbled upon this issue and using the example from @rustbasic I ran into the same problem. Both causing a crash with the same exit code. Originally I was using vello, but figured out the problem was with wgpu. When resizing the window and making lots of redraws, I found the crashes to happen during wgpu::SurfaceTexture::present(). I have been getting both exit code 0xc0000005 and 0xc000041d. This does not happen when using Vulkan as backend, but does when using OpenGL or DX12. I don't know more about what is causing this. @khyerdev if you have some more knowledge I would love to hear :)

use eframe::{self};
use eframe::egui::{self, CentralPanel, Sense, UiBuilder, ViewportCommand, RichText};

struct MyApp {
    window_size: egui::Vec2,
}

impl Default for MyApp {
    fn default() -> Self {
        MyApp {
            window_size: egui::vec2(400.0, 300.0),
        }
    }
}

impl eframe::App for MyApp {
    fn clear_color(&self, _visuals: &egui::Visuals) -> [f32; 4] {
        egui::Rgba::TRANSPARENT.to_array() // Make sure we don't paint anything behind the rounded corners
    }

    fn update(&mut self, ctx: &egui::Context, frame: &mut eframe::Frame) {
        custom_window_frame(ctx, frame, "Custom Window", &mut self.window_size, |ui| {
            ui.label(RichText::new("This is bold").strong());
        });
    }
}

fn custom_window_frame(
    ctx: &egui::Context,
    frame: &mut eframe::Frame,
    title: &str,
    window_size: &mut egui::Vec2,
    add_contents: impl FnOnce(&mut egui::Ui),
) {
    let panel_frame = egui::Frame {
        fill: ctx.style().visuals.window_fill(),
        rounding: 5.0.into(),
        stroke: ctx.style().visuals.widgets.noninteractive.fg_stroke,
        outer_margin: 0.5.into(), // so the stroke is within the bounds
        ..Default::default()
    };
    // panel_frame.

    CentralPanel::default().frame(panel_frame).show(ctx, |ui| {
        let mut app_rect = ui.max_rect();

        let title_bar_height = 25.0;
        let title_bar_rect = {
            let mut rect = app_rect;
            rect.max.y = rect.min.y + title_bar_height;
            rect
        };

        title_bar_ui(ui, title_bar_rect, title);

        // Add the contents:
        let content_rect = {
            let mut rect = app_rect;
            rect.min.y = title_bar_rect.max.y;
            rect
        }
        .shrink(4.0);
        let mut content_ui = ui.new_child(UiBuilder::new().max_rect(content_rect));
        add_contents(&mut content_ui);

        // Visual indicator for resizing
        // Resize interaction on bottom-right corner
        let resize_area_size = 10.0;
        let resize_rect = egui::Rect {
            min: app_rect.right_bottom() - egui::vec2(resize_area_size, resize_area_size),
            max: app_rect.right_bottom(),
        };

        let resize_response =
            ui.interact(resize_rect, egui::Id::new("resize_handle"), Sense::drag());
        if resize_response.dragged() {
            if let Some(pointer_pos) = resize_response.hover_pos() {
                let delta = pointer_pos - app_rect.right_bottom();

                // Update window size
                window_size.x = (window_size.x + delta.x).max(200.0); // Min width
                window_size.y = (window_size.y + delta.y).max(150.0); // Min height

                // Update the application rectangle

                // Update the app rectangle based on the new window size
                ctx.send_viewport_cmd(egui::ViewportCommand::InnerSize(*window_size));

                // ui.ctx().request_repaint();
            }
        }

        if resize_response.hovered() {
            ui.painter()
                .rect_filled(resize_rect, 1.0, egui::Color32::from_white_alpha(128));
        }
    });
}

fn title_bar_ui(ui: &mut egui::Ui, title_bar_rect: eframe::epaint::Rect, title: &str) {
    use egui::{vec2, Align2, FontId, Id, PointerButton, Sense, UiBuilder};

    let painter = ui.painter();

    let title_bar_response = ui.interact(
        title_bar_rect,
        Id::new("title_bar"),
        Sense::click_and_drag(),
    );

    // Paint the title:
    painter.text(
        title_bar_rect.center() - egui::vec2(title_bar_rect.width() / 3.0, 0.0),
        Align2::CENTER_CENTER,
        title,
        FontId::proportional(15.0),
        ui.style().visuals.text_color(),
    );

    // Paint the line under the title:
    painter.line_segment(
        [
            title_bar_rect.left_bottom() + vec2(1.0, 0.0),
            title_bar_rect.right_bottom() + vec2(-1.0, 0.0),
        ],
        ui.visuals().widgets.noninteractive.bg_stroke,
    );

    // Interact with the title bar (drag to move window):
    if title_bar_response.double_clicked() {
        let is_maximized = ui.input(|i| i.viewport().maximized.unwrap_or(false));
        ui.ctx()
            .send_viewport_cmd(ViewportCommand::Maximized(!is_maximized));
    }

    if title_bar_response.drag_started_by(PointerButton::Primary) {
        ui.ctx().send_viewport_cmd(ViewportCommand::StartDrag);
    }

    // Close button for the window
    ui.allocate_new_ui(
        UiBuilder::new()
            .max_rect(title_bar_rect)
            .layout(egui::Layout::right_to_left(egui::Align::Center)),
        |ui| {
            ui.spacing_mut().item_spacing.x = 0.0;
            ui.visuals_mut().button_frame = false;
            ui.add_space(8.0);
            close_button(ui);
        },
    );
}

fn close_button(ui: &mut egui::Ui) {
    use egui::{Button, RichText};

    let button_height = 12.0;

    let close_response = ui
        .add(Button::new(RichText::new("❌").size(button_height)))
        .on_hover_text("Close the window");
    if close_response.clicked() {
        ui.ctx().send_viewport_cmd(egui::ViewportCommand::Close);
    }
}

fn main() -> eframe::Result {
    let options = eframe::NativeOptions {
        viewport: egui::ViewportBuilder::default()
            .with_decorations(false) // Hide the OS-specific "chrome" around the window
            .with_inner_size([400.0, 600.0]) // Set the initial size
            .with_min_inner_size([200.0, 300.0]) // Minimum size for the window
            .with_transparent(true), // To have rounded corners we need transparency
        ..Default::default()
    };

    eframe::run_native(
        "Custom Window with Close Button",
        options,
        Box::new(|_cc| Ok(Box::<MyApp>::default())),
    )
}

** i got the same issue here**

My toml file code

[package]
name = "egui-ui"
version = "0.1.0"
edition = "2021"

[dependencies]
eframe = "0.29.1"
egui = "0.29.1"

When i resize it very fast then the application just crashes.
Any solution??

I am guessing sending the command to resize the viewport on fast resize(each change in dimensional unit sends the command to viewport to resize)  the application can not process and get crashes.
// Update the app rectangle based on the new window size
                ctx.send_viewport_cmd(egui::ViewportCommand::InnerSize(*window_size));


hover_legend Triggers Button

I've run into an issue with using the hover_legend and a button in the same plot. If I add both of them, the button function is triggerd constantly while im hovering the button. As I'm new to using this wonderful library, I'm not sure if this is a but or if there is something I'm missing. I looked for the option to exclude objects from the hover_legend or limit it to specific objects but didn't find anything.
I added the hover_legend to the Button example code to show the issue.
def buttonfunc(obj, ename):
    mesh.alpha(1 - mesh.alpha())  # toggle mesh transparency
    bu.switch()                   # change to next status
    printc(bu.status(), box="_", dim=True)

# Load a mesh and set its color to violet
mesh = Mesh(dataurl+"magnolia.vtk").c("violet").flat()

# Create an instance of the Plotter class with axes style-11 enabled
plt = Plotter(axes=11)

# Add a button to the plotter with buttonfunc as the callback function
bu = plt.add_button(
    buttonfunc,
    pos=(0.7, 0.1),   # x,y fraction from bottom left corner
    states=["click to hide", "click to show"],  # text for each state
    c=["w", "w"],     # font color for each state
    bc=["dg", "dv"],  # background color for each state
    font="courier",   # font type
    size=30,          # font size
    bold=True,        # bold font
    italic=False,     # non-italic font style
)

# Show the mesh, docstring, and button in the plot
plt.add_hover_legend().show(mesh, __doc__).close()

Thanks @MarkFerr for reporting - it's definitely a bug, I will have time to look into it in the weekend!

Hey, I indeed looked into it and the reason is that Button and hover legend both invoke a "PickEvent" so unfortunately they cannot be disentangled at present unless a brand new interactor is written...
I'm afraid this will remain as a limitation of the library :(
Let's keep the issue open so that I remember about it.
Meanwhile you may want to explore other ways of visualizing auxiliary info like eg flagpole(), flagpost(), caption() etc..

Thanks for the update! :)


Signature help not closing properly

Hello,
I've a problem, with the signature help window, it overlaps with the autocomplete window. Here is what I do:

Call signature help in normal mode.
Close the window with Esc or gq.
Go into the insert mode and type any key between my parenthesis.

After that the signature help window is opend again + if I type a character that matches with my autocomplete, this window will open too:

But when I go to the normal mode again and then to the insert mode, it works fine and only the autocompletion is shown.
I'm glad for any help.
Greetings ulfbert

Are you talking about the behaviour that was added by PR #622?
It looks like you're getting an error from asyncomplete in your screenshot, is that the actual problem here?

I dont really understand the mentioned PR. I think I dont use the :OmniSharpFindSymbol function or do I? I'm not too deep in this topic, if I'm wrong correct me please. But I think, the problem is in the omnisharp-vim plugin. But I could be wrong.
That is how I see it: I call the signature_help function which opens a popup-window. After closing it, it should be closed and not re-open automatically.
Could this the reason why: https://github.com/OmniSharp/omnisharp-vim/issues/579 ?
Greetings ulfbert

The behaviour you are describing doesn't sound quite right, no. I'm not blaming asyncomplete, but the screenshot you've shared to demonstrate the issue does have an asyncomplete error showing at the bottom, so I'm wondering if it is related - do you always get an asyncomplete error when this happens?


VideoSurferAgent -> VideoSurfer

This pull request includes changes to the python/packages/autogen-ext/src/autogen_ext/agents/video_surfer/_video_surfer.py file to rename the VideoSurferAgent class to VideoSurfer. The changes ensure consistency in the naming convention across the file.
Class renaming:

python/packages/autogen-ext/src/autogen_ext/agents/video_surfer/_video_surfer.py: Renamed VideoSurferAgent class to VideoSurfer and updated all references to this class accordingly. [1] [2] [3] [4] [5] [6]

also update the init.py file for video_surfer also

done.


fix(iceberg): fix iceberg engine table time travel

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

https://github.com/risingwavelabs/risingwave/issues/19418
Fix time travel for iceberg. Iceberg supports different time travel syntax from hummock table.

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added test labels as necessary. See details.
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

Iceberg supports different time travel syntax from hummock table.

So is it changed to have the same syntax or not?

Iceberg supports different time travel syntax from hummock table.

So is it changed to have the same syntax or not?

They don't share the same syntax. For example, hummock table time travel doesn't support FOR SYSTEM_VERSION AS OF 123456 while iceberg table doesn't support FOR SYSTEM_TIME AS OF PROCTIME()


java.lang.IncompatibleClassChangeError: Found interface com.google.android.gms.location.ActivityRecognitionClient, but class was expected (declaration of 'com.google.android.gms.location.ActivityRecognitionClient'

I see the following crash as soon as i try to use the plugin:
java.lang.IncompatibleClassChangeError: Found interface com.google.android.gms.location.ActivityRecognitionClient, but class was expected (declaration of 'com.google.android.gms.location.ActivityRecognitionClient'
I am running the latest plugin version with these android sdk settings:
compileSdkVersion 33
targetSdkVersion 33
minSdkVersion 23

Trying to upgrade my google play services location to this, did also not work:
    implementation "com.google.android.gms:play-services-location:21.0.1"

is there any way to resolve this?

I managed to resolve it by downgrading the version to 20.
Ideally we can upgrade the plugin to work with version 21.

Mhmm... the same issue here, on a different plugin a similar error appeared, where the issue was a rework of the API. See:
Lyokone/flutterlocation#810
The link posted there to the Google Blog thing also mentions a rework of the ActivityApi if I read it correctly.
I consider forking it, but my android developer skills are rather limited rn.

I also have the same issue in my project that uses geolocator and this flutter_activity_recognition package. In my attempt to solve this issue, I created an entirely new project that contains only example code from flutter_activity_recognition and it works perfectly fine. Still, as soon as I include geolocator in my project, it quickly ran into this error on the app startup. That's when I knew there were some incompatibility issues between these 2 packages.
Then, I see this Github Issue, and this solved everything for me.

same error

I've forked it and changed the version code of the native Code and it works for now. You could try using it, by calling it from github directly.

check flutter_activity_recognition: ^2.0.0


writeTextFile: add postBuild

Description of changes
Add postBuild as a way to specify arbitrary programmatical modification of the text file (or even the output).
Initial effort for #223144

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[X] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

Can't checkPhase be used? It seems to do the exact same thing except it has a different name.

Technically yes, but it might be surprising if the output is altered inside checkPhase. Adding an additional phase would also make overriding easier.

i was wondering if including a preInstall would also be possible here, it seems like both pre- and post-processing text built by this would be useful

it seems like both pre- and post-processing text built by this would be useful

It's natural to expect preInstall when postInstall exists. However, the installation here is totally independent from the environment, and there's literally nothing before "installation" in current implementation. How could preInstall be useful here?

in my case, it would be useful to put the text processing (argbash stuff) in preInstall and change writeShellApplication's modifications (below) to postInstall
      text = ''
        #!${runtimeShell}
        set -o errexit
        set -o nounset
        set -o pipefail
      '' + lib.optionalString (runtimeInputs != [ ]) ''

        export PATH="${lib.makeBinPath runtimeInputs}:$PATH"
      '' + ''

        ${text}
      '';

that way argbash is execute on the raw input, and the modifications to set the shell and shell options are prepended after the argbash stuff is done

What could I do to help complete and ship this? Either the current version,  or the preInstall + postInstall version would be super useful for me.

Rename to postBuild, for it is done before checkPhase.

Thanks @ShamrockLee! Do you need to tag ofborg again?

Thanks @ShamrockLee! Do you need to tag ofborg again?

Let's see if OfBorg would re-run the test case automatically.

@ofborg build tests.writeTextFile

@ofborg build tests.trivial-builders.writeTextFile

@ofborg build tests.trivial-builders.writeTextFile

@ofborg build tests.trivial-builders.writeTextFile

https://github.com/ofborg build tests.trivial-builders.writeShellApplication

The build failure of tests.trivial-builders.writeTextFile on Darwin and tests.trivial-builders.writeShellApplication on aarch64-linux are caused by 3600-second time out.
error: building of '/nix/store/cjr6qqk9q4a91l9v3866p5ixxa9igzil-llvm-16.0.6.drv!dev' from .drv file timed out after 3600 seconds

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/2978

It's a little bit weird that the postBuild script is dealing with $out, which is in /nix/store.  That's very contrary to how the generic builder works.
What do you think about using postInstall instead?
If there are checks that need to run after the postprocessing step, they would go in installCheckPhase.  So you'd have to add that as an extra parameter.  But then everything would work the same way as the standard builder and we won't have to memorize special exceptions like "postBuild deals with $NIX_BUILD_TOP, except for writeTextFile which is different".
Sorry this review is kind of dragging on and on.  Stuff like this is hard to change once it's exposed to code outside nixpkgs so it pays to get it right the first time.  Thanks for being patient.

@amjoseph-nixpkgs If I had a time machine, I would name checkPhase as installCheckPhase, and then we could name the target modification block as postInstall without confusion. (As @vcunat have mentioned, people expects checkPhase to come before postInstall.)
Would it be possible if we just rename checkPhase to installCheckPhase, and add an alias in the set pattern of writeTextFile?

(As @vcunat have mentioned, people expects checkPhase to come before postInstall.)

Hrm, really?  I don't... a lot of software can do make test without doing make install.

Would it be possible if we just rename checkPhase to installCheckPhase

That would be a behavior change for anybody using writeTextFile, which is a lot of code (much of it outside nixpkgs)... not sure that's a great idea.
How about adding both installCheckPhase and postInstall as arguments to writeTextFile?

If we consider
echo -n "$text" > "$target"

to be something that falls inside installPhase, the current checkPhase would essentially be installCheckPhase, and there's nothing to modify or check before the installation.
To add installCheckPhase, the backward-compatible way would be making checkPhase an alias to installCheckPhase.
Hope that no one would attempt to pass nativeInstallCheckInputs to <pkg>.overrideAttrs of the result derivation.

@wegank added the stale label to #223144 yesterday. That PR depends on this writeTextFile change to be able to ship it. @ShamrockLee is it clear what we need to do to ship this writeTextFile change? Is it possible to ship it?

Merge conflict, please rebase.

In this round of patch, I name the new phase postInstall and rename checkPhase to installCheckPhase, to align with the order of phases in In "normal stdenv".

I'm doing a tree-wide fix regarding to the warnings caused by renaming.

I'm doing a tree-wide renaming fix.

Tree-wide renaming done.

@vcunat Could you help take a look? This is the only way I could think of to satisfy both "normal stdenv order of phases" and "writing to $out as install" rules.

i was wondering if including a preInstall would also be possible here, it seems like both pre- and post-processing text built by this would be useful

@ldub You're right that pre- and post-pahases are expected to appear in pairs. Even if nothing has been created before installation, preInstall could still be used to set variables or settings.

in my case, it would be useful to put the text processing (argbash stuff) in preInstall and change writeShellApplication's modifications (below) to postInstall
      text = ''
        #!${runtimeShell}
        set -o errexit
        set -o nounset
        set -o pipefail
      '' + lib.optionalString (runtimeInputs != [ ]) ''

        export PATH="${lib.makeBinPath runtimeInputs}:$PATH"
      '' + ''

        ${text}
      '';

that way argbash is execute on the raw input, and the modifications to set the shell and shell options are prepended after the argbash stuff is done

That sounds like a valid use case. I'll add preInstall also.

Sorry for the noise. I forgot that this PR targets staging.

Pinging this PR, @ShamrockLee could you help us get a review from one of the required reviewers?

Pinging this PR, @ShamrockLee could you help us get a review from one of the required reviewers?

I'll file an issue trying to build consensus on this topic. (A Nix RFC seems overkill for such a minor design decision.)
Meanwhile, I would suggest that you exploit checkPhase when implementing writeArgbashShellApplication to work around the lack of postBuild.

Hey @shamrocklee did you ever file that issue? If so could you link it?

Hey @ShamrockLee did you ever file that issue? If so could you link it?

Oops! I'll do it right away.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/the-future-of-writers-writetextfile-based-build-helpers-and-and-their-checkphase/54372/1

@ldub I created a Discourse topic, as the NixOS forum seems more suitable for general discussion.


fix: we can't implement limit-req now

Codecov Report

Merging #17 (e783b97) into master (3374511) will decrease coverage by 0.40%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##           master      #17      +/-   ##
==========================================
- Coverage   78.81%   78.41%   -0.41%
==========================================
  Files          10        9       -1
  Lines         505      491      -14
==========================================
- Hits          398      385      -13
+ Misses         84       83       -1
  Partials       23       23

Impacted Files
Coverage Δ

cmd/go-runner/main.go
35.38% <ø> (ø)

internal/server/server.go
65.21% <40.00%> (-1.75%)
:arrow_down:

internal/plugin/plugin.go
77.35% <100.00%> (+0.43%)
:arrow_up:

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 3374511...e783b97. Read the comment docs.


Running install script on Centos8 shows a weird error

curl -L https://install.quickwit.io | sh => ”weird” 'need bc' error

The command bc was missing from the system (or bc -v failed...). I improved the error message. Closed via ab97299fadae2b3984978758f929393bc814e434.


remove default limits for endpoint-metrics-operator and metrics collector

https://github.com/open-cluster-management/backlog/issues/13102
Signed-off-by: Song Song Li<EMAIL_ADDRESS>

/test test-e2e

/hold

/test test-e2e

thanks for the @clyang82 suggestion, let me new another PR and close this one.


Don't duplicate resources that are referenced multiple times

Fixes https://github.com/AnalyticalGraphicsInc/gltf-pipeline/issues/416
Follow up of https://github.com/AnalyticalGraphicsInc/gltf-pipeline/pull/474 which was closed. This has the same basic idea but extends it to work with separate resources.

@likangning93 all images, shaders, buffers now pass through writtenResourceMap, but yeah, ultimately only images and shaders will use it, not buffers.
This change handles all your comments and makes https://github.com/CesiumGS/gltf-pipeline/pull/483#discussion_r399859575 OBE.

Thanks @lilleyse!


Fix: Remove <bits/stdc++.h> header because we were simply not using it.

Description:

Remove bits/stdc++.h because we were simply not using it. In this case, simply using iostream does the work

Initialized res with INT_MIN because it's generally less error-prone when used with max. Since, we are using limits, we might as well include limts.h

Checklist

[x] Added description of change
[x] PR title follows semantic commit guidelines
[x] Search previous suggestions before making a new one, as yours may be a duplicate.
[x] I acknowledge that all my contributions will be made under the project's license.

@Panquesito7 I'm closing this pull request. It seems better if I rewrite this using C++ containers.

@Panquesito7 I'm closing this pull request. It seems better if I rewrite this using C++ containers.

I am already working on that. Check the Discord for more information. Thanks. 🙂


Route for getPlataformFromMessage

I'd like to have a route request this feature from wppconnect

What does that mean?
What you expect to get?

I'd like to use a route /api/session/getPlataform or any other route sending the message id on body, and so get the result as described ON wppconnect-server and get the plataform from sender. I appreciate your reply on this.


chore: setup validation in routes

Fixes #46
Short description of what this resolves:
Changes proposed in this pull request:

Checklist

[x] My branch is up-to-date with the Upstream master branch.
[x] The acceptance, integration, unit tests and linter pass locally with my changes
[x] I have added tests that prove my fix is effective or that my feature works
[x] I have added necessary documentation (if appropriate)

ignore these last 2 commits. I have committed them by mistake in the same branch


Use free Llama 3 on Groq instead of OpenAI

If using OpenAI is too expensive for you to try out examples with long text, you can create a free API key in seconds at https://console.groq.com/keys using your gmail or github then make the changes below:

run:
pip install groq

Add a new line in your .env file (renamed from .env.sample, originally with a line starting with "OPEN_API_KEY"):
GROQ_API_KEY="your_groq_api_key"

In src/translation_agent/utils.py, make 3 changes:

change import openai to from groq import Groq
change client = openai.OpenAI(api_key=os.getenv("OPENAI_API_KEY")) to
client = Groq(api_key=os.getenv("GROQ_API_KEY"))
change model: str = "gpt-4-turbo" to model: str = "llama3-8b-8192" or model: str = "llama3-70b-8192"

Now running python examples/example_script.py will use Llama 3 on Groq for free.

Add one more line: change model_name="gpt-4" to model_name="llama3"

Why did I receive this error after following the instructions? ModuleNotFoundError: No module named 'groq'.

@jeffxtang Thanks for the suggestions!
Adding support for Llama would be a great extension to the codebase. Would you like to submit a PR with the proposed extension incorporating the Groq APIs? Much appreciated.
@icecreamzhao good catch!

one error occured when using groq.


Uncaught (in promise) SyntaxError: Invalid left-hand side in assignment (at chunk ...)

Describe the bug
Since you guys have closed this issue and I can't comment or ask for advice how the OP resolved the issue, I want to let you know that this bug still exists in vite 5.0.0:

"development" = "development" does not seem right indeed, whatever this is compiled/bundled from.
Reproduction
cannot provide a reproduction, I am experiencing this during migration from vue-cli in a large application which I cannot share online
Steps to reproduce
I don't think you can reproduce it, but perhaps you can look at the screenshot and find the bug in your source code
System Info
"devDependencies": {
    "@vitejs/plugin-vue2": "^2.2.0",
    "unplugin-vue-components": "^0.25.2",
    "vite": "^5.0.0",
    "vite-plugin-checker": "^0.6.2",
    "vite-tsconfig-paths": "^4.2.1",
    "vue-tsc": "^1.8.22"
  }

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

The issue in the linked issue was that they were importing @vitejs/plugin-vue in the browser code. You could check if you are doing something similar. We still need a minimal reproduction to be able to check this issue.

@patak-dev you are right, that was also the issue for me, sorry for the oversight. I had moved parts of the vite configuration into a common module so multiple vite.config.ts could share some code and that common lib was also used by the frontend


Add missing SHA3 digests to BcImplProvider.createDigest()

Hey,
I noticed that implementations for the SHA3 algorithm family were missing from the createDigest() method, so I added them here.
I hope I used the right Digest class and instantiation method.

Thanks. Merged!


[BugFix] Two problem for restore (#31790) (#32353)

Problem 1:
The problem between restore and tablet meta checkpoint thread still happen, some case does not cover yet.
Problem 2:
If Tablet report and restore execute concurrently, the restored replica will be set bad and lost replica
Fixes #issue
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[ ] Yes, this PR will result in a change in behavior.
[x] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[ ] 3.2
[ ] 3.1
[ ] 3.0
[ ] 2.5

[FE Incremental Coverage Report]
:heart_eyes: pass : 16 / 17 (94.12%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/catalog/TabletInvertedIndex.java
16
17
94.12%
[545]

[BE Incremental Coverage Report]
:disappointed: fail : 2 / 4 (50.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
src/runtime/snapshot_loader.cpp
0
2
00.00%
[685, 686]

:large_blue_circle:
src/storage/tablet.cpp
2
2
100.00%
[]


Cache model collection to prevent model attribute accessor from being…

… called multiple times.

This seems like a micro-optimisation to me. What is the problem with the correct code?

Going to leave this as it is for now.

I'm able to replicate the issue of the original poster.
It seems like if you have an accessor:
public function getColorNameAttribute() {
   Log::info('here');
}

Then running collect($model) will re-run that accessor multiple times. Whereas the optimization provided by the poster results in it being run once.
Haven't had a chance to dive deeper but case across this today while debugging another application which utilizes this package.

Reason: a model isn't a collection so toArray() is called to make it collectable which calls all accessors (expected).
So yeah, this will be a fix. I just recommend to rename the variable to $collection.

Can you please accept this pull request?
This can cause quite a bit of overhead and the simple solution provided by @nealyip  fixes the problem.
At the moment, if there is an accessor that does an extra query, this query will be repeated by the number of logged attributes - can easily do over 30 duplicate queries.

@Gummibeer @freekmurze do we have any update on the issue? There is also #443 that addresses this problem

@iraklisg sorry but I can't/won't decide this here - for me this is a fix for the failing tests you've linked.
I've also worked on this and got the best result with following code - this PR requires the attribute to be already appended. But if you want to log a mutated attribute which isn't appended this won't work - so my unittest still fails with this PR because it doesn't use the protected $appends.
public static function logChanges(Model $model): array
{
    $changes = [];
    $attributes = $model->attributesToBeLogged();
    $model = clone $model;
    $model->setHidden(array_diff($model->getHidden(), $attributes));
    $model->append(array_filter($attributes, function ($key) use ($model) {
        return $model->hasGetMutator($key);
    }));
    $collection = collect($model);

    foreach ($attributes as $attribute) {
        if (str_contains($attribute, '.')) {
            $changes += self::getRelatedModelAttributeValue($model, $attribute);
        } else {
            $changes += $collection->only($attribute)->toArray();
        }
    }

    return $changes;
}

This will append all attributes to be logged with a mutator to have the corresponding value in the collection. And it also removes all hidden attributes if they are listed as attributes to be logged.


Initialize the Shading Override menu according to the scene settings when loading a scene from disk

Implemented in commit e2428e8ee8215abe9fd70aefcdded11d486220d6 (on the Wreck branch; to be ported to trunk soon).


Can't generate multiple openapi with different configurations

I'm trying to generate openapi files with swagger-maven-plugin (version 2.2.9), the purpose is to split api's into different openapi files because in my application there is too much APIs and that slows down loading of webpage of swagger UI.
The issue is, even though I set different openapi configuration in different executions, it is always the first one which is picked and used to generate the file.
Here is my maven configuration:
<plugin>
    <groupId>io.swagger.core.v3</groupId>
     <artifactId>swagger-maven-plugin</artifactId>
     <executions>
          <execution>
          <id>openapi1</id>
          <phase>compile</phase>
          <goals>
              <goal>resolve</goal>
          </goals>
          <configuration>
          <outputFileName>openapi1</outputFileName>
          <configurationFilePath>${project.build.directory}/classes/openapi-configuration1.json</configurationFilePath>
          </configuration>
        </execution>
        <execution>
               <id>openapi2</id>
               <phase>compile</phase>
               <goals>
                   <goal>resolve</goal>
               </goals>
               <configuration>
                   <outputFileName>openapi2</outputFileName>
                   <configurationFilePath>${project.build.directory}/classes/openapi-configuration2.json</configurationFilePath>
               </configuration>
        </execution>
    </executions>
</plugin>

I've also tried with different openapiFilePath, still no luck.
Is this a bug? or I'm doing wrong?

Please see one of these comments: https://github.com/swagger-api/swagger-core/issues/4300#issuecomment-1376278975, https://github.com/swagger-api/swagger-core/issues/3028#issuecomment-442923415, https://github.com/swagger-api/swagger-core/issues/3179#issuecomment-484365903
Closing ticket, please reopen if still experiencing issues


How to return matrix or multiple values with custom function?

Is there any option or approach which I can use to return table data with custom function?

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

ID: 94ad7803-d4f7-a700-7c7f-204cd8f34e4a
Version Independent ID: 9c485bae-cab1-bdad-4c8e-baad2b12b22d
Content: Create custom functions in Excel - Office Add-ins
Content Source: docs/excel/custom-functions-overview.md
Product: excel
Technology: add-ins
GitHub Login: @o365devx
Microsoft Alias: o365devx

@AbhinavMantri Thanks for your interest in Office Add-ins development. Feedback here is intended for reporting problems with the API documentation. Can you please post your question to Stack Overflow with the office-js tag and the custom-functions-excel tag? By posting how-to questions like this to Stack Overflow, you'll not only be able to reach a broader audience of folks who have expertise in the area, but will also enable others to benefit from any answers that are provided there. Thanks!


Ideas to implement this with a fixed header

I want to ask a question. Can I use this like a table, where the first row would be fixed in vertical space but would scroll along horizontally? Is this possible with react-list?

We do this with one of our products at OrgSync, but unfortunately I can't provide a demo. The basic idea is to put the header div and list div in a wrapper div with overflow-x: auto, then wrap the list div in an overflow-y: auto. This way they both move horizontally the same but only the list moves vertically. Good luck!


Breadth First Search

I would like to implement this algorithm in python.

/assign

It is already present here.


fix: Pagination of reviews for variant products

1. Why is this change necessary?
Currently for variant products it is not possible to paginate through the reviews, since the parentId is not considered.
2. What does this change do, exactly?
Add the parentId.
3. Describe each step to reproduce the issue or behaviour.
Create a product with more than 10 reviews and try to navigate to the second page of the reviews.
4. Please link to the relevant issues (if any).
-
5. Checklist

[ ] I have written tests and verified that they fail without my change
[x] I have created a changelog file with all necessary information about my changes
[ ] I have written or adjusted the documentation according to my changes
[ ] This change has comments for package types, values, functions, and non-obvious lines of code
[x] I have read the contribution requirements and fulfil them.

Hello,
thank you for creating this pull request.
I have opened an issue on our Issue Tracker for you. See the issue link: https://issues.shopware.com/issues/NEXT-20586
Please use this issue to track the state of your pull request.

After looking more into the detail, we want to do it all together with the PR https://github.com/shopware/platform/pull/2390

@shyim since the original issue of #2390 has been fixed in the meantime by https://github.com/shopware/platform/commit/3755d5edd1aab72726cbe7cb81c975ca3777d755 I think it could be advantageous to merge this PR.
If that is okay, I will rebase this branch on the current trunk.
I will than additionally use the PR #2390 to refactor the loading of the reviews such that this is unified, but I fear I need to hide that behind a feature flag since this will be a breaking change otherwise but this change is than unrelated to this PR.


fix envoy agent exit bug

Please provide a description of this PR:
a cherry-pick of #33043

@silenceshell: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Rerun command

unit-tests_istio_release-1.10
f53fb4e24c48cbdf9a329c4514695bc812223b17
link
/test unit-tests_istio_release-1.10

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


npm audit issue

This package has 2 audit issues that can be fixed by simply updating, lodash and debug packages. Tested locally and no breaking changes as nothing very specific was being used from those.  Will open PR so you can update your repo.

bump


proposal: import/path: Basic type interfaces

Proposal Details
I propose to introduce interfaces for basic types. Then when declaring its type, e. g:
type Email string
will give the possibility to create its own functions to check the possibility of converting, modifying. And it will be possible to implement, for example, a function that prohibits setting text other than<EMAIL_ADDRESS>or forbid to convert a number to email.

I believe this is another instance of #29649 where the proposal tries to constrain types by value


Request: Support Redux DevTools extension (Chrome) in Web Chat

Feature Request
https://github.com/zalmoxisus/redux-devtools-extension#usage

It would greatly help development if the playground functioned with Redux DevTools.
Preliminary testing creating a store did not work:
        const store = window.WebChat.createStore(
          {},
           ...(window.__REDUX_DEVTOOLS_EXTENSION__ ? [window.__REDUX_DEVTOOLS_EXTENSION__()] : [])
        );

Additional context

[Enhancement]

Looks like this has been addressed.


New version don't work at all :(

Hello!
How are you?
A long time pass from my last using of you're plug-in.
I was happy seeing new version, but suddenly i found, that is doesn't work at all.
Nor errors or python crashes, niter any vulns.
So, i rolls back and it work again.
But throw python exceptions and leak a platy of memory.
So, what info should i send to help me and maybe other peoples to be happy?
:3

Hello,
Share the binary, that should be enough :)
Thanks

https://www.sendspace.com/file/l5viqy
in previous version it found potential UAF with [INFORMATION] level of critically
in current - nope.

and i noticed this while using new version
Loaded python3 plugin 'VulnFanatic'
Plugin Manager failed to parse 'plugins.json'. Error: '* Line 1, Column 1
  Syntax error: value, object or array expected.
'
Detected Little Endian endian ELF
ELF parsing took 0,006 seconds
Analysis update took 0,038 seconds
Analysis starting...
Adding section: .fini <0x1274 - 0x127c> for analysis.
Adding section: .init <0x1000 - 0x1016> for analysis.
Adding section: .plt <0x1020 - 0x107f> for analysis.
Adding section: .plt.got <0x1080 - 0x1087> for analysis.
Adding section: .text <0x1090 - 0x1270> for analysis.
Analysis Phase 2 created 0 functions. [x86_64:linux-x86_64]
Analysis Phase 3.0 created 1 functions [x86_64:linux-x86_64]
Analysis Phase 3.1 created 0 functions [x86_64:linux-x86_64]
Analysis update took 0,001 seconds
[*] Vuln scan done in 0.6714141368865967 and marked 0 out of 0 checked.
High: 0
Medium: 0
Low: 0
Info: 0

I think the last error you mention (the one with plugin.json parsing error is not related to this plugin). For the fist issue you submitted there is a following problem:
00001182  void* rax = malloc(bytes: 0x64)
0000118f  void* rax_2 = rax + 0x32
000011b9  if (rax != 0)
000011b9      memset(rax, 0x41, 0x64)
000011c5      puts(str: rax_2)
000011d1      free(mem: rax)
000011f5      memset(malloc(bytes: 0x64), 0x44, 0x64)
00001208      return puts(str: rax_2)
000011a3  exit(status: 1)
000011a3  noreturn

At address 0x0000118f the rax_2 variable is initialized with an offset to rax. This is a common way on how Binary Ninja handles structures and therefore the plugin assumes that the rax holds a structure value where rax and rax_2 point to different memebers of that structure. Therefore, freeing rax is treated as freeing the first member of that structure only and thus the use of rax_2 at address  0x00001208 is not considered to be an issue.
This is implemented as there were large number of false positives for functions which worked with structures passed as parameters to functions where members of that structure were referenced as arg1 + 0x8 (and similar).
There might be some improvements into how a variables that are likely a structure pointers are handled in the future but at this point this is not considered to be a bug as it is the way it is working right now. I am working on some updates continuously so you can check back later on.

This issue is now detected with version 3.2 as I have changed the way that variables are treated.


ip header checksum calculation is wrong

https://github.com/google/gopacket/blob/master/layers/ip4.go#L150
the current code is wrong in the case of addition of the carry
https://play.golang.org/p/z8jcO1yUC4

Submitted pull request
https://github.com/google/gopacket/pull/232

I believe this issue has been fully fixed.


[MXNET-807] Support integer label type in ctc_loss operator

Description
This PR fixed part of the issues in #10995. It supports integer type in label just as WarpCTC does.
Also added a unit test to test large class issue fixed by another PR #11834
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[X] The PR title starts with [MXNET-$JIRA_ID], where $JIRA_ID refers to the relevant JIRA issue created (except PRs with tiny changes)
[X] Changes are complete (i.e. I finished coding on this PR)
[X] All changes have test coverage:
Unit tests are added for small changes to verify correctness (e.g. adding a new operator)
Nightly tests are added for complicated/long-running ones (e.g. changing distributed kvstore)
Build tests will be added for build configuration changes (e.g. adding a new build option with NCCL)
[X] Code is well-documented:
For user-facing API changes, API doc string has been updated.
For new C++ functions in header files, their functionalities and arguments are documented.
For new examples, README.md is added to explain the what the example does, the source of the dataset, expected performance on test set and reference to the original paper if applicable
Check the API doc at http://mxnet-ci-doc.s3-accelerate.dualstack.amazonaws.com/PR-$PR_ID/$BUILD_ID/index.html
[X] To the my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[X] Support integer label type
[X] Created unit test for ctc_loss operator in CPU, GPU and integer labels

Comments

Also added a unit test for large arrays to cover the fix by another PR #11834

@apeforest Could you rebase your change on latest master?

@lebeg @samskalicky I have merged from master and the check now passed. Please review the PR again. Thanks

Hi @szha, @samskalicky asks if we could move this operator from contrib to mxnet regular. Do you have any suggestion? Thanks!

@Jerryzcn @zhiheng-huang you're likely interested in this.

@szha This PR is to fix the unsupported integer label type. If we were to refactor this operator altogether, I would prefer to do it in another PR. What do you think?
Also, as @samskalicky suggested, do you think it is mature to move this operator from contrib to regular? If that's the case, we can create another ticket to perform this migration together with refactoring.

Created a ticket https://issues.apache.org/jira/browse/MXNET-912 to move this operator from contrib to regular.

ctc_loss operator yields different result in python3 and python2 environment breaking the newly added unit test. I am investigating the rootcause.


fix: maxListenersExceeded warning due to atomically, which is a peerdep of conf

The conf dependency being bundled (not even executed) causes frequent HMR runs (around 10+) to throw multiple MaxListenersExceeded warnings in the console.
This PR

fixes telemetry which was previously broken (threw an error which we ignored) due to a conf version upgrade
Removes the conf dependency (which is large and comes with a lot of unneeded dependencies due to functionality we don't need, like dot notation or ajv validation). The important parts of the source code where copied over - it's now dependency-free
makes sure we only register the Next.js HMR websocket listener once, by adding it to the cache

I love it


Removed the public version of the -portal service

Not sure you were aware you can do this, but it removes the public export of the service.   You also could remove the - in the service name, since it is no truly private.
Note you could also remove the component exports as will and change the documentation to
<EmberStargate@Portal>
Also avoiding name conflicts.
I have been moving towards this as it clearly indicates the addon the component comes from and is a good start towards template imports.
Can do another PR if you would like to see the components working in your tests as well

Not sure you were aware you can do this, but it removes the public export of the service.

That's great. Tbh never have seen this before. Do you happen to have some link at hand where this is documented? Is this public API and guaranteed to stay?

I can not find documentation for this. I had a discord discussion with Robert (rjwblue) about it and he confirmed this was public and was going to continue to be supported. I believe this may be part of they underlying that will make template imports work.
If you look at https://github.com/miguelcobain/ember-yeti-table we converted all the internal private components to use the template namespace

If you look at https://github.com/miguelcobain/ember-yeti-table we converted all the internal private components to use the template namespace

That's an excellent use case, and I would really like to use this pattern (e.g. ember-bootstrap has a lot of private (yielded) components). But tbh I would have expected this to be introduced in an RFC if it were really public, not? Also would like to know since which Ember version this is supposed to work (obviously it works in all those that this addon supports at least)...
@rwjblue mind chiming in and bring some light into this? 🙏 😀

I dont remember the version, but it worked back way farther than I thought, was surprised. Yes I hope Robert sheds some light on when they may be documented since it has been working for a long time

Ya, it is a public API of ember-resolver (not Ember itself). When attempting to resolve something it parses the @ as meaning "this namespace" (remember back in the day when we had window.Foo style namespaces and you could refer to them, it is basically the same thing).

Its generally worked since at least 2016

These two tests are for that functionality:
https://github.com/ember-cli/ember-resolver/blob/master/tests/unit/resolvers/classic/basic-test.js#L117-L147

FWIW, the feature was added in https://github.com/ember-cli/ember-resolver/pull/70 (2014).

@rwjblue Thanks for all the clarification.
The final was was is it documented? (Since its a little known feature) and should we be teaches this?

I dunno if it is documented, I'd be happy to land a PR adding docs to ember-resolver. To document more broadly we'd have to discuss a bit more (for example, over in the cli-guides repo).
IMHO, the main thing here is to ensure that service names are namespaced to avoid collisions, you can use this @ thing for that or you could make your services -ember-stargate-portal both (AFAICT) solve the problem.


Python: enable routing by node address.

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@barshaul @ikolomi answered / fixed comments.


probes: Add liveness qemu-exec test probes IDs.

What this PR does / why we need it:
Add liveness qemu-exec test probes IDs.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Add liveness qemu-exec test probes IDs.
Special notes for your reviewer:
Release note:

NONE

/ok-to-test

/cc @geetikakay

Can you remove unneeded text from the PR's description? Otherwise looks good.
/lgtm

Can you remove unneeded text from the PR's description? Otherwise looks good.
/lgtm
Sorry about that. It is better now?

Can you remove unneeded text from the PR's description? Otherwise looks good.
/lgtm
Sorry about that. It is better now?

/lgtm

/retest-required

/retest-required

/retest-required

/retest

@davidvossel Could you please take a look at this? Thanks!

/lgtm

/retest


[#109031802] Deploy concourse via bosh-init

What
Story: https://www.pivotaltracker.com/story/show/109031802
Create a a job that runs inside the bootstrap vagrant Concourse that uses bosh-init to install the production Concourse.
How to review

Install the vagrant concourse (For example from the tutorial: https://github.com/actionjack/concourse-tutorial)
Upload the pipeline:

BRANCH=109031802_deploy_concourse concourse/scripts/deploy-pipeline.sh <environment> create-deployer concourse/pipelines/create-deployer.yml <db password> <web gui password>

From the GUI, unpause the job and start it
It should deploy a Concourse at http://environment-concourse.cf.paas.alphagov.co.uk:8080/
Username: admin, password as above

Who can review
Anyone but @saliceti, @jimconner or @combor

SG office access was created specifically for concourse (adding 8080). Remove if unused.
Also, do we want to explicitly add ssh into every SG, or instead have one SG that allows ssh from the office and add that group to instances (so that they'll have multiple SGs)?

Would be nice to see these commits squashed into logical chunks, there's a lot of itty-bitty ones.


Issue with notion link

Using the extension, when i copy a link for a page i get "Notion page not found "15999ce0364080ad85d3d1******"". Same page i have changed to be available for anyone with the link from the options in the notion app ?

Hello, do you mind sharing the link or page ID if it's public? That way I'll be able to debug the behavior myself.

Same issue here. I'm using a private notion page and can't get to integrate with vscode

As shown in the changelog, private pages are no longer supported unfortunately. Only publicly accessible (deployed) Notion pages can be used. As a reference, the Notion page for the YouTube show "Hot Ones" loads correctly for me: https://bensomething.notion.site/Hot-Ones-8bc5367e6c9d4b52a1c2b6595cfd8181

Yes, that is right. Private page support that was previously implemented was very buggy so I decided to just remove it. It's written out in README as well.


[uiHideAfterSelectDate]="true" does not work

Hi,
I set [uiHideAfterSelectDate]="true" but does not work
please guide me
Thank you...

Hi,
As you can see in online demo it's working correctly
Maybe after selecting date you have a focus event for the input
(By default it opens when you focus on the input)

Thank for your fast reply,
yes, My problem is using the mat-input

Please provide a full example with https://stackblitz.com/

@hoda02 please check v4.0.0
Thanks!


fix(aws): JIRA-5382 enable ghactions runner config to run unattended

Otherwise the runner seems to hang and never come up.

I am actually confused whether this is actually needed or not, i.e. I seem to have gotten it to work even without that flag, although I thought it missing what was blocking the runner from connecting to github


[Windows] @dadi\cli\runner is not recognized

Hi,
when I try to install @dadi/cli on my Windows 10 machine, I get a is not recognized as an internal or external command, error.
See logs:
C:\Users\lmach\projects>npm install @dadi/cli -g
C:\Users\lmach\AppData\Roaming\npm\dadi -> C:\Users\lmach\AppData\Roaming\npm\node_modules\@dadi\cli\bin\runner

><EMAIL_ADDRESS>postinstall C:\Users\lmach\AppData\Roaming\npm\node_modules\@dadi\cli
> node install.js

downloading the latest version of DADI CLI [====================] 100% (ETA: 0.0s)
+<EMAIL_ADDRESS>updated 1 package in 7.899s

C:\Users\lmach\projects>dadi cdn new cdn
'"C:\Users\lmach\AppData\Roaming\npm\\node_modules\@dadi\cli\bin\runner"' is not recognized as an internal or external command,
operable program or batch file.

There is an invalid path : npm\\node_modules\@dadi, but I don't think this is the issue.
I guess the problem is, that there is no runner.bat oder runner.exe

Hi @lmachens. We've been moving the CLI to use npx instead, precisely for these interoperability issues. Can try running npx dadi-cli help?

@eduardoboucas thank you. It works for me now:
C:\Users\lmach\projects>npx dadi-cli cdn new cdn
npx: installed 177 in 4.258s
√ Checking the available versions of DADI CDN
√ Downloading boilerplate (100%)
\ Installing DADI CDN (3.x)


Fixed crash on API 16 and on API 26

Closes #10
The crash on API 16 was caused by a bug in older support library version when using Kotlin.
The crash on API 26 was caused by not declaring the app: namespace font thingies in the font-v26 folder; the support libraries crashed if the android: namespace was used without duplicated app: lines (see docs).

@magneticflux- Good job!


brew just died on me

Brew worked fine the other day. Now it doesn't:
brew doctor
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- mach (LoadError)
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/local/Library/Homebrew/extend/pathname.rb:2:in `<top (required)>'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/local/Library/Homebrew/global.rb:3:in `<top (required)>'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/local/Library/brew.rb:15:in `<main>'

brew update, brew doctor, brew whatever returns the same error message. What gives?
Running MacOs Sierra 10.12.1

Run brew update --force and try again.

Return same error message.

Run cd "$(brew --repo)" && git fetch && git reset --hard origin/master && brew update --force

No dice:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- mach (LoadError)
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/local/Library/Homebrew/extend/pathname.rb:2:in `<top (required)>'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/local/Library/Homebrew/global.rb:3:in `<top (required)>'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /usr/local/Library/brew.rb:15:in `<main>'
fatal: Not a git repository (or any of the parent directories): .git

You'll need to uninstall and reinstall Homebrew (https://github.com/Homebrew/install). Keep talking here but closing as it only affects you.

Thanks!


Set default colors for UserList. Fix for issue #136

Set defaults for text and background colors for participant list page.
This would mitigate issues ( like #136 ) where external libraries may set system wide themes.
Provision for passing customized colors as props is also added, to extend theme-ability of the UserList component.

Thanks, great addition.


get travis-ci integration working

See https://docs.travis-ci.com/user/languages/cpp/ for background
One off setup step: Do a full build of the whole toolchain on an Ubuntu 14.04 box, upload the 3rd party libs to S3.
Ongoing: Have a pre-build script that fetches the 3rd party libs and puts them in the right place to be picked up. Think about nix and the way build environments could have been. Lament what we have lost. Move on with life.

Note that the pre-build script will need to ensure the right version of cmake: https://askubuntu.com/a/610352

Also need the g++ package

Also need to break up the make targets for arrow/parquet to distinguish fetching/unpacking them (so as to provide the includes) and building them (which we'd like to be able to skip)

Notes for myself when I resume work on this: travis is wired up and attempting to build.
It's running into errors building sqlite, eg see https://travis-ci.org/cldellow/sqlite-parquet-vtable/builds/400241091
I suspect the issue is that it's using g++ instead of gcc for some reason. Dunno why - we're delegating to sqlite's configure script.

...latest issue is difficulty finding parquet header files: https://travis-ci.org/cldellow/sqlite-parquet-vtable/builds/400242320
Maybe we still need to run cmake to get some paths set up


Mcusigner

deprecating python based-signing tools for complete re-write in rust.

🚀 finally. thanks guys - @imrank03 @yashwanthsinghm @Strange21 @UdayakumarHidakal @sarath3192 @abhishekdhamale


 Contact<EMAIL_ADDRESS>for more info.

closing because, after a couple of tries it eventually worked.
not sure what was wrong.


Forum login fails using blockstack ID login

Describe the bug
Blockstack forum login fails using the Blockstack ID login option. When the user is trying to log into the blockstack browser web app they are NOT taken into the forum as expected but asked to select the forgot your password link and receive an error message.
See video of bug here: http://somup.com/cqhjo5naUo
To Reproduce
Steps to reproduce the behavior:
USE A VM OR A MACHINE THAT IS NOT SIGNED IN WITH THE BLOCKSTACK APP.

Go to forum.blockstack.org select the option to login, then select login with a blockstack ID
Click on 'Login with blockstack web app' when prompted
Login to the blockstack web app and Restore your ID and when prompted select the "go to blockstack forum" button
You will be taken to the blockstack forum and there will be a green error message at the top of the login pop-up that tells you to reset your password to access the forum.
Since the user is a new user and has not registered a email / password with the forum and registered using the blockstack ID they will receive a message that says "email not found"
Then they will be prompted to login again and if they select the Blockstack ID option they will go into an endless loop and repeat all the steps above starting at step 2

Expected behavior
The user should be able to successfully log into the forum with a Blockstack ID they should not go back to a login screen
Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

OS: [iOS 10.14.4]
Browser [chrome Version 74.0.3729.131]
Version [block stack web app]

https://github.com/blockstack/blockstack-browser/issues/1915

The issue might actually be on the the repo https://github.com/blockstack/omniauth-blockstack/
I opened a PR here https://github.com/blockstack/omniauth-blockstack/pull/4
Anyway we can test this before deploying? cc @yknl

@lgalabru I can test this now, since this issue seemed to be with the web app please let me know how we are deploying this for test?

Should we try to use a netlify.com deploy preview link to test this I have verified something similar in
issue https://github.com/blockstack/blockstack-browser/pull/1898#event-2294401248 this could be a good option, let me know your thoughts.

this issue is back


Add publish_time_telegram to publish_date tags

Add the publish_time_telegram tag to the list of possible tags containing the published date.
from newspaper import Article

article = Article(url="https://www.rt.com/uk/434030-sharks-british-waters-devon/")
article.download()
article.parse()
print(article.publish_date)

Nice find, thank you @dlrobertson. Do you know how often publish_time_telegram is used in news sites (outside of the particular case of rt.com?) I am close to merging / accepting this change but since it does slightly increase extraction time I want to confirm publish_time_telegram is a standard that some news sites follow

It doesn't seem to be used too often. Probably a better solution would be to add something to the Configuration class.


ReplaceToBiomeName - Which values are allowed?

I have 120 custom biomes and now am going to put the related default minecraft biome names in the config files (ReplaceToBiomeName).
Which values does ReplaceToBiomeName accept? Where can I find a complete list with the correct formatting (upper-lower-case letters) ??

Hey there. You can use the names that are in "double quotes" from here.

Thank you!
And which flower names are correct? Where can I find a list?
example:
Plant(RED_ROSE,1,80.0,0,128,GRASS,DIRT,SOIL)

Similiar Spot: here :D


Problem with Training ,  class or object 'NoneType'

Hey @ethnhe , I have some problems while running the training for my own dataset. I think I adjusted the dataset in the correct way so that it matches the structure of the ycb dataset. While running python3 -m datasets.ycb.preprocess_testset or python3 -m datasets.ycb.ycb_dataset I always get an error with 'NoneType' class or object.
Do you have an idea what is wrong ?

It seems that there are something wrong in  def get_item(self, item_name) in ycb_dataset.py, try to remove the first try: except to see which line of code cause the except.

Okay thanks, i will try :)


parameterized custom sampler to allow weighted sampling

Allows one to pass a custom sampler to the training DataLoader. For example, one can now pass a WeightedRandomSampler to implement oversampling on underrepresented classes.

@kaushaltrivedi any way to merge this?

Merged. Sorry for the delay


[KNOX-2622] Support Deflate Encoding for the Inbound Response

What changes were proposed in this pull request?
Currently, Knox only supports the Content-Encoding "gzip" and the Content-Encoding "deflate" is not supported. When the upstream server (such as Livy 0.7 Server) returns a response which is deflated, Knox does not know how to decode it.
The current code only considers the "gzip" format and the "deflate" format is not considered. We should also handle the case when the format is "deflate" and use InflaterInputStream to read the in-bound response and use DeflaterOutputStream to write the out-bound response.
Here is the JIRA (https://issues.apache.org/jira/browse/KNOX-2622) that describes this issue.
How was this patch tested?
Existing unit tests and newly added unit tests.
Please review Knox Contributing Process before opening a pull request.

@xuzikun2003 - it seems you have some checkstyle issues that need to be resolved.
Please see https://travis-ci.com/github/apache/knox/jobs/515699869 for the issues towards the bottom of the build output.

@lmccay , the style issue is already fixed.

@xuzikun2003  - thank you for your contribution! I will assign the JIRA to you and this will be available in Knox 1.6.0.


LOFTEE flags on variant page are illegible

LOFTEE flags are written in yellow text, which is very hard to read. The red text used for LC annotations doesn't meet WCAG AA contrast requirements either.

Polyphen and SIFT predictions have the same problem.


CNV-46603: search project by name and fix select height

Before

After

https://github.com/user-attachments/assets/f2a7f0f1-086c-417e-a5d4-a7880f9a594e

/lgtm

/cherry-pick release-4.18


Does the cache plugin enabled by default?

If I run a DNScrypt instance without specify whether to enable/disable the cache function in the config file, or if I just run it through command line, will the instance run with or without cache function?

if you use the .conf is on by default (line 75)
if you use command line, is off. you need to load plugin "-X libdcplugin_example_cache.dll"


Phase 1: block headers inside or outside of data committed to in the shard data root?

I see two paths for exactly what data the shard data roots that are attested to in crosslinks commit to. Note that each choice also influences the choice of what clients will need to check to gain assurance of validity and availability.
Proofs of custody on data roots only
Suppose the last crosslink for shard i was of a block at slot N, and the next crosslink is of a block at slot N+k. The crosslink commits to a merkle root of the data roots of each block in the range [N ... N+k-1], where skipped slots are deemed as containing empty data.
To verify a chain, a client must:

Verify the beacon chain
Verify the header chains of every shard and check that they match what's in the crosslinks
If desired, perform data availability checks on the erasure coded data corresponding to the data included in the crosslink

The main weakness of the scheme is higher overhead for clients wishing to fully verify: you need to be a light client on every shard, so that's ~400 bytes * 1024 shards / 6 seconds = 67 kB/sec.
Proofs of custody on shard chains
Instead of one 16-kb data root, each shard block has 5 data roots for 15.5 kb of data, leaving the other 512 bytes empty. You can then calculate the "real data root" of a block as being the Merkle root of the 512 byte space including the header concatenated with the 15.5 kb of the data (the header itself and the 5 data roots suffice for this).
The crosslink commits to a merkle root of these data roots.
To fully verify a chain, a client must now only verify the beacon chain, and do data availability checks on the erasure coded data of the crosslink roots if desired. Verifying the validity of the shard chain can now be done entirely with slashing conditions, where you can declare a data root invalid by providing a Merkle branch into a block, verifying the block in-beacon-chain and showing that the block is invalid (or providing two adjacent blocks to show that their hashes mismatch).
The main weaknesses of the scheme are:

It slightly mixes checking availability and checking state transition validity, as it's checking validity of the headers
It requires a somewhat more awkward data root construction

I'm a bit confused about the construction of the 5 data roots.
Given 15.5kb of block data, do we create 5 distinct roots but placing the 512 empty bytes at different locations in the data hash tree?


ci: run tests daily at 5:17 UTC (israel morning)

https://aspecto-io.monday.com/boards/312932205/pulses/1157217343


Print full path in container page title

The title line of the container page has an abbreviated version of the container name, for example collaboratory/dockstore-tool-bwa-samse
However, the GA4GH API paths looks like:
/api/ga4gh/v1/tools/quay.io%252Fcollaboratory%252Fdockstore-tool-bwa-samse
This means if a user copies and pastes collaboratory/dockstore-tool-bwa-samse from the page into a tool that integrates with the GA4GH API, it will looks try /api/ga4gh/v1/tools/collaboratory%252Fdockstore-tool-bwa-samse which is missing the quay.io/ part.
The title line should provide the full identifier of the container to support user workflows that access Dockstore from other tools, such as cwltool.

Makes sense.
Note for the implementer, I think the relationship between the title, name, and path needs to be reviewed (and simplified). I think the three have become somewhat redundant after we switched to the structure of (docker registry, defaults to docker hub if not present)/docker organization/docker repo/toolname

Alternately, quay.io doesn't need to be part of the dockstore id, in which case the title text can stay the same and it's the identifier exposed by the GA4GH API that should change.

I think the title is actually currently misleading, but I need to double check how it changes when we add a custom tool name. quay.io does currently need to be part of the dockstore id and the title text should probably reflect that.
For simplicity, we should probably export the same id to the GA4GH id to make your use case simple

Example for implementer:
We have two tools with ids of "quay.io/denis_yuen/dockstore-tool-imports/test3" and "quay.io/denis_yuen/dockstore-tool-imports/test4". Both use the same quay.io image (and thus both share ""quay.io/denis_yuen/dockstore-tool-imports." Where they differ is that they poing to different cwl documents, the latter pointing to /funky/Dockstore.cwl
The titles use brackets to distinguish one from another denis_yuen/dockstore-tool-imports (test4), which isn't all that useful in the context of GA4GH. We should instead, simply show the GA4GH ids  denis_yuen/dockstore-tool-imports/test4/.
The name is redundant and should be omitted. The path can stay, although we should probably add a tool tip or explain that it is the docker path.


Add CI Integration with Google Cloud Build

Draft PR #26
Having issue with resources not showing in Cloud Build. -> [class loader].getResource works on Cloud Shell but not Cloud Build

Merged #26 into master


[Webapp] Bugfix: az webapp log deployment show - return deployment logs instead of log metadata

Description
closes #14099
Testing Guide

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

Webapp

ready to merge?

ready to merge?

Ready, thanks!


RuntimeError: external/org_tensorflow/tensorflow/lite/core/subgraph.cc:1044 required_bytes != bytes (602112 != 150528)

Training and conversion model equipment：ubuntu18.04
tf :2.2.0
tb-nightly               1.14.0a20190603
tf-estimator-nightly     1.14.0.dev2019060501
I use Dev Board to predict：
edgetpu  ： 2.14.0
tflite-runtime： 2.1.0.post1
My training and conversion model code:
2.2.0.ipynb.zip
hdf5 model:
0.03-0.98.hdf5.zip
tflite model:
st2_io.tflite.zip
Prediction program running on Dev Board：
classify_image.py.zip
edgetpu model(Model used for prediction）:
st2_io_edgetpu.tflite.zip
label:
sparrow (1).txt
Image:
edgetest.zip
I got this error after executing classify_image.py on Dev Board：
mendel@orange-eft:~/sparrow$ python3 classify_image.py --model st2_io_edgetpu.tflite
Traceback (most recent call last):
File "classify_image.py", line 27, in
main()
File "classify_image.py", line 21, in main
for result in engine.classify_with_image(img, top_k=3):
File "/usr/lib/python3/dist-packages/edgetpu/classification/engine.py", line 99, in classify_with_image
return self.classify_with_input_tensor(input_tensor, threshold, top_k)
File "/usr/lib/python3/dist-packages/edgetpu/classification/engine.py", line 123, in classify_with_input_tensor
input_tensor)
File "/usr/lib/python3/dist-packages/edgetpu/basic/basic_engine.py", line 136, in run_inference
result = self._engine.RunInference(input)
File "/usr/lib/python3/dist-packages/edgetpu/swig/edgetpu_cpp_wrapper.py", line 111, in RunInference
return _edgetpu_cpp_wrapper.BasicEnginePythonWrapper_RunInference(self, input)
RuntimeError: external/org_tensorflow/tensorflow/lite/core/subgraph.cc:1044 required_bytes != bytes (602112 != 150528)

is there any solution yet? I am facing the same problem here

is there any solution yet? I am facing the same problem here

is there any solution yet? I am facing the same problem here


The following data is available from this function if supported by your database:

    name - column name
    max_length - maximum length of the column
    primary_key - 1 if the column is a primary key
    type - the type of the column

https://codeigniter4.github.io/CodeIgniter4/database/metadata.html#db-getfielddata

not complete

I am considering adding nullable and default because they are not listed in the data that can be retrieved.
Is my understanding correct?

accurate

Inaccurate means, for example
Postgre does not return primary key information... or something like that?

Yes, something like that.
I'm not sure Postgre does not return primary key.
My memo.
 -  name - column name
--  max_length - maximum length of the column
--  primary_key - 1 if the column is a primary key
 -  type - the type of the column
+-  type_name - the type name of the column
+-  max_length - maximum length of the column
+-  default - the default value
+-  primary_key - ``true`` if the column is a primary key
+-  nullable - ``true`` if the column is nullable

Anyway, the description is not accurate now, so any fixes are welcome.
If you send PRs, please show the actual output as well.

Thank you.
Since it is difficult to prepare SQLite3, OCI8, and SQLSRV, all environments, I will update this page based on the results with MySQL.
Regarding the presentation of the actual output.
Is the attached screenshot sufficient?
SHOW COLUMNS FROM items;

dd($db->getFieldData('items'));

No problem. MySQL is de fact standard of CI4. The results should be described first.
Also the screenshots are sufficient.

I sent a PR: https://github.com/codeigniter4/CodeIgniter4/pull/6398

I updated the test for getFieldData(): #6400
And found that output results vary depending on the database. And some of them may be bugs.
I think it is better to write the specifications that should be in the user guide, because it is not very meaningful to describe the current behavior in detail.
It is not easy to decide what the specification should be, though.

We checked the contents of the _fieldData method in Connection.php for each database under Codeigniter4/system/Database.

However, max_length in SQLite3 always returns null.
Should the manual hastily describe the current situation described above?

@naente  If we add the description, it is better to describe what's missing.

max_length in SQLite3 always returns null.

It seems that max_length in SQLite3 does not make sense.
See https://www.sqlite.org/faq.html#q9

@kenjis Thanks. I added a note about the currently supported databases.

Closed by #6440


Is this project on maven central repository?

Hi, Is this project on maven central repository? Seems it is not.

nope. sorry


Allow group.yml to disable builds

image:rebase should also check whether builds are permitted
the group.yml schema isn't really used by anything AFAIK -- our validation is in ocp-build-data-validator so that at least would need an update here.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@b91a776). Click here to learn what that means.
The diff coverage is 55.55%.

@@            Coverage Diff            @@
##             master     #121   +/-   ##
=========================================
  Coverage          ?   35.76%
=========================================
  Files             ?       19
  Lines             ?     3059
  Branches          ?      612
=========================================
  Hits              ?     1094
  Misses            ?     1940
  Partials          ?       25

Impacted Files
Coverage Δ

doozerlib/runtime.py
27.33% <55.55%> (ø)

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 b91a776...258cd3a. Read the comment docs.

@sosiouxme I don't see any group validation in https://github.com/openshift/ocp-build-data-validator .

@jupierce I think this PR belongs to what we talked at the Arch meeting?
Regarding RFEs, will you open other PRs or update this PR?

Alright, I think it's good. We'll find out soon enough if there's any actual validation on group.yml schema...


Notification's invisible in iOS 9.3.5 and 10.3.3

The notification isn't appearing in Safari or Chrome for 9.3.5 and 10.3.3 using #test-bu & the test:true option.
Any ideas?
The notification pushes the html element for the available space and has the golden border-bottom but the actual notification body is missing.

This seems to be caused by the margin being added to the HTML element and not the body element, this is a known problem for iOS I thought.

Seems to be a particular problem with your website, because it works on the sites I tested with. Could you send the link to your site?

Haven't got it live yet, will attempt to figure out what's wrong myself and report back.

No information. Closing


WIP Emits CloudEvents with status changes

Any status change would trigger an event; this includes
changes in plugin status meaning that as E2E tests finish
then sonobuoy would emit a cloudEvent.
What this PR does / why we need it:
Which issue(s) this PR fixes

Fixes #

Special notes for your reviewer:
Release note:
release-note

Would like just a simple cloudevents echo-er as a sidecar with sonobuoy to test this. Thought that would already exist but may need to just build/push one?

@n3wscott CloudEvents :tada: :n3wscott:

If this is all it takes then 👍 We just need a DD about what events to send, their types, etc. I think we'd need to have good docs  on a feature like this from the start or its unusable mostly.
So I think open questions would be:

List of events names/types
structure of those values (status change here was straight forward since its json that was already exposed)
when to send events
presumably, we'd need a flag to specify where to send events
need to allow multiple addresses for recipients? Or will we only send them to one?
Do we need to allow users to specify which events to get or do we just send them all and let the receiver filter?

Anything else?

so... I think most points above can be iterated upon, but if we can shift the JSON statuses to CloudEvents-compliant format, then the rest can take shape as we figure out "how are we going to serve this" while getting some input from folks upstream (like the iicoop who uses Sonobuoy quite extensively iirc).

alternatively, what an MVP could be is to have sonobuoy status --progress which shows how many tests have run and time elapsed with regular progress bar.
we can achieve this without CloudEvents -- but I think if we start promoting progress bar as a feature, folks might want to get creative on event consumers which makes me think it might be beneficial for us to have the structure in first 😉

@wilsonehusin The progress bar is very low hanging fruit; that info is all available from the data in sonobuoy status --json. If you want you can experiment with different output formats.
There are the various --wait options where it can wait silently or with periodic output. Perhaps you can just add another one that is optional for now (just to see how it works) that has --wait=progress and will output/update progress bars and/or failures for the various plugins.

Could even make a separate issue for that. I think it is a nobrainer that we need to utilize that; we just hadn't gotten around to it yet


refactor: make PutTransaction smoller

Codecov Report

Merging #18 (546ad8f) into main (25a1970) will decrease coverage by 0.13%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #18      +/-   ##
==========================================
- Coverage   94.64%   94.51%   -0.14%
==========================================
  Files         102      103       +1
  Lines        1906     1859      -47
  Branches       91       92       +1
==========================================
- Hits         1804     1757      -47
  Misses         98       98
  Partials        4        4

Impacted Files
Coverage Δ

...ommon/Exceptions/OptimisticConcurrencyException.cs
100.00% <100.00%> (ø)

...ngoDb/Transactions/MongoDbTransactionRepository.cs
95.12% <100.00%> (-2.69%)
:arrow_down:

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 25a1970...546ad8f. Read the comment docs.


Tooltip pushes target component down

Components with a tooltip appear to have extra margin spacing on top compared to components without a tooltip
dmc.Group(
    [
        dmc.Badge("No Tooltip", radius="sm", variant="filled"),
        dmc.Tooltip(
            dmc.Badge("With Tooltip", radius="sm", variant="filled"),
            label="Badge not aligned in Group",
            position="right"
        )
    ]
)

Hi @nlyle01 I'm not able to reproduce this issue on my end. Can you please share dmc version and the browser you observed this in?
Also it would be helpful if you can share the exact MRE that can be used. It's possible there is some conflicting css in the project.

Maybe it's just me! I'm using DMC version 0.11.0 and dash 2.5.0. Tested in Chrome and Firefox. Here's what I'm running now to reproduce it:
import dash_mantine_components as dmc
from dash import Dash

app = Dash(__name__)

app.layout = dmc.MantineProvider(
    id="mantine-theme",
    withGlobalStyles=True,
    withNormalizeCSS=True,
    children=[
        dmc.Container(
            children=[
                dmc.Paper(
                    children=[
                        dmc.Group(
                            [
                                dmc.Badge("No Tooltip", radius="sm", variant="filled"),
                                dmc.Tooltip(
                                    dmc.Badge("With Tooltip", radius="sm", variant="filled"),
                                    label="Badge not aligned in Group",
                                    position="right"
                                )
                            ]
                        )
                    ],
                    withBorder=True,
                    p="xl"
                )
            ],
            mt=20
        )
    ],
)

if __name__ == '__main__':
    app.run_server(debug=True)

This also seems to happen with HoverCard. I'm currently using dash_mantine_components==0.11.0.

This happens because Tooltip wraps its children in a Box. I wonder if this really necessary?
You can workaround this by either wrapping the Badge without a Tooltip in a Box...
dmc.Box(
    dmc.Badge("No Tooltip"),
),
dmc.Tooltip(
    dmc.Badge("With Tooltip"), label="Badge not aligned in Group",
)

...or by setting the line height of the wrapping box of the Tooltip to zero:
dmc.Badge("No Tooltip"),
dmc.Tooltip(
    dmc.Badge("With Tooltip"), label="Badge not aligned in Group", boxWrapperProps={"lh": 0}
)

Hi @datenzauberai
Nice workaround!  Do you have any ideas for #228 and #296?  I think they are related.

Indeed you're right. The two can also be solved by setting the boxWrapperProps. I still wonder why the wrapping box is there as it seems to be a real troublemaker 😁

Wrapping the Tooltip in the Box component  enables  all  the dmc style props to be applied to the Tooltip.
I'll check with @snehilvj if there is an alternate way to do this, otherwise, I think if this is documented then it should be OK.

I opened an issue in the dmc-docs, so I'll close this here.


Update CLI extensions available doc

Update CLI extensions available doc.
Triggered by Azure/azure-cli-extensions - TRAVIS_BUILD_ID=495603578
https://github.com/Azure/azure-cli-extensions/commit/b5c6bcb96f5df45f366a0a373ecc7e396ae4d069

OPS Build status updates of commit be4dfb9:
:clock10: Preparing: average preparing time is 56 sec(s)

OPS Build status updates of commit be4dfb9:
:clock10: Incremental building: average incremental building time is 13 min(s) 40 sec(s)

OPS Build status updates of commit be4dfb9:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/azure-cli-extensions-list.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

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


Explore adding the ability to aggregate-initialize senders in a sender-expression-tree

The current syntax for composing senders, either by calling algorithm functions that return senders, or using the pipe syntax, requires incrementally currying the arguments.
This means that for sender expressions that are deeply nested that the arguments to the leaf senders of the expression tree end up being moved or copied N+1 (or 2*N+1 if using pipe syntax) for an expression tree of depth N before they get to the final location within an operation-state.
For a lot of simple use-cases and for types that have efficient, inlinable move-constructors, the compiler will be able to optimize out the moves and there won't be a lot of overhead from this. However, for large expression trees, or for cases where the move-constructors are themselves expensive (e.g. passing around large std::array objects) then all of the move operations necessary to construct the final sender may be a noticeable amount of overhead.
We should explore the possibility of providing sender types for the sender algorithms that can be aggregate-initialized so that sender objects within a sender expression-tree can be constructed in-place without needing to move the senders and their curried arguments multiple times.
Doing this would allow building large sender operations with a single move for each sender argument - moving state from the sender into the operation-state during connect(), rather than potentially O(N) moves.

Duplicate of #225 ?


i18n(ja): Update components.mdx

What kind of changes does this PR include?

Changes or translations of Starlight docs site content

Description

Update components.mdx

https://github.com/withastro/starlight/pull/397

@delucis Thanks for spotting this! Merged your suggestion.